x86: add sparse annotations to ioremap
arch/x86/mm/ioremap.c:308:11: error: incompatible types in comparison expression (different address spaces) Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Родитель
65280e613f
Коммит
6e92a5a615
|
@ -318,8 +318,8 @@ void iounmap(volatile void __iomem *addr)
|
|||
* vm_area and by simply returning an address into the kernel mapping
|
||||
* of ISA space. So handle that here.
|
||||
*/
|
||||
if (addr >= phys_to_virt(ISA_START_ADDRESS) &&
|
||||
addr < phys_to_virt(ISA_END_ADDRESS))
|
||||
if ((void __force *)addr >= phys_to_virt(ISA_START_ADDRESS) &&
|
||||
(void __force *)addr < phys_to_virt(ISA_END_ADDRESS))
|
||||
return;
|
||||
|
||||
addr = (volatile void __iomem *)
|
||||
|
@ -332,7 +332,7 @@ void iounmap(volatile void __iomem *addr)
|
|||
cpa takes care of the direct mappings. */
|
||||
read_lock(&vmlist_lock);
|
||||
for (p = vmlist; p; p = p->next) {
|
||||
if (p->addr == addr)
|
||||
if (p->addr == (void __force *)addr)
|
||||
break;
|
||||
}
|
||||
read_unlock(&vmlist_lock);
|
||||
|
@ -346,7 +346,7 @@ void iounmap(volatile void __iomem *addr)
|
|||
free_memtype(p->phys_addr, p->phys_addr + get_vm_area_size(p));
|
||||
|
||||
/* Finally remove it */
|
||||
o = remove_vm_area((void *)addr);
|
||||
o = remove_vm_area((void __force *)addr);
|
||||
BUG_ON(p != o || o == NULL);
|
||||
kfree(p);
|
||||
}
|
||||
|
@ -365,7 +365,7 @@ void *xlate_dev_mem_ptr(unsigned long phys)
|
|||
if (page_is_ram(start >> PAGE_SHIFT))
|
||||
return __va(phys);
|
||||
|
||||
addr = (void *)ioremap(start, PAGE_SIZE);
|
||||
addr = (void __force *)ioremap(start, PAGE_SIZE);
|
||||
if (addr)
|
||||
addr = (void *)((unsigned long)addr | (phys & ~PAGE_MASK));
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче