diff --git a/[refs] b/[refs] index b7e620bf6bf7..472917963593 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 97998d8fdb5530edd466b006423a422ea790cf23 +refs/heads/master: c33ed271263f5fb6ca5ab888b98a55ae5d138c0b diff --git a/trunk/fs/dquot.c b/trunk/fs/dquot.c index 37212b039a4a..b9732335bcdc 100644 --- a/trunk/fs/dquot.c +++ b/trunk/fs/dquot.c @@ -409,13 +409,10 @@ int dquot_release(struct dquot *dquot) * for this sb+type at all. */ static void invalidate_dquots(struct super_block *sb, int type) { - struct dquot *dquot; - struct list_head *head; + struct dquot *dquot, *tmp; spin_lock(&dq_list_lock); - for (head = inuse_list.next; head != &inuse_list;) { - dquot = list_entry(head, struct dquot, dq_inuse); - head = head->next; + list_for_each_entry_safe(dquot, tmp, &inuse_list, dq_inuse) { if (dquot->dq_sb != sb) continue; if (dquot->dq_type != type)