Message ID | 20220502210553.2271064-1-luiz.dentz@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Commit | c75ff36b77f88821beffabe4d3e60317c243d9b1 |
Headers | show |
Series | [BlueZ,1/2] btdev: Fix not removing connection and advertising set on reset | expand |
Context | Check | Description |
---|---|---|
tedd_an/pre-ci_am | success | Success |
tedd_an/checkpatch | success | Checkpatch PASS |
tedd_an/gitlint | success | Gitlint PASS |
tedd_an/setupell | success | Setup ELL PASS |
tedd_an/buildprep | success | Build Prep PASS |
tedd_an/build | success | Build Configuration PASS |
tedd_an/makecheck | success | Make Check PASS |
tedd_an/makecheckvalgrind | success | Make Check PASS |
tedd_an/makedistcheck | success | Make Distcheck PASS |
tedd_an/build_extell | success | Build External ELL PASS |
tedd_an/build_extell_make | success | Build Make with External ELL PASS |
tedd_an/incremental_build | success | Pass |
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/project/bluetooth/list/?series=637722 ---Test result--- Test Summary: CheckPatch FAIL 2.98 seconds GitLint PASS 1.95 seconds Prep - Setup ELL PASS 50.92 seconds Build - Prep PASS 0.76 seconds Build - Configure PASS 10.03 seconds Build - Make PASS 1421.90 seconds Make Check PASS 12.93 seconds Make Check w/Valgrind PASS 520.30 seconds Make Distcheck PASS 272.81 seconds Build w/ext ELL - Configure PASS 10.27 seconds Build w/ext ELL - Make PASS 1394.51 seconds Incremental Build with patchesPASS 2867.14 seconds Details ############################## Test: CheckPatch - FAIL Desc: Run checkpatch.pl script with rule in .checkpatch.conf Output: [BlueZ,2/2] monitor: Decode LTV fields of Basic Audio Announcements ERROR:SPACING: space prohibited before that ',' (ctx:WxW) #151: FILE: monitor/packet.c:3352: + print_hex_field(label , v, l); ^ ERROR:SPACING: space prohibited before that ',' (ctx:WxW) #155: FILE: monitor/packet.c:3356: + print_hex_field(label , iov.iov_base, iov.iov_len); ^ /github/workspace/src/12834736.patch total: 2 errors, 0 warnings, 60 lines checked NOTE: For some of the reported defects, checkpatch may be able to mechanically convert to the typical style using --fix or --fix-inplace. /github/workspace/src/12834736.patch has style problems, please review. NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO NOTE: If any of the errors are false positives, please report them to the maintainer, see CHECKPATCH in MAINTAINERS. --- Regards, Linux Bluetooth
Hello: This series was applied to bluetooth/bluez.git (master) by Luiz Augusto von Dentz <luiz.von.dentz@intel.com>: On Mon, 2 May 2022 14:05:52 -0700 you wrote: > From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> > > This makes sure that all connections and advertising sets are cleanup > on reset. > --- > emulator/btdev.c | 76 +++++++++++++++++++++++++----------------------- > 1 file changed, 40 insertions(+), 36 deletions(-) Here is the summary with links: - [BlueZ,1/2] btdev: Fix not removing connection and advertising set on reset https://git.kernel.org/pub/scm/bluetooth/bluez.git/?id=c75ff36b77f8 - [BlueZ,2/2] monitor: Decode LTV fields of Basic Audio Announcements (no matching commit) You are awesome, thank you!
diff --git a/emulator/btdev.c b/emulator/btdev.c index d3f565438..641e308b3 100644 --- a/emulator/btdev.c +++ b/emulator/btdev.c @@ -509,6 +509,42 @@ void btdev_set_rl_len(struct btdev *btdev, uint8_t len) btdev->le_rl_len = len; } +static void conn_unlink(struct btdev_conn *conn1, struct btdev_conn *conn2) +{ + conn1->link = NULL; + conn2->link = NULL; +} + +static void conn_remove(void *data) +{ + struct btdev_conn *conn = data; + + if (conn->link) { + struct btdev_conn *link = conn->link; + + conn_unlink(conn, conn->link); + conn_remove(link); + } + + queue_remove(conn->dev->conns, conn); + + free(conn->data); + free(conn); +} + +static void le_ext_adv_free(void *data) +{ + struct le_ext_adv *ext_adv = data; + + /* Remove to queue */ + queue_remove(ext_adv->dev->le_ext_adv, ext_adv); + + if (ext_adv->id) + timeout_remove(ext_adv->id); + + free(ext_adv); +} + static void btdev_reset(struct btdev *btdev) { /* FIXME: include here clearing of all states that should be @@ -517,12 +553,16 @@ static void btdev_reset(struct btdev *btdev) btdev->le_scan_enable = 0x00; btdev->le_adv_enable = 0x00; + btdev->le_pa_enable = 0x00; al_clear(btdev); rl_clear(btdev); btdev->le_al_len = AL_SIZE; btdev->le_rl_len = RL_SIZE; + + queue_remove_all(btdev->conns, NULL, NULL, conn_remove); + queue_remove_all(btdev->le_ext_adv, NULL, NULL, le_ext_adv_free); } static int cmd_reset(struct btdev *dev, const void *data, uint8_t len) @@ -674,29 +714,6 @@ static bool match_handle(const void *data, const void *match_data) return conn->handle == handle; } -static void conn_unlink(struct btdev_conn *conn1, struct btdev_conn *conn2) -{ - conn1->link = NULL; - conn2->link = NULL; -} - -static void conn_remove(void *data) -{ - struct btdev_conn *conn = data; - - if (conn->link) { - struct btdev_conn *link = conn->link; - - conn_unlink(conn, conn->link); - conn_remove(link); - } - - queue_remove(conn->dev->conns, conn); - - free(conn->data); - free(conn); -} - static void disconnect_complete(struct btdev *dev, uint16_t handle, uint8_t status, uint8_t reason) { @@ -4627,19 +4644,6 @@ static struct le_ext_adv *le_ext_adv_new(struct btdev *btdev, uint8_t handle) return ext_adv; } -static void le_ext_adv_free(void *data) -{ - struct le_ext_adv *ext_adv = data; - - /* Remove to queue */ - queue_remove(ext_adv->dev->le_ext_adv, ext_adv); - - if (ext_adv->id) - timeout_remove(ext_adv->id); - - free(ext_adv); -} - static int cmd_set_adv_rand_addr(struct btdev *dev, const void *data, uint8_t len) {
From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> This makes sure that all connections and advertising sets are cleanup on reset. --- emulator/btdev.c | 76 +++++++++++++++++++++++++----------------------- 1 file changed, 40 insertions(+), 36 deletions(-)