Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751718AbcCHXLd (ORCPT ); Tue, 8 Mar 2016 18:11:33 -0500 Received: from g4t3426.houston.hp.com ([15.201.208.54]:2420 "EHLO g4t3426.houston.hp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751225AbcCHXL3 (ORCPT ); Tue, 8 Mar 2016 18:11:29 -0500 Message-ID: <1457481844.15454.510.camel@hpe.com> Subject: Re: [PATCH v2-UPDATE2 3/4] resource: Add device-managed insert/remove_resource() From: Toshi Kani To: Dan Williams , Linus Torvalds Cc: Ingo Molnar , Borislav Petkov , "Rafael J. Wysocki" , Andrew Morton , "linux-nvdimm@lists.01.org" , Linux ACPI , Linux Kernel Mailing List Date: Tue, 08 Mar 2016 17:04:04 -0700 In-Reply-To: References: <1457460530-17959-1-git-send-email-toshi.kani@hpe.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.18.4 (3.18.4-1.fc23) Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1616 Lines: 38 On Tue, 2016-03-08 at 14:44 -0800, Dan Williams wrote: > On Tue, Mar 8, 2016 at 2:23 PM, Linus Torvalds > wrote: > > On Tue, Mar 8, 2016 at 12:59 PM, Dan Williams > > wrote: > > > > > > Here's the usage patch from Toshi [1] (copied below).  It is indeed a > > > resource injected by nfit / nvdimm bus implementation.  We just > > > happen > > > to support nfit and libnvdimm as modules. > > > > > > The goal of these patches is to use the ACPI NFIT data to create a > > > "Persistent Memory" rather than "reserved" resource.  This is for > > > platform-firmware implementations that use E820-Type2 rather than > > > E820-Type7 to describe pmem. > > > > So my worry is that there is likely exactly one or two of these kinds > > of sites. > > > > Why couldn't they just use insert_resource() and then remove it > > manually? > > You mean instead of introducing a devm_insert_resource() as a helpful > first-class-citizen api, just arrange for the resource to be inserted > locally?  Sure. > > I assume Toshi was looking to keep the devm semantics like the rest of > the nfit driver, but we can do that locally with devm_add_action() and > skip the new general purpose api. Yes, I prefer the devm semantics.  insert_resource() and remove_resource() are not exported interfaces.  So, with devm_add_action(), we still need to introduce built-in exported wrappers for insert/remove_resource(), unless we change to export them directly.  Since we need to export "something", I think it is better to export their devm interfaces. Thanks, -Toshi