Prakash, Sathya wrote: 
> +static void
> +mpt_get_manufacturing_pg_0(MPT_ADAPTER *ioc)
> +{

> +
> +     memcpy(ioc->board_name, pbuf->BoardName, 16);
> +     memcpy(ioc->board_assembly, pbuf->BoardAssembly, 16);
> +     memcpy(ioc->board_tracer, pbuf->BoardTracerNumber, 16);

Are these guaranteed to be NULL terminated? The code below appears to
assume they are. Also you might want to use sizeof instead of hardcoding
16 here.

> +static ssize_t
> +mptscsih_version_driver_show(struct class_device *cdev, char *buf)
> +{
> +     return snprintf(buf, PAGE_SIZE, "%02d.%02d.%02d.%02d\n",
> +         MPT_LINUX_MAJOR_VERSION, MPT_LINUX_MINOR_VERSION,
> +         MPT_LINUX_BUILD_VERSION, MPT_LINUX_RELEASE_VERSION);
> +}
> +static CLASS_DEVICE_ATTR(version_driver, S_IRUGO, 
> mptscsih_version_driver_show, NULL);

You should be using the MODULE_VERSION macro instead of this. This results
in the version showing up in /sys/module/mpt_fusion/version

> +
> +static ssize_t
> +mptscsih_io_delay_show(struct class_device *cdev, char *buf)
> +{
> +     struct Scsi_Host *host = class_to_shost(cdev);
> +     MPT_SCSI_HOST   *hd = (MPT_SCSI_HOST *)host->hostdata;
> +     MPT_ADAPTER *ioc = hd->ioc;
> +     char delay_str[30];
> +
> +     sprintf(delay_str, "%02d", ioc->io_missing_delay);
> +     return snprintf(buf, PAGE_SIZE, "%s\n", delay_str);
> +}

Why not just do:

        return snprintf(buf, PAGE_SIZE, "%02d", ioc->io_missing_delay);

and get rid of the delay_str on the stack? In fact you have a lot
of double sprintf's which seem like they could be just a single snprintf.


-Brian

-- 
Brian King
Linux on Power Virtualization
IBM Linux Technology Center
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to