UIO_NOCOPY in smbfs
dillon at apollo.backplane.com
Thu Mar 24 23:34:57 PST 2005
:How hard would it be to add the UIO_NOCOPY functionality in smbfs?
:This is required for sendfile(2) to work
:in /usr/src/sys/vfs/smbfs/smbfs_io.c on line 183 this exists:
: * Protect against method which is not supported for now
: if (uiop->uio_segflg == UIO_NOCOPY)
: return EOPNOTSUPP;
:EOPNOTSUPP is also the error that sendfile returns.
:If it's not too hard, I might give it a try as a newbeginner kernel
:hacker, given the right directions...
:I've seen this error reported on various places since this problem
:aslo exists in freebsd
I wouldn't call it a beginner programming task... the UIO_NOCOPY
is related to VM backed buffer cache pages. It basically tells smbfs
to load the data into the buffer cache and the backing pages will
just 'happen' to be the same as the ones backing the UIO, so no extra
copy is required.
<dillon at xxxxxxxxxxxxx>
More information about the Kernel