Message ID | 20210402105437.v1.1.Id5ee0a2edda8f0902498aaeb1b6c78d062579b75@changeid (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v1] Bluetooth: Return whether a connection is outbound | expand |
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=460345 ---Test result--- ############################## Test: CheckPatch - PASS ############################## Test: CheckGitLint - PASS ############################## Test: CheckBuildK - PASS ############################## Test: CheckTestRunner: Setup - PASS ############################## Test: CheckTestRunner: l2cap-tester - PASS Total: 40, Passed: 34 (85.0%), Failed: 0, Not Run: 6 ############################## Test: CheckTestRunner: bnep-tester - PASS Total: 1, Passed: 1 (100.0%), Failed: 0, Not Run: 0 ############################## Test: CheckTestRunner: mgmt-tester - PASS Total: 416, Passed: 402 (96.6%), Failed: 0, Not Run: 14 ############################## Test: CheckTestRunner: rfcomm-tester - PASS Total: 9, Passed: 9 (100.0%), Failed: 0, Not Run: 0 ############################## Test: CheckTestRunner: sco-tester - PASS Total: 8, Passed: 8 (100.0%), Failed: 0, Not Run: 0 ############################## Test: CheckTestRunner: smp-tester - PASS Total: 8, Passed: 8 (100.0%), Failed: 0, Not Run: 0 ############################## Test: CheckTestRunner: userchan-tester - PASS Total: 3, Passed: 3 (100.0%), Failed: 0, Not Run: 0 --- Regards, Linux Bluetooth
Hi Yu, > When an MGMT_EV_DEVICE_CONNECTED event is reported back to the user > space we will set the flags to tell if the established connection is > outbound or not. This is useful for the user space to log better metrics > and error messages. > > Reviewed-by: Miao-chen Chou <mcchou@chromium.org> > Reviewed-by: Alain Michaud <alainm@chromium.org> > Signed-off-by: Yu Liu <yudiliu@google.com> > --- > > Changes in v1: > - Initial change > > include/net/bluetooth/mgmt.h | 2 ++ > net/bluetooth/mgmt.c | 5 +++++ > 2 files changed, 7 insertions(+) > > diff --git a/include/net/bluetooth/mgmt.h b/include/net/bluetooth/mgmt.h > index a7cffb069565..7cc724386b00 100644 > --- a/include/net/bluetooth/mgmt.h > +++ b/include/net/bluetooth/mgmt.h > @@ -885,6 +885,8 @@ struct mgmt_ev_new_long_term_key { > struct mgmt_ltk_info key; > } __packed; > > +#define MGMT_DEV_CONN_INITIATED_CONNECTION 0x08 > + I would just add this to MGMT_DEV_FOUND_INITIATED_CONN 0x08. And yes, I realize that this is a bit weird, but then all values are in one place. > #define MGMT_EV_DEVICE_CONNECTED 0x000B > struct mgmt_ev_device_connected { > struct mgmt_addr_info addr; > diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c > index 09e099c419f2..77213e67e8e4 100644 > --- a/net/bluetooth/mgmt.c > +++ b/net/bluetooth/mgmt.c > @@ -8774,6 +8774,11 @@ void mgmt_device_connected(struct hci_dev *hdev, struct hci_conn *conn, > bacpy(&ev->addr.bdaddr, &conn->dst); > ev->addr.type = link_to_bdaddr(conn->type, conn->dst_type); So the prototype of mgmt_device_connected needs to be changed to remove the flags parameter. It is not used at all. > > + if (conn->out) > + flags |= MGMT_DEV_CONN_INITIATED_CONNECTION; > + else > + flags &= ~MGMT_DEV_CONN_INITIATED_CONNECTION; > + And then this should be just this: if (conn->out) flags |= MGMT_DEV_CONN_INITIATED_CONNECTION; > ev->flags = __cpu_to_le32(flags); > > /* We must ensure that the EIR Data fields are ordered and Regards Marcel
diff --git a/include/net/bluetooth/mgmt.h b/include/net/bluetooth/mgmt.h index a7cffb069565..7cc724386b00 100644 --- a/include/net/bluetooth/mgmt.h +++ b/include/net/bluetooth/mgmt.h @@ -885,6 +885,8 @@ struct mgmt_ev_new_long_term_key { struct mgmt_ltk_info key; } __packed; +#define MGMT_DEV_CONN_INITIATED_CONNECTION 0x08 + #define MGMT_EV_DEVICE_CONNECTED 0x000B struct mgmt_ev_device_connected { struct mgmt_addr_info addr; diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c index 09e099c419f2..77213e67e8e4 100644 --- a/net/bluetooth/mgmt.c +++ b/net/bluetooth/mgmt.c @@ -8774,6 +8774,11 @@ void mgmt_device_connected(struct hci_dev *hdev, struct hci_conn *conn, bacpy(&ev->addr.bdaddr, &conn->dst); ev->addr.type = link_to_bdaddr(conn->type, conn->dst_type); + if (conn->out) + flags |= MGMT_DEV_CONN_INITIATED_CONNECTION; + else + flags &= ~MGMT_DEV_CONN_INITIATED_CONNECTION; + ev->flags = __cpu_to_le32(flags); /* We must ensure that the EIR Data fields are ordered and