Date: Mon, 3 Jan 2011 15:20:06 GMT From: Iain Hibbert <plunky@rya-online.net> To: freebsd-bluetooth@FreeBSD.org Subject: Re: kern/140590: [bluetooth] ng_ubt(4) ng_l2cap_process_cmd_rej warnings Message-ID: <201101031520.p03FK6IM027615@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/140590; it has been noted by GNATS.
From: Iain Hibbert <plunky@rya-online.net>
To: bug-followup@FreeBSD.org
Cc:
Subject: Re: kern/140590: [bluetooth] ng_ubt(4) ng_l2cap_process_cmd_rej
warnings
Date: Mon, 3 Jan 2011 14:40:47 +0000 (GMT)
On Mon, 3 Jan 2011, FreeBSD bugmaster wrote:
> p kern/140590 bluetooth [bluetooth] ng_ubt(4) ng_l2cap_process_cmd_rej warning
the final piece of this PR is that a
ng_btsocket_rfcomm_receive_dm: Got DM for non-existing dlci=18
warning is produced.. looking at the dump given:
< ACL data: handle 42 flags 0x02 dlen 11
L2CAP(d): cid 0x0041 len 7 [psm 3]
RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 3 fcs 0xce
OBEX: Disconnect cmd(f): len 3
> ACL data: handle 42 flags 0x02 dlen 12
L2CAP(d): cid 0x0047 len 8 [psm 3]
RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 1
OBEX: Disconnect rsp(f): status 200 len 3
OBEX is disconnected
< ACL data: handle 42 flags 0x02 dlen 8
L2CAP(d): cid 0x0041 len 4 [psm 3]
RFCOMM(s): DISC: cr 1 dlci 18 pf 1 ilen 0 fcs 0xd3
we send a DISC(18) request to disconnect the channel
> ACL data: handle 42 flags 0x02 dlen 8
L2CAP(d): cid 0x0047 len 4 [psm 3]
RFCOMM(s): DISC: cr 0 dlci 18 pf 1 ilen 0 fcs 0xb2
< ACL data: handle 42 flags 0x02 dlen 8
L2CAP(d): cid 0x0041 len 4 [psm 3]
RFCOMM(s): UA: cr 0 dlci 18 pf 1 ilen 0 fcs 0x98
they also do that, and we send a UA in response as is proper
< ACL data: handle 42 flags 0x02 dlen 8
L2CAP(d): cid 0x0041 len 4 [psm 3]
RFCOMM(s): DISC: cr 1 dlci 0 pf 1 ilen 0 fcs 0xfd
and then we send DISC(0) to disconnect the session
> ACL data: handle 42 flags 0x02 dlen 8
L2CAP(d): cid 0x0047 len 4 [psm 3]
RFCOMM(s): DM: cr 1 dlci 18 pf 1 ilen 0 fcs 0x18
and this is the rogue DM - I guess that the other side had deleted the
dlci handle when it sent the DISC so this is their response to our
DISC(18) message..
The warning is printed because FreeBSD had legitimately decided that dlci
18 was closed (received DISC, sent UA) and therefore this DM is addressed
to a vacant channel..
IMO FreeBSD did nothing really wrong there except warn about something
that was not really a dire situation.. perhaps the _WARN should just be
changed to _INFO to supress that in normal use?
iain
PS what was the remote device?
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201101031520.p03FK6IM027615>
