Message ID | 20210901002621.414016-1-luiz.dentz@gmail.com |
---|---|
State | New |
Headers | show |
Series | [1/4] Bluetooth: Add bt_skb_sendmsg helper | 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=540067 ---Test result--- Test Summary: CheckPatch PASS 1.59 seconds GitLint PASS 0.39 seconds BuildKernel PASS 509.49 seconds TestRunner: Setup PASS 336.66 seconds TestRunner: l2cap-tester PASS 2.48 seconds TestRunner: bnep-tester PASS 1.89 seconds TestRunner: mgmt-tester PASS 30.84 seconds TestRunner: rfcomm-tester PASS 2.04 seconds TestRunner: sco-tester PASS 2.02 seconds TestRunner: smp-tester PASS 2.11 seconds TestRunner: userchan-tester PASS 1.92 seconds Details ############################## Test: CheckPatch - PASS - 1.59 seconds Run checkpatch.pl script with rule in .checkpatch.conf ############################## Test: GitLint - PASS - 0.39 seconds Run gitlint with rule in .gitlint ############################## Test: BuildKernel - PASS - 509.49 seconds Build Kernel with minimal configuration supports Bluetooth ############################## Test: TestRunner: Setup - PASS - 336.66 seconds Setup environment for running Test Runner ############################## Test: TestRunner: l2cap-tester - PASS - 2.48 seconds Run test-runner with l2cap-tester Total: 40, Passed: 40 (100.0%), Failed: 0, Not Run: 0 ############################## Test: TestRunner: bnep-tester - PASS - 1.89 seconds Run test-runner with bnep-tester Total: 1, Passed: 1 (100.0%), Failed: 0, Not Run: 0 ############################## Test: TestRunner: mgmt-tester - PASS - 30.84 seconds Run test-runner with mgmt-tester Total: 452, Passed: 452 (100.0%), Failed: 0, Not Run: 0 ############################## Test: TestRunner: rfcomm-tester - PASS - 2.04 seconds Run test-runner with rfcomm-tester Total: 9, Passed: 9 (100.0%), Failed: 0, Not Run: 0 ############################## Test: TestRunner: sco-tester - PASS - 2.02 seconds Run test-runner with sco-tester Total: 8, Passed: 8 (100.0%), Failed: 0, Not Run: 0 ############################## Test: TestRunner: smp-tester - PASS - 2.11 seconds Run test-runner with smp-tester Total: 8, Passed: 8 (100.0%), Failed: 0, Not Run: 0 ############################## Test: TestRunner: userchan-tester - PASS - 1.92 seconds Run test-runner with userchan-tester Total: 3, Passed: 3 (100.0%), Failed: 0, Not Run: 0 --- Regards, Linux Bluetooth
diff --git a/include/net/bluetooth/bluetooth.h b/include/net/bluetooth/bluetooth.h index 9125effbf448..f858efcf9f40 100644 --- a/include/net/bluetooth/bluetooth.h +++ b/include/net/bluetooth/bluetooth.h @@ -420,6 +420,32 @@ static inline struct sk_buff *bt_skb_send_alloc(struct sock *sk, return NULL; } +/* Shall not be called with lock_sock held */ +static inline struct sk_buff *bt_skb_sendmsg(struct sock *sk, + struct msghdr *msg, + size_t len, size_t header, + size_t footer) +{ + struct sk_buff *skb; + int err; + + skb = bt_skb_send_alloc(sk, len + header + footer, + msg->msg_flags & MSG_DONTWAIT, &err); + if (!skb) + return ERR_PTR(err); + + skb_reserve(skb, header); + + if (memcpy_from_msg(skb_put(skb, len), msg, len)) { + kfree_skb(skb); + return ERR_PTR(-EFAULT); + } + + skb->priority = sk->sk_priority; + + return skb; +} + int bt_to_errno(u16 code); void hci_sock_set_flag(struct sock *sk, int nr);