[LTP] [PATCH] syscalls/bind03: fix ret code behavior for v4.4 backport

Rafael David Tinoco rafael.tinoco@linaro.org
Tue Nov 20 16:44:50 CET 2018


On 11/20/18 1:20 PM, Petr Vorel wrote:
> Hi Rafael,
> 
>> Recently added test bind03 has a corner case for bind(2). Because
>> mainline patch 0fb44559ffd6 ("af_unix: move unix_mknod() out of
>> bindlock") got backported to kernel v4.4 as commit 0492a033fb71, the
>> corner case must be adapted to correct running kernel version.
> 
> ...
>>   	/*
>> -	 * The behavious diverse according to kernel version
>> -	 * for v4.10 or later, the expected error is EADDRINUSE,
>> +	 * The behavior diverse according to kernel version
>> +	 * for v4.4.47~3 or later, the expected error is EADDRINUSE,
>>   	 * otherwise EINVAL.
>>   	 */
>> -	if (tst_kvercmp(4, 10, 0) < 0) {
>> +	if (tst_kvercmp(4, 4, 48) < 0) {
>>   		if (errno != EINVAL) {
>>   			tst_res(TFAIL | TERRNO, "expected EINVAL");
>>   			return;
> 
> I think this is a wrong approach as there are versions between v4.4 and 4.10
> without this patch. IMHO we should accept both EINVAL and EADDRINUSE or accept
> Junchi's solution [1].

Sure, makes sense! +1.

-- 
Rafael D. Tinoco
Linaro Kernel Validation


More information about the ltp mailing list