| From 5cfa2a3c7342bd0b50716c8bb32ee491af43c785 Mon Sep 17 00:00:00 2001 |
| From: Arnd Bergmann <arnd@arndb.de> |
| Date: Fri, 18 Nov 2016 17:14:01 +0100 |
| Subject: scsi: isci: avoid array subscript warning |
| |
| From: Arnd Bergmann <arnd@arndb.de> |
| |
| commit 5cfa2a3c7342bd0b50716c8bb32ee491af43c785 upstream. |
| |
| 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> |
| Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/scsi/isci/remote_node_context.c | 3 +++ |
| 1 file changed, 3 insertions(+) |
| |
| --- 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 |
| { |
| static const char * const strings[] = RNC_STATES; |
| |
| + if (state >= ARRAY_SIZE(strings)) |
| + return "UNKNOWN"; |
| + |
| return strings[state]; |
| } |
| #undef C |