msgrcv on metag

System V message queue operations

sys_msgrcv(int msqid, struct msgbuf *msgp, size_t msgsz, long msgtyp, int msgflg)
number188 (0xbc)
abicommon
kconfigCONFIG_SYSVIPC
familysysvipc see the whole family on metag
entry pointsys_msgrcv
sinceLinux 3.9 or earlier (3.9 is the first release scanned for metag)
man pagemsgrcv(2)
sourceelixir.bootlin.com

Registers

registervalue
D1Re0188, the syscall number
D1Ar1int msqid
D0Ar2struct msgbuf *msgp
D1Ar3size_t msgsz
D0Ar4long msgtyp
D1Ar5int msgflg
D0Re0the return value

Then run SWITCH #0x440001 to enter the kernel.

Values wider than one register are packed into consecutive arguments.

This architecture was removed from the Linux kernel in Linux 4.17. The newest release with a syscall table here is Linux 4.16. The other removed architectures live on the historical architectures page.

Same syscall on other architectures

Get this as JSON: https://api.syscall.sh/v2/syscalls/metag/msgrcv?kernel=all