UIO_NOCOPY in smbfs

Matthew Dillon 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
:
:Regards
:Jonas Trollvik

    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.

					-Matt
					Matthew Dillon 
					<dillon at xxxxxxxxxxxxx>





More information about the Kernel mailing list