NetBSD Problem Report #46572

From www@NetBSD.org  Sun Jun 10 03:10:44 2012
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [149.20.53.66])
	by www.NetBSD.org (Postfix) with ESMTP id D758163B89C
	for <gnats-bugs@gnats.NetBSD.org>; Sun, 10 Jun 2012 03:10:44 +0000 (UTC)
Message-Id: <20120610031043.B63BC63B882@www.NetBSD.org>
Date: Sun, 10 Jun 2012 03:10:43 +0000 (UTC)
From: jdbaker@mylinuxisp.com
Reply-To: jdbaker@mylinuxisp.com
To: gnats-bugs@NetBSD.org
Subject: Invalid argument accessing qe* (qec) interfaces w/NetBSD-6.0_BETA2/sparc
X-Send-Pr-Version: www-1.0

>Number:         46572
>Category:       port-sparc
>Synopsis:       Invalid argument accessing qe* (qec) interfaces w/NetBSD-6.0_BETA2/sparc
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    jdc
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Jun 10 03:15:00 +0000 2012
>Closed-Date:    Fri Jul 06 12:57:34 +0000 2012
>Last-Modified:  Fri Jul 06 12:57:34 +0000 2012
>Originator:     John D. Baker
>Release:        NetBSD-6.0_BETA2/sparc
>Organization:
>Environment:
NetBSD ossian.technoskunk.fur 6.0_BETA2 NetBSD 6.0_BETA2 (GENERIC) #5: Thu Jun  7 09:29:58 CDT 2012  sysop@verthandi.technoskunk.fur:/d0/build/netbsd-6/obj/sparc/sys/arch/sparc/compile/GENERIC sparc

>Description:
network configuration utilities, namely 'ifconfig' and 'dhclient' fail
when accessing qe* interfaces on qec (Quad Ethernet Controller) with
Invalid argument.

Device enumeration from 'dmesg':

[...]
qec0 at sbus0 slot 1 offset 0x20000 level 4 (ipl 7): 128K memory
qe0 at qec0 slot 0 offset 0x0 rev 1 address c0:ff:ee:c0:ff:ee
qe1 at qec0 slot 1 offset 0x0 rev 1 address c0:ff:ee:c0:ff:ee
qe2 at qec0 slot 2 offset 0x0 rev 1 address c0:ff:ee:c0:ff:ee
qe3 at qec0 slot 3 offset 0x0 rev 1 address c0:ff:ee:c0:ff:ee
[...]


Example with 'ifconfig':

$ ifconfig -l
le0 qe0 qe1 qe2 qe3 eon0 lo0 stf0 pflog0
$ ifconfig -a
le0: flags=8863<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        address: c0:ff:ee:c0:ff:ee
        media: Ethernet autoselect (10baseT)
        status: active
        inet 192.168.17.8 netmask 0xffffff00 broadcast 192.168.17.255
        inet6 fe80::a00:20ff:fe77:2960%le0 prefixlen 64 scopeid 0x1
ifconfig: status: getifinfo: Invalid argument
$ ifconfig qe2 
ifconfig: SIOCGIFFLAGS qe2: Invalid argument


Snippets from ktruss:

$ ktruss -i ifconfig qe2 | tee /tmp/ifconfig.ktruss
[...]
    73      1 ifconfig emul(netbsd)
    73      1 ifconfig mmap(0, 0x8000, 0x3, 0x1002, 0xffffffff, 0, 0, 0) = 0x20034000
    73      1 ifconfig open("/etc/ld.so.conf", 0, 0xefffeed8) = 3
[...]
    73      1 ifconfig close(0x3)                  = 0, 3
[...]
    73      1 ifconfig __socket30(0x2, 0x2, 0)     = 3, 2
    73      1 ifconfig ioctl(0x3, SIOCGIFFLAGS, 0xefffe838) Err#22 EINVAL
       "qe2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
    73      1 ifconfig write(0x2, 0xefffe008, 0xa) = 10, -268443640
       "ifconfig: "
    73      1 ifconfig write(0x2, 0xefffe070, 0x10) = 16, -268443536
       "SIOCGIFFLAGS qe2"
    73      1 ifconfig write(0x2, 0x201e3aa0, 0x2) = 2, 538852000
       ": "
    73      1 ifconfig issetugid()                 = 0, 47
    73      1 ifconfig issetugid()                 = 0, 10356
    73      1 ifconfig open("/usr/share/nls/nls.alias.db", 0x400000, 0xefffd9ec) Err#2 ENOENT
    73      1 ifconfig open("/usr/share/nls/nls.alias", 0x400000, 0x201e1048) = 5, 4194304
    73      1 ifconfig __fstat50(0x5, 0xefffdd70)  = 0, -268444304
    73      1 ifconfig mmap(0, 0x5f0, 0x1, 0x2, 0x5, 0, 0, 0) = 0x2003c000
    73      1 ifconfig close(0x5)                  = 0, 1520
    73      1 ifconfig munmap(0x2003c000, 0x5f0)   = 0, 1520
    73      1 ifconfig open("/usr/share/nls/C/libc.cat", 0, 0xefffdecc) = 5
    73      1 ifconfig __fstat50(0x5, 0xefffde40)  = 0, -268444096
    73      1 ifconfig mmap(0, 0x10be, 0x1, 0x1, 0x5, 0, 0, 0) = 0x2003c000
    73      1 ifconfig close(0x5)                  = 0, 4286
    73      1 ifconfig munmap(0x2003c000, 0x10be)  = 0, 4286
    73      1 ifconfig write(0x2, 0xefffe008, 0x11) = 17, -268443640
       "Invalid argument\n"

>How-To-Repeat:
On SPARCstation equipped with qec/qe interfaces, install NetBSD-6.0_BETA2
and attempt to configure one of the qe* interfaces with 'ifconfig' or
'dhclient'.

May also affect "be*" interfaces on qec base board, but this is
untested.

These worked fine in all Netbsd up to 5.1_STABLE...
>Fix:

>Release-Note:

>Audit-Trail:
From: Martin Husemann <martin@duskware.de>
To: gnats-bugs@NetBSD.org
Cc: port-sparc-maintainer@netbsd.org, gnats-admin@netbsd.org,
	netbsd-bugs@netbsd.org
Subject: Re: port-sparc/46572: Invalid argument accessing qe* (qec) interfaces w/NetBSD-6.0_BETA2/sparc
Date: Sun, 10 Jun 2012 13:38:06 +0200

 On Sun, Jun 10, 2012 at 03:15:01AM +0000, jdbaker@mylinuxisp.com wrote:
 > qe0 at qec0 slot 0 offset 0x0 rev 1 address c0:ff:ee:c0:ff:ee
 > qe1 at qec0 slot 1 offset 0x0 rev 1 address c0:ff:ee:c0:ff:ee
 > qe2 at qec0 slot 2 offset 0x0 rev 1 address c0:ff:ee:c0:ff:ee
 > qe3 at qec0 slot 3 offset 0x0 rev 1 address c0:ff:ee:c0:ff:ee

 This does not look right. Please provide full dmesg output from NetBSD
 and output of "printenv" at the firmware prompt.

 Thanks,

 Martin

From: "John D. Baker" <jdbaker@mylinuxisp.com>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: port-sparc/46572: Invalid argument accessing qe* (qec) interfaces
 w/NetBSD-6.0_BETA2/sparc
Date: Sun, 10 Jun 2012 11:52:37 -0500 (CDT)

 On Sun, 10 Jun 2012, Martin Husemann wrote:

 > This does not look right. Please provide full dmesg output from NetBSD
 > and output of "printenv" at the firmware prompt.

 As found in /var/run/dmesg.boot (machine is net-booted for these tests,
 MAC addresses obfuscated):

 initialized boothowt from bootloader: 0
 Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
      2006, 2007, 2008, 2009, 2010, 2011, 2012
      The NetBSD Foundation, Inc.  All rights reserved.
 Copyright (c) 1982, 1986, 1989, 1991, 1993
      The Regents of the University of California.  All rights reserved.

 NetBSD 6.0_BETA2 (GENERIC) #5: Thu Jun  7 09:29:58 CDT 2012
  	sysop@verthandi.technoskunk.fur:/d0/build/netbsd-6/obj/sparc/sys/arch/sparc/compile/GENERIC
 total memory = 97984 KB
 avail memory = 91280 KB
 timecounter: Timecounters tick every 10.000 msec
 bootpath: /iommu@0,10000000/sbus@0,10001000/ledma@5,8400010/le@5,8c00000
 mainbus0 (root): SUNW,SPARCstation-5: hostid 80772960
 cpu0 at mainbus0: MB86904 @ 85 MHz, on-chip FPU
 cpu0: 16K instruction (32 b/l), 8K data (16 b/l): cache enabled
 obio0 at mainbus0
 clock0 at obio0 slot 0 offset 0x200000: mk48t08
 timer0 at obio0 slot 0 offset 0xd00000: delay constant 40, frequency = 2000000 Hz
 timecounter: Timecounter "timer-counter" frequency 2000000 Hz quality 100
 zs0 at obio0 slot 0 offset 0x100000 level 12 softpri 6
 zstty0 at zs0 channel 0 (console i/o)
 zstty1 at zs0 channel 1
 zs1 at obio0 slot 0 offset 0x0 level 12 softpri 6
 zstty4 at zs1 channel 0
 kbd0 at zstty4
 zstty5 at zs1 channel 1
 ms0 at zstty5
 wsmouse0 at ms0 mux 0
 slavioconfig at obio0 slot 0 offset 0x800000 not configured
 auxreg0 at obio0 slot 0 offset 0x900000
 power0 at obio0 slot 0 offset 0x910000 level 2
 fdc0 at obio0 slot 0 offset 0x400000 level 11: no drives attached
 iommu0 at mainbus0 addr 0x10000000: version 0x4/0x0, page-size 4096, range 64MB
 sbus0 at iommu0: clock = 21.250 MHz
 dma0 at sbus0 slot 5 offset 0x8400000: DMA rev 2
 esp0 at dma0 slot 5 offset 0x8800000 level 4: ESP200, 40MHz, SCSI ID 7
 scsibus0 at esp0: 8 targets, 8 luns per target
 bpp0 at sbus0 slot 5 offset 0xc800000 level 2 (ipl 3): DMA rev 2
 ledma0 at sbus0 slot 5 offset 0x8400010: DMA rev 2
 le0 at ledma0 slot 5 offset 0x8c00000 level 6: address c0:ff:ee:c0:ff:ee
 le0: 8 receive buffers, 2 transmit buffers
 audiocs0 at sbus0 slot 4 offset 0xc000000 level 9: CS4231A
 audio0 at audiocs0: full duplex, playback, capture
 power-management at sbus0 slot 4 offset 0xa000000 not configured
 qec0 at sbus0 slot 1 offset 0x20000 level 4 (ipl 7): 128K memory
 qe0 at qec0 slot 0 offset 0x0 rev 1 address c0:ff:ee:c0:ff:ee
 qe1 at qec0 slot 1 offset 0x0 rev 1 address c0:ff:ee:c0:ff:ee
 qe2 at qec0 slot 2 offset 0x0 rev 1 address c0:ff:ee:c0:ff:ee
 qe3 at qec0 slot 3 offset 0x0 rev 1 address c0:ff:ee:c0:ff:ee
 magma0 at sbus0 slot 3 offset 0x0 level 9: Magma LC 2+1 Sp
 mtty0 at magma0: 2 ttys
 mbpp0 at magma0: 1 port
 timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0
 scsibus0: waiting 2 seconds for devices to settle...
 wskbd0 at kbd0 mux 1
 sd0 at scsibus0 target 1 lun 0: <SEAGATE, ST5660N  SUN0535, 0644> disk fixed
 sd0: 520 MB, 3002 cyl, 4 head, 88 sec, 512 bytes/sect x 1065664 sectors
 sd0: sync (100.00ns offset 15), 8-bit (10.000MB/s) transfers, tagged queueing
 kbd0: reset failed
 Kernelized RAIDframe activated
 root on le0
 nfs_boot: trying DHCP/BOOTP
 nfs_boot: DHCP next-server: 192.168.17.4
 nfs_boot: my_name=ossian
 nfs_boot: my_domain=technoskunk.fur
 nfs_boot: my_addr=192.168.17.8
 nfs_boot: my_mask=255.255.255.0
 nfs_boot: gateway=192.168.17.8
 root on 192.168.17.4:/r0/diskless/ossian
 root file system type: nfs

 And from 'printenv':

 ok printenv
 Parameter Name        Value                          Default Value

 tpe-link-test?        true                           true
 output-device         ttya                           screen
 input-device          ttya                           keyboard
 keyboard-click?       false                          false
 keymap 
 ttyb-rts-dtr-off      false                          false
 ttyb-ignore-cd        true                           true
 ttya-rts-dtr-off      false                          false
 ttya-ignore-cd        true                           true
 ttyb-mode             9600,8,n,1,-                   9600,8,n,1,-
 ttya-mode             9600,8,n,1,-                   9600,8,n,1,-
 fcode-debug?          false                          false
 local-mac-address?    false                          false
 screen-#columns       80                             80
 screen-#rows          34                             34
 selftest-#megs        1                              1
 scsi-initiator-id     7                              7
 silent-mode?          false                          false
 auto-boot?            true                           true
 watchdog-reboot?      false                          false
 diag-file 
 diag-device           net                            net
 boot-file 
 boot-device           disk1 net                      disk net
 sbus-probe-list       541230                         541230
 use-nvramrc?          false                          false
 nvramrc 
 sunmon-compat?        false                          false
 security-mode         none                           none
 security-password 
 security-#badlogins   0                              <no default>
 oem-logo                                             <no default>
 oem-logo?             false                          false
 oem-banner                                           <no default>
 oem-banner?           false                          false
 hardware-revision                                    <no default>
 last-hardware-update                                 <no default>
 testarea              0                              0
 mfg-switch?           false                          false
 diag-switch?          false                          false

 -- 
 |/"\ John D. Baker, KN5UKS               NetBSD     Darwin/MacOS X
 |\ / jdbaker[snail]mylinuxisp[flyspeck]com    OpenBSD            FreeBSD
 | X  No HTML/proprietary data in email.   BSD just sits there and works!
 |/ \ GPGkeyID:  D703 4A7E 479F 63F8 D3F4  BD99 9572 8F23 E4AD 1645

From: "John D. Baker" <jdbaker@mylinuxisp.com>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: port-sparc/46572: Invalid argument accessing qe* (qec) interfaces
 w/NetBSD-6.0_BETA2/sparc
Date: Thu, 14 Jun 2012 01:19:34 -0500 (CDT)

 I have another machine (SS10) also equipped with a qec/qe card and it
 behaves the same way.  This system also uses pppoe configured through
 one of the qe* interfaces.

 I had hoped one of the pull-ups made today:

    http://mail-index.NetBSD.org/source-changes/2012/06/13/msg035002.html

 addressed this issue, since it refered to related ioctls.  No joy.

 On this system, I have to boot GENERIC with "-c" and disable the dbri
 interface due to port-sparc/34046.

 (I've tried 6.99.7 from today [201206140315Z or so], but GENERIC panics
 with a memory fault after noting that the root filesystem is on the
 "le0" device.)


 NetBSD nozette.technoskunk.fur 6.0_BETA2 NetBSD 6.0_BETA2 (GENERIC) #7: Wed Jun 13 16:13:11 CDT 2012 sysop@fred.technoskunk.fur:/d0/build/netbsd-6/obj/sparc/sys/arch/sparc/compile/GENERIC sparc


 ok boot net-tpe -c
 SPARCstation 10 (1 X 390Z55), No Keyboard
 ROM Rev. 2.25, 128 MB memory installed, Serial #7410937.
 Ethernet address 8:0:20:c0:ff:ee, Host ID: 72c0ffee.


 Rebooting with command: net-tpe -c 
 Boot device: /iommu/sbus/ledma@f,400010:tpe/le@f,c00000  File and args: -c
 Lost Carrier  (transceiver cable problem?) 
 Twisted pair cable problem or hub link-test disabled.
 Use the PROM command "help ethernet" for more information.

 ARP/RARP send failed.  Check Ethernet cable and transceiver.
 Timeout waiting for ARP/RARP packet
 14200 
 >> NetBSD/sparc Secondary Boot, Revision 1.15 (Wed Jun 13 21:27:18 CDT 2012)
 Booting netbsd
 Trying BOOTP protocol... ip address: 192.168.17.8, netmask: 255.255.255.0, gateway: 192.168.17.8
 root addr=192.168.17.43 path=/d1/diskless/nozette
 4091968+150560 [261376+248712]=0x488a24
 OBP version 3, revision 2.25 (plugin rev 2)
 initialized boothowt from bootloader: 1000
 Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
      2006, 2007, 2008, 2009, 2010, 2011, 2012
      The NetBSD Foundation, Inc.  All rights reserved.
 Copyright (c) 1982, 1986, 1989, 1991, 1993
      The Regents of the University of California.  All rights reserved.

 NetBSD 6.0_BETA2 (GENERIC) #7: Wed Jun 13 16:13:11 CDT 2012
  	sysop@fred.technoskunk.fur:/d0/build/netbsd-6/obj/sparc/sys/arch/sparc/compile/GENERIC
 total memory = 127 MB
 avail memory = 120 MB
 userconf: configure system autoconfiguration:
 uc> disable dbri 
 [138] dbri* disabled
 uc> exit 
 Continuing...
 bootpath: /iommu@f,e0000000/sbus@f,e0001000/ledma@f,400010:t/le@f,c00000
 mainbus0 (root): SUNW,SPARCstation-10: hostid 72c0ffee 
 cpu0 at mainbus0: TMS390Z50 v1 @ 40 MHz, on-chip FPU 
 cpu0: physical 20K instruction (64 b/l), 16K data (32 b/l), 1024K external (32 b/l): cache enabled
 obio0 at mainbus0 
 clock0 at obio0 slot 0 offset 0x200000: mk48t08
 timer0 at obio0 slot 0 offset 0x300000: delay constant 18, frequency = 2000000 Hz
 zs0 at obio0 slot 0 offset 0x100000 level 12 softpri 6
 zstty0 at zs0 channel 0 (console i/o) 
 zstty1 at zs0 channel 1 
 zs1 at obio0 slot 0 offset 0x0 level 12 softpri 6
 zstty4 at zs1 channel 0 
 kbd0 at zstty4 
 zstty5 at zs1 channel 1
 ms0 at zstty5 
 wsmouse0 at ms0 mux 0
 fdc0 at obio0 slot 0 offset 0x700000 level 11 softpri 4: chip 82077
 fd0 at fdc0 drive 0: 1.44MB 80 cyl, 2 head, 18 sec 
 auxreg0 at obio0 slot 0 offset 0x800000 
 power0 at obio0 slot 0 offset 0xa01000 level 2
 iommu0 at mainbus0 ioaddr 0xe0000000: version 0x3/0x0, page-size 4096, range 64MB
 sbus0 at iommu0: clock = 20 MHz
 dma0 at sbus0 slot 15 offset 0x400000: DMA rev 2
 esp0 at dma0 slot 15 offset 0x800000 level 4: ESP200, 40MHz, SCSI ID 7
 scsibus0 at esp0: 8 targets, 8 luns per target 
 ledma0 at sbus0 slot 15 offset 0x400010: DMA rev 2
 le0 at ledma0 slot 15 offset 0xc00000 level 6: address c0:ff:ee:c0:ff:ee
 le0: 8 receive buffers, 2 transmit buffers 
 bpp0 at sbus0 slot 15 offset 0x4800000 level 2 (ipl 3): DMA rev 2
 SUNW,DBRIe at sbus0 slot 15 offset 0x8010000 level 9 not configured
 magma0 at sbus0 slot 0 offset 0x0 level 9: Magma LC 2+1 Sp 
 mtty0 at magma0: 2 ttys 
 mbpp0 at magma0: 1 port
 qec0 at sbus0 slot 2 offset 0x20000 level 4 (ipl 7): 128K memory
 qe0 at qec0 slot 0 offset 0x0 rev 1 address c0:ff:ee:c0:ff:ee 
 qe1 at qec0 slot 1 offset 0x0 rev 1 address c0:ff:ee:c0:ff:ee
 qe2 at qec0 slot 2 offset 0x0 rev 1 address c0:ff:ee:c0:ff:ee
 qe3 at qec0 slot 3 offset 0x0 rev 1 address c0:ff:ee:c0:ff:ee
 eccmemctl0 at mainbus0 ioaddr 0x0: version 0x0/0x1 
 scsibus0: waiting 2 seconds for devices to settle...
 wskbd0 at kbd0 mux 1 
 sd0 at scsibus0 target 1 lun 0: <QUANTUM, PD1050iS, 3110> disk fixed
 sd0: 1003 MB, 2448 cyl, 12 head, 69 sec, 512 bytes/sect x 2055096 sectors
 sd0: sync (100.00ns offset 15), 8-bit (10.000MB/s) transfers, tagged queueing
 kbd0: reset failed 
 root on le0 
 nfs_boot: trying DHCP/BOOTP
 nfs_boot: DHCP next-server: 192.168.17.43
 nfs_boot: my_domain=technoskunk.fur 
 nfs_boot: my_addr=192.168.17.8 
 nfs_boot: my_mask=255.255.255.0
 nfs_boot: gateway=192.168.17.8 
 root on 192.168.17.43:/d1/diskless/nozette
 root file system type: nfs 
 Thu Jun 14 05:28:31 GMT 2012
 Not checking /: fs_passno = 0 in /etc/fstab
 Starting file system checks:
 Setting tty flags.
 Setting sysctl variables:
 ddb.onpanic: 1 -> 0
 net.inet.tcp.mss_ifmtu: 0 -> 1
 Starting network.
 Hostname: nozette.technoskunk.fur
 IPv6 mode: host
 Configuring network interfaces: le0 qe1ifconfig: exec_matches: Invalid argument
   qe2ifconfig: exec_matches: Invalid argument
   pppoe0ifconfig: exec_matches: Invalid argument
 .
 Adding interface aliases:.
 Enabling pf firewall.
 Adding static routes.
 Building databases: dev, utmp, utmpx.
 Starting syslogd.
 Starting rpcbind.
 Mounting all filesystems...
 Clearing temporary files.
 Creating a.out runtime link editor directory cache.
 Checking quotas: done.
 Setting securelevel: kern.securelevel: 0 -> 1
 swapctl: adding /swap as swap device at priority 0
 Starting virecover.
 Starting ifwatchd.
 Starting pflogd.
 Checking for core dump...
 savecore: no core dump (no dumpdev)
 Starting ftp_proxy.
 Starting local daemons:  Starting pfspamd.
 .
 Updating motd.
 Starting ntpd.
 Starting sshd.
 Starting cron.
 Thu Jun 14 00:30:34 CDT 2012

 NetBSD/sparc (nozette.technoskunk.fur) (ttya)

 login:


 Snippets from 'ktruss ifconfig qe2 dsl-local up':

    1915      1 ktruss   fcntl(0x4, 0x3, 0)          = 1, 3
    1915      1 ktruss   emul(netbsd)
    1915      1 ktruss   fcntl(0x4, 0x4, 0x1)        = 0, 4

    1915      1 ifconfig execve("/sbin/ifconfig", 0xefffec6c, 0xefffec84) JUSTRETURN

    1915      1 ifconfig open("/etc/hosts", 0x400000, 0x1b6) = 3, 4194304
    1915      1 ifconfig __fstat50(0x3, 0xefffc060)  = 0, -268451744
    1915      1 ifconfig read(0x3, 0x2031c000, 0x2000) = 959, 540131328
         "#\t$NetBSD: hosts,v 1.8 2009/07/03 22:32:55 hubertf Exp $\n#\n# Host "
    1915      1 ifconfig read(0x3, 0x2031c000, 0x2000) = 0, 540131328
         ""
    1915      1 ifconfig close(0x3)                  = 0, 1
    1915      1 ifconfig __socket30(0x2, 0x2, 0)     = 3, 2
    1915      1 ifconfig ioctl(0x3, SIOCGIFFLAGS, 0xefffe6e0) Err#22 EINVAL
         "qe2\0\0\0\0\0\b\0\0\0 00\^\\M-o\M^?\M-g\^X\0\^AF\M-4\M-o\M^?\M-g\\ 0?"
    1915      1 ifconfig write(0x2, 0xefffdf10, 0xa) = 10, -268443888
         "ifconfig: "
    1915      1 ifconfig write(0x2, 0xefffdf78, 0xc) = 12, -268443784
         "exec_matches"
    1915      1 ifconfig write(0x2, 0x201e3cd0, 0x2) = 2, 538852560
         ": "
    1915      1 ifconfig issetugid()                 = 0, 47
    1915      1 ifconfig issetugid()                 = 0, 10428
    1915      1 ifconfig open("/usr/share/nls/nls.alias.db", 0x400000, 0xefffd8f4) Err#2 ENOENT
    1915      1 ifconfig open("/usr/share/nls/nls.alias", 0x400000, 0x201e1278) = 5, 4194304
    1915      1 ifconfig __fstat50(0x5, 0xefffdc78)  = 0, -268444552
    1915      1 ifconfig mmap(0, 0x5f0, 0x1, 0x2, 0x5, 0, 0, 0) = 0x2003d000
    1915      1 ifconfig close(0x5)                  = 0, 1520
    1915      1 ifconfig munmap(0x2003d000, 0x5f0)   = 0, 1520
    1915      1 ifconfig open("/usr/share/nls/C/libc.cat", 0, 0xefffddd4) = 5
    1915      1 ifconfig __fstat50(0x5, 0xefffdd48)  = 0, -268444344
    1915      1 ifconfig mmap(0, 0x10be, 0x1, 0x1, 0x5, 0, 0, 0) = 0x2003d000
    1915      1 ifconfig close(0x5)                  = 0, 4286
    1915      1 ifconfig munmap(0x2003d000, 0x10be)  = 0, 4286
    1915      1 ifconfig write(0x2, 0xefffdf10, 0x11) = 17, -268443888
         "Invalid argument\n"

 -- 
 |/"\ John D. Baker, KN5UKS               NetBSD     Darwin/MacOS X
 |\ / jdbaker[snail]mylinuxisp[flyspeck]com    OpenBSD            FreeBSD
 | X  No HTML/proprietary data in email.   BSD just sits there and works!
 |/ \ GPGkeyID:  D703 4A7E 479F 63F8 D3F4  BD99 9572 8F23 E4AD 1645

From: "John D. Baker" <jdbaker@mylinuxisp.com>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: port-sparc/46572: Invalid argument accessing qe* (qec) interfaces
 w/NetBSD-6.0_BETA2/sparc
Date: Mon, 18 Jun 2012 08:27:17 -0500 (CDT)

 Once -current was able to boot again, the problem remains.  So, let the
 bisection begin.

 Whatever the source of the problem, it appeared not long after the
 "netbsd-5" branch.  I've so far backed up to 5.99.5 and the problem is
 still there.  I'm building GENERIC and modules (have to do a full build
 for early trees) and booting them with my existing 5.1_STABLE userland.

 -- 
 |/"\ John D. Baker, KN5UKS               NetBSD     Darwin/MacOS X
 |\ / jdbaker[snail]mylinuxisp[flyspeck]com    OpenBSD            FreeBSD
 | X  No HTML/proprietary data in email.   BSD just sits there and works!
 |/ \ GPGkeyID:  D703 4A7E 479F 63F8 D3F4  BD99 9572 8F23 E4AD 1645

From: "John D. Baker" <jdbaker@mylinuxisp.com>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: port-sparc/46572: Invalid argument accessing qe* (qec) interfaces
 w/NetBSD-6.0_BETA2/sparc
Date: Wed, 20 Jun 2012 00:54:43 -0500 (CDT)

   This message is in MIME format.  The first part should be readable text,
   while the remaining parts are likely unreadable without MIME-aware tools.

 ---2139810480-1791951395-1340171683=:6758
 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed

 The fault quickly converged on this commit:

    http://mail-index.netbsd.org/source-changes/2008/11/07/msg212329.html

 There are a lot of files modified in this, but the one of interest is
 "sys/dev/sbus/qe.c".  Despite comments about reusing "ether_ioctl()",
 not all the needed edits were made.

 The following change solves the problem.  It matches what was done
 for "be.c" as well as a number of other interface drivers affected
 by the above-referenced commit.

 Index: sys/dev/sbus/qe.c
 ===================================================================
 RCS file: /cvsroot/src/sys/dev/sbus/qe.c,v
 retrieving revision 1.60
 diff -u -p -r1.60 qe.c
 --- sys/dev/sbus/qe.c	2 Feb 2012 19:43:06 -0000	1.60
 +++ sys/dev/sbus/qe.c	20 Jun 2012 04:35:44 -0000
 @@ -956,7 +956,7 @@ qeioctl(struct ifnet *ifp, u_long cmd, v
   		break;

   	default:
 -		error = EINVAL;
 +		error = ether_ioctl(ifp, cmd, data);
   		break;
   	}

 This is a diff against -current.  I'll include as an attachment
 as well so it can be applied with 'patch'.  Please also pull up
 to netbsd-6.

 Perhaps other less-commonly-used drivers from that commit should
 be double-checked?

 -- 
 |/"\ John D. Baker, KN5UKS               NetBSD     Darwin/MacOS X
 |\ / jdbaker[snail]mylinuxisp[flyspeck]com    OpenBSD            FreeBSD
 | X  No HTML/proprietary data in email.   BSD just sits there and works!
 |/ \ GPGkeyID:  D703 4A7E 479F 63F8 D3F4  BD99 9572 8F23 E4AD 1645
 ---2139810480-1791951395-1340171683=:6758
 Content-Type: TEXT/PLAIN; charset=US-ASCII; name=qeioctl-patch.diff
 Content-Transfer-Encoding: BASE64
 Content-ID: <Pine.NEB.4.64.1206200054430.6758@david.technoskunk.fur>
 Content-Description: qeioctl-patch.diff
 Content-Disposition: attachment; filename=qeioctl-patch.diff

 SW5kZXg6IHN5cy9kZXYvc2J1cy9xZS5jDQo9PT09PT09PT09PT09PT09PT09
 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
 PT09DQpSQ1MgZmlsZTogL2N2c3Jvb3Qvc3JjL3N5cy9kZXYvc2J1cy9xZS5j
 LHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS42MA0KZGlmZiAtdSAtcCAtcjEu
 NjAgcWUuYw0KLS0tIHN5cy9kZXYvc2J1cy9xZS5jCTIgRmViIDIwMTIgMTk6
 NDM6MDYgLTAwMDAJMS42MA0KKysrIHN5cy9kZXYvc2J1cy9xZS5jCTIwIEp1
 biAyMDEyIDA0OjM1OjQ0IC0wMDAwDQpAQCAtOTU2LDcgKzk1Niw3IEBAIHFl
 aW9jdGwoc3RydWN0IGlmbmV0ICppZnAsIHVfbG9uZyBjbWQsIHYNCiAJCWJy
 ZWFrOw0KIA0KIAlkZWZhdWx0Og0KLQkJZXJyb3IgPSBFSU5WQUw7DQorCQll
 cnJvciA9IGV0aGVyX2lvY3RsKGlmcCwgY21kLCBkYXRhKTsNCiAJCWJyZWFr
 Ow0KIAl9DQogDQo=

 ---2139810480-1791951395-1340171683=:6758--

From: Julian Coleman <jdc@coris.org.uk>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: port-sparc/46572: Invalid argument accessing qe* (qec) interfaces w/NetBSD-6.0_BETA2/sparc
Date: Wed, 20 Jun 2012 12:12:24 +0100

 Hi,

 >  The following change solves the problem.  It matches what was done
 >  for "be.c" as well as a number of other interface drivers affected
 >  by the above-referenced commit.

 I have tested fix and confirm that it works.

 There is a problem with the multifast filter set up on qe too.   A simple
 test is to attempt to obtain an IPv6 address using rtsold.  This will fail
 unless the interface is also in promiscuous mode, for example:

   rtsold -am && tcpdump -evn -i qe0

 Thanks,

 J

 -- 
   My other computer also runs NetBSD    /        Sailing at Newbiggin
         http://www.netbsd.org/        /   http://www.newbigginsailingclub.org/

From: Julian Coleman <jdc@coris.org.uk>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: port-sparc/46572: Invalid argument accessing qe* (qec) interfaces w/NetBSD-6.0_BETA2/sparc
Date: Thu, 21 Jun 2012 09:34:17 +0100

 Hi,

 > There is a problem with the multifast filter set up on qe too.

 Note, that this is also a problem with 5.0, so is not a regression.

 Thanks,

 J

 -- 
   My other computer also runs NetBSD    /        Sailing at Newbiggin
         http://www.netbsd.org/        /   http://www.newbigginsailingclub.org/

From: "Julian Coleman" <jdc@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/46572 CVS commit: src/sys/dev/sbus
Date: Fri, 22 Jun 2012 11:03:58 +0000

 Module Name:	src
 Committed By:	jdc
 Date:		Fri Jun 22 11:03:57 UTC 2012

 Modified Files:
 	src/sys/dev/sbus: qe.c

 Log Message:
 Fix fallout from revision 1.68, and call ether_ioctl() in the default path.
 Patch from John D. Baker in PR port-sparc/46572.


 To generate a diff of this commit:
 cvs rdiff -u -r1.60 -r1.61 src/sys/dev/sbus/qe.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

Responsible-Changed-From-To: port-sparc-maintainer->jdc
Responsible-Changed-By: jdc@NetBSD.org
Responsible-Changed-When: Sat, 23 Jun 2012 18:17:07 +0000
Responsible-Changed-Why:
Thank you for the patch!  Patch applied and multicast bug fixed.


State-Changed-From-To: open->pending-pullups
State-Changed-By: jdc@NetBSD.org
State-Changed-When: Sat, 23 Jun 2012 18:17:07 +0000
State-Changed-Why:
netbsd-6 pull up #367


From: "Jeff Rizzo" <riz@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/46572 CVS commit: [netbsd-6] src/sys/dev/sbus
Date: Wed, 4 Jul 2012 19:38:55 +0000

 Module Name:	src
 Committed By:	riz
 Date:		Wed Jul  4 19:38:54 UTC 2012

 Modified Files:
 	src/sys/dev/sbus [netbsd-6]: qe.c

 Log Message:
 Pull up following revision(s) (requested by jdc in ticket #367):
 	sys/dev/sbus/qe.c: revision 1.61
 	sys/dev/sbus/qe.c: revision 1.62
 Fix fallout from revision 1.46, and call ether_ioctl() in the default path.
 Patch from John D. Baker in PR port-sparc/46572.
 Fix multicast filter set up: we need to byte-swap the hash before writing to
 the chip.  While here, remove open-coded copy of ether_crc32_le().


 To generate a diff of this commit:
 cvs rdiff -u -r1.60 -r1.60.2.1 src/sys/dev/sbus/qe.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

State-Changed-From-To: pending-pullups->closed
State-Changed-By: jdc@NetBSD.org
State-Changed-When: Fri, 06 Jul 2012 12:57:34 +0000
State-Changed-Why:
Pull-up #368 has been processed.


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.