Re: [bigmem-patch] 4GB with Linux on IA32

Linus Torvalds (torvalds@transmeta.com)
Thu, 19 Aug 1999 09:04:39 -0700 (PDT)


On Thu, 19 Aug 1999, Peter Desnoyers wrote:
>
> From your and Alan's responses, it looks like there are two
> acceptable mechanisms - either using the rawio patch / modifications
> (and map_user_kiobuf in particular) to map the pages, or reversing the
> process and mmap-ing kernel pages into user space.

Indeed.

> The first approach is a straightforward fit to my application, and has
> similar functionality to the interface we use in NT for the same purpose.
> (and perusing the rawio patch, which I was unfamiliar with until yesterday,
> was instructive in pointing out the perils of walking page tables - there
> are a number of cases handled there which would be botched by my code)

That's why I hate the notion of drives trying to do their own page table
walking. Especially with SMP there are some rather subtle issues, and it's
just hard to get right. The rawio interface also has the added advantage
of forcing some organization onto the driver - you can't do page table
walking from interrupts, for example, even though some driver writers have
tried..

So yes, something using the rawio interfaces is ok, at least that way when
something in the memory management changes I won't have to worry about
random drivers breaking..

Linus

-
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.tux.org/lkml/