aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/lpfc/lpfc_hw.h
diff options
context:
space:
mode:
authorPhil Carmody <ext-phil.2.carmody@nokia.com>2011-07-14 08:07:13 -0400
committerJiri Kosina <jkosina@suse.cz>2011-07-21 08:10:00 -0400
commit497888cf69bf607ac1fe061a6437e0a670b0022f (patch)
treeac0897eff214f09c89d5f4fbc3c03ef9d010a83c /drivers/scsi/lpfc/lpfc_hw.h
parent06b72d06d6b182bdaaaec686dbd8b602949521ee (diff)
treewide: fix potentially dangerous trailing ';' in #defined values/expressions
All these are instances of #define NAME value; or #define NAME(params_opt) value; These of course fail to build when used in contexts like if(foo $OP NAME) while(bar $OP NAME) and may silently generate the wrong code in contexts such as foo = NAME + 1; /* foo = value; + 1; */ bar = NAME - 1; /* bar = value; - 1; */ baz = NAME & quux; /* baz = value; & quux; */ Reported on comp.lang.c, Message-ID: <ab0d55fe-25e5-482b-811e-c475aa6065c3@c29g2000yqd.googlegroups.com> Initial analysis of the dangers provided by Keith Thompson in that thread. There are many more instances of more complicated macros having unnecessary trailing semicolons, but this pile seems to be all of the cases of simple values suffering from the problem. (Thus things that are likely to be found in one of the contexts above, more complicated ones aren't.) Signed-off-by: Phil Carmody <ext-phil.2.carmody@nokia.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_hw.h')
-rw-r--r--drivers/scsi/lpfc/lpfc_hw.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/scsi/lpfc/lpfc_hw.h b/drivers/scsi/lpfc/lpfc_hw.h
index 9059524cf22..ab4c4d651d0 100644
--- a/drivers/scsi/lpfc/lpfc_hw.h
+++ b/drivers/scsi/lpfc/lpfc_hw.h
@@ -2955,18 +2955,18 @@ typedef struct _SLI2_RDSC {
2955typedef struct _PCB { 2955typedef struct _PCB {
2956#ifdef __BIG_ENDIAN_BITFIELD 2956#ifdef __BIG_ENDIAN_BITFIELD
2957 uint32_t type:8; 2957 uint32_t type:8;
2958#define TYPE_NATIVE_SLI2 0x01; 2958#define TYPE_NATIVE_SLI2 0x01
2959 uint32_t feature:8; 2959 uint32_t feature:8;
2960#define FEATURE_INITIAL_SLI2 0x01; 2960#define FEATURE_INITIAL_SLI2 0x01
2961 uint32_t rsvd:12; 2961 uint32_t rsvd:12;
2962 uint32_t maxRing:4; 2962 uint32_t maxRing:4;
2963#else /* __LITTLE_ENDIAN_BITFIELD */ 2963#else /* __LITTLE_ENDIAN_BITFIELD */
2964 uint32_t maxRing:4; 2964 uint32_t maxRing:4;
2965 uint32_t rsvd:12; 2965 uint32_t rsvd:12;
2966 uint32_t feature:8; 2966 uint32_t feature:8;
2967#define FEATURE_INITIAL_SLI2 0x01; 2967#define FEATURE_INITIAL_SLI2 0x01
2968 uint32_t type:8; 2968 uint32_t type:8;
2969#define TYPE_NATIVE_SLI2 0x01; 2969#define TYPE_NATIVE_SLI2 0x01
2970#endif 2970#endif
2971 2971
2972 uint32_t mailBoxSize; 2972 uint32_t mailBoxSize;