cifs: use LIST_HEAD() and list_move() to simplify code

list_head can be initialized automatically with LIST_HEAD()
instead of calling INIT_LIST_HEAD().

Using list_move() instead of list_del() and list_add().

Reviewed-by: Paulo Alcantara (SUSE) <pc@cjr.nz>
Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
This commit is contained in:
Yang Yingliang 2022-10-17 16:55:08 +08:00 committed by Steve French
parent 10269f1325
commit d32f211adb
1 changed files with 4 additions and 8 deletions

View File

@ -378,13 +378,11 @@ void invalidate_all_cached_dirs(struct cifs_tcon *tcon)
{
struct cached_fids *cfids = tcon->cfids;
struct cached_fid *cfid, *q;
struct list_head entry;
LIST_HEAD(entry);
INIT_LIST_HEAD(&entry);
spin_lock(&cfids->cfid_list_lock);
list_for_each_entry_safe(cfid, q, &cfids->entries, entry) {
list_del(&cfid->entry);
list_add(&cfid->entry, &entry);
list_move(&cfid->entry, &entry);
cfids->num_entries--;
cfid->is_open = false;
/* To prevent race with smb2_cached_lease_break() */
@ -518,15 +516,13 @@ struct cached_fids *init_cached_dirs(void)
void free_cached_dirs(struct cached_fids *cfids)
{
struct cached_fid *cfid, *q;
struct list_head entry;
LIST_HEAD(entry);
INIT_LIST_HEAD(&entry);
spin_lock(&cfids->cfid_list_lock);
list_for_each_entry_safe(cfid, q, &cfids->entries, entry) {
cfid->on_list = false;
cfid->is_open = false;
list_del(&cfid->entry);
list_add(&cfid->entry, &entry);
list_move(&cfid->entry, &entry);
}
spin_unlock(&cfids->cfid_list_lock);