From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 674CCA0C43; Tue, 14 Sep 2021 16:41:53 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 297AB4069C; Tue, 14 Sep 2021 16:41:53 +0200 (CEST) Received: from inbox.dpdk.org (inbox.dpdk.org [95.142.172.178]) by mails.dpdk.org (Postfix) with ESMTP id 873684068F for ; Tue, 14 Sep 2021 16:41:51 +0200 (CEST) Received: by inbox.dpdk.org (Postfix, from userid 33) id 68073A0C46; Tue, 14 Sep 2021 16:41:51 +0200 (CEST) From: bugzilla@dpdk.org To: dev@dpdk.org Date: Tue, 14 Sep 2021 14:41:51 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: DPDK X-Bugzilla-Component: ethdev X-Bugzilla-Version: 21.11 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: erclists@gmail.com X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: Normal X-Bugzilla-Assigned-To: dev@dpdk.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version rep_platform op_sys bug_status bug_severity priority component assigned_to reporter target_milestone Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.dpdk.org/ Auto-Submitted: auto-generated X-Auto-Response-Suppress: All MIME-Version: 1.0 Subject: [dpdk-dev] [Bug 809] KNI request overwritten with new asynchronous kni_net_release mechanism X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" https://bugs.dpdk.org/show_bug.cgi?id=3D809 Bug ID: 809 Summary: KNI request overwritten with new asynchronous kni_net_release mechanism Product: DPDK Version: 21.11 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: Normal Component: ethdev Assignee: dev@dpdk.org Reporter: erclists@gmail.com Target Milestone: --- With the new asynchronous KNI request for kni_net_release() there is a potential for an interface down request to be overwritten in the KNI request fifo. The issue occurs when an application sets an interface down, immedia= tely followed by setting the interface up. The down request gets put on the KNI fifo and then returns immediately (ins= ide kni_net_process_request) . If a subsequent up request comes in before the = down request has had a chance to be processed by the request handler, the new up request gets written to the same KNI sync address, thus overwriting the down request and the first down request will be missed: /* Construct data */ memcpy(kni->sync_kva, req, sizeof(struct rte_kni_request)); <-- Overwritten num =3D kni_fifo_put(kni->req_q, &kni->sync_va, 1); Before this asynchronous mechanism was introduced this was prevented by tak= ing the kni->sync_lock and waiting for the response. But even in this case if = the wait timeout was exceeded, this same type of condition could theoretically happen. --=20 You are receiving this mail because: You are the assignee for the bug.=