Closed xdarklight closed 3 years ago
@xdarklight What kernel version do you use with ksmbd ?
5.4.66 plus OpenWrt's kernel patches
@xdarklight Could you please reproduce the issue with the below change ?
diff --git a/smb1pdu.c b/smb1pdu.c
index 849bb17..226209d 100644
--- a/smb1pdu.c
+++ b/smb1pdu.c
@@ -6381,7 +6381,6 @@ err_out:
rsp->hdr.Status.CifsError =
STATUS_UNEXPECTED_IO_ERROR;
- ksmbd_fd_put(work, dir_fp);
kfree(d_info.smb1_name);
kfree(pathname);
return 0;
it doesn't fix it but you are pointing me in the right direction: the problem is actually d_info
right below.
I'll open a pull request to fix this
@xdarklight Applied. Thanks for your patch!
thank you for all the hard work your doing on ksmbd @namjaejeon as well as for being so quick with looking at my changes and giving feedback!
@xdarklight thank you so much for your contribution!
I can reproduce the following crash 100% when having all ksmbd debug logging disabled. When I have ksmbd's debug logging ("all") active then it rarely happens.
This looks similar (also happening inside the SLUB allocator) but not idential to #426
ksmbd is running on a BT Home Hub 5A (Big Endian MIPS, lantiq xrx200 target in OpenWrt). I'm using an USB hard disk with ext4 as filesystem.
The client is a PlayStation 2.
I made two tcpdump captures and the last captured packet in both is a TRANS2 request, one with FIND_NEXT and the other with QUERY_PATH_INFO.
@namjaejeon I'm happy for any ideas how to debug this? the crash dump doesn't contain references to the ksmbd code