Received: by 2002:a25:ab43:0:0:0:0:0 with SMTP id u61csp859402ybi; Wed, 19 Jun 2019 09:03:14 -0700 (PDT) X-Google-Smtp-Source: APXvYqwCedOtLq6BDnKPoqGo4zjxdszC3vtS5S5y3i8lDx02SXij75L4o8EDbTPcHqhWOUSeO66g X-Received: by 2002:a63:b547:: with SMTP id u7mr8620112pgo.322.1560960194035; Wed, 19 Jun 2019 09:03:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1560960194; cv=none; d=google.com; s=arc-20160816; b=JiETgxRVouyi0bBZv6PZ8Scc3wWL1nZhcPwCh4xOTiTZ1uQ9ZOv+6DXN8pOZVrT/LA 2tLjSHC6LSbbdcFmrRj6bdTOoeIK8ulWcBS9AdTsSH+F9IxXqrcLxpSt/lHpmEvtmDPi s/7ez9UrTCEeztEWCKUf8PT1b5reXqV2NGomIpl3XenZk0FzOCfnXEOCJHqtH1vbHIEt AVToJGs7QrOkar/2xusezFmYAMZ40x8nP1BF3D8x9/iL2wJX8DkIlUrPqlj8cLpW9y0q q6r1hnC9HrzbReUsdxKz2FAnZKrOmjqgaHSpvNh9AV1Ihs+s/ZRH1/yoLJrEXSL1voKu jbPA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=e2TZYFZlX9e62I/OKOgYgScEFw66m8yxPTXTWjgcCpk=; b=fOuXoWXel+DGVYTndrleIfslRLYUbgnT25CWNtEsNJhnjQs4N/8IdIrpaKAYzwpUyT fZeXONA5oRzVpv/Nlzf99wBRp9IuKVfGacXn+HzC7hWb6dZHWPMmheQD8uiCS0PFtgBb FiaK+jbFxCARRiK8yzIHrnOmV1tLl8ye95t9xtd27nvrRpfVz+G7NbAk2f47g7NYbnpS apR4uqMNE81OLp9K2l1tlUWgn3dtYQnVVTKTeNjOsQ8We4Asr7zwl+7yJdSeFPDDJeiy 2BajknJozoRzgomwIZIu8v2Y0xs0NfjaP5JT3qKwcsASA3m6dhp1dIuHDzXt83SOV5/s aXKA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bytedance-com.20150623.gappssmtp.com header.s=20150623 header.b=fRzB1EbE; 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=fail (p=NONE sp=NONE dis=NONE) header.from=bytedance.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d135si3288063pga.557.2019.06.19.09.02.56; Wed, 19 Jun 2019 09:03:14 -0700 (PDT) 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=@bytedance-com.20150623.gappssmtp.com header.s=20150623 header.b=fRzB1EbE; 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=fail (p=NONE sp=NONE dis=NONE) header.from=bytedance.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726091AbfFSQCj (ORCPT + 99 others); Wed, 19 Jun 2019 12:02:39 -0400 Received: from mail-lj1-f193.google.com ([209.85.208.193]:37399 "EHLO mail-lj1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726496AbfFSQCj (ORCPT ); Wed, 19 Jun 2019 12:02:39 -0400 Received: by mail-lj1-f193.google.com with SMTP id 131so3821172ljf.4 for ; Wed, 19 Jun 2019 09:02:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=e2TZYFZlX9e62I/OKOgYgScEFw66m8yxPTXTWjgcCpk=; b=fRzB1EbE2KvLOrtDYcH6Bmx/ekekTfKr6UqmgWpisdXrEnoJmgdOSbNhSwH8IGWmJM x0zgMnRrBbm8rA19uw67e1raz3rUnXncZTKLdtnzrPqhu/AoNvA0EuxPb841QUtrhDz/ CNSZNYYnZ99WL3xLojQwD6lDC1u35yUIjRoy8eenp+vvCZEKp+FtOgAPDYsT2WL9WZci wjH6KqBZUdsR/scmzhyDdh8SjbTY7eX0oy0Vti/mDgiwBRXrY+VzUZ2NRi3z8Yw215Z9 Ayoj4uf7n8ccnFYMX1XSUVPQPQ72nzZGxstDzYWt/vUfXw/qybwEVOXjwNu8LYuSXd8u PLqg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=e2TZYFZlX9e62I/OKOgYgScEFw66m8yxPTXTWjgcCpk=; b=P+ACvnOaQ670WakvVZETF0yTGEvMSct2u50/s28CQ95zaPxrBhLDYyt3icpJqqZ/hM /i0vGBEuzhXNlXIOEX/gVyhibzjQmjwYXxOKHsv7NLzQQE5HnL0lMiQA5vbKB6aU1DlI /Xu1saFihvZz93TbSY+aF1buweUyCVGY7ehKQn06z0N2wsrW7RS0FQWApFrYDoZfo4Lx XULUonfL8ZOmP8TWgJipsURryu/UyOtuCpcFoJniKLF1U79DjGj7YRtiCCiRJci7ySis kk+WHNQXcvfPo8t0g0yt3QvlxHudbYy7v3XNrcRSlkzOrBl+qfX6P9A7L4/1Cs50cJKS 8q6g== X-Gm-Message-State: APjAAAVRP1eVJ0pttaKrEwGwoFJiZwSy6jMJkhVMdCD5WhUhIECy8UTp dKMwsrG/pUvkrf9YDq94PhF7chhDd2AiuxnZKCzFcg== X-Received: by 2002:a2e:8847:: with SMTP id z7mr4510054ljj.51.1560960156976; Wed, 19 Jun 2019 09:02:36 -0700 (PDT) MIME-Version: 1.0 References: <20190617132636.72496-1-lifei.shirley@bytedance.com> <20190618.105548.2200622033433520074.davem@davemloft.net> In-Reply-To: <20190618.105548.2200622033433520074.davem@davemloft.net> From: =?UTF-8?B?5p2O6I+y?= Date: Thu, 20 Jun 2019 00:02:26 +0800 Message-ID: Subject: Re: [External Email] Re: [PATCH net v2] tun: wake up waitqueues after IFF_UP is set To: David Miller Cc: Jason Wang , netdev@vger.kernel.org, linux-kernel@vger.kernel.org, zhengfeiran@bytedance.com, duanxiongchun@bytedance.com Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Thanks. Have a nice day Fei On Wed, Jun 19, 2019 at 1:55 AM David Miller wrote: > > From: Fei Li > Date: Mon, 17 Jun 2019 21:26:36 +0800 > > > Currently after setting tap0 link up, the tun code wakes tx/rx waited > > queues up in tun_net_open() when .ndo_open() is called, however the > > IFF_UP flag has not been set yet. If there's already a wait queue, it > > would fail to transmit when checking the IFF_UP flag in tun_sendmsg(). > > Then the saving vhost_poll_start() will add the wq into wqh until it > > is waken up again. Although this works when IFF_UP flag has been set > > when tun_chr_poll detects; this is not true if IFF_UP flag has not > > been set at that time. Sadly the latter case is a fatal error, as > > the wq will never be waken up in future unless later manually > > setting link up on purpose. > > > > Fix this by moving the wakeup process into the NETDEV_UP event > > notifying process, this makes sure IFF_UP has been set before all > > waited queues been waken up. > > > > Signed-off-by: Fei Li > > Acked-by: Jason Wang > > Applied and queued up for -stable, thanks.