]> www.infradead.org Git - users/jedix/linux-maple.git/commit
ksmbd: retry iterate_dir in smb2_query_dir
authorHobin Woo <hobin.woo@samsung.com>
Thu, 5 Dec 2024 02:31:19 +0000 (11:31 +0900)
committerSteve French <stfrench@microsoft.com>
Tue, 10 Dec 2024 23:48:06 +0000 (17:48 -0600)
commit2b904d61a97e8ba79e3bc216ba290fd7e1d85028
tree909baef7f861903d2dc9bc9e90e03af90897e5d3
parentfac04efc5c793dccbd07e2d59af9f90b7fc0dca4
ksmbd: retry iterate_dir in smb2_query_dir

Some file systems do not ensure that the single call of iterate_dir
reaches the end of the directory. For example, FUSE fetches entries from
a daemon using 4KB buffer and stops fetching if entries exceed the
buffer. And then an actor of caller, KSMBD, is used to fill the entries
from the buffer.
Thus, pattern searching on FUSE, files located after the 4KB could not
be found and STATUS_NO_SUCH_FILE was returned.

Signed-off-by: Hobin Woo <hobin.woo@samsung.com>
Reviewed-by: Sungjong Seo <sj1557.seo@samsung.com>
Reviewed-by: Namjae Jeon <linkinjeon@kernel.org>
Tested-by: Yoonho Shin <yoonho.shin@samsung.com>
Acked-by: Namjae Jeon <linkinjeon@kernel.org>
Signed-off-by: Steve French <stfrench@microsoft.com>
fs/smb/server/smb2pdu.c
fs/smb/server/vfs.h