Re: bluetooth / hcseriald panics -current.

From: Maksim Yevmenkin <maksim.yevmenkin_at_savvis.net>
Date: Wed, 13 Oct 2004 16:08:25 -0700
Niki,

could you please try the following patch?

cvs diff: Diffing .
Index: ng_h4.c
===================================================================
RCS file: /usr/local/cvs/sys/netgraph/bluetooth/drivers/h4/ng_h4.c,v
retrieving revision 1.7
diff -u -r1.7 ng_h4.c
--- ng_h4.c     23 Aug 2004 18:08:15 -0000      1.7
+++ ng_h4.c     13 Oct 2004 23:05:34 -0000
_at__at_ -209,11 +209,11 _at__at_
          * I'm not sure what is appropriate.
          */

-       ttyflush(tp, FREAD | FWRITE);
         clist_alloc_cblocks(&tp->t_canq, 0, 0);
         clist_alloc_cblocks(&tp->t_rawq, 0, 0);
         clist_alloc_cblocks(&tp->t_outq,
                 MLEN + NG_H4_HIWATER, MLEN + NG_H4_HIWATER);
+       ttyflush(tp, FREAD | FWRITE);
  out:
         splx(s); /* XXX */


btw, you are probably going to have bad experience with serial bluetooth 
device. sio(4) driver is know to loose bytes (silo overflow problem) and 
this is NOT acceptable in bluetooth.

max


Niki Denev wrote:
> Niki Denev writes:
> 
>> The machine is IBM TP X31 with compact flash D-Link DCF-650BT 
>> bluetooth adapter.
>> The adapter itself is properly recognised as sio4.
>> But this is what i get when tried to use a slightly modified (to 
>> reflect the recent cuaa* -> cuad* change) 
>> /usr/share/examples/netgraph/bluetooth/rc.bluetooth version.
>>
>> [root_at_phobos ~]# pccard1: Allocation failed for cfe1
>> sio4: <Bluetooth BT0100M > at port 0x2e8-0x2ef irq 5 function 0 config 
>> 2 on pccard1
>> sio4: type 16550A
>> sio4: unable to activate interrupt in fast mode - using normal mode
>>
>> [root_at_phobos ~]# /etc/rc.bluetooth start sio4
>> kernel trap 12 with interrupts disabled
>>
>>
>> Fatal trap 12: page fault while in kernel mode
>> fault virtual address     = 0x64
>> fault code                = supervisor write, page not present
>> instruction pointer       = 0x8:0xc062f911
>> stack pointer             = 0x10:0xd540ba2c
>> frame pointer             = 0x10:0xd540ba38
>> code segment              = base 0x0, limit 0xffffff, type 0x1b
>>                           = DPL 0, pres 1, def32 1, gran 1
>> processor eflags          = resume, IOPL = 0
>> current process           = 788 (hcseriald)
>> [thread 100050]
>> Stopped at       comstop+0x75:    andl    $-0x5,0x64(%eax)
>> db> trace
>> comstop(c1c42800,3) at comstop+0x75
>> ttyflush(c1c42800,3,c2cb6700,303468,d540ba80) at ttyflush+0x37
>> ng_h4_open(c1d72300,c1c42800) at ng_h4_open+0x194
>> ttioctl(c1c42800,8004741b,d540bc60,3,c2139b68) at ttioctl+0xc32
>> ttyioctl(c1d72300,8004741b,d540bc60,3,c1a27820) at ttyioctl+0x41
>> spec_ioctl(d540bb88,d540bc34,c056a6d7,d540bb88,c06e8aa0) at 
>> spec_ioctl+0xee
>> spec_vnoperate(d540bb88) at spec_vnoperate+0x13
>> vn_ioctl(c1d842ec,8004741b,d540bc60,c1da9c80,c1a27820) at vn_ioctl+0x1ab
>> ioctl(c1a27820,d540bd14,3,0,246) at ioctl+0x3e0
>> syscall(2f,2f,2f,bfbfe8d4,bfbfee67) at syscall+0x213
>> Xint0x80_syscall() at Xint0x80_syscall+0x1f
>> --- syscall (54, FreeBSD ELF32, ioctl), eip = 0x280ce80f, esp = 
>> 0xbfbfe7fc, ebp = 0xbfbfed3c ---
>> db>
>>
>>
>> boot.conf, dmesg and kernel conf are available here :
>> http://www.totalterror.net/freebsd/
>>
>>
>> --niki
>>
> 
> some more info obtained with addr2line :
> 
> [root_at_phobos ~]# addr2line -e kernel.debug 0xc062f911
> ../../../dev/sio/sio.c:2475
> 
> 
> --niki
> 
Received on Wed Oct 13 2004 - 21:09:11 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:17 UTC