mirror of
https://github.com/torvalds/linux.git
synced 2024-12-02 17:11:33 +00:00
arm64: fix types in copy_highpage()
In copy_highpage() the `kto` and `kfrom` local variables are pointers to struct page, but these are used to hold arbitrary pointers to kernel memory . Each call to page_address() returns a void pointer to memory associated with the relevant page, and copy_page() expects void pointers to this memory. This inconsistency was introduced in commit2563776b41
("arm64: mte: Tags-aware copy_{user_,}highpage() implementations") and while this doesn't appear to be harmful in practice it is clearly wrong. Correct this by making `kto` and `kfrom` void pointers. Fixes:2563776b41
("arm64: mte: Tags-aware copy_{user_,}highpage() implementations") Signed-off-by: Tong Tiangen <tongtiangen@huawei.com> Acked-by: Mark Rutland <mark.rutland@arm.com> Reviewed-by: Kefeng Wang <wangkefeng.wang@huawei.com> Link: https://lore.kernel.org/r/20220420030418.3189040-3-tongtiangen@huawei.com Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
This commit is contained in:
parent
5028fbad2d
commit
921d161f15
@ -16,8 +16,8 @@
|
|||||||
|
|
||||||
void copy_highpage(struct page *to, struct page *from)
|
void copy_highpage(struct page *to, struct page *from)
|
||||||
{
|
{
|
||||||
struct page *kto = page_address(to);
|
void *kto = page_address(to);
|
||||||
struct page *kfrom = page_address(from);
|
void *kfrom = page_address(from);
|
||||||
|
|
||||||
copy_page(kto, kfrom);
|
copy_page(kto, kfrom);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user