Date: Mon, 12 Dec 2005 09:33:37 +0530 From: rashmi ns <nsrashmi@gmail.com> To: freebsd-hackers@freebsd.org, freebsd-drivers@freebsd.org Subject: Help Reqd: "uiomove" transferring zero bytes from user-kernel space Message-ID: <9f9993160512112003i56f25cd6t78533717fec580d1@mail.gmail.com>
index | next in thread | raw e-mail
Hello Team,
when i use "uiomove" in the character device
interface the no of bytes transfrerred between kernel and userspace is
zero .but the actual data transferred when trraced through
"uio->resid" is correct .can any one explain why this is happening ?
/*Character Device Interfaces*/
static struct cdevsw hdlc_cdevsw = {
.d_maj = CDEV_MAJOR,
.d_open = hdlc_open,
.d_read = hdlc_read,
.d_write = hdlc_write,
.d_ioctl = hdlc_ioctl,
.d_close = hdlc_close,
.d_version = D_VERSION,
};
static int hdlc_write(dev_t dev, struct uio *uio, int ioflag)
{
int towrite,written; /*char device inf*/
written=uiomove((void *)write_tx_buffer,towrite,uio);
uprintf("uio->resid=%d",uio->uio_resid);
uprintf("No of bytes written =%d",written);
}
Thanks and Regards,
Rashmi.N.S
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9f9993160512112003i56f25cd6t78533717fec580d1>
