Subject: kern/37462: use of com at pcmcia hangs system
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: None <apb@cequrux.com>
List: netbsd-bugs
Date: 12/02/2007 11:05:00
>Number:         37462
>Category:       kern
>Synopsis:       use of com at pcmcia hangs system
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Dec 02 11:05:00 +0000 2007
>Originator:     Alan Barrett
>Release:        NetBSD 4.99.37
>Organization:
Not much
>Environment:
NetBSD 4.99.37 i386
Userland built from current as of 2007-11-25 00:00 UTC
kernel built from jmcneill-pm branch as of 2007-11-25 00:00 UTC
>Description:
When I attempt to use a GSM UMTS modem, the system hangs so hard that I
can't even enter ddb.  The modem is a PCMCIA card that attaches as com
at pcmcia.

I first noticed the problem using pppd, but I can replicate the problem
using cu.  I get the same problem with the jmcneill-pm branch as with a
kernel from HEAD.

This used to work a few months ago.

>How-To-Repeat:
1.  Insert PCMCIA card.  The following messages appear on the console:

pcmcia0: CIS version PC Card Standard 6.1
pcmcia0: CIS info: Novatel Wireless, Merlin UMTS Modem, U630, 
pcmcia0: Manufacturer code 0xa4, product 0x276
pcmcia0: function 0: serial port, ccr addr 400 mask 263
pcmcia0: function 0, config table entry 7: I/O card; irq mask ffff; iomask 3, iospace 3f8-3ff; io8 irqpulse audio
pcmcia0: function 0, config table entry 15: I/O card; irq mask ffff; iomask 3, iospace 2f8-2ff; io8 irqpulse audio
pcmcia0: function 0, config table entry 23: I/O card; irq mask ffff; iomask 3, iospace 3e8-3ef; io8 irqpulse audio
pcmcia0: function 0, config table entry 31: I/O card; irq mask ffff; iomask 3, iospace 2e8-2ef; io8 irqpulse audio
pcmcia0: function 0, config table entry 39: I/O card; irq mask ffff; iomask 3, iospace 0-7; io8 irqpulse audio
pcmcia0: function 1: serial port, ccr addr 420 mask 263
pcmcia0: function 1, config table entry 7: I/O card; irq mask ffff; iomask 3, iospace 2f8-2ff; io8 irqpulse audio
pcmcia0: function 1, config table entry 15: I/O card; irq mask ffff; iomask 3, iospace 3f8-3ff; io8 irqpulse audio
pcmcia0: function 1, config table entry 23: I/O card; irq mask ffff; iomask 3, iospace 2e8-2ef; io8 irqpulse audio
pcmcia0: function 1, config table entry 31: I/O card; irq mask ffff; iomask 3, iospace 3e8-3ef; io8 irqpulse audio
pcmcia0: function 1, config table entry 39: I/O card; irq mask ffff; iomask 3, iospace 0-7; io8 irqpulse audio
com1 at pcmcia0 function 0: <Novatel Wireless, Merlin UMTS Modem, U630, >
com1: ns16550a, working fifo
com1: WARNING: powerhook_establish is deprecated
com1: WARNING: power management not supported
com2 at pcmcia0 function 1: <Novatel Wireless, Merlin UMTS Modem, U630, >
com2: ns16550a, working fifo
com2: WARNING: powerhook_establish is deprecated
com2: WARNING: power management not supported

    I don't know why it attaches as two com ports, but it has always
    done so, and I have always used only the first of the two ports.

2.  sudo cu -s 115200 -l /dev/dty01

    cu prints "Connected", but then the system freezes.  No kernel
    messages apear on the console, alt-control-escape (the magic key
    sequence to enter ddb) doesn't work, alt-control-F<n> (the magic
    key sequence to switch virtual consoles) doesn't work, ~. (the cu
    command to exit) doesn't work.

>Fix:
Unknown.  This used to work a few months ago.  Applying the patch
from revision 1.51 of src/sys/net/ppp_tty.c doesn't help.