Files
linux-apfs/net/ceph
Sage Weil a410702697 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 <sage@inktank.com>
Reviewed-by: Alex Elder <elder@inktank.com>
Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
2012-07-30 18:15:31 -07:00
..
2012-07-30 18:15:23 -07:00
2012-04-15 12:44:40 -04:00
2011-03-29 12:11:16 -07:00
2010-11-21 10:04:04 -08:00
2011-07-19 11:25:04 -07:00
2011-10-25 16:10:16 -07:00
2012-07-30 18:15:23 -07:00