Received: by 10.223.176.46 with SMTP id f43csp283875wra; Thu, 18 Jan 2018 17:25:59 -0800 (PST) X-Google-Smtp-Source: ACJfBosVFerO/AFKIQFnXMXToTQBLX/EBPrpV2VJ9jodOCdml3wnSNBA4a6PpqIedp0GXRWg7gvl X-Received: by 10.99.9.67 with SMTP id 64mr37208869pgj.257.1516325159813; Thu, 18 Jan 2018 17:25:59 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1516325159; cv=none; d=google.com; s=arc-20160816; b=nXLMjcGQYGMWZPQKFUR9x5atuqgpnX3JrRQpL8c9n2BzpXriybfzOEltfxnBYyb3WY DpoQt1IoAPM3IATFaixdC73mrRtbO5pDKp40aKRX+UzPWrvBspbRdXa0I3wS0aKE0yqU FJXy8qbxbgnHC3b14PoU/w5+jDe3Ea7bcU8CaPHpqPNG7+KwBslVh5Rfi+9MXsjBA/wD 9Y9xdK0fiQ7Ml6hDStGOIdovyREFsY1ykTEKxDHIBV42V9lU5ym8CIWzOItSeiAbR+qI 3zwhhY7AD1ukd2mSubzBdWWDIETeE/KtNBvCoRubJ0vGER1oIuldHGW5pF4FZyvBjKHB PLgg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-language :content-transfer-encoding:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:dkim-signature :arc-authentication-results; bh=8BfcBiT/7VycZuoi/V+f6RSOqdDVSizm4lHHnziVdMg=; b=QOXBtY9rvxQWe1a2UtnBWoB/H2o6LTgF+57dblkhbAzaQItxb4wK5aGSPHo599BRCC 1/KpZ5kc+Lu/n99bEjcPBM8A4yq0bvgiVe16tOUtNeTFIboUaWJG9YFziaucz9R20IWb CxlSbytUFn4RW14eRcLqpqyjXOgjxqGUcoiyRvzwJKPjy1HXD0JgBT3hTSNWPx8AIxsx BJBBkIKDxXWiC2Dw3s+EiQpkpMluBQTztj26dtVtIBNNVfC5y0CfENvrIPFessD5HYko AjlJprn5Kg7oQZpmuFCParEFXgGI+0OmB8vxIDC9W7eByqoKx8AzPgtGzs3j6ijOhKPo 86Ag== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=UYYy6H0e; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id u14si7464587pgo.179.2018.01.18.17.25.45; Thu, 18 Jan 2018 17:25:59 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=UYYy6H0e; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932620AbeASBZW (ORCPT + 99 others); Thu, 18 Jan 2018 20:25:22 -0500 Received: from mail-pg0-f42.google.com ([74.125.83.42]:39274 "EHLO mail-pg0-f42.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754833AbeASBZS (ORCPT ); Thu, 18 Jan 2018 20:25:18 -0500 Received: by mail-pg0-f42.google.com with SMTP id w17so139284pgv.6; Thu, 18 Jan 2018 17:25:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding:content-language; bh=8BfcBiT/7VycZuoi/V+f6RSOqdDVSizm4lHHnziVdMg=; b=UYYy6H0eUNHPEzulWSR8t7llc75xFe4Rcdy/0GqgWn2p3nvVS4hZLYs75xIKqiG+jc KBLGr5IC0NoP0IcvvxYUjV5y//V+AoKBJtcJCNUdtmTS1w2isSF1D2rEG3axM4xPK85F XIQKHOiw6JFy1ar7F3aa97mOdoEq+09p1vYdh3bpVqSrH4bQX7OswIkq/uF+cO80L2C2 Sqd2ZVy/8t6fTCjSPERQHEEzPvy0FgiMpOUFkhq0UeOwcM/QPRTqHP407bgR2BXeuVgM XWjnYpH5+YelADTHkPBgVJ6XNAqbqBqsXilzvIJ4gpcU6nbQbcR7oi1jf4XSaJUb/Q17 HTjw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=8BfcBiT/7VycZuoi/V+f6RSOqdDVSizm4lHHnziVdMg=; b=IctPos2j4Q3Opv5otkuUS5sxX4MhrQdyLEgVxSBg0DR4GqS4bXdSzvx4Vcozik/2Lt AxDuF6pVhu36bqV8emFP+qnZXoYsWM/XxMP1POxuC4u7/cg/3hkdBcna3hSfq2mlwKC1 HDs/hkTpCcezRhKzulrZItUUQuUferFy79J3/5gEpHRlnIvzwya4ASKVNKDjaR2OZ7mK qe/OclEIaX3OJKst825NmLYgghJoz8lD0CrulWELtxJvV1eZHe1zgoXB+vvMUoQkGjPW Y2+fk2mBPOsXAQCY9QCHfjLztFYyJ7uULOL/7mdp3BU+opiOJbIQcdvBheyeG6ctUJAi Byhw== X-Gm-Message-State: AKwxyte0NrZa3Bl90xNbH9Uq/evfpk+iROJzsb2lT1jVhxnOM8Ksq4VU XhotarbycWMwNZXHSIsp68tWDHPk X-Received: by 2002:a17:902:bf06:: with SMTP id bi6-v6mr724927plb.144.1516325118064; Thu, 18 Jan 2018 17:25:18 -0800 (PST) Received: from ?IPv6:2402:f000:1:1501:200:5efe:166.111.70.14? ([2402:f000:1:1501:200:5efe:a66f:460e]) by smtp.gmail.com with ESMTPSA id d5sm16936339pfk.2.2018.01.18.17.25.15 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 18 Jan 2018 17:25:17 -0800 (PST) Subject: Re: net: r8169: a question of memory barrier in the r8169 driver To: Francois Romieu Cc: nic_swsd@realtek.com, alexander.h.duyck@redhat.com, David Miller , dhowells@redhat.com, paulmck@linux.vnet.ibm.com, will.deacon@arm.com, peterz@infradead.org, netdev@vger.kernel.org, Linux Kernel Mailing List References: <9a373156-41e5-a78b-cd31-c4b9bdba2696@gmail.com> <20180119011101.GA15920@electric-eye.fr.zoreil.com> From: Jia-Ju Bai Message-ID: <31c256b2-b527-89b1-168b-b2a529811d74@gmail.com> Date: Fri, 19 Jan 2018 09:24:55 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.2.0 MIME-Version: 1.0 In-Reply-To: <20180119011101.GA15920@electric-eye.fr.zoreil.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2018/1/19 9:11, Francois Romieu wrote: > Jia-Ju Bai : > [...] >> The function rtl8169_start_xmit reads tp->dirty_tx in TX_FRAGS_READY_FOR: >> if (unlikely(!TX_FRAGS_READY_FOR(tp, skb_shinfo(skb)->nr_frags))) { >> netif_err(tp, drv, dev, "BUG! Tx Ring full when queue awake!\n"); >> goto err_stop_0; >> } >> But there is no memory barrier around this code. >> >> Is there a possible data race here? > This code would not even be needed if rtl8169_start_xmit was only your > usual ndo_start_xmit handler: Realtek {ab / re}used it for GSO handling > (see r8169_csum_workaround). > > If the test is not a no-op in this GSO context, it's racy. > Thanks for reply. I didn't clearly understand your meaning... I wonder whether there is a possible data race and whether a "smp_mb" is needed before this code? By the way, do you mean that this code can be removed? Thanks, Jia-Ju Bai