[PATCH] mtd: fix size in mtd_info_user to support 64-bit
Rob Landley
rob at landley.net
Fri Jul 16 06:34:45 PDT 2021
On 7/16/21 4:48 AM, Miquel Raynal wrote:
> Hi Miaohe,
>
> Miaohe Lin <linmiaohe at huawei.com> wrote on Fri, 16 Jul 2021 09:42:19
> +0800:
>
>> On 2021/7/16 7:02, Miquel Raynal wrote:
>> > Hi Miaohe,
>> >
>> > Miaohe Lin <linmiaohe at huawei.com> wrote on Thu, 8 Jul 2021 21:13:59
>> > +0800:
>> >
>> >> From: Feilong Lin <linfeilong at huawei.com>
>> >>
>> >> The size in struct mtd_info_user is 32-bit, which will cause errors
>> >> when obtaining the size of large-capacity MTD devices, such as TLC
>> >> NAND FLASH-2048Gb.
>> >
>> > Besides the fact that such devices are far from being supported by the
>> > Linux kernel, this change would basically break userspace, it cannot
>> > enter as-is...
>> >
>>
>> I see. Many thanks for your reply! We're working with these large-capacity
>> MTD devices now, any suggestion to work around this?
>
> The only way is to create a second UAPI.
Twelve years ago a patch was submitted to add a 64 bit MTD api:
https://lwn.net/Articles/326418/
But for some reason they only merged 64 bit erase:
https://github.com/torvalds/linux/commit/0dc54e9f33e2
But NOT the rest of the 64 bit mtd API in the same patch. I've never understood why.
Rob
More information about the linux-mtd
mailing list