public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Unaligned accesses in the ethernet bridge
@ 2006-03-23  2:06 Peter Chubb
  2006-03-23  2:50 ` Randy.Dunlap
  2006-04-06 20:37 ` Adrian Bunk
  0 siblings, 2 replies; 7+ messages in thread
From: Peter Chubb @ 2006-03-23  2:06 UTC (permalink / raw)
  To: shemminger; +Cc: linux-kernel


I see lots of
	kernel unaligned access to 0xa0000001009dbb6f, ip=0xa000000100811591
	kernel unaligned access to 0xa0000001009dbb6b, ip=0xa0000001008115c1
	kernel unaligned access to 0xa0000001009dbb6d, ip=0xa0000001008115f1
messages in my logs on IA64 when using the ethernet bridge with 2.6.16.


Appended is a patch to fix them.

Signed-off-by: Peter Chubb <peterc@gelato.unsw.edu.au>


 net/bridge/br_stp_bpdu.c |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

Index: linux-2.6-import/net/bridge/br_stp_bpdu.c
===================================================================
--- linux-2.6-import.orig/net/bridge/br_stp_bpdu.c	2006-03-22 09:11:01.349886375 +1100
+++ linux-2.6-import/net/bridge/br_stp_bpdu.c	2006-03-23 12:52:13.719239205 +1100
@@ -19,6 +19,7 @@
 #include <linux/llc.h>
 #include <net/llc.h>
 #include <net/llc_pdu.h>
+#include <asm/unaligned.h>
 
 #include "br_private.h"
 #include "br_private_stp.h"
@@ -59,12 +60,12 @@ static inline void br_set_ticks(unsigned
 {
 	unsigned long ticks = (STP_HZ * j)/ HZ;
 
-	*((__be16 *) dest) = htons(ticks);
+	put_unaligned(htons(ticks), (__be16 *)dest);
 }
 
 static inline int br_get_ticks(const unsigned char *src)
 {
-	unsigned long ticks = ntohs(*(__be16 *)src);
+	unsigned long ticks = ntohs(get_unaligned((__be16 *)src));
 
 	return (ticks * HZ + STP_HZ - 1) / STP_HZ;
 }

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

end of thread, other threads:[~2006-04-09 14:27 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-03-23  2:06 [PATCH] Unaligned accesses in the ethernet bridge Peter Chubb
2006-03-23  2:50 ` Randy.Dunlap
2006-03-23  3:04   ` Nicholas Miell
2006-03-23  3:05   ` Patrick McFarland
2006-04-06 20:37 ` Adrian Bunk
2006-04-07 23:57   ` Stephen Hemminger
2006-04-09 14:26     ` Adrian Bunk

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox