From: Chris Mason Date: Sun, 6 May 2012 11:23:47 +0000 (-0400) Subject: Btrfs: avoid sleeping in verify_parent_transid while atomic X-Git-Tag: v3.4-rc6~2^2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b9fab919b748c7b39c19ff236ed6c5682c266dde;p=pandora-kernel.git Btrfs: avoid sleeping in verify_parent_transid while atomic verify_parent_transid needs to lock the extent range to make sure no IO is underway, and so it can safely clear the uptodate bits if our checks fail. But, a few callers are using it with spinlocks held. Most of the time, the generation numbers are going to match, and we don't want to switch to a blocking lock just for the error case. This adds an atomic flag to verify_parent_transid, and changes it to return EAGAIN if it needs to block to properly verifiy things. Signed-off-by: Chris Mason --- Reading git-diff-tree failed