[Jack-Devel] Netjack crashes, alignment broken recently

Xavier Mendez me at jmendeth.com
Fri Mar 11 12:21:04 CET 2016


El 11/03/16 a les 12:05, Filipe Coelho ha escrit:
> On 10.03.2016 18:41, Xavier Mendez wrote:
>> Just compiled the latest jackd2, and when using Netjack both manager
>> and driver crash after sending parameters. I traced back to this
>> change from 02f74a659, which modifies the network parameter struct:
>>
>> --- a/common/JackNetTool.h
>> +++ b/common/JackNetTool.h
>> @@ -94,9 +94,9 @@ namespace Jack
>> -        char fName[JACK_CLIENT_NAME_SIZE];
>> -        char fMasterNetName[JACK_SERVER_NAME_SIZE];
>> -        char fSlaveNetName[JACK_SERVER_NAME_SIZE];
>> +        char fName[JACK_CLIENT_NAME_SIZE+1];
>> +        char fMasterNetName[JACK_SERVER_NAME_SIZE+1];
>> +        char fSlaveNetName[JACK_SERVER_NAME_SIZE+1];
>>
>> That extra byte for the NUL terminator breaks the alignment, and
>> somehow causes some ints to be sent as little-endian:
>>
>>     Sample rate : 12288000 frames per second
>>     Period size : 131072 frames per period
>>
>> Reverting the three lines seems to resolve the problem. I don't really
>> see the use for having the NUL terminator go through the network...
>>
>> What do you think?
>
> I can confirm this is an issue for me.
> The "-d net" option stopped working some time ago and I've been
> wondering why, that change seems to be the reason.
>
> Reverting it in both client&server makes netmanager work again.
>
>
> Please do a pull request against jack2's github repo.
> That would be the fastest way to get this fixed upstream.

Done. https://github.com/jackaudio/jack2/pull/195



More information about the Jackaudio mailing list