Re: linux-next: manual merge of the nfc tree with the nfc-fixes tree

David Heidelberg <[email protected]> Sun, 26 Jul 2026 21:50:04 +0200
Newsgroups org.kernel.vger.linux-next,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
On 24/07/2026 05:18, Zhou, Yun wrote:
> Hi Mark, David,
> 
> My patch (1d5fcb66b07a3) [1] was applied to the nfc tree on Jun 2, nearly a 
> month before Samuel's (075f88b7d3b5c, Jun 24) [2] . They fix the same bug.
> 

Hello Yun,

thank you for noticing me.

> But Samuel's v2 still has issues that I addressed during my v1 [3] --> v3 
> iteration:
> 1. Error response handling: his patch requires sizeof(*rsp_1) before
> reading the status field. A valid NCI error response may only contain
> a 1-byte status — his code returns SYNTAX_ERROR instead of propagating
> the device's actual error code. I fixed this in v2 [4] by checking 1 byte first, 
> then requiring the full header only after status == OK.
> 
> 2. ndev state corruption: Simon flagged that if the length check fails
> after ndev fields are partially updated, it leaves ndev in an
> inconsistent state. My v3 defers all ndev updates until after
> validation passes.

Yes, now I see. I somehow must missed the part completely, maybe I looked at 
older revision when comparing these two patches approaches.

Conclusion: I'm re-picking the original patch in v3, and will drop the

nfc: nci: fix uninit-value in nci_core_init_rsp_packet()

Thank you both for the contribution and sorry for the complications!
David

> 
> [1] https://lore.kernel.org/all/[email protected]/T/
> [2] https://lore.kernel.org/all/[email protected]/
> [3] https://lore.kernel.org/all/[email protected]/T/
> [4] https://lore.kernel.org/all/[email protected]/T/
> 
> Was there something wrong with my version, or was it just a mechanical conflict 
> resolution?
> 
> Thanks,
> Yun
> 
> On 6/29/2026 9:15 PM, Mark Brown wrote:
>> Hi all,
>>
>> Today's linux-next merge of the nfc tree got a conflict in:
>>
>>    net/nfc/nci/rsp.c
>>
>> between commit:
>>
>>    075f88b7d3b5c ("nfc: nci: fix uninit-value in nci_core_init_rsp_packet()")
>>
>> from the nfc-fixes tree and commit:
>>
>>    1d5fcb66b07a3 ("nfc: nci: fix use of uninitialized memory in CORE_INIT_RSP 
>> parsing")
>>
>> from the nfc tree.
>>
>> I fixed it up (see below) and can carry the fix as necessary. This
>> is now fixed as far as linux-next is concerned, but any non trivial
>> conflicts should be mentioned to your upstream maintainer when your tree
>> is submitted for merging.  You may also want to consider cooperating
>> with the maintainer of the conflicting tree to minimise any particularly
>> complex conflicts.
>>
>> diff --cc net/nfc/nci/rsp.c
>> index 6b2fa6bdbd14b,85c3ff2b78cd9..0000000000000
>> --- a/net/nfc/nci/rsp.c
>> +++ b/net/nfc/nci/rsp.c
>> @@@ -50,7 -50,8 +50,8 @@@ static u8 nci_core_init_rsp_packet_v1(s
>>        const struct nci_core_init_rsp_1 *rsp_1 = (void *)skb->data;
>>        const struct nci_core_init_rsp_2 *rsp_2;
>> +     /* Ensure that the status field can be accessed. */
>>   -    if (skb_headlen(skb) < 1)
>>   +    if (skb->len < sizeof(*rsp_1))
>>            return NCI_STATUS_SYNTAX_ERROR;
>>        pr_debug("status 0x%x\n", rsp_1->status);
> 

-- 
David Heidelberg