On Fri, Sep 13, 2013 at 10:05 AM, Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote: > The code here is copying the version to inq.driver_version but we don't > want it to be NUL terminated. Instead we pad the rest of the array with > spaces. It's fewer lines to use strncpy() and maybe a little nicer. > > Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> > > diff --git a/drivers/block/skd_main.c b/drivers/block/skd_main.c > index f892d95..20ad843 100644 > --- a/drivers/block/skd_main.c > +++ b/drivers/block/skd_main.c > @@ -2899,9 +2899,7 @@ static void skd_do_inq_page_da(struct skd_device *skdev, > volatile struct fit_comp_error_info *skerr, > uint8_t *cdb, uint8_t *buf) > { > - unsigned ver_byte; > unsigned max_bytes; > - char *ver = DRV_VER_COMPL; > struct driver_inquiry_data inq; > u16 val; > > @@ -2945,12 +2943,8 @@ static void skd_do_inq_page_da(struct skd_device *skdev, > /* Driver version, fixed lenth, padded with spaces on the right */ > inq.driver_version_length = sizeof(inq.driver_version); > memset(&inq.driver_version, ' ', sizeof(inq.driver_version)); > - for (ver_byte = 0; ver_byte < sizeof(inq.driver_version); ver_byte++) { > - if (ver[ver_byte] != 0) > - inq.driver_version[ver_byte] = ver[ver_byte]; > - else > - break; > - } > + strncpy(inq.driver_version, DRV_VER_COMPL, > + min(sizeof(inq.driver_version), strlen(DRV_VER_COMPL))); This does the exact same thing as memcpy(), right? So why not use that? memcpy() has much simpler semantics than strncpy(). > inq.page_length = cpu_to_be16((sizeof(inq) - 4)); Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds -- To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html