From patchwork Sun Feb 26 06:38:04 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Logan Gunthorpe X-Patchwork-Id: 732482 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from mail-oi0-x239.google.com (mail-oi0-x239.google.com [IPv6:2607:f8b0:4003:c06::239]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3vWFb82cBMz9s2Q for ; Sun, 26 Feb 2017 17:40:36 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=googlegroups.com header.i=@googlegroups.com header.b="Oe0GGpXA"; dkim-atps=neutral Received: by mail-oi0-x239.google.com with SMTP id z13sf18395010oig.1 for ; Sat, 25 Feb 2017 22:40:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20161025; h=sender:mime-version:from:to:cc:date:message-id:in-reply-to :references:subject:x-original-sender :x-original-authentication-results:reply-to:precedence:mailing-list :list-id:x-spam-checked-in-group:list-post:list-help:list-archive :list-subscribe:list-unsubscribe; bh=LMRWgdvt3LSOf8sqmYgwPt5peUhfPo5Um5DjZBqm+hA=; b=Oe0GGpXANSVEqRIndFi9bXBzfB2NtE3xflwUdKZthpKqRSoY/as6XvPfx20OmmnC15 gkjwhnY8VdP3Fwj1HdEHnVa2/qcQ4MXOKEZH4tI7UvwaO2khPGuZfgEr7PSEzXRD8/Ra zKfAAZqHY2+s4jK7l6iJ71/PuwQOHhxUW8L4hBuRW369XE8eaQdf4cX7KDieHiFEUXWX h0qW1eVr3hrL46CcvhtaRItUZW1DaWDBCfxYn1PGa+8zNb0YSZiFFSiVL66YV7+kXatf Pa6MkRZZDlKr/q/LDjAzl1T8IXazSVWmMGCpLsWlJsyuPLgcDOBjDNQheFofTPDL/8o9 7MBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=sender:x-gm-message-state:mime-version:from:to:cc:date:message-id :in-reply-to:references:subject:x-original-sender :x-original-authentication-results:reply-to:precedence:mailing-list :list-id:x-spam-checked-in-group:list-post:list-help:list-archive :list-subscribe:list-unsubscribe; bh=LMRWgdvt3LSOf8sqmYgwPt5peUhfPo5Um5DjZBqm+hA=; b=c8akxb3/xZum/yRyDCoM3KIifcXhOkWu2Edpw7ARtFts0Ymc2Q5MsIpcL1MyRnNH3y ObcbfhNIX+HVE8AEMPGZT6tiU6hkRb2I4C6jiAovKN/ObZ5pMN6P51SVwTc8fpyzIguj NPJptAiMRM5j7KSyOozNUcNNaTxEuENN0jC+qlsTOlA1x68r1trIuX2/hyZUK4P9s9Rl fdilBRcdAcmb0mwHr5qnMpoeYwZWDCVlNM5oYho41iVYKy0dXqA8PvdpY2Rb3EgF54mr v+Zz8N8bMN6sb1GuXHj3im2rOWRbGN38QeKgaiWLWqoJnqCQ2QOHmukG6zjh6jDDApYq 7A5g== Sender: rtc-linux@googlegroups.com X-Gm-Message-State: AMke39mrpCsHYkkJeHF6tdpEQAyU8A32oZh+J+iTL9rXVEyEY5gfUqwXs++ttiQ621pU0g== X-Received: by 10.157.7.4 with SMTP id 4mr712034ote.13.1488091234665; Sat, 25 Feb 2017 22:40:34 -0800 (PST) MIME-Version: 1.0 X-BeenThere: rtc-linux@googlegroups.com Received: by 10.157.59.194 with SMTP id k60ls10260523otc.22.gmail; Sat, 25 Feb 2017 22:40:34 -0800 (PST) X-Received: by 10.157.19.60 with SMTP id f57mr4301957ote.100.1488091234459; Sat, 25 Feb 2017 22:40:34 -0800 (PST) Received: from ale.deltatee.com (ale.deltatee.com. [207.54.116.67]) by gmr-mx.google.com with ESMTPS id f7si2475594pfk.5.2017.02.25.22.40.34 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 25 Feb 2017 22:40:34 -0800 (PST) Received-SPF: pass (google.com: domain of gunthorp@deltatee.com designates 207.54.116.67 as permitted sender) client-ip=207.54.116.67; Received: from cgy1-donard.priv.deltatee.com ([172.16.1.31] helo=cgy1-donard.pmc-sierra.internal) by ale.deltatee.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1chsTZ-0004fx-8Y; Sat, 25 Feb 2017 23:38:39 -0700 Received: from gunthorp by cgy1-donard.pmc-sierra.internal with local (Exim 4.84_2) (envelope-from ) id 1chsTN-0003Dx-8I; Sat, 25 Feb 2017 23:38:21 -0700 From: Logan Gunthorpe To: Greg Kroah-Hartman , Dan Williams , Alexander Viro , Johannes Thumshirn , Jan Kara , Arnd Bergmann , Sajjan Vikas C , Dmitry Torokhov , Linus Walleij , Alexandre Courbot , Peter Huewe , Marcel Selhorst , Jarkko Sakkinen , Jason Gunthorpe , Olof Johansson , Doug Ledford , Sean Hefty , Hal Rosenstock , Dmitry Vyukov , Haggai Eran , Parav Pandit , Leon Romanovsky , Hartmut Knaack , Lars-Peter Clausen , Peter Meerwald-Stadler , Hans Verkuil , Mauro Carvalho Chehab , Artem Bityutskiy , Richard Weinberger , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Cyrille Pitchen , Matt Porter , Alexandre Bounine , Andrew Morton , Joe Perches , Lorenzo Stoakes , Vladimir Zapolskiy , Alessandro Zummo , Alexandre Belloni , Boaz Harrosh , "James E.J. Bottomley" , "Martin K. Petersen" , Stephen Bates , Bjorn Helgaas Cc: linux-pci@vger.kernel.org, linux-scsi@vger.kernel.org, rtc-linux@googlegroups.com, linux-mtd@lists.infradead.org, linux-media@vger.kernel.org, linux-iio@vger.kernel.org, linux-rdma@vger.kernel.org, linux-gpio@vger.kernel.org, linux-input@vger.kernel.org, linux-nvdimm@lists.01.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, Logan Gunthorpe Date: Sat, 25 Feb 2017 23:38:04 -0700 Message-Id: <1488091097-12328-4-git-send-email-logang@deltatee.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1488091097-12328-1-git-send-email-logang@deltatee.com> References: <1488091097-12328-1-git-send-email-logang@deltatee.com> X-SA-Exim-Connect-IP: 172.16.1.31 X-SA-Exim-Rcpt-To: gregkh@linuxfoundation.org, viro@zeniv.linux.org.uk, jthumshirn@suse.de, jack@suse.cz, arnd@arndb.de, vikas.cha.sajjan@hpe.com, linus.walleij@linaro.org, tpmdd@selhorst.net, jarkko.sakkinen@linux.intel.com, jgunthorpe@obsidianresearch.com, olof@lixom.net, dledford@redhat.com, dan.j.williams@intel.com, sean.hefty@intel.com, haggaie@mellanox.com, peterhuewe@gmx.de, knaack.h@gmx.de, lars@metafoo.de, pmeerw@pmeerw.net, hans.verkuil@cisco.com, leon@kernel.org, mchehab@kernel.org, richard@nod.at, dwmw2@infradead.org, cyrille.pitchen@atmel.com, mporter@kernel.crashing.org, alexandre.bounine@idt.com, akpm@linux-foundation.org, joe@perches.com, dmitry.torokhov@gmail.com, gnurou@gmail.com, hal.rosenstock@gmail.com, pandit.parav@gmail.com, dedekind1@gmail.com, computersforpeace@gmail.com, marek.vasut@gmail.com, lstoakes@gmail.com, vz@mleia.com, a.zummo@towertech.it, boris.brezillon@free-electrons.com, alexandre.belloni@free-electrons.com, ooo@electrozaur.com, jejb@linux.vnet.ibm.com, martin.petersen@oracle.com, stephen.bates@microsemi.com, dvyukov@google.com, bhelgaas@google.com, rtc-linux@googlegroups.com, linux-mtd@lists.infradead.org, linux-nvdimm@lists.01.org, linux-pci@vger.kernel.org, linux-scsi@vger.kernel.org, linux-media@vger.kernel.org, linux-iio@vger.kernel.org, linux-rdma@vger.kernel.org, linux-gpio@vger.kernel.org, linux-input@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, logang@deltatee.com X-SA-Exim-Mail-From: gunthorp@deltatee.com X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on ale.deltatee.com X-Spam-Level: X-Spam-Status: No, score=-8.7 required=5.0 tests=ALL_TRUSTED,BAYES_00, GREYLIST_ISWHITE,MYRULES_NO_TEXT,RP_MATCHES_RCVD autolearn=ham autolearn_force=no version=3.4.0 Subject: [rtc-linux] [PATCH v2 03/16] device-dax: utilize new cdev_device_add helper function X-SA-Exim-Version: 4.2.1 (built Mon, 26 Dec 2011 16:24:06 +0000) X-SA-Exim-Scanned: Yes (on ale.deltatee.com) X-Original-Sender: logang@deltatee.com X-Original-Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of gunthorp@deltatee.com designates 207.54.116.67 as permitted sender) smtp.mailfrom=gunthorp@deltatee.com Reply-To: rtc-linux@googlegroups.com Precedence: list Mailing-list: list rtc-linux@googlegroups.com; contact rtc-linux+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: rtc-linux@googlegroups.com X-Google-Group-Id: 712029733259 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , Replace the open coded registration of the cdev and dev with the new device_add_cdev() helper. The helper replaces a common pattern by taking the proper reference against the parent device and adding both the cdev and the device. Signed-off-by: Logan Gunthorpe Reviewed-by: Dan Williams --- drivers/dax/dax.c | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/drivers/dax/dax.c b/drivers/dax/dax.c index b62a52f..e60b519 100644 --- a/drivers/dax/dax.c +++ b/drivers/dax/dax.c @@ -632,8 +632,6 @@ static void dax_dev_release(struct device *dev) static void kill_dax_dev(struct dax_dev *dax_dev) { - struct cdev *cdev = &dax_dev->cdev; - /* * Note, rcu is not protecting the liveness of dax_dev, rcu is * ensuring that any fault handlers that might have seen @@ -644,7 +642,6 @@ static void kill_dax_dev(struct dax_dev *dax_dev) dax_dev->alive = false; synchronize_rcu(); unmap_mapping_range(dax_dev->inode->i_mapping, 0, 0, 1); - cdev_del(cdev); } static void unregister_dax_dev(void *dev) @@ -654,7 +651,8 @@ static void unregister_dax_dev(void *dev) dev_dbg(dev, "%s\n", __func__); kill_dax_dev(dax_dev); - device_unregister(dev); + cdev_device_del(&dax_dev->cdev, dev); + put_device(dev); } struct dax_dev *devm_create_dax_dev(struct dax_region *dax_region, @@ -705,18 +703,13 @@ struct dax_dev *devm_create_dax_dev(struct dax_region *dax_region, goto err_inode; } - /* device_initialize() so cdev can reference kobj parent */ + /* from here on we're committed to teardown via dax_dev_release() */ device_initialize(dev); cdev = &dax_dev->cdev; cdev_init(cdev, &dax_fops); cdev->owner = parent->driver->owner; - cdev->kobj.parent = &dev->kobj; - rc = cdev_add(&dax_dev->cdev, dev_t, 1); - if (rc) - goto err_cdev; - /* from here on we're committed to teardown via dax_dev_release() */ dax_dev->num_resources = count; dax_dev->alive = true; dax_dev->region = dax_region; @@ -728,7 +721,8 @@ struct dax_dev *devm_create_dax_dev(struct dax_region *dax_region, dev->groups = dax_attribute_groups; dev->release = dax_dev_release; dev_set_name(dev, "dax%d.%d", dax_region->id, dax_dev->id); - rc = device_add(dev); + + rc = cdev_device_add(cdev, dev); if (rc) { kill_dax_dev(dax_dev); put_device(dev); @@ -741,8 +735,6 @@ struct dax_dev *devm_create_dax_dev(struct dax_region *dax_region, return dax_dev; - err_cdev: - iput(dax_dev->inode); err_inode: ida_simple_remove(&dax_minor_ida, minor); err_minor: