2011/8/19 Michal Nazarewicz <mina86@xxxxxxxxxx>: > On Fri, 19 Aug 2011 16:28:25 +0200, Per Forlin <per.forlin@xxxxxxxxxxxxxx> > wrote: >> >> @@ -3605,6 +3608,9 @@ static int __init fsg_init(void) >> int rc; >> struct fsg_dev *fsg; >> + if (!FSG_NUM_BUFFERS_IS_VALID(fsg_num_buffers)) > > Care to add pr_err() here? Or better yet, change fsg_num_buffers_is_valid() > to a function, eg.: > > static inline int fsg_num_buffers_validate() > { > if (fsg_num_buffers && fsg_num_buffers <= 4) > return 0; > pr_err("fsg_num_buffers too high: %u\n", fsg_num_buffers); > return -EINVAL; > } > Look good. This will permit only 1 buffer to be used. Is this intentionally? I'm fine with it. In Kconfig the range is 2 to 4. For debug purposes there may be a point of permitting range 1 to 4. >> + return -EINVAL; >> + >> if ((rc = fsg_alloc()) != 0) >> return rc; >> fsg = the_fsg; > > >> diff --git a/drivers/usb/gadget/mass_storage.c >> b/drivers/usb/gadget/mass_storage.c >> index d3eb274..fa6dedf 100644 >> --- a/drivers/usb/gadget/mass_storage.c >> +++ b/drivers/usb/gadget/mass_storage.c >> @@ -179,6 +179,9 @@ MODULE_LICENSE("GPL"); >> static int __init msg_init(void) >> { >> + if (!FSG_NUM_BUFFERS_IS_VALID(fsg_num_buffers)) >> + return -EINVAL; >> + >> return usb_composite_probe(&msg_driver, msg_bind); >> } >> module_init(msg_init); >> diff --git a/drivers/usb/gadget/multi.c b/drivers/usb/gadget/multi.c >> index 8c7b747..5f146da 100644 >> --- a/drivers/usb/gadget/multi.c >> +++ b/drivers/usb/gadget/multi.c >> @@ -360,6 +360,9 @@ static struct usb_composite_driver multi_driver = { >> static int __init multi_init(void) >> { >> + if (!FSG_NUM_BUFFERS_IS_VALID(fsg_num_buffers)) >> + return -EINVAL; >> + >> return usb_composite_probe(&multi_driver, multi_bind); >> } >> module_init(multi_init); > > I'd move the check from those two places to fsg_common_init(). > good point. > > Other then the above minor comments and buffers never being freed in > f_mass_storage.c, the code looks good to me. > I'll fix these and send out a new version. Many thanks, Per -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html