On Mon, 5 Mar 2012 13:49:07 -0800, Santosh Jodh <Santosh.Jodh@xxxxxxxxxx> wrote: > +/* Order of maximum shared ring size advertised to the front end. */ > +int xen_blkif_max_ring_order = XENBUS_MAX_RING_ORDER; > + > +#define BLK_RING_SIZE(_order) __CONST_RING_SIZE(blkif, PAGE_SIZE << (_order)) > + > +static int set_max_ring_order(const char *buf, struct kernel_param *kp) > +{ > + int err; > + unsigned long order; > + > + err = kstrtol(buf, 0, &order); > + if (err || > + order < 0 || > + order > XENBUS_MAX_RING_ORDER) > + return -EINVAL; Hmm, order can't be < 0, since it's unsigned. So did you mean kstrtoull? And I think returning err is cleaner (it's -EINVAL for malformed strings, -ERANGE for ones too big). > + if (xen_blkif_reqs < BLK_RING_SIZE(order)) > + printk(KERN_WARNING "WARNING: " > + "I/O request space (%d reqs) < ring order %ld, " > + "consider increasing %s.reqs to >= %ld.", > + xen_blkif_reqs, order, KBUILD_MODNAME, > + roundup_pow_of_two(BLK_RING_SIZE(order))); This message doesn't mention the module namr or parameter name anywhere. Think of the poor sysadmins! Thanks, Rusty. -- How could I marry someone with more hair than me? http://baldalex.org -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html