* RE: Bluetooth / rfcomm issue with traffic send
@ 2019-10-03 8:08 Mikhail Pavlukhin
0 siblings, 0 replies; only message in thread
From: Mikhail Pavlukhin @ 2019-10-03 8:08 UTC (permalink / raw)
To: linux-bluetooth; +Cc: johan.hedberg, marcel
Resending to the mail list in plain text
From: Mikhail Pavlukhin
Sent: Thursday, October 3, 2019 10:45 AM
To: 'email@example.com' <firstname.lastname@example.org>
Cc: 'email@example.com' <firstname.lastname@example.org>; 'email@example.com' <firstname.lastname@example.org>
Subject: Bluetooth / rfcomm issue with traffic send
Would you please assist me with a troubleshooting of the issue with Bluetooth stack? Any advice or recommendation is appreciated.
The system is based on the:
- Linux kernel 4.14.68
- Bluez - 5.48
- Intel Stick computer with attached Bluetooth USB adapter Broadcom
The aim is to establish connection with external device using Bluetooth SPP profile and send/receive certain amount of traffic to the external device. External device is ALPS Evolution series based (https://www.alps.com/prod/info/E/HTML/Communication/Bluetooth/Bluetooth_list1.html)
The observation is the following:
Bluetooth SPP Connection can be successfully established (after SDP discovery, Pairing procedures) and socket descriptor is returned to the user space application. So it is possible to use it for sending - receiving traffic. It is supposed to send some packets containing ASCII symbols with different intensity (packets per second) and packet length. Traffic sending might continue up to several hours. At some moment (spontaneously) that traffic stops (do not see any packets outgoing from the HCI interface associated with Broadcom adapter) even though peer device is available and working fine. Bluez reports devices as paired and connected. In that moment each call of send function on socket finished with failure and errno 11 reported. Tried to check dmesg and system logs, but there is no indication of the failures or error reports. Tried to compare list of open sockets in bad and good case (for rfcomm and our application/NodeJS) - they are the same. Now trying to use Dynamic Debug featu
re in Linux kernel and trace functions in https://github.com/torvalds/linux/blob/63bdf4284c38a48af21745ceb148a087b190cd21/net/bluetooth/rfcomm/sock.c, but there are a lot of printouts so it is hard to follow what is going on.
It seems the issue with traffic stop reproducible more frequently in case if there is high traffic intensity and small packet length (~64 Kbps).
Could you please advise what modules better to trace with Dynamic Debug feature? Are there any idea why errno 11 can be reported? BTW am I right saying that errno 11 is
#define EAGAIN 11 /* Try again */ (taken from https://github.com/torvalds/linux/blob/6f0d349d922ba44e4348a17a78ea51b7135965b1/include/uapi/asm-generic/errno-base.h) ?
Actually send attempt is retried, but the traffic sending (towards to the external device) is not restarted even after few minutes.
Thank you in advance, Mikhail.
^ permalink raw reply [flat|nested] only message in thread
only message in thread, back to index
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-10-03 8:08 Bluetooth / rfcomm issue with traffic send Mikhail Pavlukhin
Linux-Bluetooth Archive on lore.kernel.org
Archives are clonable:
git clone --mirror https://lore.kernel.org/linux-bluetooth/0 linux-bluetooth/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 linux-bluetooth linux-bluetooth/ https://lore.kernel.org/linux-bluetooth \
Example config snippet for mirrors
Newsgroup available over NNTP:
AGPL code for this site: git clone https://public-inbox.org/ public-inbox