hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
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