[PATCH v3 3/3] sysv: linux: Pass 64-bit version of semctl syscall

Vineet Gupta Vineet.Gupta1@synopsys.com
Thu Mar 19 21:24:41 GMT 2020


On 3/18/20 4:11 PM, Alistair Francis via Libc-alpha wrote:
>>> diff --git a/bits/ipc.h b/bits/ipc.h
>>> index e2981fd5c3..9ac8485193 100644
>>> --- a/bits/ipc.h
>>> +++ b/bits/ipc.h
>>> @@ -29,7 +29,11 @@
>>>  /* Control commands for `msgctl', `semctl', and `shmctl'.  */
>>>  #define IPC_RMID     0               /* remove identifier */
>>>  #define IPC_SET              1               /* set `ipc_perm' options */
>>> -#define IPC_STAT     2               /* get `ipc_perm' options */
>>> +#if __TIMESIZE == 64 && __WORDSIZE == 32
>>> +# define IPC_STAT 0x102     /* Get `ipc_perm' options.  */
>>> +#else
>>> +# define IPC_STAT 2   /* Get `ipc_perm' options.  */
>>> +#endif
>> Why is this needed. Linux kernel seems to be returning EINVAL for this cmd-id and
>> following fail for ARC.
>>
>> FAIL: sysvipc/test-sysvmsg
>> FAIL: sysvipc/test-sysvsem
>> FAIL: sysvipc/test-sysvshm
>>
>> Shouldn't this use the default __IPC_64 value which is 0 not 0x100.
> I think you are right. I have fixed this up in the next version.

Thx, that indeed fixes those tests for me - off of your latest branch.

-Vineet


More information about the Libc-alpha mailing list