Loading fs/dcache.c +4 −0 Original line number Diff line number Diff line Loading @@ -2924,6 +2924,7 @@ static int prepend_path(const struct path *path, restart_mnt: read_seqbegin_or_lock(&mount_lock, &m_seq); seq = 0; rcu_read_lock(); restart: bptr = *buffer; blen = *buflen; Loading Loading @@ -2971,6 +2972,9 @@ static int prepend_path(const struct path *path, goto restart; } done_seqretry(&rename_lock, seq); if (!(m_seq & 1)) rcu_read_unlock(); if (need_seqretry(&mount_lock, m_seq)) { m_seq = 1; goto restart_mnt; Loading Loading
fs/dcache.c +4 −0 Original line number Diff line number Diff line Loading @@ -2924,6 +2924,7 @@ static int prepend_path(const struct path *path, restart_mnt: read_seqbegin_or_lock(&mount_lock, &m_seq); seq = 0; rcu_read_lock(); restart: bptr = *buffer; blen = *buflen; Loading Loading @@ -2971,6 +2972,9 @@ static int prepend_path(const struct path *path, goto restart; } done_seqretry(&rename_lock, seq); if (!(m_seq & 1)) rcu_read_unlock(); if (need_seqretry(&mount_lock, m_seq)) { m_seq = 1; goto restart_mnt; Loading