Re: PATCH: Raw device IO for 2.1.131

Larry McVoy (lm@bitmover.com)
Sat, 12 Dec 1998 10:44:38 -0800


> > Finally, I'd put all this lock down pages stuff into a mm/*.c file.
> > I want to use it for networking if it goes in (zero copy TCP, NFS
> > directly into page cache, etc.).
>
> Well for sendfile() it seems ideal for zero copying. I'd second it being in
> mm/*.c - I want it for video capture

I came into this late but I want this too. I need to bring you up to date
on some stuff I'm trying to make happen with the disk/network people.
I'm working with one of the big disk drive companies. They want to
put networking on the disk drives. In order for this not to be a joke,
there needs to be a way to essentially do DMA over the network - standard
networking won't be fast enough (in other words, if a 386 can set up a
DMA to move data off the disk at 20MB/sec, then the same 386 had better
be able to do the same thing with a network disk - that isn't true today).

There is a way of accomplishing the goal - SGI does it with
something called scheduled transfer (you can sort of read about it at
http://bitmover.com/talks/pp/slide01.html ) - they can do 791MBytes/sec
over their GSN network using this technique.

The technique requires that you can lock down pages and set things up
such that the card does all the work - the OS sets up the "descriptors"
and then stands back and lets the "network DMA" happen.

I've agreed to work with SGI and the disk & networking people to try and
make a ST-lite specification which would work for everyone. Linux is the
primary target for this, so as soon as there is an implementation, you'll
all get it.

So, Linus, I know you haven't been thrilled about "raw I/O" and that you
have some very valid reasons for not wanting it in the kernel. Does the
patch for raw device I/O come anywhere near being good enough that you
are OK with it? If not, can you suggest what it would need to look like?

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