ARM: Avoid evaluating page_address() multiple times
page_address() is a function call rather than a macro, and so: if (page_address(page)) do_something(page_address(page)); results in two calls to this function. This is unnecessary; remove the duplication. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
2f0b192633
commit
b7dc0b2cfc
|
@ -111,6 +111,8 @@ void flush_ptrace_access(struct vm_area_struct *vma, struct page *page,
|
|||
|
||||
void __flush_dcache_page(struct address_space *mapping, struct page *page)
|
||||
{
|
||||
void *addr = page_address(page);
|
||||
|
||||
/*
|
||||
* Writeback any data associated with the kernel mapping of this
|
||||
* page. This ensures that data in the physical page is mutually
|
||||
|
@ -121,9 +123,9 @@ void __flush_dcache_page(struct address_space *mapping, struct page *page)
|
|||
* kmap_atomic() doesn't set the page virtual address, and
|
||||
* kunmap_atomic() takes care of cache flushing already.
|
||||
*/
|
||||
if (page_address(page))
|
||||
if (addr)
|
||||
#endif
|
||||
__cpuc_flush_dcache_page(page_address(page));
|
||||
__cpuc_flush_dcache_page(addr);
|
||||
|
||||
/*
|
||||
* If this is a page cache page, and we have an aliasing VIPT cache,
|
||||
|
|
Loading…
Reference in New Issue