Message ID | 20161118161418.755779-1-arnd@arndb.de (mailing list archive) |
---|---|
State | Accepted, archived |
Headers | show |
>>>>> "Arnd" == Arnd Bergmann <arnd@arndb.de> writes:
Arnd> I'm getting a new warning with gcc-7: isci/remote_node_context.c:
Arnd> In function 'sci_remote_node_context_destruct':
Arnd> isci/remote_node_context.c:69:16: error: array subscript is above
Arnd> array bounds [-Werror=array-bounds]
Applied to 4.10/scsi-queue.
diff --git a/drivers/scsi/isci/remote_node_context.c b/drivers/scsi/isci/remote_node_context.c index 30bd80052e03..e3f2a5359d71 100644 --- a/drivers/scsi/isci/remote_node_context.c +++ b/drivers/scsi/isci/remote_node_context.c @@ -66,6 +66,9 @@ const char *rnc_state_name(enum scis_sds_remote_node_context_states state) { static const char * const strings[] = RNC_STATES; + if (state >= ARRAY_SIZE(strings)) + return "UNKNOWN"; + return strings[state]; } #undef C
I'm getting a new warning with gcc-7: isci/remote_node_context.c: In function 'sci_remote_node_context_destruct': isci/remote_node_context.c:69:16: error: array subscript is above array bounds [-Werror=array-bounds] This is odd, since we clearly cover all values for enum scis_sds_remote_node_context_states here. Anyway, checking for an array overflow can't harm and it makes the warning go away. Signed-off-by: Arnd Bergmann <arnd@arndb.de> --- drivers/scsi/isci/remote_node_context.c | 3 +++ 1 file changed, 3 insertions(+)