this case is not even documented, but the kernel returns 0 here and it makes sense to be consistent.
these are not pure syscall wrappers because they have to work around kernel API bugs on 64-bit archs. the workarounds could probably be made somewhat more efficient, but at the cost of more complexity. this may be revisited later.