Commit c9834c70 authored by Joe Lawrence's avatar Joe Lawrence Committed by Christoph Hellwig

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: default avatarJoe Lawrence <joe.lawrence@stratus.com>
Acked-by: default avatarSreekanth Reddy <Sreekanth.Reddy@avagotech.com>
Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
parent 3e67c459
...@@ -1408,8 +1408,8 @@ mpt_verify_adapter(int iocid, MPT_ADAPTER **iocpp) ...@@ -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) ...@@ -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) ...@@ -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 ...@@ -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];
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment