forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
kernel/fs/cifs/cifssmb.c
....@@ -4859,8 +4859,13 @@
48594859 return -ENODEV;
48604860
48614861 getDFSRetry:
4862
- rc = smb_init(SMB_COM_TRANSACTION2, 15, ses->tcon_ipc, (void **) &pSMB,
4863
- (void **) &pSMBr);
4862
+ /*
4863
+ * Use smb_init_no_reconnect() instead of smb_init() as
4864
+ * CIFSGetDFSRefer() may be called from cifs_reconnect_tcon() and thus
4865
+ * causing an infinite recursion.
4866
+ */
4867
+ rc = smb_init_no_reconnect(SMB_COM_TRANSACTION2, 15, ses->tcon_ipc,
4868
+ (void **)&pSMB, (void **)&pSMBr);
48644869 if (rc)
48654870 return rc;
48664871