On Wed, 2011-04-13 at 08:50 -0700, Greg KH wrote: > 2.6.32-longterm review patch. If anyone has any objections, please let us > know. > > ------------------ > > From: Jan Kara <[email protected]> > > commit b03f24567ce7caf2420b8be4c6eb74c191d59a91 upstream. > > There's no reason to write quota info in dquot_commit(). The writing is a > relict from the old days when we didn't have dquot_acquire() and > dquot_release() and thus dquot_commit() could have created / removed quota > structures from the file. These days dquot_commit() only updates usage > counters > / limits in quota structure and thus there's no need to write quota info. > > This also fixes an issue with journaling filesystem which didn't reserve > enough space in the transaction for write of quota info (it could have been > dirty at the time of dquot_commit() because of a race with other operation > changing it). [...] > @@ -400,15 +400,10 @@ int dquot_commit(struct dquot *dquot) > spin_unlock(&dq_list_lock); > /* Inactive dquot can be only if there was error during read/init > * => we have better not writing it */ > - if (test_bit(DQ_ACTIVE_B, &dquot->dq_flags)) { > + if (test_bit(DQ_ACTIVE_B, &dquot->dq_flags)) > ret = dqopt->ops[dquot->dq_type]->commit_dqblk(dquot); > - if (info_dirty(&dqopt->info[dquot->dq_type])) { > - ret2 = dqopt->ops[dquot->dq_type]->write_file_info( > - dquot->dq_sb, dquot->dq_type); > - } > - if (ret >= 0) > - ret = ret2; > - } > + else > + ret = -EIO; [...]
Why is the return value for the flag-not-set case changed from 0 to -EIO? Is this really part of the same bug fix? Ben. -- Ben Hutchings Once a job is fouled up, anything done to improve it makes it worse.
signature.asc
Description: This is a digitally signed message part
_______________________________________________ stable mailing list [email protected] http://linux.kernel.org/mailman/listinfo/stable
