On Mon, Feb 16, 2009 at 9:27 AM, Jens Axboe <jens.axboe@xxxxxxxxxx> wrote: > On Mon, Feb 16 2009, Michael S. Tsirkin wrote: >> On Mon, Feb 16, 2009 at 2:05 AM, Michael S. Tsirkin >> <m.s.tsirkin@xxxxxxxxx> wrote: >> > Summary: seem to need to revert 213d9417fec62ef4c3675621b9364a667954d4dd >> > to fix resume from hibernation. Bugzilla entry created: >> > http://bugzilla.kernel.org/show_bug.cgi?id=12713 >> >> Looking over this, I see something strange in the commit in question: >> >> diff --git a/include/linux/bio.h b/include/linux/bio.h >> index 5175aa3..f53568c 100644 >> --- a/include/linux/bio.h >> +++ b/include/linux/bio.h >> @@ -163,12 +163,15 @@ struct bio { >> #define BIO_RW 0 /* Must match RW in req flags (blkdev.h) */ >> #define BIO_RW_AHEAD 1 /* Must match FAILFAST in req flags */ >> #define BIO_RW_BARRIER 2 >> -#define BIO_RW_SYNC 3 >> -#define BIO_RW_META 4 >> -#define BIO_RW_DISCARD 5 >> -#define BIO_RW_FAILFAST_DEV 6 >> -#define BIO_RW_FAILFAST_TRANSPORT 7 >> -#define BIO_RW_FAILFAST_DRIVER 8 >> +#define BIO_RW_SYNCIO 3 >> +#define BIO_RW_UNPLUG 4 >> +#define BIO_RW_META 5 >> +#define BIO_RW_DISCARD 6 >> +#define BIO_RW_FAILFAST_DEV 7 >> +#define BIO_RW_FAILFAST_TRANSPORT 8 >> +#define BIO_RW_FAILFAST_DRIVER 9 >> + >> +#define BIO_RW_SYNC (BIO_RW_SYNCIO | BIO_RW_UNPLUG) >> >> /* >> * upper 16 bits of bi_rw define the io priority of this bio >> >> I haven't read the code in depth, but taking running numbers and doing >> bitwise "or" >> on them looks a bit strange to me. >> So here BIO_RW_SYNC is (3 | 4) = 7, that is the same as BIO_RW_FAILFAST_DEV. >> So for example bio_failfast_dev and bio_sync are the same. >> >> Jens, could you comment on this please? Is this intentional? > > That's clearly a braino, you can't OR the shift values of course. I'll > get it fixed up asap! Cool, send me a patch, I'll test. > -- > Jens Axboe > > _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm