Subject: Re: [PATCH 3/4] mac80211-hwsim: Pass rate-ctrl flags and tx-power to user-space

From: Johannes Berg <[email-masked]>
Date: Fri, 17 Apr 2015 13:23:28 +0200

On Wed, 2015-04-15 at 09:23 -0700, Ben Greear wrote:
> On 04/14/2015 01:15 AM, Johannes Berg wrote:
> > On Fri, 2015-04-03 at 14:12 -0700, [email-masked] wrote:
> > 
> >> +/* Auxilary info to allow user-space to better understand the rate */
> >> +struct hwsim_tx_rate2 {
> >> +	u16 rc_flags; /* rate-ctrl flags (see mac80211_rate_control_flags) */
> > 
> > I really don't like this - it ties internal API to userspace API. You
> > may argue that this is userspace that is for debug purposes only, but
> > I'm sure you'll also scratch your head very confused when I change the
> > rate control flags for any reason and your code breaks :)
> 
> Is this a documentation only issue (at this point, while code matches)?

Well, technically this could be done.

> Then later, we can add translation to keep user-space API the same
> as needed?

We'll almost certainly forget that though, so better to have a
translation layer now.

OTOH though, perhaps we don't even want to advertise all these flags. We
might want to change the details of how these work, so I think it'd be
good to actually analyse them and see which ones really are needed. That
really applies more to the rx-status flags then here perhaps.

> And in that case, maybe I'll make it u32 to give room down the road?

That makes sense - netlink attributes are even 4-byte aligned so there's
no space saving with u16 either :)

johannes