From: Sage Weil Date: Mon, 30 Jul 2012 23:20:25 +0000 (-0700) Subject: libceph: (re)initialize bio_iter on start of message receive X-Git-Tag: v3.6-rc1~36^2~52 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a4107026976f06c9a6ce8cc84a763564ee39d901;p=pandora-kernel.git libceph: (re)initialize bio_iter on start of message receive Previously, we were opportunistically initializing the bio_iter if it appeared to be uninitialized in the middle of the read path. The problem is that a sequence like: - start reading message - initialize bio_iter - read half a message - messenger fault, reconnect - restart reading message - ** bio_iter now non-NULL, not reinitialized ** - read past end of bio, crash Instead, initialize the bio_iter unconditionally when we allocate/claim the message for read. Signed-off-by: Sage Weil Reviewed-by: Alex Elder Reviewed-by: Yehuda Sadeh --- Reading git-diff-tree failed