mptfusion: make adapter prod_name[] a pointer
The struct _MPT_ADAPTER doesn't need a full copy of the product string,
so prod_name can point to the string literal storage that the driver
already provides.
Avoids the following smatch warning:
drivers/message/fusion/mptbase.c:2858 MptDisplayIocCapabilities()
warn: this array is probably non-NULL. 'ioc->prod_name'
Signed-off-by: Joe Lawrence <joe.lawrence@stratus.com>
Acked-by: Sreekanth Reddy <Sreekanth.Reddy@avagotech.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
This commit is contained in:
committed by
Christoph Hellwig
parent
3e67c459d0
commit
c9834c70ef
@@ -1408,8 +1408,8 @@ mpt_verify_adapter(int iocid, MPT_ADAPTER **iocpp)
|
|||||||
* in /proc/mpt/summary and /sysfs/class/scsi_host/host<X>/version_product
|
* in /proc/mpt/summary and /sysfs/class/scsi_host/host<X>/version_product
|
||||||
*
|
*
|
||||||
**/
|
**/
|
||||||
static void
|
static const char*
|
||||||
mpt_get_product_name(u16 vendor, u16 device, u8 revision, char *prod_name)
|
mpt_get_product_name(u16 vendor, u16 device, u8 revision)
|
||||||
{
|
{
|
||||||
char *product_str = NULL;
|
char *product_str = NULL;
|
||||||
|
|
||||||
@@ -1635,8 +1635,7 @@ mpt_get_product_name(u16 vendor, u16 device, u8 revision, char *prod_name)
|
|||||||
}
|
}
|
||||||
|
|
||||||
out:
|
out:
|
||||||
if (product_str)
|
return product_str;
|
||||||
sprintf(prod_name, "%s", product_str);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1887,8 +1886,8 @@ mpt_attach(struct pci_dev *pdev, const struct pci_device_id *id)
|
|||||||
dinitprintk(ioc, printk(MYIOC_s_INFO_FMT "facts @ %p, pfacts[0] @ %p\n",
|
dinitprintk(ioc, printk(MYIOC_s_INFO_FMT "facts @ %p, pfacts[0] @ %p\n",
|
||||||
ioc->name, &ioc->facts, &ioc->pfacts[0]));
|
ioc->name, &ioc->facts, &ioc->pfacts[0]));
|
||||||
|
|
||||||
mpt_get_product_name(pdev->vendor, pdev->device, pdev->revision,
|
ioc->prod_name = mpt_get_product_name(pdev->vendor, pdev->device,
|
||||||
ioc->prod_name);
|
pdev->revision);
|
||||||
|
|
||||||
switch (pdev->device)
|
switch (pdev->device)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -605,7 +605,7 @@ typedef struct _MPT_ADAPTER
|
|||||||
int id; /* Unique adapter id N {0,1,2,...} */
|
int id; /* Unique adapter id N {0,1,2,...} */
|
||||||
int pci_irq; /* This irq */
|
int pci_irq; /* This irq */
|
||||||
char name[MPT_NAME_LENGTH]; /* "iocN" */
|
char name[MPT_NAME_LENGTH]; /* "iocN" */
|
||||||
char prod_name[MPT_NAME_LENGTH]; /* "LSIFC9x9" */
|
const char *prod_name; /* "LSIFC9x9" */
|
||||||
#ifdef CONFIG_FUSION_LOGGING
|
#ifdef CONFIG_FUSION_LOGGING
|
||||||
/* used in mpt_display_event_info */
|
/* used in mpt_display_event_info */
|
||||||
char evStr[EVENT_DESCR_STR_SZ];
|
char evStr[EVENT_DESCR_STR_SZ];
|
||||||
|
|||||||
Reference in New Issue
Block a user