Invalid Argument

This is returned when you passed a function an argument that made no sense at all, for instance, a negative file descriptor, or an empty string for a filename. This is almost always a programming error. Check the parameters you're passing to the syscall. try playing with strace(1) a bit.