Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp3584923ybz; Mon, 4 May 2020 06:00:54 -0700 (PDT) X-Google-Smtp-Source: APiQypKbd16Lf6CUTxrf6WBbf8K3ax7QH1ULEIQMkEUJKQT5IOGsmIPCcn1uOa9kMoepOOLrBCX8 X-Received: by 2002:a50:e3cb:: with SMTP id c11mr14921085edm.105.1588597254308; Mon, 04 May 2020 06:00:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588597254; cv=none; d=google.com; s=arc-20160816; b=UCRHCzSkQ6ndhCrlozlZe4N+isZHpn5IVnibFsEcpY3TlIVxlkovMuPXj/81Lt3p3K pbGaCcOIgtsLl29WdhhQih3vkvuawmABsCv1tUUG5lX7sEKhZTAgdRsK9awtC/XdUpIX Kv1l5Hr2jGl6ZArWLpSZNzhDcV46cy8yGl2AueRScOi2gmTE91NeilBCmniVWiLh5W2m 8nNJ8h4Wy77EFp80UFdm1VowdDzRQW3rUrgb8yRnDpPPIItHS0NnGna4/sH4GYzSLUc5 Jv70a4wCAPjtdiw5MFx0ttCD0Mfn3RlaxuIu/CDVJpMNts4RVvetHAFumGngBiUdBp1w VMEw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=TFhZTuXqrlTXZkKudHg7N5kGfcvlCXKdzBW+G66MxYI=; b=ogUjKcFkqEfIjT6QDGTXianYb4WeVkkMhkBbDTJjc5GZRTZIcgNsQkSeEbd7pOQp97 7LbHRrdqe7hufdPACtumJFH6HS00zIF1s0HKq53DBhk8hjzIa1mdEruTlfAtt7Vw9AFO hysBtsUfF85sHRELuckiJmg3sOCpeljjmZgOVC760M+ORsj7df2c6PZHvF2v8H6C4lDk t5Ed9eYiCswzmiQUH/Dg0sV0qxLvP/VN67wmjQrD1dlzSFDrRZ93Mbiy/TUs/GNMW6Qu 8tih/QlE59MtmSGw/oos6R0FlK/TFQwqV007gJcWQVo6Nkn4dVjB2ymiamX255RT2pfv YPAA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@infradead.org header.s=bombadil.20170209 header.b="WNBi/SpF"; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id v11si6807809edy.483.2020.05.04.06.00.30; Mon, 04 May 2020 06:00:54 -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=fail header.i=@infradead.org header.s=bombadil.20170209 header.b="WNBi/SpF"; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728808AbgEDM5I (ORCPT + 99 others); Mon, 4 May 2020 08:57:08 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37626 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1728486AbgEDM5G (ORCPT ); Mon, 4 May 2020 08:57:06 -0400 Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:e::133]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 210E0C061A0E; Mon, 4 May 2020 05:57:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender :Reply-To:Content-Type:Content-ID:Content-Description; bh=TFhZTuXqrlTXZkKudHg7N5kGfcvlCXKdzBW+G66MxYI=; b=WNBi/SpFXGuOAEFUfDk9kAwukT P9ob/xYY4E7l1PyaRLcG0k5EyozDAbB/r250frOrk/npYeVbudFanLtlDx6igky0ISeA0w2wtY6lp Jds4BbAdEAWruii2FGMUb35ueDifl9bTtdu+sRjPlbq+UM6vDynhi/mmZfvX3TkR3ox6SLTyqVkpw CWTPtKClw4JL+8mTIV35FUj0jBXtS49pcwZBCxcFKhyC23eeFEsJmfGa3aeNekDWMhvQN5odhEtT7 lFnubr+AlU9Af8NPZdsPKVHO2AHQGQTzkTODl0yJnH/CCrAYrul/cBoEXOUJn9mLtrjQ8TWCmOAE8 TX5pdglQ==; Received: from [2001:4bb8:18c:10bd:c70:4a89:bc61:2] (helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.92.3 #3 (Red Hat Linux)) id 1jVaeV-0007WJ-My; Mon, 04 May 2020 12:56:56 +0000 From: Christoph Hellwig To: axboe@kernel.dk Cc: yuyufen@huawei.com, tj@kernel.org, jack@suse.cz, bvanassche@acm.org, tytso@mit.edu, hdegoede@redhat.com, gregkh@linuxfoundation.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 4/9] bdi: add a ->dev_name field to struct backing_dev_info Date: Mon, 4 May 2020 14:47:56 +0200 Message-Id: <20200504124801.2832087-5-hch@lst.de> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200504124801.2832087-1-hch@lst.de> References: <20200504124801.2832087-1-hch@lst.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Cache a copy of the name for the life time of the backing_dev_info structure so that we can reference it even after unregistering. Fixes: 68f23b89067f ("memcg: fix a crash in wb_workfn when a device disappears") Reported-by: Yufen Yu Signed-off-by: Christoph Hellwig Reviewed-by: Jan Kara Reviewed-by: Bart Van Assche --- include/linux/backing-dev-defs.h | 1 + mm/backing-dev.c | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/include/linux/backing-dev-defs.h b/include/linux/backing-dev-defs.h index 4fc87dee005ab..2849bdbb3acbe 100644 --- a/include/linux/backing-dev-defs.h +++ b/include/linux/backing-dev-defs.h @@ -220,6 +220,7 @@ struct backing_dev_info { wait_queue_head_t wb_waitq; struct device *dev; + char dev_name[64]; struct device *owner; struct timer_list laptop_mode_wb_timer; diff --git a/mm/backing-dev.c b/mm/backing-dev.c index c2c44c89ee5d7..efc5b83acd2df 100644 --- a/mm/backing-dev.c +++ b/mm/backing-dev.c @@ -938,7 +938,8 @@ int bdi_register_va(struct backing_dev_info *bdi, const char *fmt, va_list args) if (bdi->dev) /* The driver needs to use separate queues per device */ return 0; - dev = device_create_vargs(bdi_class, NULL, MKDEV(0, 0), bdi, fmt, args); + vsnprintf(bdi->dev_name, sizeof(bdi->dev_name), fmt, args); + dev = device_create(bdi_class, NULL, MKDEV(0, 0), bdi, bdi->dev_name); if (IS_ERR(dev)) return PTR_ERR(dev); @@ -1047,7 +1048,7 @@ const char *bdi_dev_name(struct backing_dev_info *bdi) { if (!bdi || !bdi->dev) return bdi_unknown_name; - return dev_name(bdi->dev); + return bdi->dev_name; } EXPORT_SYMBOL_GPL(bdi_dev_name); -- 2.26.2