* [PATCH BlueZ 0/2] Single advertising set in the emulator and mgmt-tester
@ 2026-11-12 2:38 Weihong Guan
2026-11-12 2:38 ` [PATCH BlueZ 1/2] emulator: Set the number of advertising sets Weihong Guan
2026-11-12 2:38 ` [PATCH BlueZ 2/2] mgmt-tester: Add single advertising set tests Weihong Guan
0 siblings, 2 replies; 4+ messages in thread
From: Weihong Guan @ 2026-11-12 2:38 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Luiz Augusto von Dentz, Weihong Guan
A controller may report a single advertising set (LE Read Number of
Supported Advertising Sets returns 0x01 to 0xF0). The kernel then gives
advertising instance 1 handle 0x00, the handle Global Advertising uses
too, and several places took the instance number for the handle. Those
were fixed in bluetooth-next by commits daf949c968d4, e7e877bf658a,
8b1eff978e66 and 4dce35adafb5, but the emulator always reports three
sets, so mgmt-tester couldn't see them.
Patch 1 lets a test set the emulated controller's number of sets
(btdev_set_adv_sets(), hciemu_set_central_le_adv_sets()), kept across
HCI_Reset; the default stays at three. Patch 2 adds three mgmt-tester
cases on one set: the random address, the controller ending a timed
instance, and the removal, each on handle 0x00.
How it was tested: on a Raspberry Pi 5 running 7.4-rc2 with
net/bluetooth from bluetooth-next.
- With the four kernel commits: the three new cases pass.
- Without them (bluetooth-next at def8a484b): all three fail. The
first shows the bug, LE Set Advertising Set Random Address for handle
0x01; the other two fail when adding the instance, for the same
reason.
- The whole of mgmt-tester with and without these patches on the same
kernel: the same tests fail on that machine either way (Read Ext
Controller Info and some LL Privacy cases, and a few that pass or
fail from run to run), so nothing changed for the existing ones.
The bugs were first found on real hardware: a WCH CH582 running an open
controller firmware of ours that reports one advertising set, driven
from btmgmt and checked with btmon. These cases let anyone repeat them
without it.
Weihong Guan (2):
emulator: Set the number of advertising sets
mgmt-tester: Add single advertising set tests
emulator/btdev.c | 18 ++++++++--
emulator/btdev.h | 2 ++
emulator/hciemu.c | 14 ++++++++
emulator/hciemu.h | 2 ++
tools/mgmt-tester.c | 87 +++++++++++++++++++++++++++++++++++++++++++++
5 files changed, 121 insertions(+), 2 deletions(-)
--
2.47.3
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH BlueZ 1/2] emulator: Set the number of advertising sets
2026-11-12 2:38 [PATCH BlueZ 0/2] Single advertising set in the emulator and mgmt-tester Weihong Guan
@ 2026-11-12 2:38 ` Weihong Guan
2026-11-12 9:14 ` Single advertising set in the emulator and mgmt-tester bluez.test.bot
2026-11-12 2:38 ` [PATCH BlueZ 2/2] mgmt-tester: Add single advertising set tests Weihong Guan
1 sibling, 1 reply; 4+ messages in thread
From: Weihong Guan @ 2026-11-12 2:38 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Luiz Augusto von Dentz, Weihong Guan
btdev reports MAX_EXT_ADV_SETS (3) in LE Read Number of Supported
Advertising Sets and allows that many sets. A controller may support a
single set (the command's range is 0x01 to 0xF0), and the kernel then
gives advertising instance 1 handle 0x00, the handle Global Advertising
uses too; bugs on that path don't show with three sets.
Add btdev_set_adv_sets() and hciemu_set_central_le_adv_sets() to report
and allow fewer sets, kept across HCI_Reset as a controller keeps its
capabilities.
Assisted-by: Claude:claude-opus-5.5
---
emulator/btdev.c | 18 ++++++++++++++++--
emulator/btdev.h | 2 ++
emulator/hciemu.c | 14 ++++++++++++++
emulator/hciemu.h | 2 ++
4 files changed, 34 insertions(+), 2 deletions(-)
diff --git a/emulator/btdev.c b/emulator/btdev.c
index 7a8d8a4..d7f9e5e 100644
--- a/emulator/btdev.c
+++ b/emulator/btdev.c
@@ -280,6 +280,8 @@ struct btdev {
uint16_t le_rl_timeout;
struct queue *le_ext_adv;
+ /* Number of advertising sets reported, kept across HCI_Reset */
+ uint8_t le_adv_sets;
struct queue *le_per_adv;
struct queue *le_big;
@@ -576,6 +578,17 @@ void btdev_set_rl_len(struct btdev *btdev, uint8_t len)
btdev->le_rl_len = len;
}
+/* Set the number of advertising sets, 1 to MAX_EXT_ADV_SETS */
+bool btdev_set_adv_sets(struct btdev *btdev, uint8_t num)
+{
+ if (!num || num > MAX_EXT_ADV_SETS)
+ return false;
+
+ btdev->le_adv_sets = num;
+
+ return true;
+}
+
static void conn_unlink(struct btdev_conn *conn1, struct btdev_conn *conn2)
{
conn1->link = NULL;
@@ -5350,7 +5363,7 @@ static int cmd_set_ext_adv_params(struct btdev *dev, const void *data,
UINT_TO_PTR(cmd->handle));
if (!ext_adv) {
/* No more than maximum number */
- if (queue_length(dev->le_ext_adv) >= MAX_EXT_ADV_SETS) {
+ if (queue_length(dev->le_ext_adv) >= dev->le_adv_sets) {
rsp.status = BT_HCI_ERR_MEM_CAPACITY_EXCEEDED;
cmd_complete(dev, BT_HCI_CMD_LE_SET_EXT_ADV_PARAMS,
&rsp, sizeof(rsp));
@@ -5707,7 +5720,7 @@ static int cmd_read_num_adv_sets(struct btdev *dev, const void *data,
memset(&rsp, 0, sizeof(rsp));
rsp.status = BT_HCI_ERR_SUCCESS;
- rsp.num_of_sets = MAX_EXT_ADV_SETS;
+ rsp.num_of_sets = dev->le_adv_sets;
cmd_complete(dev, BT_HCI_CMD_LE_READ_NUM_SUPPORTED_ADV_SETS, &rsp,
sizeof(rsp));
@@ -8420,6 +8433,7 @@ struct btdev *btdev_create(enum btdev_type type, uint16_t id)
btdev->le_al_len = AL_SIZE;
btdev->le_rl_len = RL_SIZE;
+ btdev->le_adv_sets = MAX_EXT_ADV_SETS;
return btdev;
}
diff --git a/emulator/btdev.h b/emulator/btdev.h
index aa04ca6..b40df29 100644
--- a/emulator/btdev.h
+++ b/emulator/btdev.h
@@ -95,6 +95,8 @@ void btdev_set_al_len(struct btdev *btdev, uint8_t len);
void btdev_set_rl_len(struct btdev *btdev, uint8_t len);
+bool btdev_set_adv_sets(struct btdev *btdev, uint8_t num);
+
void btdev_set_command_handler(struct btdev *btdev, btdev_command_func handler,
void *user_data);
diff --git a/emulator/hciemu.c b/emulator/hciemu.c
index 2f544f3..eb791fa 100644
--- a/emulator/hciemu.c
+++ b/emulator/hciemu.c
@@ -701,6 +701,20 @@ void hciemu_set_central_le_rl_len(struct hciemu *hciemu, uint8_t len)
btdev_set_rl_len(dev, len);
}
+bool hciemu_set_central_le_adv_sets(struct hciemu *hciemu, uint8_t num)
+{
+ struct btdev *dev;
+
+ if (!hciemu || !hciemu->vhci)
+ return false;
+
+ dev = vhci_get_btdev(hciemu->vhci);
+ if (!dev)
+ return false;
+
+ return btdev_set_adv_sets(dev, num);
+}
+
const uint8_t *hciemu_get_central_adv_addr(struct hciemu *hciemu,
uint8_t handle)
{
diff --git a/emulator/hciemu.h b/emulator/hciemu.h
index cdf1ebe..7299763 100644
--- a/emulator/hciemu.h
+++ b/emulator/hciemu.h
@@ -80,6 +80,8 @@ void hciemu_set_central_le_al_len(struct hciemu *hciemu, uint8_t len);
void hciemu_set_central_le_rl_len(struct hciemu *hciemu, uint8_t len);
+bool hciemu_set_central_le_adv_sets(struct hciemu *hciemu, uint8_t num);
+
const uint8_t *hciemu_get_central_adv_addr(struct hciemu *hciemu,
uint8_t handle);
--
2.47.3
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH BlueZ 2/2] mgmt-tester: Add single advertising set tests
2026-11-12 2:38 [PATCH BlueZ 0/2] Single advertising set in the emulator and mgmt-tester Weihong Guan
2026-11-12 2:38 ` [PATCH BlueZ 1/2] emulator: Set the number of advertising sets Weihong Guan
@ 2026-11-12 2:38 ` Weihong Guan
1 sibling, 0 replies; 4+ messages in thread
From: Weihong Guan @ 2026-11-12 2:38 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Luiz Augusto von Dentz, Weihong Guan
With a controller supporting one advertising set the kernel gives
instance 1 handle 0x00. Check that the set's commands and events use
the handle rather than the instance number:
- adding a non-connectable instance sets its random address on handle
0x00;
- an instance whose timeout the controller enforces (the set's
duration) is removed when the set terminates on handle 0x00;
- removing instance 1 removes the set on handle 0x00.
They pass on bluetooth-next, which has the fixes since commit
4dce35adafb5 ("Bluetooth: hci_event: Find the owner of a terminated adv
set") and the three before it, and fail without them: the random
address goes to handle 0x01, a set the controller doesn't have.
Assisted-by: Claude:claude-opus-5.5
---
tools/mgmt-tester.c | 87 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 87 insertions(+)
diff --git a/tools/mgmt-tester.c b/tools/mgmt-tester.c
index 201bd43..c8282f7 100644
--- a/tools/mgmt-tester.c
+++ b/tools/mgmt-tester.c
@@ -367,6 +367,7 @@ struct generic_data {
bdaddr_t *setup_bdaddr;
bool setup_le_states;
const uint8_t *le_states;
+ uint8_t setup_adv_sets;
const uint16_t *setup_settings;
bool setup_nobredr;
bool setup_limited_discov;
@@ -505,6 +506,13 @@ static void read_index_list_callback(uint8_t status, uint16_t length,
if (test && test->setup_le_states)
hciemu_set_central_le_states(data->hciemu, test->le_states);
+ if (test && test->setup_adv_sets &&
+ !hciemu_set_central_le_adv_sets(data->hciemu,
+ test->setup_adv_sets)) {
+ tester_warn("hciemu_set_central_le_adv_sets failed");
+ tester_pre_setup_failed();
+ }
+
}
static void test_pre_setup(const void *test_data)
@@ -9244,6 +9252,72 @@ static const struct generic_data add_ext_advertising_timeout_expired = {
.expect_alt_ev_len = sizeof(advertising_instance1_param),
};
+/* A controller with a single advertising set: instance 1 is given handle
+ * 0x00, so the set's commands and events carry handle 0x00, not the
+ * instance number.
+ */
+static int set_adv_set_rand_addr_handle_0_check(const void *param,
+ uint16_t length)
+{
+ const struct bt_hci_cmd_le_set_adv_set_rand_addr *cp = param;
+
+ if (length != sizeof(*cp))
+ return -EINVAL;
+
+ return cp->handle != 0x00;
+}
+
+static const uint8_t remove_adv_set_handle_0_param[] = {
+ 0x00,
+};
+
+/* Handle 0x00 and any address: printed if the check fails */
+static const uint8_t set_adv_set_rand_addr_handle_0_param[] = {
+ 0x00, /* handle */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* address */
+};
+
+static const struct generic_data add_ext_advertising_1_set = {
+ .setup_adv_sets = 1,
+ .setup_settings = settings_powered_le,
+ .send_opcode = MGMT_OP_ADD_ADVERTISING,
+ .send_param = add_advertising_param_uuid,
+ .send_len = sizeof(add_advertising_param_uuid),
+ .expect_param = advertising_instance1_param,
+ .expect_len = sizeof(advertising_instance1_param),
+ .expect_status = MGMT_STATUS_SUCCESS,
+ .expect_alt_ev = MGMT_EV_ADVERTISING_ADDED,
+ .expect_alt_ev_param = advertising_instance1_param,
+ .expect_alt_ev_len = sizeof(advertising_instance1_param),
+ .expect_hci_command = BT_HCI_CMD_LE_SET_ADV_SET_RAND_ADDR,
+ .expect_hci_param = set_adv_set_rand_addr_handle_0_param,
+ .expect_hci_len = sizeof(set_adv_set_rand_addr_handle_0_param),
+ .expect_hci_param_check_func = set_adv_set_rand_addr_handle_0_check,
+};
+
+static const struct generic_data add_ext_adv_1_set_timeout_expired = {
+ .setup_adv_sets = 1,
+ .expect_alt_ev = MGMT_EV_ADVERTISING_REMOVED,
+ .expect_alt_ev_param = advertising_instance1_param,
+ .expect_alt_ev_len = sizeof(advertising_instance1_param),
+};
+
+static const struct generic_data remove_ext_advertising_1_set = {
+ .setup_adv_sets = 1,
+ .send_opcode = MGMT_OP_REMOVE_ADVERTISING,
+ .send_param = remove_advertising_param_1,
+ .send_len = sizeof(remove_advertising_param_1),
+ .expect_status = MGMT_STATUS_SUCCESS,
+ .expect_param = remove_advertising_param_1,
+ .expect_len = sizeof(remove_advertising_param_1),
+ .expect_alt_ev = MGMT_EV_ADVERTISING_REMOVED,
+ .expect_alt_ev_param = advertising_instance1_param,
+ .expect_alt_ev_len = sizeof(advertising_instance1_param),
+ .expect_hci_command = BT_HCI_CMD_LE_REMOVE_ADV_SET,
+ .expect_hci_param = remove_adv_set_handle_0_param,
+ .expect_hci_len = sizeof(remove_adv_set_handle_0_param),
+};
+
static const struct generic_data remove_ext_advertising_fail_1 = {
.send_opcode = MGMT_OP_REMOVE_ADVERTISING,
.send_param = remove_advertising_param_1,
@@ -15713,6 +15787,19 @@ int main(int argc, char *argv[])
setup_add_advertising_connectable_1m,
test_command_generic);
+ /* A single advertising set: instance 1 on handle 0x00 */
+ test_bredrle50("Add Ext Advertising - Success (1 set, Rand Addr)",
+ &add_ext_advertising_1_set,
+ NULL, test_command_generic);
+ test_bredrle50_full("Add Ext Advertising - Success (1 set, Timeout)",
+ &add_ext_adv_1_set_timeout_expired,
+ setup_add_advertising_timeout,
+ test_command_generic, 3);
+ test_bredrle50("Remove Ext Advertising - Success (1 set)",
+ &remove_ext_advertising_1_set,
+ setup_add_advertising,
+ test_command_generic);
+
test_bredrle50("Remove Ext Advertising - Invalid Params 1",
&remove_ext_advertising_fail_1,
NULL, test_command_generic);
--
2.47.3
^ permalink raw reply related [flat|nested] 4+ messages in thread
* RE: Single advertising set in the emulator and mgmt-tester
2026-11-12 2:38 ` [PATCH BlueZ 1/2] emulator: Set the number of advertising sets Weihong Guan
@ 2026-11-12 9:14 ` bluez.test.bot
0 siblings, 0 replies; 4+ messages in thread
From: bluez.test.bot @ 2026-11-12 9:14 UTC (permalink / raw)
To: linux-bluetooth, weihong.guan
[-- Attachment #1: Type: text/plain, Size: 31493 bytes --]
This is automated email and please do not reply to this email!
Dear submitter,
Thank you for submitting the patches to the linux bluetooth mailing list.
This is a CI test results with your patch series:
PW Link:https://patchwork.kernel.org/series/1208997/
---Test result---
Test Summary:
CheckPatch PASS 0.87 seconds
GitLint PASS 0.55 seconds
BuildEll PASS 20.70 seconds
BluezMake PASS 299.67 seconds
CheckSmatch PASS 299.76 seconds
bluezmakeextell PASS 99.28 seconds
TestFunctional FAIL 3264.53 seconds
IncrementalBuild PASS 325.20 seconds
ScanBuild PASS 1091.18 seconds
Details
##############################
Test: TestFunctional - FAIL
Desc: Run test-functional
Output:
FAIL functional.test_adv_monitor::test_adv_monitor_GHSA_hhgc_hfgf_8m4x[hosts1-vm1]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bluetoothctl::test_bluetoothctl_show[hosts16-vm1]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bluetoothctl::test_bluetoothctl_list[hosts16-vm1]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bluetoothctl::test_bluetoothctl_script_show[hosts16-vm1]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bluetoothctl::test_bluetoothctl_script_list[hosts16-vm1]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_btmgmt::test_btmgmt_info[hosts19-vm1]: AssertionError: assert 'addr 00:00:00:00:00:00' in '\x1b[0;91mReading hci0 info failed with status 0x11 (Invalid Index)\n\x1b[0m'
+ where '\x1b[0;91mReading hci0 info failed with status 0x11 (Invalid Index)\n\x1b[0m' = CompletedProcess(args=['/home/runner/work/bluez/bluez/src/src/tools/btmgmt', '--index', '0', 'info'], returncode=0, stdout='\x1b[0;91mReading hci0 info failed with status 0x11 (Invalid Index)\n\x1b[0m').stdout
FAIL functional.test_a2dp::test_a2dp_transport_created[hosts0-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_a2dp::test_a2dp_transport_acquire[hosts0-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_a2dp::test_a2dp_disconnect_during_setconf[hosts0-vm2-accept]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_a2dp::test_a2dp_disconnect_during_setconf[hosts0-vm2-reject]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_a2dp::test_a2dp_reconnect_pending_disconnect[hosts0-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bearer::test_bearer_le_connect[hosts12-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bearer::test_bearer_le_conn_params[hosts12-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bearer::test_bearer_le_connectable[hosts12-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bearer::test_bearer_le_pair[hosts12-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bearer::test_bearer_bredr_pair[hosts13-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bearer::test_bearer_le_conn_update[hosts14-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bearer::test_bearer_le_not_connectable[hosts15-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bluetoothctl::test_bluetoothctl_pair_bredr[hosts17-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bluetoothctl::test_bluetoothctl_pair_le[hosts18-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_agent::test_agent_pair_bredr[accept-hosts2-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_agent::test_agent_pair_bredr[reject-hosts2-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_hog::test_hog[no-sci-hosts20-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_hog::test_hog[sci-hosts20-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_mpris_proxy::test_mpris_proxy_playback_control[bredr-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_mpris_proxy::test_mpris_proxy_track_control[bredr-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_obex::test_obex_ftp_list[hosts24-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_obex::test_obex_ftp_get[hosts24-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_obex::test_obexctl_list[hosts24-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_avrcp::test_avrcp_GHSA_m2vx_pw5f_rc8v[hosts3-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_unicast_transport_created[hosts4-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_unicast_transport_acquire[hosts4-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_unicast_transport_resume[0-hosts4-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_unicast_transport_resume[0.1-hosts4-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_unicast_transport_resume[1.0-hosts4-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_unicast_reconfigure_metadata[empty-hosts5-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_unicast_reconfigure_metadata[media-hosts5-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_unicast_desync[hosts6-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_unicast_duplex_enable_one[hosts6-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_broadcast_transport_created[lc3-hosts7-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_broadcast_transport_created[pbp-hosts7-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_broadcast_transport_acquire[lc3-hosts7-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_broadcast_transport_acquire[pbp-hosts7-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bass_past_transport_acquire[hosts9-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_unicast_set_transport_created[hosts10-vm3-sc]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_unicast_set_transport_created[hosts10-vm3-legacy]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_unicast_set_transport_acquire[hosts10-vm3]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bass_past_earbuds_transport_acquire[hosts11-vm3]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_broadcast_earbuds_transport_created[hosts8-vm3]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_bap::test_bap_broadcast_earbuds_transport_acquire[hosts8-vm3]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_mpris_proxy::test_mpris_proxy_playback_control[le-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
FAIL functional.test_mpris_proxy::test_mpris_proxy_track_control[le-vm2]: failed on setup with "pytest_bluezenv.rpc.RemoteError: load failed
Remote traceback:
Traceback (most recent call last):
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/rpc.py", line 102, in server_stream
result = method(*msg["a"], **msg["kw"])
File "/usr/local/lib/python3.14/dist-packages/pytest_bluezenv/../pytest_bluezenv/env.py", line 238, in wait_load
raise RuntimeError("load failed")
RuntimeError: load failed"
https://github.com/bluez/bluez/pull/2812
---
Regards,
Linux Bluetooth
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-11-12 9:14 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-12 2:38 [PATCH BlueZ 0/2] Single advertising set in the emulator and mgmt-tester Weihong Guan
2026-11-12 2:38 ` [PATCH BlueZ 1/2] emulator: Set the number of advertising sets Weihong Guan
2026-11-12 9:14 ` Single advertising set in the emulator and mgmt-tester bluez.test.bot
2026-11-12 2:38 ` [PATCH BlueZ 2/2] mgmt-tester: Add single advertising set tests Weihong Guan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox