[systemd-devel] [PATCH] Fix broken syscall(__NR_fanotify_mark... on 32bit mips.

Lennart Poettering lennart at poettering.net
Wed Apr 20 11:09:54 PDT 2011


On Wed, 20.04.11 10:36, David Daney (ddaney at caviumnetworks.com) wrote:

> You would have to do something like this (untested):
> 
> int foo_fanotify_mark(int fanotify_fd, unsigned int flags, u64 mask,
> int dfd, const char  __user * pathname)
> {
> 	u32 mask_low = (u32)mask;
> 	u32 mask_high = (u32)(mask >> 32);
> 
> 	return syscall(4337, fanotify_fd, flags, mask_low, mask_high, dfd,
> pathname);
> 
> }
> 
> The order of mask_low, mask_high in the syscall argument list
> depends on the endianness.  Figuring out the correct order is left
> as an exercise for the reader.

That's basically the same patch as this one, right?

http://lists.freedesktop.org/archives/systemd-devel/attachments/20110420/be2d393b/attachment.obj

It has been suggested that this patch would also work fine on other
32bit CPUs, is that correct? More specifically, will this break x86?

Lennart

-- 
Lennart Poettering - Red Hat, Inc.


More information about the systemd-devel mailing list