From: Sage Weil Date: Tue, 26 Jul 2011 18:26:31 +0000 (-0700) Subject: ceph: fix snap writeback when racing with writes X-Git-Tag: v3.1-rc1~220^2~19 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=af0ed569d7019f1b49e9e51e77b47092e656b00e;p=pandora-kernel.git ceph: fix snap writeback when racing with writes There are two problems that come up when we try to queue a capsnap while a write is in progress: - The FILE_WR cap is held, but not yet dirty, so we may queue a capsnap with dirty == 0. That will crash later in __ceph_flush_snaps(). Or on the FILE_WR cap if a write is in progress. - We may not have i_head_snapc set, which causes problems pretty quickly. Look to the snaprealm in this case. Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil --- Reading git-diff-tree failed