On Thu, Jan 29, 2015 at 3:52 PM, Rickard Strandqvist <rickard_strandqvist@xxxxxxxxxxxxxxxxxx> wrote: > The last one was more interesting, se below. > But I can not really see how any error should be handled here? > Proposal to change to: > > if (kstrtol(tempbuf, 16, &num) == 0 && num == 0) That whole chunk of code looks odd. Why the base 16 conversion when we already know it's a decimal digit? Seems like this would work without the hassle of the string conversion: -- >8 -- --- a/drivers/staging/emxx_udc/emxx_udc.c +++ b/drivers/staging/emxx_udc/emxx_udc.c @@ -3262,16 +3262,7 @@ static void __init nbu2ss_drv_set_ep_info( ep->ep.ops = &nbu2ss_ep_ops; if (isdigit(name[2])) { - - long num; - int res; - char tempbuf[2]; - - tempbuf[0] = name[2]; - tempbuf[1] = '\0'; - res = kstrtol(tempbuf, 16, &num); - - if (num == 0) + if (name[2] == '0') ep->ep.maxpacket = EP0_PACKETSIZE; else ep->ep.maxpacket = EP_PACKETSIZE; _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel