On Tue, Sep 14, 2021 at 12:50 PM Nick Desaulniers ndesaulniers@google.com wrote:
Just making sure __ffs() works as expected should blksize > LONG_MAX on 32b targets. I don't see the range check you're referring to. loff_t is a long long, yeah?
Christ Nick.
Stop wasting my time.
Read the patch:
if (!blksize) - blksize = NBD_DEF_BLKSIZE; + blksize = 1u << NBD_DEF_BLKSIZE_BITS; if (blksize < 512 || blksize > PAGE_SIZE || !is_power_of_2(blksize)) return -EINVAL;
nbd->config->bytesize = bytesize; - nbd->config->blksize = blksize; + nbd->config->blksize_bits = __ffs(blksize);
See that range check?
Seriously, I've now replied several times to you just because you were too damn lazy to just look three lines up from the __ffs() that you reacted to, when I explicitly mentioned the range check several times, including in the original submission, and when it was RIGHT THERE IN THE PATCH IN THE ONLY PLACE THAT DID THAT __FFS.
(Ok, so the lower check of range was 512, not 1024, sue me).
It was all there in the diff all the time.
Don't email me again about this. At least not without spending the FIVE SECONDS to look at what the hell you are emailing me about.
Linus