On Thu, 2020-12-24 at 04:23 -0500, Steve Brown wrote: > Hi Brian, > > On Tue, 2020-12-22 at 18:43 +0000, Gix, Brian wrote: > > Hi Steve, I will investigate on my RPI4 > > > > -----Original Message----- > > From: Steve Brown <sbrown@xxxxxxxx> > > Sent: Tuesday, December 22, 2020 7:57 AM > > To: linux-bluetooth@xxxxxxxxxxxxxxx > > Subject: mesh: call to Publish triggers apparent output loop in > > mesh/mesh-io-generic.c > > > > Publish functions as expected, but results in continuous, very heavy > > HCI traffic (~every .7ms per btmon log). I don't think it's my > > application as the problem persists after the application disconnects > > from dbus and exits. > > > > The calls to LE Set Adv Param all fail. Prior to the Publish call, LE > > Set Param calls succeed. The only difference I can see is the failing > > ones have an interval of 50ms and the ones that succeed have 100ms. A > > successful one is appended. > > > > I'm at current Bluez head (65231892cd). The platform is a rpi4. > > > > Below is a pretty normal looking meshd log, a btmon dump and some > > more > > normal looking dbus traffic. > > > > Steve > > I think I found my problem. My retransmit count was set to zero. That's a good catch, Steve. The CNT value from the Publish message is supposed to be the number of *RE* - transmissions, not the total number of transmits. 0 is special cased internally as "Infinite", so we need to add 1 to the CNT value for the actual total transmissions. I will talk with Inga to see where we want to make this tweek. > > If the publish retransmit count is 0, mesh-io-generic.c:tx_to() repeats > the message indefinitely. However, 4.2.2.6 of the mesh profile spec > V1.0 seems to state that 0 means no retransmissions. > > Steve > >