linux interprets an fcntl int arg as long

'Szabolcs Nagy' szabolcs.nagy at arm.com
Tue Nov 1 05:49:11 PDT 2022


The 11/01/2022 12:19, David Laight wrote:
> From: 'Szabolcs Nagy' <szabolcs.nagy at arm.com>
> > SYSCALL_DEFINE3(fcntl, unsigned int, fd, unsigned int, cmd, unsigned long, arg)
> > {
> 
> That is just a wrapper and calls do_fcntl().
> which needs changing to be add:
> 	arg &= ~0U;
> before the switch(cmd) {

this makes sense.
i thought previously you meant masking in userspace.

although if you mask there then many linux internal
apis could use int instead of long arg.

do you want me to post a patch? (i'm not a kernel
developer)



More information about the linux-arm-kernel mailing list