Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/dev/usb PR kern/54486



details:   https://anonhg.NetBSD.org/src/rev/8a017278e006
branches:  trunk
changeset: 453824:8a017278e006
user:      rin <rin%NetBSD.org@localhost>
date:      Mon Aug 26 17:26:33 2019 +0000

description:
PR kern/54486

Revert workaround introduced in rev 1.94:
http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/dev/usb/if_axe.c#rev1.94

This is a problem specific to ARMv6+, and addressed by
arch/arm/conf/Makefile.arm rev 1.50:
http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/arm/conf/Makefile.arm#rev1.50

XXX
pullup netbsd-9

diffstat:

 sys/dev/usb/if_axe.c |  15 ++-------------
 1 files changed, 2 insertions(+), 13 deletions(-)

diffs (37 lines):

diff -r 4fa062c09e50 -r 8a017278e006 sys/dev/usb/if_axe.c
--- a/sys/dev/usb/if_axe.c      Mon Aug 26 17:18:42 2019 +0000
+++ b/sys/dev/usb/if_axe.c      Mon Aug 26 17:26:33 2019 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: if_axe.c,v 1.119 2019/08/23 04:32:57 mrg Exp $ */
+/*     $NetBSD: if_axe.c,v 1.120 2019/08/26 17:26:33 rin Exp $ */
 /*     $OpenBSD: if_axe.c,v 1.137 2016/04/13 11:03:37 mpi Exp $ */
 
 /*
@@ -87,7 +87,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_axe.c,v 1.119 2019/08/23 04:32:57 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_axe.c,v 1.120 2019/08/26 17:26:33 rin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -1038,18 +1038,7 @@
                                break;
                        }
 
-#if !defined(__NO_STRICT_ALIGNMENT) && __GNUC_PREREQ__(6, 1)
-                       /*
-                        * XXX hdr is 2-byte aligned in buf, not 4-byte.
-                        * For some architectures, __builtin_memcpy() of
-                        * GCC 6 attempts to copy sizeof(hdr) = 4 bytes
-                        * at onece, which results in alignment error.
-                        */
-                       hdr.len = *(uint16_t *)buf;
-                       hdr.ilen = *(uint16_t *)(buf + sizeof(uint16_t));
-#else
                        memcpy(&hdr, buf, sizeof(hdr));
-#endif
 
                        DPRINTFN(20, "total_len %#jx len %jx ilen %#jx",
                            total_len,



Home | Main Index | Thread Index | Old Index