[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#618562: syscall in libc6 is broken for __NR_fanotify_mark

On Sun, Mar 27, 2011 at 05:13:31AM +0000, Chen Jie wrote:
> Hi Aurelien,
> Got it, thanks for the explanation.
> Just curious, does the same problem exist on X86-64(64bit kernel + 32 bit
> userland)? If yes, should the caller of syscall() need to split each 64bit
> argument into two 32bit arguments?

It is not something which depends on the running kernel, but the problem
doesn't exists on x86 given the ABI doesn't requires 64-bit arguments to
be aligned. I have been able to reproduce the problem on powerpc and arm
though (they both require 64-bit values to be aligned).

In any case on 32-bit machines, splitting 64-bit arguments into two 
32-bit arguments should always work, provided that the endianness is
correctly taken into account.

Aurelien Jarno	                        GPG: 1024D/F1BCDB73
aurelien@aurel32.net                 http://www.aurel32.net

Reply to: