scsi: libosd: Remove VLA usage
authorKees Cook <keescook@chromium.org>
Wed, 2 May 2018 22:55:45 +0000 (15:55 -0700)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 15 May 2018 02:32:45 +0000 (22:32 -0400)
On the quest to remove all VLAs from the kernel[1] this rearranges the
code to avoid a VLA warning under -Wvla (gcc doesn't recognize "const"
variables as not triggering VLA creation). Additionally cleans up
variable naming to avoid 80 character column limit.

[1] https://lkml.kernel.org/r/CA+55aFzCG-zNmZwX4A2FQpadafLfEzK6CC=qPXydAacU1RqZWA@mail.gmail.com

Signed-off-by: Kees Cook <keescook@chromium.org>
Acked-by: Boaz Harrosh <ooo@electrozaur.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/osd/osd_initiator.c

index e188771..917a86a 100644 (file)
@@ -1842,14 +1842,14 @@ int osd_req_decode_sense_full(struct osd_request *or,
                case osd_sense_response_integrity_check:
                {
                        struct osd_sense_response_integrity_check_descriptor
-                               *osricd = cur_descriptor;
-                       const unsigned len =
-                                         sizeof(osricd->integrity_check_value);
-                       char key_dump[len*4 + 2]; /* 2nibbles+space+ASCII */
-
-                       hex_dump_to_buffer(osricd->integrity_check_value, len,
-                                      32, 1, key_dump, sizeof(key_dump), true);
-                       OSD_SENSE_PRINT2("response_integrity [%s]\n", key_dump);
+                               *d = cur_descriptor;
+                       /* 2nibbles+space+ASCII */
+                       char dump[sizeof(d->integrity_check_value) * 4 + 2];
+
+                       hex_dump_to_buffer(d->integrity_check_value,
+                                       sizeof(d->integrity_check_value),
+                                       32, 1, dump, sizeof(dump), true);
+                       OSD_SENSE_PRINT2("response_integrity [%s]\n", dump);
                }
                case osd_sense_attribute_identification:
                {