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

Sean Bruno <[email protected]>
Newsgroups gmane.os.freebsd.devel.firewire
Message-ID <[email protected]>
Dieter wrote:
> Here are the results of two more experiments:
>
> I tried to verify what spl the firewire code is at when calling
> printf(9) by adding the following block into fwohci.c just
> before one of the printfs.
>
> {
> #include <sys/types.h>
> #include <sys/systm.h>
>   intrmask_t debug_spl;  /* __uint32_t */
>   intrmask_t debug_spl_high;
>   intrmask_t debug_spl_tty;
>   intrmask_t debug_spl_fw;
>   intrmask_t debug_spl_0;
>   intrmask_t debug_spl_net;
>
>   debug_spl = splhigh();
>   debug_spl_high = spltty();
>   debug_spl_tty = splfw();
>   debug_spl_fw = splnet();
>   debug_spl_net = splhigh();
>   spl0();  /* void */
>   debug_spl_0 = splhigh();
>   splx(debug_spl);
>
>   printf("fwohci_intr_core(): spl = 0x%x\n splhigh=0x%x spltty=0x%x splfw=0x%x splnet=0x%x spl0=0x%x\n",
>          debug_spl, debug_spl_high, debug_spl_tty, debug_spl_fw, debug_spl_net, debug_spl_0);
> }
>
> But my results appear bogus:
>
> fwohci_intr_core(): spl = 0x0
>  splhigh=0x0 spltty=0x0 splfw=0x0 splnet=0x0 spl0=0x0
>
> I have examined my code and the spl(9) man page several times
> but I can't find what is wrong.  Any clues?
>
> --------------------------------------------------------
>
> To isolate the effects of printf(9) from the firewire bus reset,
> I picked a trivial system call (chown(2)) and added some printf(9)
> calls.
>
> Calling chown several times and monitoring with systat -vmstat gives:
>   1098 interrupts on the console IRQ
>   93.1%Sys   6.7%Intr  0.2%User  0.0%Nice  0.0%Idle
>
> This did NOT interfere with Ethernet.
>
> So printf(9) interferes with Ethernet when called from the
> firewire driver, but not when called from a vanilla system call.
>
>   
I setup my system to execute a bus reset every 1 second, simultaneously, 
I started copying a large
file onto the system see if anything would happen.

I saw no change to copy speed reported by SCP during the entire 
transaction.  I also see no change
to the system load while this is occurring.

This seems indicative of "something else" going on.
> --------------------------------------------------------
>
> sio0: <16550A-compatible COM port> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
> sio0: type 16550A, console
> sio0: [FILTER]
>
> What does [FILTER] mean?  I don't see an explanation on the sio man page.
>   

Did you mean to ask a different list?  Because I have no idea.  :)
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-firewire
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.