Re: [PATCH] binfmt_misc: pass binfmt_misc P flag to the interpreter

3 messages, 3 authors, 2020-03-06 · open the first message on its own page

Re: [PATCH] binfmt_misc: pass binfmt_misc P flag to the interpreter

From: Florian Weimer <hidden>
Date: 2020-03-06 11:42:29

* YunQiang Su:
AT_* only has 32 slot and now. I was afraid that maybe we shouldn't take one.
   /* AT_* values 18 through 22 are reserved */
   27,28,29,30 are not used now.
Which should we use?
Where does this limit of 32 tags come from?  I don't see it from a
userspace perspective.

Re: [PATCH] binfmt_misc: pass binfmt_misc P flag to the interpreter

From: YunQiang Su <hidden>
Date: 2020-03-06 11:48:51

Florian Weimer [off-list ref] 于2020年3月6日周五 下午7:42写道:
* YunQiang Su:
quoted
AT_* only has 32 slot and now. I was afraid that maybe we shouldn't take one.
   /* AT_* values 18 through 22 are reserved */
   27,28,29,30 are not used now.
Which should we use?
Where does this limit of 32 tags come from?  I don't see it from a
userspace perspective.
Sorry it is my mistake: In linux/auxvec.h, I saw

#define AT_RANDOM 25    /* address of 16 random bytes */
#define AT_HWCAP2 26    /* extension of AT_HWCAP */

#define AT_EXECFN  31   /* filename of program */

The number jump to 31 from 26.

It is my fault: in x86_64-linux-gnu/bits/auxv.h, the max number is 47 now.

Re: [PATCH] binfmt_misc: pass binfmt_misc P flag to the interpreter

From: Laurent Vivier <hidden>
Date: 2020-03-06 12:07:52

Le 06/03/2020 à 12:48, YunQiang Su a écrit :
Florian Weimer [off-list ref] 于2020年3月6日周五 下午7:42写道:
quoted
* YunQiang Su:
quoted
AT_* only has 32 slot and now. I was afraid that maybe we shouldn't take one.
   /* AT_* values 18 through 22 are reserved */
   27,28,29,30 are not used now.
Which should we use?
Where does this limit of 32 tags come from?  I don't see it from a
userspace perspective.
Sorry it is my mistake: In linux/auxvec.h, I saw

#define AT_RANDOM 25    /* address of 16 random bytes */
#define AT_HWCAP2 26    /* extension of AT_HWCAP */

#define AT_EXECFN  31   /* filename of program */

The number jump to 31 from 26.

It is my fault: in x86_64-linux-gnu/bits/auxv.h, the max number is 47 now.
Numbers starting from 32 are arch specific.
18 to 22 are also reserved (and used by some archs).
(linux/arch/*/include/uapi/asm/auxvec.h)

So there is only 4 entries available (27 to 30)
(linux/include/uapi/linux/auxvec.h)
Do we want to waste one more entry whereas we can use an unused one?

Thanks,
Laurent
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help