diff options
author | Rohith Surabattula <rohiths@microsoft.com> | 2021-09-17 17:29:42 +0000 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-09-30 10:12:53 +0200 |
commit | 9f6c7aff21f81ae8856da1f63847d1362d523409 (patch) | |
tree | c053feef76266e9a6d4bd0ef223a1337a4cee98e /fs | |
parent | 6344bc6cd2b446fb8cf83f979b1ca63cae647926 (diff) |
cifs: Fix soft lockup during fsstress
commit 71826b068884050d5fdd37fda857ba1539c513d3 upstream.
Below traces are observed during fsstress and system got hung.
[ 130.698396] watchdog: BUG: soft lockup - CPU#6 stuck for 26s!
Cc: stable@vger.kernel.org # 5.13+
Signed-off-by: Rohith Surabattula <rohiths@microsoft.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/cifs/misc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/cifs/misc.c b/fs/cifs/misc.c index 9469f1cf0b46..57e695e3c969 100644 --- a/fs/cifs/misc.c +++ b/fs/cifs/misc.c @@ -736,7 +736,7 @@ cifs_close_deferred_file(struct cifsInodeInfo *cifs_inode) if (cancel_delayed_work(&cfile->deferred)) { tmp_list = kmalloc(sizeof(struct file_list), GFP_ATOMIC); if (tmp_list == NULL) - continue; + break; tmp_list->cfile = cfile; list_add_tail(&tmp_list->list, &file_head); } @@ -767,7 +767,7 @@ cifs_close_all_deferred_files(struct cifs_tcon *tcon) if (cancel_delayed_work(&cfile->deferred)) { tmp_list = kmalloc(sizeof(struct file_list), GFP_ATOMIC); if (tmp_list == NULL) - continue; + break; tmp_list->cfile = cfile; list_add_tail(&tmp_list->list, &file_head); } |