[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <201201241622.36222.arnd@arndb.de>
Date: Tue, 24 Jan 2012 16:22:36 +0000
From: Arnd Bergmann <arnd@...db.de>
To: Pekka Enberg <penberg@...nel.org>
Cc: leonid.moiseichuk@...ia.com, riel@...hat.com, minchan@...nel.org,
linux-mm@...ck.org, linux-kernel@...r.kernel.org,
kamezawa.hiroyu@...fujitsu.com, mel@....ul.ie, rientjes@...gle.com,
kosaki.motohiro@...il.com, hannes@...xchg.org, mtosatti@...hat.com,
akpm@...ux-foundation.org, rhod@...hat.com,
kosaki.motohiro@...fujitsu.com
Subject: Re: [RFC 1/3] /dev/low_mem_notify
On Wednesday 18 January 2012, Pekka Enberg wrote:
> >> +struct vmnotify_event {
> >> + /* Size of the struct for ABI extensibility. */
> >> + __u32 size;
> >> +
> >> + __u64 nr_avail_pages;
> >> +
> >> + __u64 nr_swap_pages;
> >> +
> >> + __u64 nr_free_pages;
> >> +};
> >
> > Two fields here most likely session-constant, (nr_avail_pages and
> > nr_swap_pages), seems not much sense to report them in every event. If we
> > have memory/swap hotplug user-space can use sysinfo() call.
>
> I actually changed the ABI to look like this:
>
> struct vmnotify_event {
> /*
> * Size of the struct for ABI extensibility.
> */
> __u32 size;
>
> __u64 attrs;
>
> __u64 attr_values[];
> };
>
> So userspace can decide which fields to include in notifications.
Please make the first member a __u64 instead of a __u32. This will
avoid incompatibility between 32 and 64 bit processes, which have
different alignment rules on x86: x86-32 would implicitly pack the
struct while x86-64 would add padding with your layout.
Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists