Re: Address spaces on a i386 - Getting Confused (fwd)

Stephen C. Tweedie (sct@redhat.com)
Thu, 1 Apr 1999 01:06:36 +0100 (BST)


Hi,

On Tue, 30 Mar 1999 20:15:51 +0530 (IST), ramak@wipinfo.soft.net
(Ramakrishna K) said:

> But a solution to DMA'ing to user-space will be
> a) lock the relevant user range into memory.
> b) touch them to fault the pages in.

Yes so far

> c) Then trap into the kernel using an ioctl to set up kernel address
> for this range. ( I bet there must be some VM calls to acheive
> that ). What i mean is that get the pages behind the locked
> user-address behind the kernel address.

Not necessarily. Standard Unix raw IO just faults the pages in and then
reads or writes from the physical pages, and it does so automatically on
a normal read() or write() system call. Zero copy IO does not require
any fancy new API. We can already do this on Linux with a little work
(ftp.uk.linux.org:/pub/linux/sct/fs/raw*).

--Stephen

-
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/