[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH net-next v4] xen-netback: Adding debugfs "io_ring_qX" files
Hi, I'm a noob to linux kernel, I tried to figure out the usage of the function "simple_write_to_buffer", and I got confused about the code here. > +static ssize_t > +xenvif_write_io_ring(struct file *filp, const char __user *buf, size_t count, > + loff_t *ppos) > +{ > + struct xenvif_queue *queue = > + ((struct seq_file *)filp->private_data)->private; > + int len; > + char write[sizeof(XENVIF_KICK_STR)]; > + > + /* don't allow partial writes and check the length */ > + if (*ppos != 0) > + return 0; > + if (count < sizeof(XENVIF_KICK_STR) - 1) > + return -ENOSPC; The statement here is trying to verify the value of "count" is smaller than the size of array "write", make sure that the array got enough space for the write operation, right? So, I think the statement should be: if (count >= sizeof(XENVIF_KICK_STR)) return -ENOSPC; Sorry for bothering if I am mistaken. > + > + len = simple_write_to_buffer(write, > + sizeof(write), > + ppos, > + buf, > + count); > + if (len < 0) > + return len; > + > + if (!strncmp(write, XENVIF_KICK_STR, sizeof(XENVIF_KICK_STR) - 1)) > + xenvif_interrupt(0, (void *)queue); > + else { > + pr_warn("Unknown command to io_ring_q%d. Available: kick\n", > + queue->id); > + count = -EINVAL; > + } > + return count; > +} _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |