X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=fs%2Fdquot.c;h=b9732335bcdcd6006733a9561e9ef8ceb8769117;hb=b01ef8ffafc5239a871bc24af74f604654e7de2b;hp=37212b039a4ab834770bfd663f503dcaa669a37a;hpb=2fa389c5eb8c97d621653184d2adf5fdbd4a3167;p=linux-2.6 diff --git a/fs/dquot.c b/fs/dquot.c index 37212b039a..b9732335bc 100644 --- a/fs/dquot.c +++ b/fs/dquot.c @@ -409,13 +409,10 @@ out_dqlock: * 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)