Re: mdadm 4.3 rejects /dev/md128 and larger numbers
From: Mariusz Tkaczyk <hidden>
Date: 2024-03-04 15:01:06
On Mon, 4 Mar 2024 14:19:29 +0100 Andreas Klauer [off-list ref] wrote:
Hello,
since mdadm 4.3, trying to use numbers larger than 127 results in:
mdadm: Value "/dev/md3032" cannot be set as devname.
Reason: Not POSIX compatible. Value ignored.
Because in util.c :: is_devname_numbered() (commit 25aa73291):
if (val > 127)
return false;
The kernel seems to be fine with MINORMASK (2^20 - 1).
If so, instead of 127, the limit here should be 1048575?
I don't need a million arrays. But I do have more arrays than
average because I use partitions instead of one big array
for everything. And some flexibility in using distinct number
ranges per group of arrays makes /proc/mdstat easier to read.
Regards,
Andreas KlauerHello Andreas, Indeed, that it the case I missed. Sorry for bringing regression. In the longer term, for better user experience I would like promote conception called "named arrays", so could you please try to create "/dev/md/md_3032" and test and see if that works for you? The difference is that you will not be restricted to numbered devices, you can also use asci letters like: "md_myarray", "md_do_not_touch". Of course, it is kind of regression so I'm open to fix it for you but if I will be able to convince you to use named arrays format (and help me fix issues!) then whole community will gain. You have to enable it first, but please note that it is not widely used now: echo CREATE name=yes > /etc/mdadm.conf Please test it and let me know! Thanks, Mariusz