[v2,00/24] Remove COMMAND_LINE_SIZE from uapi

Message ID 20221211061358.28035-1-palmer@rivosinc.com
Headers
Series Remove COMMAND_LINE_SIZE from uapi |

Message

Palmer Dabbelt Dec. 11, 2022, 6:13 a.m. UTC
  This all came up in the context of increasing COMMAND_LINE_SIZE in the
RISC-V port.  In theory that's a UABI break, as COMMAND_LINE_SIZE is the
maximum length of /proc/cmdline and userspace could staticly rely on
that to be correct.

Usually I wouldn't mess around with changing this sort of thing, but
PowerPC increased it with a5980d064fe2 ("powerpc: Bump COMMAND_LINE_SIZE
to 2048").  There are also a handful of examples of COMMAND_LINE_SIZE
increasing, but they're from before the UAPI split so I'm not quite sure
what that means: e5a6a1c90948 ("powerpc: derive COMMAND_LINE_SIZE from
asm-generic"), 684d2fd48e71 ("[S390] kernel: Append scpdata to kernel
boot command line"), 22242681cff5 ("MIPS: Extend COMMAND_LINE_SIZE"),
and 2b74b85693c7 ("sh: Derive COMMAND_LINE_SIZE from
asm-generic/setup.h.").

It seems to me like COMMAND_LINE_SIZE really just shouldn't have been
part of the uapi to begin with, and userspace should be able to handle
/proc/cmdline of whatever length it turns out to be.  I don't see any
references to COMMAND_LINE_SIZE anywhere but Linux via a quick Google
search, but that's not really enough to consider it unused on my end.

The feedback on the v1 seemed to indicate that COMMAND_LINE_SIZE really
shouldn't be part of uapi, so this now touches all the ports.  I've
tried to split this all out and leave it bisectable, but I haven't
tested it all that aggressively.

Changes since v1 <https://lore.kernel.org/all/20210423025545.313965-1-palmer@dabbelt.com/>:
* Touches every arch.
  

Comments

Alexandre Ghiti Feb. 10, 2023, 5:10 p.m. UTC | #1
Hi,

On 12/11/22 07:13, Palmer Dabbelt wrote:
> This all came up in the context of increasing COMMAND_LINE_SIZE in the
> RISC-V port.  In theory that's a UABI break, as COMMAND_LINE_SIZE is the
> maximum length of /proc/cmdline and userspace could staticly rely on
> that to be correct.
>
> Usually I wouldn't mess around with changing this sort of thing, but
> PowerPC increased it with a5980d064fe2 ("powerpc: Bump COMMAND_LINE_SIZE
> to 2048").  There are also a handful of examples of COMMAND_LINE_SIZE
> increasing, but they're from before the UAPI split so I'm not quite sure
> what that means: e5a6a1c90948 ("powerpc: derive COMMAND_LINE_SIZE from
> asm-generic"), 684d2fd48e71 ("[S390] kernel: Append scpdata to kernel
> boot command line"), 22242681cff5 ("MIPS: Extend COMMAND_LINE_SIZE"),
> and 2b74b85693c7 ("sh: Derive COMMAND_LINE_SIZE from
> asm-generic/setup.h.").
>
> It seems to me like COMMAND_LINE_SIZE really just shouldn't have been
> part of the uapi to begin with, and userspace should be able to handle
> /proc/cmdline of whatever length it turns out to be.  I don't see any
> references to COMMAND_LINE_SIZE anywhere but Linux via a quick Google
> search, but that's not really enough to consider it unused on my end.
>
> The feedback on the v1 seemed to indicate that COMMAND_LINE_SIZE really
> shouldn't be part of uapi, so this now touches all the ports.  I've
> tried to split this all out and leave it bisectable, but I haven't
> tested it all that aggressively.
>
> Changes since v1 <https://lore.kernel.org/all/20210423025545.313965-1-palmer@dabbelt.com/>:
> * Touches every arch.
>
>

The command line size is still an issue on riscv, any comment on this so 
we can make progress?

Thanks,

Alex
  
Arnd Bergmann Feb. 10, 2023, 7:37 p.m. UTC | #2
On Fri, Feb 10, 2023, at 18:10, Alexandre Ghiti wrote:
> On 12/11/22 07:13, Palmer Dabbelt wrote:
>> This all came up in the context of increasing COMMAND_LINE_SIZE in the
>> RISC-V port.  In theory that's a UABI break, as COMMAND_LINE_SIZE is the
>> maximum length of /proc/cmdline and userspace could staticly rely on
>> that to be correct.
>>
>> Usually I wouldn't mess around with changing this sort of thing, but
>> PowerPC increased it with a5980d064fe2 ("powerpc: Bump COMMAND_LINE_SIZE
>> to 2048").  There are also a handful of examples of COMMAND_LINE_SIZE
>> increasing, but they're from before the UAPI split so I'm not quite sure
>> what that means: e5a6a1c90948 ("powerpc: derive COMMAND_LINE_SIZE from
>> asm-generic"), 684d2fd48e71 ("[S390] kernel: Append scpdata to kernel
>> boot command line"), 22242681cff5 ("MIPS: Extend COMMAND_LINE_SIZE"),
>> and 2b74b85693c7 ("sh: Derive COMMAND_LINE_SIZE from
>> asm-generic/setup.h.").
>>
>> It seems to me like COMMAND_LINE_SIZE really just shouldn't have been
>> part of the uapi to begin with, and userspace should be able to handle
>> /proc/cmdline of whatever length it turns out to be.  I don't see any
>> references to COMMAND_LINE_SIZE anywhere but Linux via a quick Google
>> search, but that's not really enough to consider it unused on my end.
>>
>> The feedback on the v1 seemed to indicate that COMMAND_LINE_SIZE really
>> shouldn't be part of uapi, so this now touches all the ports.  I've
>> tried to split this all out and leave it bisectable, but I haven't
>> tested it all that aggressively.
>>
>> Changes since v1 <https://lore.kernel.org/all/20210423025545.313965-1-palmer@dabbelt.com/>:
>> * Touches every arch.
>>
>>
>
> The command line size is still an issue on riscv, any comment on this so 
> we can make progress?

I think this makes sense overall, but I see there were a couple
of architecture specific regressions introduced in v2 that should
be resolved, see

https://lore.kernel.org/all/20221211061358.28035-1-palmer@rivosinc.com/

for the archive of this thread.

     Arnd
  
Alexandre Ghiti Feb. 13, 2023, 7:40 a.m. UTC | #3
On 2/10/23 20:37, Arnd Bergmann wrote:
> On Fri, Feb 10, 2023, at 18:10, Alexandre Ghiti wrote:
>> On 12/11/22 07:13, Palmer Dabbelt wrote:
>>> This all came up in the context of increasing COMMAND_LINE_SIZE in the
>>> RISC-V port.  In theory that's a UABI break, as COMMAND_LINE_SIZE is the
>>> maximum length of /proc/cmdline and userspace could staticly rely on
>>> that to be correct.
>>>
>>> Usually I wouldn't mess around with changing this sort of thing, but
>>> PowerPC increased it with a5980d064fe2 ("powerpc: Bump COMMAND_LINE_SIZE
>>> to 2048").  There are also a handful of examples of COMMAND_LINE_SIZE
>>> increasing, but they're from before the UAPI split so I'm not quite sure
>>> what that means: e5a6a1c90948 ("powerpc: derive COMMAND_LINE_SIZE from
>>> asm-generic"), 684d2fd48e71 ("[S390] kernel: Append scpdata to kernel
>>> boot command line"), 22242681cff5 ("MIPS: Extend COMMAND_LINE_SIZE"),
>>> and 2b74b85693c7 ("sh: Derive COMMAND_LINE_SIZE from
>>> asm-generic/setup.h.").
>>>
>>> It seems to me like COMMAND_LINE_SIZE really just shouldn't have been
>>> part of the uapi to begin with, and userspace should be able to handle
>>> /proc/cmdline of whatever length it turns out to be.  I don't see any
>>> references to COMMAND_LINE_SIZE anywhere but Linux via a quick Google
>>> search, but that's not really enough to consider it unused on my end.
>>>
>>> The feedback on the v1 seemed to indicate that COMMAND_LINE_SIZE really
>>> shouldn't be part of uapi, so this now touches all the ports.  I've
>>> tried to split this all out and leave it bisectable, but I haven't
>>> tested it all that aggressively.
>>>
>>> Changes since v1 <https://lore.kernel.org/all/20210423025545.313965-1-palmer@dabbelt.com/>:
>>> * Touches every arch.
>>>
>>>
>> The command line size is still an issue on riscv, any comment on this so
>> we can make progress?
> I think this makes sense overall, but I see there were a couple
> of architecture specific regressions introduced in v2 that should
> be resolved, see
>
> https://lore.kernel.org/all/20221211061358.28035-1-palmer@rivosinc.com/


Thanks, I had not noticed those failures. I'll take over and send a v3 
that fixes that,

Thanks again,

Alex


>
> for the archive of this thread.
>
>       Arnd