]> www.infradead.org Git - users/hch/configfs.git/commitdiff
netfs: Fix a KMSAN uninit-value error in netfs_clear_buffer
authorChang Yu <marcus.yu.56@gmail.com>
Tue, 1 Oct 2024 06:31:52 +0000 (23:31 -0700)
committerChristian Brauner <brauner@kernel.org>
Tue, 1 Oct 2024 14:02:42 +0000 (16:02 +0200)
Use folioq_count instead of folioq_nr_slots to fix a KMSAN uninit-value
error in netfs_clear_buffer

Signed-off-by: Chang Yu <marcus.yu.56@gmail.com>
Link: https://lore.kernel.org/r/ZvuXWC2bYpvQsWgS@gmail.com
Fixes: cd0277ed0c18 ("netfs: Use new folio_queue data type and iterator instead of xarray iter")
Acked-by: David Howells <dhowells@redhat.com>
Reported-by: syzbot+921873345a95f4dae7e9@syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?extid=921873345a95f4dae7e9
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/netfs/misc.c

index 63280791de3b3882b1187456566705b996275ddc..78fe5796b2b2f7fc31547ae2ae6b2d686cc3a111 100644 (file)
@@ -102,7 +102,7 @@ void netfs_clear_buffer(struct netfs_io_request *rreq)
 
        while ((p = rreq->buffer)) {
                rreq->buffer = p->next;
-               for (int slot = 0; slot < folioq_nr_slots(p); slot++) {
+               for (int slot = 0; slot < folioq_count(p); slot++) {
                        struct folio *folio = folioq_folio(p, slot);
                        if (!folio)
                                continue;