* [2.6.12-rc1-mm4] swapped memset arguments @ 2005-04-02 21:30 Maciej Soltysiak 2005-04-02 22:38 ` Jesper Juhl 0 siblings, 1 reply; 3+ messages in thread From: Maciej Soltysiak @ 2005-04-02 21:30 UTC (permalink / raw) To: linux-kernel Hi, out of boredom I grepped 2.6.12-rc1-mm4 for swapped memset arguments. I found one: # grep -nr "memset.*\,\(\ \|\)0\(\ \|\));" * net/ieee80211/ieee80211_tx.c:226: memset(txb, sizeof(struct ieee80211_txb), 0); I found none in Linus' bk. Regards, Maciej ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [2.6.12-rc1-mm4] swapped memset arguments 2005-04-02 21:30 [2.6.12-rc1-mm4] swapped memset arguments Maciej Soltysiak @ 2005-04-02 22:38 ` Jesper Juhl 2005-04-05 15:37 ` Denis Vlasenko 0 siblings, 1 reply; 3+ messages in thread From: Jesper Juhl @ 2005-04-02 22:38 UTC (permalink / raw) To: Maciej Soltysiak; +Cc: James P. Ketrenos, netdev, David S. Miller, linux-kernel On Sat, 2 Apr 2005, Maciej Soltysiak wrote: > Hi, > > out of boredom I grepped 2.6.12-rc1-mm4 for swapped memset arguments. > I found one: > > # grep -nr "memset.*\,\(\ \|\)0\(\ \|\));" * > net/ieee80211/ieee80211_tx.c:226: memset(txb, sizeof(struct ieee80211_txb), 0); > And here's a patch : Fix swapped memset() arguments in net/ieee80211/ieee80211_tx.c found by Maciej Soltysiak. Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk> --- linux-2.6.12-rc1-mm4-orig/net/ieee80211/ieee80211_tx.c 2005-03-31 21:20:08.000000000 +0200 +++ linux-2.6.12-rc1-mm4/net/ieee80211/ieee80211_tx.c 2005-04-03 00:34:22.000000000 +0200 @@ -223,7 +223,7 @@ struct ieee80211_txb *ieee80211_alloc_tx if (!txb) return NULL; - memset(txb, sizeof(struct ieee80211_txb), 0); + memset(txb, 0, sizeof(struct ieee80211_txb)); txb->nr_frags = nr_frags; txb->frag_size = txb_size; ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [2.6.12-rc1-mm4] swapped memset arguments 2005-04-02 22:38 ` Jesper Juhl @ 2005-04-05 15:37 ` Denis Vlasenko 0 siblings, 0 replies; 3+ messages in thread From: Denis Vlasenko @ 2005-04-05 15:37 UTC (permalink / raw) To: Jesper Juhl, Maciej Soltysiak Cc: James P. Ketrenos, netdev, David S. Miller, linux-kernel [-- Attachment #1: Type: text/plain, Size: 564 bytes --] On Sunday 03 April 2005 01:38, Jesper Juhl wrote: > On Sat, 2 Apr 2005, Maciej Soltysiak wrote: > > > Hi, > > > > out of boredom I grepped 2.6.12-rc1-mm4 for swapped memset arguments. > > I found one: > > > > # grep -nr "memset.*\,\(\ \|\)0\(\ \|\));" * > > net/ieee80211/ieee80211_tx.c:226: memset(txb, sizeof(struct ieee80211_txb), 0); > > > And here's a patch : > > > Fix swapped memset() arguments in net/ieee80211/ieee80211_tx.c > found by Maciej Soltysiak. This one will stop these from happening again. (Well, at least on i386)... -- vda [-- Attachment #2: string.diff --] [-- Type: text/x-diff, Size: 951 bytes --] --- linux-2.6.11.src/include/asm-i386/string.h.orig Thu Mar 3 09:31:08 2005 +++ linux-2.6.11.src/include/asm-i386/string.h Tue Apr 5 18:34:28 2005 @@ -316,8 +345,16 @@ __asm__ __volatile__( return s; } -/* we might want to write optimized versions of these later */ -#define __constant_count_memset(s,c,count) __memset_generic((s),(c),(count)) +/* + * we might want to write optimized versions of this later + * for mow, just prevent common mistake of memset(a,c,0) + */ +void BUG_memset_with_zero_length(void); +static inline void * __constant_count_memset(void * s, int c, size_t count) +{ + if(!count) BUG_memset_with_zero_length(); + return __memset_generic(s,c,count); +} /* * memset(x,0,y) is a reasonably common thing to do, so we want to fill @@ -376,6 +413,7 @@ static inline void * __constant_c_and_co { switch (count) { case 0: + BUG_memset_with_zero_length(); return s; case 1: *(unsigned char *)s = pattern; ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2005-04-05 15:39 UTC | newest] Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2005-04-02 21:30 [2.6.12-rc1-mm4] swapped memset arguments Maciej Soltysiak 2005-04-02 22:38 ` Jesper Juhl 2005-04-05 15:37 ` Denis Vlasenko
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®