Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp3247046pxj; Mon, 7 Jun 2021 06:11:04 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzE4LHqYLnMMpKu785KlnQa+ppOWEEdXN9JbhFabJ0J+/KqeoHUbCgUc0tczkqR/Ag6dRVA X-Received: by 2002:a17:906:4e95:: with SMTP id v21mr17265390eju.434.1623071464653; Mon, 07 Jun 2021 06:11:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1623071464; cv=none; d=google.com; s=arc-20160816; b=cOW3/1nyNBut0/NelhwacwrdrumzXn4XW2gAV1uCMvwc7LPHp3AG2ONHNX1842vjWH d2+cY8Xpxqni+UA3rluDqvxc175Zp8Da87h8bIxyCcldcJjkBnWOflY0BCBnDY2zkwwB uCGToY+1x5UHNdxZKoyotZy+opbB2MFH10WudUUGDe9i8rCBesE/QE2yyHLW43Dk8h5z iMpi/fEH+RTvXgJfB+apdnlr3BrwYFMgPEkMEiT7UdlViIbfDyMGnEITmCN3y9KSEbdI cJSa36BB1NuJGbwom4VGgcNrP+AYtsy7pF0lj4PsH4hBmqK1mvlmq57TrQ+CA1WjV/Vf 1SuA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-disposition:mime-version:message-id :subject:cc:to:from:date:dkim-signature; bh=Blqm8HDtxq2DCywo/otFV5fX8E6HMxdWztbHqtnhcQ4=; b=fDkUJr6FDHRkz8X8Ix17GBkJOjs74jgOyAP2c5jxtmhqwDR+4sfBlpfpLRmiDeQyFA AH/Zcrx8pJJXSModAjB2+bsgIm2Me799bY4MiZGv0IeC0PB7s8zhqEf7/IcZsl4HFN2Y CatQKlFu/fe6Dr2tB4OamCLWqMEhT0h36K2UmB1cohvknd6HZIjkd1Hlhit6SrtopFP4 HVmlbOMxDybQe+IE5PajRKLehsXoVP4R1QFNRD0KcEy7Mn8wki8AVPQvJ4xZGbN3ImoO RsvlFu5KMgLvaAaBqPdwedIrUdn5mNvkH+/oGmNaaBFtgZPFsMxUbBIoleVZpEPaAgVn sW0A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=cYn0h2r3; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id p26si13395648edx.56.2021.06.07.06.10.36; Mon, 07 Jun 2021 06:11:04 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=cYn0h2r3; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230250AbhFGNKd (ORCPT + 99 others); Mon, 7 Jun 2021 09:10:33 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35206 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230194AbhFGNKc (ORCPT ); Mon, 7 Jun 2021 09:10:32 -0400 Received: from mail-wm1-x32f.google.com (mail-wm1-x32f.google.com [IPv6:2a00:1450:4864:20::32f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 95FDAC061766; Mon, 7 Jun 2021 06:08:40 -0700 (PDT) Received: by mail-wm1-x32f.google.com with SMTP id k5-20020a05600c1c85b02901affeec3ef8so2304222wms.0; Mon, 07 Jun 2021 06:08:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:cc:subject:message-id:mime-version:content-disposition; bh=Blqm8HDtxq2DCywo/otFV5fX8E6HMxdWztbHqtnhcQ4=; b=cYn0h2r3Og5Kv2IB6Ch8Nef2WtD0NS5tR8Qkw7JnR14mhvVUZDuDHssVmMhj9L7cYM ux8F7ZiQjdEfpB7ImquMEGAMOO65OGLlqggEBz9eRIDUfv5FNxNMNFtq7SMVxcdrn+eB UPaGR6Izbcnzx9JvyoY7OKihWxzQBIlrk04+lXeF+HdpjaWOStxVMBmr5lDj5NjTfwbA R1YoRphDY+m5urDxK7QGmBpLHuLinklwEgs5sLY/xvZgexrKqWIW14C0db3nI6Mkdmme Oesv6G8v+nLJ4gK5h2fSBchW3xDqbEt5dwAdi80/koq05EzZR2Q8Nfxvj2LG69YHoWwZ rCSA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:mime-version :content-disposition; bh=Blqm8HDtxq2DCywo/otFV5fX8E6HMxdWztbHqtnhcQ4=; b=eNJZbj5GgLVxTGDxJIb3XvbVRGaWbnyOgFcZyn/aj/VkGm3irJFe8eX/l9kamANwev 3RKbcZBKWWA9sEazQYMuZDATI6H0jDHrdy8j4ZzXe9QLMLgPyzM83pDsw6hFwYvVDCVa CK2buQixwtZOqgozbSQ3QE4vAdwG+munxeQfLxV+Dt8SKSh2CrBFgd32kA2SXvoLRHpT LAO9ZguOJh2nm9w82cyW5IDgQnW27MmXfEzz1srBN0aCWVjZ3YzaeYdzY9bG+U8YINBF IRH7EtxiLgKPlUdxsW62vFPREXLIrfY9ppwuMfSQXR8B2CbhBvYr0nJ8HWl++zLLU0Kf C40Q== X-Gm-Message-State: AOAM5314P+jntL59w+UWd3XpPdniiECRAMQOwa9bFUJ0MO+VncLNvcyV V8d8VD3aBmm069O9x8RKwPo= X-Received: by 2002:a05:600c:204:: with SMTP id 4mr13651408wmi.95.1623071317518; Mon, 07 Jun 2021 06:08:37 -0700 (PDT) Received: from linux-dev (host81-153-178-248.range81-153.btcentralplus.com. [81.153.178.248]) by smtp.gmail.com with ESMTPSA id p187sm14802839wmp.28.2021.06.07.06.08.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Jun 2021 06:08:37 -0700 (PDT) Date: Mon, 7 Jun 2021 14:08:35 +0100 From: Kev Jackson To: =?iso-8859-1?Q?Bj=F6rn_T=F6pel?= , Magnus Karlsson , Jonathan Lemon , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Martin KaFai Lau , Song Liu , Yonghong Song , John Fastabend , KP Singh Cc: netdev@vger.kernel.org, bpf@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] libbpf: Fixes incorrect rx_ring_setup_done Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org When calling xsk_socket__create_shared(), the logic at line 1097 marks a boolean flag true within the xsk_umem structure to track setup progress in order to support multiple calls to the function. However, instead of marking umem->tx_ring_setup_done, the code incorrectly sets umem->rx_ring_setup_done. This leads to improper behaviour when creating and destroying xsk and umem structures. Multiple calls to this function is documented as supported. Signed-off-by: Kev Jackson --- tools/lib/bpf/xsk.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/lib/bpf/xsk.c b/tools/lib/bpf/xsk.c index 6061431ee04c..e9b619aa0cdf 100644 --- a/tools/lib/bpf/xsk.c +++ b/tools/lib/bpf/xsk.c @@ -1094,7 +1094,7 @@ int xsk_socket__create_shared(struct xsk_socket **xsk_ptr, goto out_put_ctx; } if (xsk->fd == umem->fd) - umem->rx_ring_setup_done = true; + umem->tx_ring_setup_done = true; } err = xsk_get_mmap_offsets(xsk->fd, &off); -- 2.30.2