[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230908160322.1714302-1-dhowells@redhat.com>
Date: Fri, 8 Sep 2023 17:03:19 +0100
From: David Howells <dhowells@...hat.com>
To: Jens Axboe <axboe@...nel.dk>, Al Viro <viro@...iv.linux.org.uk>,
Christoph Hellwig <hch@....de>
Cc: David Howells <dhowells@...hat.com>,
Matthew Wilcox <willy@...radead.org>,
Christian Brauner <brauner@...nel.org>,
David Hildenbrand <david@...hat.com>,
John Hubbard <jhubbard@...dia.com>,
Jeff Layton <jlayton@...nel.org>,
Linus Torvalds <torvalds@...ux-foundation.org>,
linux-fsdevel@...r.kernel.org, linux-block@...r.kernel.org,
linux-kselftest@...r.kernel.org, linux-mm@...ck.org,
linux-kernel@...r.kernel.org
Subject: [PATCH 0/3] iov_iter: Add kunit tests and fix iov_iter_extract_pages()
Hi Jens, Christoph, Al,
Here are two patches to add some kunit tests for the iov_iter stuff and a
patch to fix a couple of bugs found by these tests.
It's by no means comprehensive, but it does at least test the basic
copy_to_iter(), copy_from_iter() and iov_iter_extract_pages() for
ITER_KVEC, ITER_BVEC and ITER_XARRAY.
I've left ITER_UBUF and ITER_IOVEC untested for now as they require
userspace VM interaction and I'm not sure if that's possible under kunit
tests. I've also left ITER_DISCARD for the moment as that does nothing and
can't be extracted.
The kunit tests should also perhaps be using folios rather than pages, but
for the moment I'm using pages because I'm using vmap() and also
iov_iter_extract_pages() doesn't yet have a folio equivalent.
I've pushed the patches here also:
https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/log/?h=iov-fixes
David
David Howells (3):
iov_iter: Fix iov_iter_extract_pages()
iov_iter: Kunit tests for copying to/from an iterator
iov_iter: Kunit tests for page extraction
lib/Kconfig.debug | 11 +
lib/Makefile | 1 +
lib/iov_iter.c | 30 +-
lib/kunit_iov_iter.c | 777 +++++++++++++++++++++++++++++++++++++++++++
4 files changed, 804 insertions(+), 15 deletions(-)
create mode 100644 lib/kunit_iov_iter.c
Powered by blists - more mailing lists