22 will be a standard errno value. These are defined in a series of (many) C-language include headers starting with errno.h. I find the easiest way of looking these up is with a tool such as
cscope. In any case, on most Linux machines, 22 is the value corresponding to
EINVAL, which has the standard rendering of "invalid argument".
#define EINVAL 22 /* Invalid argument */
Since we know this to be related to the
sendmsg system-call, we can look up the manual page for sendmsg(2), which just tells us that an invalid argument was passed to it, perhaps because something didn't handle an error gracefully. This can also bubble up from other error, such as when the
mount command is mounting a CIFS network share and there is an error such as invalid credentials. In cases such as this, the true error may be found in the kernel log (
I'm not sure what system component would be reporting that error though. Hopefully you'll see it in the logs also?