Hello Yang Xu, On 9/9/20 5:57 AM, Yang Xu wrote: > When calling msgrcv with MSG_COPY flag on 3.8 or new kernel, it will > report EINVAL error even we have disabled CONFIG_CHECKPOINT_RESTORE. > It also needs to specify IPC_NOWAIT flag. > > Signed-off-by: Yang Xu <xuyang2018.jy@xxxxxxxxxxxxxx> > --- > man2/msgop.2 | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/man2/msgop.2 b/man2/msgop.2 > index 373e53aa7..e559097a7 100644 > --- a/man2/msgop.2 > +++ b/man2/msgop.2 > @@ -467,7 +467,9 @@ and the queue contains less than > messages. > .TP > .BR ENOSYS " (since Linux 3.8)" > -.I MSG_COPY > +.B IPC_NOWAIT > +and > +.B MSG_COPY > was specified in > .IR msgflg , > and this kernel was configured without Thanks for the patch, and your clarifications to my confusion. I applied the patch, and then did some light editing, so that the change looks as below. Cheers, Michael diff --git a/man2/msgop.2 b/man2/msgop.2 index 373e53aa7..6a8dfcdf8 100644 --- a/man2/msgop.2 +++ b/man2/msgop.2 @@ -467,8 +467,11 @@ and the queue contains less than messages. .TP .BR ENOSYS " (since Linux 3.8)" -.I MSG_COPY -was specified in +Both +.B MSG_COPY +and +.B IPC_NOWAIT +were specified in .IR msgflg , and this kernel was configured without .BR CONFIG_CHECKPOINT_RESTORE . -- Michael Kerrisk Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/ Linux/UNIX System Programming Training: http://man7.org/training/