diff mbox series

[BlueZ,v3,1/2] mesh: Improve PB-ADV timing for reliability

Message ID 20220922214039.611611-2-brian.gix@intel.com
State Superseded
Headers show
Series Mesh demon switched to using kernel Mesh MGMT | expand

Commit Message

Brian Gix Sept. 22, 2022, 9:40 p.m. UTC
Because provisioning is not speed dependent, Timing on outbound PB-ADV
packets have been modified to be less likely missed by remote controlers
with looser timing capabilities.
---
 mesh/pb-adv.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

Comments

bluez.test.bot@gmail.com Sept. 22, 2022, 10:26 p.m. UTC | #1
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=679618

---Test result---

Test Summary:
CheckPatch                    PASS      3.35 seconds
GitLint                       PASS      2.02 seconds
Prep - Setup ELL              PASS      27.26 seconds
Build - Prep                  PASS      0.79 seconds
Build - Configure             PASS      8.77 seconds
Build - Make                  FAIL      108.23 seconds
Make Check                    FAIL      1223.49 seconds
Make Check w/Valgrind         FAIL      86.48 seconds
Make Distcheck                FAIL      11.67 seconds
Build w/ext ELL - Configure   PASS      8.99 seconds
Build w/ext ELL - Make        FAIL      39.97 seconds
Incremental Build w/ patches  FAIL      149.47 seconds
Scan Build                    FAIL      535.96 seconds

Details
##############################
Test: Build - Make - FAIL
Desc: Build the BlueZ source tree
Output:
tools/mgmt-tester.c: In function ‘main’:
tools/mgmt-tester.c:12470:5: note: variable tracking size limit exceeded with ‘-fvar-tracking-assignments’, retrying without
12470 | int main(int argc, char *argv[])
      |     ^~~~
mesh/mesh-io.c:27:10: fatal error: mesh/mesh-io-mgmt.h: No such file or directory
   27 | #include "mesh/mesh-io-mgmt.h"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: *** [Makefile:7491: mesh/mesh-io.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:4451: all] Error 2


##############################
Test: Make Check - FAIL
Desc: Run 'make check'
Output:
unit/test-avdtp.c: In function ‘main’:
unit/test-avdtp.c:766:5: note: variable tracking size limit exceeded with ‘-fvar-tracking-assignments’, retrying without
  766 | int main(int argc, char *argv[])
      |     ^~~~
unit/test-avrcp.c: In function ‘main’:
unit/test-avrcp.c:989:5: note: variable tracking size limit exceeded with ‘-fvar-tracking-assignments’, retrying without
  989 | int main(int argc, char *argv[])
      |     ^~~~
mesh/mesh-io.c:27:10: fatal error: mesh/mesh-io-mgmt.h: No such file or directory
   27 | #include "mesh/mesh-io-mgmt.h"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: *** [Makefile:7491: mesh/mesh-io.o] Error 1
make: *** [Makefile:11588: check] Error 2


##############################
Test: Make Check w/Valgrind - FAIL
Desc: Run 'make check' with Valgrind
Output:
tools/mgmt-tester.c: In function ‘main’:
tools/mgmt-tester.c:12470:5: note: variable tracking size limit exceeded with ‘-fvar-tracking-assignments’, retrying without
12470 | int main(int argc, char *argv[])
      |     ^~~~
mesh/mesh-io.c:27:10: fatal error: mesh/mesh-io-mgmt.h: No such file or directory
   27 | #include "mesh/mesh-io-mgmt.h"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: *** [Makefile:7491: mesh/mesh-io.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:4451: all] Error 2


##############################
Test: Make Distcheck - FAIL
Desc: Run distcheck to check the distribution
Output:
make[2]: *** No rule to make target 'mesh/mesh-io-mgmt.h', needed by 'distdir-am'.  Stop.
make[1]: *** [Makefile:11421: distdir] Error 2
make: *** [Makefile:11497: dist] Error 2


##############################
Test: Build w/ext ELL - Make - FAIL
Desc: Build BlueZ source with '--enable-external-ell' configuration
Output:
mesh/mesh-io.c:27:10: fatal error: mesh/mesh-io-mgmt.h: No such file or directory
   27 | #include "mesh/mesh-io-mgmt.h"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: *** [Makefile:7491: mesh/mesh-io.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:4451: all] Error 2


##############################
Test: Incremental Build w/ patches - FAIL
Desc: Incremental build per patch in the series
Output:
mesh/mesh-io.c:27:10: fatal error: mesh/mesh-io-mgmt.h: No such file or directory
   27 | #include "mesh/mesh-io-mgmt.h"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: *** [Makefile:7491: mesh/mesh-io.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:4451: all] Error 2


##############################
Test: Scan Build - FAIL
Desc: Run Scan Build with patches
Output:
tools/btpclient.c:2494:3: warning: Value stored to 'reply' is never read
                reply = l_dbus_message_new_error(ag.pending_req,
                ^       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
In file included from unit/test-mesh-crypto.c:20:
In file included from ./mesh/crypto.c:18:
In file included from ./ell/ell.h:1:
./ell/util.h:187:9: warning: 1st function call argument is an uninitialized value
        return L_BE32_TO_CPU(L_GET_UNALIGNED((const uint32_t *) ptr));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./ell/util.h:89:28: note: expanded from macro 'L_BE32_TO_CPU'
#define L_BE32_TO_CPU(val) bswap_32(val)
                           ^~~~~~~~~~~~~
/usr/include/byteswap.h:34:21: note: expanded from macro 'bswap_32'
#define bswap_32(x) __bswap_32 (x)
                    ^~~~~~~~~~~~~~
unit/test-mesh-crypto.c:965:11: warning: The left expression of the compound assignment is an uninitialized value. The computed value will also be garbage
                key_aid |= KEY_ID_AKF;
                ~~~~~~~ ^
unit/test-mesh-crypto.c:1008:2: warning: 4th function call argument is an uninitialized value
        verify_uint8("NID", 0, keys->net_nid, nid);
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unit/test-mesh-crypto.c:1289:6: warning: Branch condition evaluates to a garbage value
        if (ctl) {
            ^~~
unit/test-mesh-crypto.c:1509:7: warning: Branch condition evaluates to a garbage value
                if (net_ctl) {
                    ^~~~~~~
unit/test-mesh-crypto.c:1763:2: warning: 1st function call argument is an uninitialized value
        l_put_be64(cmac_tmp, cmac);
        ^~~~~~~~~~~~~~~~~~~~~~~~~~
6 warnings generated.
mesh/mesh-io.c:27:10: fatal error: mesh/mesh-io-mgmt.h: No such file or directory
   27 | #include "mesh/mesh-io-mgmt.h"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: *** [Makefile:7491: mesh/mesh-io.o] Error 1
make: *** [Makefile:4451: all] Error 2




---
Regards,
Linux Bluetooth
diff mbox series

Patch

diff --git a/mesh/pb-adv.c b/mesh/pb-adv.c
index 83f922aa8..180b16258 100644
--- a/mesh/pb-adv.c
+++ b/mesh/pb-adv.c
@@ -23,6 +23,8 @@ 
 #include "mesh/provision.h"
 #include "mesh/pb-adv.h"
 
+#include "mesh/util.h"
+
 
 struct pb_adv_session {
 	mesh_prov_open_func_t open_cb;
@@ -158,7 +160,7 @@  static void send_adv_segs(struct pb_adv_session *session, const uint8_t *data,
 	l_debug("max_seg: %2.2x", max_seg);
 	l_debug("size: %2.2x, CRC: %2.2x", size, buf[9]);
 
-	pb_adv_send(session, MESH_IO_TX_COUNT_UNLIMITED, 200,
+	pb_adv_send(session, MESH_IO_TX_COUNT_UNLIMITED, 500,
 							buf, init_size + 10);
 
 	consumed = init_size;
@@ -174,7 +176,7 @@  static void send_adv_segs(struct pb_adv_session *session, const uint8_t *data,
 		buf[6] = (i << 2) | 0x02;
 		memcpy(buf + 7, data + consumed, seg_size);
 
-		pb_adv_send(session, MESH_IO_TX_COUNT_UNLIMITED, 200,
+		pb_adv_send(session, MESH_IO_TX_COUNT_UNLIMITED, 500,
 							buf, seg_size + 7);
 
 		consumed += seg_size;
@@ -270,7 +272,8 @@  static void send_ack(struct pb_adv_session *session, uint8_t trans_num)
 	ack.trans_num = trans_num;
 	ack.opcode = PB_ADV_ACK;
 
-	pb_adv_send(session, 1, 100, &ack, sizeof(ack));
+	pb_adv_send(session, MESH_IO_TX_COUNT_UNLIMITED, 500,
+							&ack, sizeof(ack));
 }
 
 static void send_close_ind(struct pb_adv_session *session, uint8_t reason)