[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20241220113150.26fc7b8f@kernel.org>
Date: Fri, 20 Dec 2024 11:31:50 -0800
From: Jakub Kicinski <kuba@...nel.org>
To: John Ousterhout <ouster@...stanford.edu>
Cc: netdev@...r.kernel.org, pabeni@...hat.com, edumazet@...gle.com,
horms@...nel.org, Arnd Bergmann <arnd@...db.de>
Subject: Re: [PATCH net-next v4 01/12] inet: homa: define user-visible API
for Homa
On Fri, 20 Dec 2024 09:59:53 -0800 John Ousterhout wrote:
> > > I see that "void *" is used in the declaration for struct msghdr
> > > (along with some other pointer types as well) and struct msghdr is
> > > part of several uAPI interfaces, no?
> >
> > Off the top off my head this use is a source of major pain, grep around
> > for compat_msghdr.
>
> How should I go about confirming that this __aligned_u64 is indeed the
> expected convention (sounds like you aren't certain)?
Let me add Arnd Bergmann to the CC list, he will correct me if
I'm wrong. Otherwise you can trust my intuition :)
> Also, any idea why it needs to be aligned rather than just __u64?
The main problem is that if __u64 doesn't force alignment on a 32b
version of a platform the struct may have holes and padding in
different places on 32b vs 64b compat.
Double checking, I don't think that's the case for your structs,
so you can most likely go with a plain __u64.
Powered by blists - more mailing lists