]> www.infradead.org Git - users/willy/xarray.git/commit
cifs: Use iterate_and_advance*() routines directly for hashing
authorDavid Howells <dhowells@redhat.com>
Fri, 26 Jul 2024 19:03:07 +0000 (20:03 +0100)
committerChristian Brauner <brauner@kernel.org>
Thu, 12 Sep 2024 10:20:42 +0000 (12:20 +0200)
commit2982c8c19bab020e38da9d503aa21a3b389c53ac
treee20fc3c40e4b4572dd472063f14427cc264856ef
parent8f246b7c0a1be0882374f2ff831a61f0dbe77678
cifs: Use iterate_and_advance*() routines directly for hashing

Replace the bespoke cifs iterators of ITER_BVEC and ITER_KVEC to do hashing
with iterate_and_advance_kernel() - a variant on iterate_and_advance() that
only supports kernel-internal ITER_* types and not UBUF/IOVEC types.

The bespoke ITER_XARRAY is left because we don't really want to be calling
crypto_shash_update() under the RCU read lock for large amounts of data;
besides, ITER_XARRAY is going to be phased out.

Signed-off-by: David Howells <dhowells@redhat.com>
cc: Steve French <sfrench@samba.org>
cc: Paulo Alcantara <pc@manguebit.com>
cc: Tom Talpey <tom@talpey.com>
cc: Enzo Matsumiya <ematsumiya@suse.de>
cc: linux-cifs@vger.kernel.org
Link: https://lore.kernel.org/r/20240814203850.2240469-24-dhowells@redhat.com/
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/smb/client/cifsencrypt.c
include/linux/iov_iter.h