All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Jouni Malinen" <jkm@devicescape.com>
To: Johannes Berg <johannes@sipsolutions.net>
Cc: netdev@vger.kernel.org, Jiri Benc <jbenc@suse.cz>
Subject: Re: [PATCH] d80211: get rid of the WME bitfield
Date: Mon, 14 Aug 2006 09:12:10 -0700	[thread overview]
Message-ID: <20060814161210.GD1196@instant802.com> (raw)
In-Reply-To: <44E03112.9070002@sipsolutions.net>

On Mon, Aug 14, 2006 at 10:15:14AM +0200, Johannes Berg wrote:
> Somewhere, sometime, someone had to start getting rid of bitfields ;) 

Yes and you wouldn't believe how many times I have had to complain about
this particular case internally with it always coming back as bitfield
even after showing that it caused a unaligned access on one target
platform..

However, I remember fixing this long time ago to use proper operation on
u8 values. It looks like I just have forgotten to submit those changes
to wireless-dev.git. There was quite a bit of additional cleanup, so it
would probably be best if I were to take a closer look at propose an
alternative patch for changing this and getting rid for struct
qos_control.

> +        u16 *p = (u16 *) (skb->data + ieee80211_get_hdrlen(fc) - 2);
> +        u16 qos_hdr = skb->priority & QOS_CONTROL_TAG1D_MASK;
>         if (local->wifi_wme_noack_test)
> -            qc->ack_policy = 1;
> +            qos_hdr |= QOS_CONTROL_ACK_POLICY_NOACK <<
> +                    QOS_CONTROL_ACK_POLICY_SHIFT;
> +        *p = cpu_to_le16(qos_hdr);

I think that this is always 16-bit aligned in the current
implementation, but I would be a bit careful with this type of change
here. This can be done easily with u8 since the qos_control field has 8
bits of used data and 8 bits of reserved field. My change was handling
this as two separate 8-bit values, so no issues with potential unaligned
accesses.

-- 
Jouni Malinen                                            PGP id EFC895FA

  reply	other threads:[~2006-08-14 16:16 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-14  8:07 [wireless] bunch of questions and notes on d80211 Johannes Berg
2006-08-14  8:10 ` bcm43xx for d80211 softirq loop Johannes Berg
2006-08-14  8:21   ` Johannes Berg
2006-08-14  8:21     ` Johannes Berg
2006-08-14 13:27   ` Michael Buesch
2006-08-14  8:12 ` [d80211 rfc] link master interface from wiphy Johannes Berg
2006-08-14 12:01   ` Dan Williams
2006-08-16 17:05   ` Jiri Benc
2006-08-17  7:18     ` Johannes Berg
2006-08-14  8:13 ` [PATCH] d80211: fix some 0 vs. NULL comparisons Johannes Berg
2006-08-14 13:20   ` Johannes Berg
2006-08-14 15:48     ` Jouni Malinen
2006-08-14  8:15 ` [PATCH] d80211: get rid of the WME bitfield Johannes Berg
2006-08-14 16:12   ` Jouni Malinen [this message]
2006-08-15  7:11     ` Johannes Berg
2006-08-14  8:16 ` ieee80211_japan_5ghz / firmware etc.?? Johannes Berg
2006-08-14  8:16 ` ieee80211_set_encryption Johannes Berg
2006-08-14 15:53   ` ieee80211_set_encryption Jouni Malinen
2006-08-14  8:18 ` network manager confused with bcm43xx-d80211? Johannes Berg
2006-08-14 11:46   ` Dan Williams
2006-08-14 12:28     ` Johannes Berg
2006-08-14 12:48       ` Larry Finger
2006-08-14 12:54         ` Johannes Berg
2006-08-14  8:19 ` d80211 and sta_aid for AP functionality Johannes Berg
2006-08-17 18:21   ` Jiri Benc
2006-08-14  8:22 ` wlan#ap seems bogus Johannes Berg
2006-08-14 14:04   ` Johannes Berg
2006-08-14 18:53     ` Simon Barber
2006-08-15  7:22       ` Johannes Berg
2006-08-14 15:58   ` Jouni Malinen
2006-08-14 16:04     ` Johannes Berg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20060814161210.GD1196@instant802.com \
    --to=jkm@devicescape.com \
    --cc=jbenc@suse.cz \
    --cc=johannes@sipsolutions.net \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.