2004-08-13 16:40:52

by Albert Huang

[permalink] [raw]
Subject: [Bluez-devel] want duplicate inquiry results during a single device inquiry

Hello,

While experimenting with a hp ipaq running a 2.4.19 kernel, I noticed
that during a since device inquiry, multiple EVT_INQUIRY_RESULT events
could be generated from the same remote device. The inquiry was done
using a raw hci socket. On x86 PCs running the same userland code but
with more recent versions of bluez and the linux kernel, the duplicate
events are no longer generated. Instead, during a single inquiry, a
response will be received from a remote device at most once.

I'm assuming that sometime in the recent past, kernel level caching
was implemented to prevent these duplicate inquiry results from
propagating up to user land. Is there a way to turn this off, so that
all inquiry results are passed through?

Thanks!
-albert


-------------------------------------------------------
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
_______________________________________________
Bluez-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-devel


2004-08-13 17:54:41

by Marcel Holtmann

[permalink] [raw]
Subject: Re: Re: [Bluez-devel] want duplicate inquiry results during a single device inquiry

Hi Albert,

> on the HP iPAQ h5550:
> # hciconfig -a
> hci0: Type: UART
> BD Address: 08:00:17:1B:0A:21 ACL MTU: 339:4 SCO MTU: 60:9
> UP RUNNING PSCAN ISCAN
> RX bytes:84 acl:0 sco:0 events:10 errors:1
> TX bytes:298 acl:0 sco:0 commands:10 errors:0
> Features: 0x00 0x00 0x00 0x00
> Packet type: DM1 DH1 HV1
> Link policy: HOLD SNIFF PARK
> Link mode: SLAVE ACCEPT
> Name: 'familiar (0)'
> Class: 0x120112
> Service Classes: Networking, Object Transfer
> Device Class: Computer, Handheld
> HCI Ver: 1.1 (0x1) HCI Rev: 0x180 LMP Ver: 1.1 (0x1) LMP Subver: 0x180
> Manufacturer: RTX Telecom A/S (21)
>
> on the desktop (d-link DBT-120):
> # hciconfig -a
> hci0: Type: USB
> BD Address: 00:80:C8:35:19:C8 ACL MTU: 192:8 SCO MTU: 64:8
> UP RUNNING PSCAN ISCAN
> RX bytes:8308 acl:0 sco:0 events:450 errors:0
> TX bytes:2202 acl:0 sco:0 commands:338 errors:0
> Features: 0xff 0xff 0x0f 0x00 0x00 0x00 0x00 0x00
> Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
> Link policy: HOLD SNIFF PARK
> Link mode: SLAVE ACCEPT
> Name: 'OKN-32-G838'
> Class: 0x000100
> Service Classes: Unspecified
> Device Class: Computer, Uncategorized
> HCI Ver: 1.1 (0x1) HCI Rev: 0x1bb LMP Ver: 1.1 (0x1) LMP Subver: 0x1bb
> Manufacturer: Cambridge Silicon Radio (10)

simple answer. RTX send every inquiry response up to the HCI layer and
CSR does not.

Regards

Marcel




-------------------------------------------------------
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
_______________________________________________
Bluez-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-devel

2004-08-13 17:32:49

by Albert Huang

[permalink] [raw]
Subject: Re: Re: [Bluez-devel] want duplicate inquiry results during a single device inquiry

on the HP iPAQ h5550:
# hciconfig -a
hci0: Type: UART
BD Address: 08:00:17:1B:0A:21 ACL MTU: 339:4 SCO MTU: 60:9
UP RUNNING PSCAN ISCAN
RX bytes:84 acl:0 sco:0 events:10 errors:1
TX bytes:298 acl:0 sco:0 commands:10 errors:0
Features: 0x00 0x00 0x00 0x00
Packet type: DM1 DH1 HV1
Link policy: HOLD SNIFF PARK
Link mode: SLAVE ACCEPT
Name: 'familiar (0)'
Class: 0x120112
Service Classes: Networking, Object Transfer
Device Class: Computer, Handheld
HCI Ver: 1.1 (0x1) HCI Rev: 0x180 LMP Ver: 1.1 (0x1) LMP Subver: 0x180
Manufacturer: RTX Telecom A/S (21)

on the desktop (d-link DBT-120):
# hciconfig -a
hci0: Type: USB
BD Address: 00:80:C8:35:19:C8 ACL MTU: 192:8 SCO MTU: 64:8
UP RUNNING PSCAN ISCAN
RX bytes:8308 acl:0 sco:0 events:450 errors:0
TX bytes:2202 acl:0 sco:0 commands:338 errors:0
Features: 0xff 0xff 0x0f 0x00 0x00 0x00 0x00 0x00
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy: HOLD SNIFF PARK
Link mode: SLAVE ACCEPT
Name: 'OKN-32-G838'
Class: 0x000100
Service Classes: Unspecified
Device Class: Computer, Uncategorized
HCI Ver: 1.1 (0x1) HCI Rev: 0x1bb LMP Ver: 1.1 (0x1) LMP Subver: 0x1bb
Manufacturer: Cambridge Silicon Radio (10)

-albert

On Fri, 13 Aug 2004 18:58:37 +0200, Marcel Holtmann <[email protected]> wrote:
> Hi Albert,
>
>
>
> > While experimenting with a hp ipaq running a 2.4.19 kernel, I noticed
> > that during a since device inquiry, multiple EVT_INQUIRY_RESULT events
> > could be generated from the same remote device. The inquiry was done
> > using a raw hci socket. On x86 PCs running the same userland code but
> > with more recent versions of bluez and the linux kernel, the duplicate
> > events are no longer generated. Instead, during a single inquiry, a
> > response will be received from a remote device at most once.
> >
> > I'm assuming that sometime in the recent past, kernel level caching
> > was implemented to prevent these duplicate inquiry results from
> > propagating up to user land. Is there a way to turn this off, so that
> > all inquiry results are passed through?
>
> this is device specific and can be controlled by a HCI command. Show us
> the outputs of "hciconfig -a" for both devices.
>
> Regards
>
> Marcel
>
>

2004-08-13 16:58:37

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-devel] want duplicate inquiry results during a single device inquiry

Hi Albert,

> While experimenting with a hp ipaq running a 2.4.19 kernel, I noticed
> that during a since device inquiry, multiple EVT_INQUIRY_RESULT events
> could be generated from the same remote device. The inquiry was done
> using a raw hci socket. On x86 PCs running the same userland code but
> with more recent versions of bluez and the linux kernel, the duplicate
> events are no longer generated. Instead, during a single inquiry, a
> response will be received from a remote device at most once.
>
> I'm assuming that sometime in the recent past, kernel level caching
> was implemented to prevent these duplicate inquiry results from
> propagating up to user land. Is there a way to turn this off, so that
> all inquiry results are passed through?

this is device specific and can be controlled by a HCI command. Show us
the outputs of "hciconfig -a" for both devices.

Regards

Marcel




-------------------------------------------------------
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
_______________________________________________
Bluez-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-devel