Re: Bug in ioremap: boundary case is wrong

MOLNAR Ingo (mingo@chiara.csoma.elte.hu)
Sun, 26 Jul 1998 18:12:11 +0200 (CEST)


On Sun, 26 Jul 1998, Alan Cox wrote:

> The x86 ioremap starts with
>
> if(phys_addr < virt_to_phys(high_memory))
> return phys_to_virt(phys_addr);
>
> If you vremap an area whose end point is over the high_memory point your
> memory mapping breaks. [...]

this case is sick anyway, what does it mean to have a single mapping going
across the end of memory? We should rather do:

if(phys_addr < virt_to_phys(high_memory)) {
if (phys_addr+size > high_memory)
panic("huh?");
return phys_to_virt(phys_addr);
}

-- mingo

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.altern.org/andrebalsa/doc/lkml-faq.html