Re: kern/118093: [firewire] firewire bus reset hogs CPU, causing data to be lost

Gavin Atkinson <[email protected]>
Newsgroups gmane.os.freebsd.bugs,gmane.os.freebsd.devel.firewire
Message-ID <[email protected]>
On Wed, 2009-03-04 at 21:37 +0000, Dieter wrote:
> In message <[email protected]>, [email protected] writes:
> 
> > This looks like it may be some bad
> > interaction between the firewire stack and using a serial
> > console.  To submitter: It may be worth while switching to
> > uart(4) rather than sio(4) for your serial ports and seeing
> > if that makes any difference (as I don't think uart(4) uses
> > the Giant lock).
> 
> The box is running 7.1 now.  I commented out sio in the config file
> and built a new kernel.
> 
> normal kernel:
> 
>  freebsd # dmesg | grep ^sio
> sio0: <16550A-compatible COM port> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
> sio0: type 16550A, console
> sio0: [FILTER]
> sio1: <16550A-compatible COM port> port 0x2f8-0x2ff irq 3 on acpi0
> sio1: type 16550A
> sio1: [FILTER]
>  freebsd # dmesg | grep -i ^uart
>  freebsd # dmesg | grep -i 1655 
> sio0: <16550A-compatible COM port> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
> sio0: type 16550A, console
> sio1: <16550A-compatible COM port> port 0x2f8-0x2ff irq 3 on acpi0
> sio1: type 16550A
>  freebsd # dmesg | grep -i console
> sio0: type 16550A, console
> sc0: <System console> at flags 0x100 on isa0
> sc0: VGA <16 virtual consoles, flags=0x100>
>  freebsd # dmesg | grep -i giant
> ohci0: [GIANT-LOCKED]
> ehci0: [GIANT-LOCKED]
> ohci1: [GIANT-LOCKED]
> ohci2: [GIANT-LOCKED]
> ehci1: [GIANT-LOCKED]
> ppc0: [GIANT-LOCKED]
> atkbd0: [GIANT-LOCKED]
> 
> With sio commented out:
> 
> OK boot kernel_uart
> /boot/kernel_uart/kernel text=0x3f8090 data=0x5b678+0x38cc8 syms=[0x8+0x6ee08+0x
> 8+0x609a9]
> /
> 
> And nothing else appears on the console.
> 
> 
>  freebsd # dmesg | grep -i ^sio
>  freebsd # dmesg | grep -i ^uart
> uart0: <16550 or compatible> port 0x3f8-0x3ff irq 4 on acpi0
> uart0: [FILTER]
> uart1: <16550 or compatible> port 0x2f8-0x2ff irq 3 on acpi0
> uart1: [FILTER]
>  freebsd # dmesg | grep -i 1655
> uart0: <16550 or compatible> port 0x3f8-0x3ff irq 4 on acpi0
> uart1: <16550 or compatible> port 0x2f8-0x2ff irq 3 on acpi0
>  freebsd # dmesg | grep -i console
> sc0: <System console> at flags 0x100 on isa0
> sc0: VGA <16 virtual consoles, flags=0x300>
> 
> echo hello >> /dev/console
> doesn't show up.  Nothing shows up on console.
> 
> And looking at files in /var/log I found:
> 
> getty[789]: open /dev/ttyd0: No such file or directory
> getty[790]: open /dev/ttyd1: No such file or directory
> 
> 
> Looks to me like commenting out sio doesn't work so well on my box.
> Is that the wrong way to switch from sio to uart?
> Is there something else I need to change instead, or in addition?

You'll also need to add the uart hints to your device.hints file, if you
haven't already, and update /etc/ttys.

hint.uart.0.at="isa"
hint.uart.0.port="0x3F8"
hint.uart.0.flags="0x10"
hint.uart.0.irq="4"

/etc/ttys: you may find you need to change "ttyd0" to "ttyu0".

Gavin
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-bugs
To unsubscribe, send any mail to "[email protected]"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.