Message ID | D4BCDC42-0D8B-406D-8DDC-F190469C8F56@alex.org.uk (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Fri, Apr 01, 2016 at 10:32:50AM +0100, Alex Bligh wrote: > #define NBD_CMD_MASK_COMMAND 0x0000ffff > -#define NBD_CMD_FLAG_FUA (1<<16) > +#define NBD_CMD_SHIFT (16) > +#define NBD_CMD_FLAG_FUA ((1 << 0) << NBD_CMD_SHIFT) That works too, I suppose. However, like I said, I need to clean this up anyway. I thought your "will you take a patch" was going to do that, but if not, I'll get around to doing it myself at some point...
On 1 Apr 2016, at 10:43, Wouter Verhelst <w@uter.be> wrote: > On Fri, Apr 01, 2016 at 10:32:50AM +0100, Alex Bligh wrote: >> #define NBD_CMD_MASK_COMMAND 0x0000ffff >> -#define NBD_CMD_FLAG_FUA (1<<16) >> +#define NBD_CMD_SHIFT (16) >> +#define NBD_CMD_FLAG_FUA ((1 << 0) << NBD_CMD_SHIFT) > > That works too, I suppose. > > However, like I said, I need to clean this up anyway. I thought your > "will you take a patch" was going to do that, but if not, I'll get > around to doing it myself at some point... How about you take that one for now and one of us will get do doing it properly in due course. The proper solution is obviously to use two 16 bit fields.
diff --git a/nbd.h b/nbd.h index f2a32dd..53b6ca1 100644 --- a/nbd.h +++ b/nbd.h @@ -38,7 +38,9 @@ enum { }; #define NBD_CMD_MASK_COMMAND 0x0000ffff -#define NBD_CMD_FLAG_FUA (1<<16) +#define NBD_CMD_SHIFT (16) +#define NBD_CMD_FLAG_FUA ((1 << 0) << NBD_CMD_SHIFT) /* values for flags field */ #define NBD_FLAG_HAS_FLAGS (1 << 0) /* Flags are there */