CVS log for xfs-linux-nodel/xfs_iget.c

[BACK] Up to [Development] / xfs-linux-nodel

Request diff between arbitrary revisions


Default branch: MAIN
Current tag: HEAD


Revision 1.256 / (download) - annotate - [select for diffs], Wed Oct 29 05:22:52 2008 UTC (8 years, 11 months ago) by lachlan.longdrop.melbourne.sgi.com
Branch: MAIN
CVS Tags: HEAD
Changes since 1.255: +22 -10 lines
Diff to previous 1.255 (colored)

Fix race when looking up reclaimable inodes

If we get a race looking up a reclaimable inode, we can
end up with the winner proceeding to use the inode before
it has been completely re-initialised. This is a Bad Thing.

Fix the race by checking whether we are still initialising the
inod eonce we have a reference to it, and if so wait for the
initialisation to complete before continuing.

While there, fix a leaked reference count in the same code
when encountering an unlinked inode and we are not doing a
lookup for a create operation.

Signed-off-by: Dave Chinner <david@fromorbit.com>
Merge of xfs-linux-melb:xfs-kern:32429a by kenmcd.

  Fix race when looking up reclaimable inodes

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>