diff options
-rw-r--r-- | mm/percpu.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/mm/percpu.c b/mm/percpu.c index 93b5a7c96a7..0ae7a09141e 100644 --- a/mm/percpu.c +++ b/mm/percpu.c | |||
@@ -1011,9 +1011,11 @@ phys_addr_t per_cpu_ptr_to_phys(void *addr) | |||
1011 | if (!is_vmalloc_addr(addr)) | 1011 | if (!is_vmalloc_addr(addr)) |
1012 | return __pa(addr); | 1012 | return __pa(addr); |
1013 | else | 1013 | else |
1014 | return page_to_phys(vmalloc_to_page(addr)); | 1014 | return page_to_phys(vmalloc_to_page(addr)) + |
1015 | offset_in_page(addr); | ||
1015 | } else | 1016 | } else |
1016 | return page_to_phys(pcpu_addr_to_page(addr)); | 1017 | return page_to_phys(pcpu_addr_to_page(addr)) + |
1018 | offset_in_page(addr); | ||
1017 | } | 1019 | } |
1018 | 1020 | ||
1019 | /** | 1021 | /** |