linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* m68k: linux-next allmodconfig
@ 2008-11-20  1:02 Andrew Morton
  2008-11-20  1:03 ` John W. Linville
  2008-11-20  8:01 ` Geert Uytterhoeven
  0 siblings, 2 replies; 3+ messages in thread
From: Andrew Morton @ 2008-11-20  1:02 UTC (permalink / raw)
  To: linux-wireless, Geert Uytterhoeven


include/net/mac80211.h: In function 'ieee80211_tx_info_clear_status':
include/net/mac80211.h:400: error: size of array 'type name' is negative
include/net/mac80211.h:405: error: size of array 'type name' is negative

due to:

static inline void
ieee80211_tx_info_clear_status(struct ieee80211_tx_info *info)
{
        int i;

        BUILD_BUG_ON(offsetof(struct ieee80211_tx_info, status.rates) !=
                     offsetof(struct ieee80211_tx_info, control.rates));
        BUILD_BUG_ON(offsetof(struct ieee80211_tx_info, status.rates) !=
                     offsetof(struct ieee80211_tx_info, driver_rates));
-->     BUILD_BUG_ON(offsetof(struct ieee80211_tx_info, status.rates) != 8);
        /* clear the rate counts */
        for (i = 0; i < IEEE80211_TX_MAX_RATES; i++)
                info->status.rates[i].count = 0;

-->     BUILD_BUG_ON(
            offsetof(struct ieee80211_tx_info, status.ampdu_ack_len) != 23);
        memset(&info->status.ampdu_ack_len, 0,
               sizeof(struct ieee80211_tx_info) -
               offsetof(struct ieee80211_tx_info, status.ampdu_ack_len));
}



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: m68k: linux-next allmodconfig
  2008-11-20  1:02 m68k: linux-next allmodconfig Andrew Morton
@ 2008-11-20  1:03 ` John W. Linville
  2008-11-20  8:01 ` Geert Uytterhoeven
  1 sibling, 0 replies; 3+ messages in thread
From: John W. Linville @ 2008-11-20  1:03 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-wireless, Geert Uytterhoeven

On Wed, Nov 19, 2008 at 05:02:11PM -0800, Andrew Morton wrote:
> 
> include/net/mac80211.h: In function 'ieee80211_tx_info_clear_status':
> include/net/mac80211.h:400: error: size of array 'type name' is negative
> include/net/mac80211.h:405: error: size of array 'type name' is negative
> 
> due to:
> 
> static inline void
> ieee80211_tx_info_clear_status(struct ieee80211_tx_info *info)
> {
>         int i;
> 
>         BUILD_BUG_ON(offsetof(struct ieee80211_tx_info, status.rates) !=
>                      offsetof(struct ieee80211_tx_info, control.rates));
>         BUILD_BUG_ON(offsetof(struct ieee80211_tx_info, status.rates) !=
>                      offsetof(struct ieee80211_tx_info, driver_rates));
> -->     BUILD_BUG_ON(offsetof(struct ieee80211_tx_info, status.rates) != 8);
>         /* clear the rate counts */
>         for (i = 0; i < IEEE80211_TX_MAX_RATES; i++)
>                 info->status.rates[i].count = 0;
> 
> -->     BUILD_BUG_ON(
>             offsetof(struct ieee80211_tx_info, status.ampdu_ack_len) != 23);
>         memset(&info->status.ampdu_ack_len, 0,
>                sizeof(struct ieee80211_tx_info) -
>                offsetof(struct ieee80211_tx_info, status.ampdu_ack_len));
> }

I just sent a pull request yesterday that contains a patch to correct this.

John
-- 
John W. Linville		Linux should be at the core
linville@tuxdriver.com			of your literate lifestyle.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: m68k: linux-next allmodconfig
  2008-11-20  1:02 m68k: linux-next allmodconfig Andrew Morton
  2008-11-20  1:03 ` John W. Linville
@ 2008-11-20  8:01 ` Geert Uytterhoeven
  1 sibling, 0 replies; 3+ messages in thread
From: Geert Uytterhoeven @ 2008-11-20  8:01 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-wireless, Geert Uytterhoeven

On Wed, 19 Nov 2008, Andrew Morton wrote:
> include/net/mac80211.h: In function 'ieee80211_tx_info_clear_status':
> include/net/mac80211.h:400: error: size of array 'type name' is negative
> include/net/mac80211.h:405: error: size of array 'type name' is negative
> 
> due to:
> 
> static inline void
> ieee80211_tx_info_clear_status(struct ieee80211_tx_info *info)
> {
>         int i;
> 
>         BUILD_BUG_ON(offsetof(struct ieee80211_tx_info, status.rates) !=
>                      offsetof(struct ieee80211_tx_info, control.rates));
>         BUILD_BUG_ON(offsetof(struct ieee80211_tx_info, status.rates) !=
>                      offsetof(struct ieee80211_tx_info, driver_rates));
> -->     BUILD_BUG_ON(offsetof(struct ieee80211_tx_info, status.rates) != 8);
>         /* clear the rate counts */
>         for (i = 0; i < IEEE80211_TX_MAX_RATES; i++)
>                 info->status.rates[i].count = 0;
> 
> -->     BUILD_BUG_ON(

Yep, missing explicit padding in struct ieee80211_tx_info, breaking havoc on
m68k where the alignment requirement for 32-bit values is 2 bytes, not 4.

AFAIK, a fix should be floating around.

Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2008-11-20  8:01 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-11-20  1:02 m68k: linux-next allmodconfig Andrew Morton
2008-11-20  1:03 ` John W. Linville
2008-11-20  8:01 ` Geert Uytterhoeven

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).