[Buildroot] [PATCH 2/2] support/testing: TestMdnsd: improve test reliability

Romain Naour romain.naour at smile.fr
Tue Sep 1 21:15:49 UTC 2026


Hello Fiona, All,

Le 01/09/2026 à 22:11, Fiona Klute a écrit :
> Am 31.08.26 um 22:57 schrieb Romain Naour via buildroot:
>> The mdnsd runtime test can randomly fail on slow runners.
>>
>> It's hard to reproduce locally (only one failure after a few attempts)
>> but we can reproduce it easily by removing the while loop entirely.
>>
>> It turns out that mdnsd is started by S50mdnsd before the
>> emulator.login() change the system date:
>>
>>    [BRTEST# date -s @1788032864
>>    Sat Aug 29 19:47:44 UTC 2026
>>
>> Since the minimal rootfs.cpio generated    for TestMdnsd doesn't have any
>> ntp client installed, it start with "January 1, 1970".
>>
>> The date change may cause some issue to the mdnsd daemon which blocks
>> any response from mquery command.
>>
>> When the problem occurs, "mquery -T _http._tcp" reply is empty:
>>
>>    # mquery -T _http._tcp
>>    Querying _http._tcp.local. for PTR (12) ... press Ctrl-C to stop
>>
>> To workaround the issue, restart mdnsd manually.
> 
> Thanks for the workaround! If mdnsd gets stuck if there's a time jump, that
> sounds like an issue that should also be reported upstream (and hopefully fixed
> there). Even with an NTP client installed there'd be no guarantee the time would
> have been set before mdnsd starts.

I just created a new issue on Github:
https://github.com/troglobit/mdnsd/issues/99

Hopefully this is the last issue for the runtime testsuite for the upcoming
2026.08 release!

Best regards,
Romain

> 
> Best regards,
> Fiona
> 
>> Fixes:
>> https://gitlab.com/buildroot.org/buildroot/-/jobs/16185948555
>>
>> Signed-off-by: Romain Naour <romain.naour at smile.fr>
>> ---
>>   support/testing/tests/package/test_mdnsd.py | 4 ++++
>>   1 file changed, 4 insertions(+)
>>
>> diff --git a/support/testing/tests/package/test_mdnsd.py b/support/testing/
>> tests/package/test_mdnsd.py
>> index 214eea7dd9..ebb8971e38 100644
>> --- a/support/testing/tests/package/test_mdnsd.py
>> +++ b/support/testing/tests/package/test_mdnsd.py
>> @@ -23,6 +23,10 @@ class TestMdnsd(infra.basetest.BRTest):
>>                                       "-net", "user"])
>>           self.emulator.login()
>>   +        # Restart mdnsd after setting the date in emulator.login() setup.
>> +        cmd = "/etc/init.d/S50mdnsd restart"
>> +        self.assertRunOk(cmd, timeout=30)
>> +
>>           # We check the program can execute.
>>           self.assertRunOk("mdnsd -v")
>>   
> 



More information about the buildroot mailing list