aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2017-01-24 18:17:56 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2017-01-24 19:26:14 -0500
commitde182cc8e882f74af2a112e09f148ce646937232 (patch)
tree08d50362a81f1a786d94bec135ea3457ed57965d
parentb94f51183b0617e7b9b4fb4137d4cf1cab7547c2 (diff)
drivers/memstick/core/memstick.c: avoid -Wnonnull warning
gcc-7 produces a harmless false-postive warning about a possible NULL pointer access: drivers/memstick/core/memstick.c: In function 'h_memstick_read_dev_id': drivers/memstick/core/memstick.c:309:3: error: argument 2 null where non-null expected [-Werror=nonnull] memcpy(mrq->data, buf, mrq->data_len); This can't happen because the caller sets the command to 'MS_TPC_READ_REG', which causes the data direction to be 'READ' and the NULL pointer not accessed. As a simple workaround for the warning, we can pass a pointer to the data that we actually want to read into. This is not needed here, but also harmless, and lets the compiler know that the access is ok. Link: http://lkml.kernel.org/r/20170111144143.548867-1-arnd@arndb.de Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Alex Dubov <oakad@yahoo.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--drivers/memstick/core/memstick.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/memstick/core/memstick.c b/drivers/memstick/core/memstick.c
index a0547dbf9806..76382c858c35 100644
--- a/drivers/memstick/core/memstick.c
+++ b/drivers/memstick/core/memstick.c
@@ -330,7 +330,7 @@ static int h_memstick_read_dev_id(struct memstick_dev *card,
330 struct ms_id_register id_reg; 330 struct ms_id_register id_reg;
331 331
332 if (!(*mrq)) { 332 if (!(*mrq)) {
333 memstick_init_req(&card->current_mrq, MS_TPC_READ_REG, NULL, 333 memstick_init_req(&card->current_mrq, MS_TPC_READ_REG, &id_reg,
334 sizeof(struct ms_id_register)); 334 sizeof(struct ms_id_register));
335 *mrq = &card->current_mrq; 335 *mrq = &card->current_mrq;
336 return 0; 336 return 0;