Re: [PATCH 4/11] use ether_addr_equal_64bits

Julia Lawall
2014-01-06T09:09:39Z

On Mon, 6 Jan 2014, Johannes Berg wrote:

> On Tue, 2013-12-31 at 17:40 +0100, Julia Lawall wrote:
>
> > > If nothing else, then some run-time code that calculates the offset off
> > > and asserts if it is broken in module initialization or similar might
> > > be good enough.
> >
> > Could be OK. Something right in or after the structure declaration would
> > be nicest.
>
> I don't think you can put a BUILD_BUG_ON() into the structure
> declaration (it's code, not declarations), but I think you could just
> put
>
> BUILD_BUG_ON(sizeof(struct foo) - offsetof(struct foo, addr) < 8);
>
> with the user(s?) and that should catch the scenario I was worrying
> about?

OK, thanks. That is what I had in mind. But I was hoping to be able to
put it with the structure. Perhaps there is a way to make a macro that
expands to a dummy function that contains the BUILD_BUG_ON? But I guess
that would waste space?

I think that 8 should be 16?

julia