2015-11-11 22:46:16

by Geert Uytterhoeven

[permalink] [raw]
Subject: Re: [PATCH v14 1/5] lightnvm: Support for Open-Channel SSDs

On Wed, Oct 28, 2015 at 7:54 PM, Matias Bjørling <[email protected]> wrote:
> +struct nvm_dev_ops {

[...]

> + uint8_t max_phys_sect;
> +};

> --- /dev/null
> +++ b/drivers/lightnvm/core.c

> +int nvm_register(struct request_queue *q, char *disk_name,
> + struct nvm_dev_ops *ops)
> +{

[...]

> + } else if (dev->ops->max_phys_sect > 256) {

drivers/nfc/nfcmrvl/i2c.c:52: warning: comparison is always false due
to limited range of data type

Indeed, max_phys_sect is "uint8_t", so its maximum value is 255.

> + pr_info("nvm: max sectors supported is 256.\n");

Hence this message is not correct. What's the intended maximum value?
255 or 256?

> + return -EINVAL;
> + }

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds


2015-11-11 22:47:42

by Geert Uytterhoeven

[permalink] [raw]
Subject: Re: [PATCH v14 1/5] lightnvm: Support for Open-Channel SSDs

On Wed, Nov 11, 2015 at 11:46 PM, Geert Uytterhoeven
<[email protected]> wrote:
> On Wed, Oct 28, 2015 at 7:54 PM, Matias Bjørling <[email protected]> wrote:
>> +struct nvm_dev_ops {
>
> [...]
>
>> + uint8_t max_phys_sect;
>> +};
>
>> --- /dev/null
>> +++ b/drivers/lightnvm/core.c
>
>> +int nvm_register(struct request_queue *q, char *disk_name,
>> + struct nvm_dev_ops *ops)
>> +{
>
> [...]
>
>> + } else if (dev->ops->max_phys_sect > 256) {
>
> drivers/nfc/nfcmrvl/i2c.c:52: warning: comparison is always false due
> to limited range of data type

Oops, I copied the wrong warning. Obviously this was supposed to be
"drivers/lightnvm/core.c:322: warning: comparison is always false due
to limited range of data type"

> Indeed, max_phys_sect is "uint8_t", so its maximum value is 255.
>
>> + pr_info("nvm: max sectors supported is 256.\n");
>
> Hence this message is not correct. What's the intended maximum value?
> 255 or 256?
>
>> + return -EINVAL;
>> + }

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

2015-11-12 10:01:18

by Matias Bjørling

[permalink] [raw]
Subject: Re: [PATCH v14 1/5] lightnvm: Support for Open-Channel SSDs

On 11/11/2015 11:46 PM, Geert Uytterhoeven wrote:
> On Wed, Oct 28, 2015 at 7:54 PM, Matias Bjørling <[email protected]> wrote:
>> +struct nvm_dev_ops {
>
> [...]
>
>> + uint8_t max_phys_sect;
>> +};
>
>> --- /dev/null
>> +++ b/drivers/lightnvm/core.c
>
>> +int nvm_register(struct request_queue *q, char *disk_name,
>> + struct nvm_dev_ops *ops)
>> +{
>
> [...]
>
>> + } else if (dev->ops->max_phys_sect > 256) {
>
> drivers/nfc/nfcmrvl/i2c.c:52: warning: comparison is always false due
> to limited range of data type
>
> Indeed, max_phys_sect is "uint8_t", so its maximum value is 255.
>
>> + pr_info("nvm: max sectors supported is 256.\n");
>
> Hence this message is not correct. What's the intended maximum value?
> 255 or 256?

Good catch. It'll be 256, the typically device driver supports 64. The
256 is just an upper sensible bound. I'll create a patch to make it an
unsigned short.

Thanks