public inbox for linux-block@vger.kernel.org
 help / color / mirror / Atom feed
* [bug report] block: bio-integrity: directly map user buffers
@ 2023-12-05  9:35 Dan Carpenter
  2023-12-05 16:29 ` Keith Busch
  0 siblings, 1 reply; 3+ messages in thread
From: Dan Carpenter @ 2023-12-05  9:35 UTC (permalink / raw)
  To: kbusch; +Cc: linux-block

Hello Keith Busch,

The patch 492c5d455969: "block: bio-integrity: directly map user
buffers" from Nov 30, 2023 (linux-next), leads to the following
Smatch static checker warning:

	block/bio-integrity.c:350 bio_integrity_map_user()
	error: uninitialized symbol 'offset'.

block/bio-integrity.c
    340                 if (!bvec)
    341                         return -ENOMEM;
    342                 pages = NULL;
    343         }
    344 
    345         copy = !iov_iter_is_aligned(&iter, align, align);
    346         ret = iov_iter_extract_pages(&iter, &pages, bytes, nr_vecs, 0, &offset);

Smatch is concerned about the first "return 0;" if bytes or iter.count
is zero.  In that situation then offset is uninitialized.

    347         if (unlikely(ret < 0))
    348                 goto free_bvec;
    349 
--> 350         nr_bvecs = bvec_from_pages(bvec, pages, nr_vecs, bytes, offset);
                                                                        ^^^^^^

    351         if (pages != stack_pages)
    352                 kvfree(pages);
    353         if (nr_bvecs > queue_max_integrity_segments(q))
    354                 copy = true;
    355 
    356         if (copy)
    357                 ret = bio_integrity_copy_user(bio, bvec, nr_bvecs, bytes,
    358                                               direction, seed);
    359         else

regards,
dan carpenter

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-12-06  5:26 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-12-05  9:35 [bug report] block: bio-integrity: directly map user buffers Dan Carpenter
2023-12-05 16:29 ` Keith Busch
2023-12-06  5:26   ` Dan Carpenter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox