[dm-devel] [PATCH 03/12] BUG: Losing bits on request.cmd_flags

Shaun Tancheff shaun.tancheff at seagate.com
Mon Apr 4 16:06:03 UTC 2016


On Mon, Apr 4, 2016 at 10:56 PM, Jeff Moyer <jmoyer at redhat.com> wrote:
> Shaun Tancheff <shaun at tancheff.com> writes:
>
>> In a few places a temporary value smaller than a cmd_flags
>> is used to test for bits and or build up a new cmd_flags.
>>
>> Change to use explicit u64 values where appropriate.
>
> This is not a bug fix, so please fix your subject.

Oh, okay. It became an issue in the next patch where some internal cmd_flags
temporaries where stored in 32 bit values.

I will fix patch/subject.

Thanks!

> I'm not against cleaning up the mixing of 32 vs 64 bit variables, but if
> you're going to go down that path, then you might as well fix the mixing
> of signed vs unsigned use as well.  And now that I look at it,
> bio->bi_rw is unsigned long whereas req->cmd_flags is u64.  That could
> make for fun bugs in the future.  We should at least add a comment in
> the rq_flag_bits enum to the effect of bio flags need to stay in the
> bottom 32 bits.
>
> Cheers,
> Jeff



-- 
Shaun Tancheff




More information about the dm-devel mailing list