Hello, *sigh* I found the problem. It's rather stupid. Cancelled readaheads were getting through as successfully completed. BIO_UPTODATE wasn't set, but no error was reported either. I gradually removed every feature from dm-crypt until I was basically down to dm-linear, but with my own endio handling. dm.c was already correctly catching this one, dm-crypt didn't. Also noticed a stupid use-after-free case. Both bugs are, by the way, fixed in 2.6.19 by the guy that rewrote the functions in order to handle the dm/md-stacking-stack-reduction stuff. So, the following patch is for the < 2.6.19 stable trees.
Attachment:
signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil