Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp3502092imm; Tue, 29 May 2018 08:18:01 -0700 (PDT) X-Google-Smtp-Source: AB8JxZrzeBcsaxNV7Xb9M/oUhwqHM6ntyDkKf24KZFXWsV+DB5PwdKxNRf6kSMzV/PeXcNKuZMEh X-Received: by 2002:a17:902:7089:: with SMTP id z9-v6mr15164001plk.231.1527607081497; Tue, 29 May 2018 08:18:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527607081; cv=none; d=google.com; s=arc-20160816; b=Da5QX3jvHjF7QYywhOaYy29PryP8/gM+hgeu8IaDE6YB6xpjygKkYhuhl0yhkDNcM8 CsRpUQuGEnZNDeGoMGachxFt9Tkk0nh/mJ7ndlouECZog4YcKpEzRmH7ylImvyzFN7pG 7jiSW1sS06vCzGycnwPs8sfqlXaOtoJ8b45BjzPSBRdVqa//8fly8oK15XzoEeBPeHlh ZZlbZR6K5FDTUDrTNnNrlomIjOedDKjJiicc7A8OdWDGhDm4jPJ4KXtgdRhuPAqBZukQ e5g+XYPhTqEICRGUoNVu5ba/hLLdEIbVK24PgZVHCePzDf5j69vBb1tpl4vXkY6KFSBC LLwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:mail-followup-to :message-id:subject:cc:to:from:date:arc-authentication-results; bh=jFoWwlytO5THQ/6Me3PT7aC+r3IDIiB1y4X1y5hxp+Y=; b=zAhjTH4MqnVtd3kkDEnQLZvDTyfOR44nkADDhw8yCLAo0osbzUaF0KU4rpx0dQN9lt JanKXfjMW/p4y6EIMsWwgmYz2vYuoSHnYUPTl7DG8ibWH+7CNgiK9cfybzGfFb44cyyb g3SBuV+Nc8lfTi7dBMi/B1HUXBz7MkGaoMgpSZKVbQrAqP1ahYWjfSw2g+I97dUbbBdW wYWwW+a1sZLdc6/+8wbOj7KxiGCT9Yaj1kkbxoT/PZUcoobrbjIjvx2VyBxRjMdXqTHF +TjSlNiAES8BGGzoJm//n1fEBd8jJAxeQ0fvbC9arjClX1DeCGCBkFrHF5uVCwsstfvi b8Ig== ARC-Authentication-Results: i=1; mx.google.com; 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=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 9-v6si4561313ple.104.2018.05.29.08.17.47; Tue, 29 May 2018 08:18:01 -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; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S935640AbeE2PRW (ORCPT + 99 others); Tue, 29 May 2018 11:17:22 -0400 Received: from mga07.intel.com ([134.134.136.100]:17614 "EHLO mga07.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S935022AbeE2PRQ (ORCPT ); Tue, 29 May 2018 11:17:16 -0400 X-Amp-Result: UNSCANNABLE X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga105.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 29 May 2018 08:17:13 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,456,1520924400"; d="scan'208";a="53154547" Received: from theros.lm.intel.com (HELO linux.intel.com) ([10.232.112.164]) by FMSMGA003.fm.intel.com with ESMTP; 29 May 2018 08:17:12 -0700 Date: Tue, 29 May 2018 09:17:12 -0600 From: Ross Zwisler To: Arnd Bergmann Cc: Mikulas Patocka , Shaohua Li , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Matthew Wilcox , Ross Zwisler , linux-fsdevel@vger.kernel.org, Dan Williams , Heinz Mauelshagen , linux-raid@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] dm: writecache: add DAX dependency Message-ID: <20180529151712.GA2537@linux.intel.com> Mail-Followup-To: Ross Zwisler , Arnd Bergmann , Mikulas Patocka , Shaohua Li , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Matthew Wilcox , linux-fsdevel@vger.kernel.org, Dan Williams , Heinz Mauelshagen , linux-raid@vger.kernel.org, linux-kernel@vger.kernel.org References: <20180528153834.2268557-1-arnd@arndb.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180528153834.2268557-1-arnd@arndb.de> User-Agent: Mutt/1.9.2 (2017-12-15) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, May 28, 2018 at 05:38:10PM +0200, Arnd Bergmann wrote: > The new dm-writecache driver inconditionally uses the dax unconditionally > subsystem, leading to link errors in some configurations: > > drivers/md/dm-writecache.o: In function `writecache_ctr': > dm-writecache.c:(.text+0x1fdc): undefined reference to `dax_read_lock' > dm-writecache.c:(.text+0x2004): undefined reference to `dax_direct_access' > dm-writecache.c:(.text+0x21cc): undefined reference to `dax_read_unlock' > > It seems wrong to require DAX in order to build the writecache > driver, but that at least avoids randconfig build errors. > > Fixes: bb15b431d650 ("dm: add writecache target") > Signed-off-by: Arnd Bergmann > --- > drivers/md/Kconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/md/Kconfig b/drivers/md/Kconfig > index 852c7ebe2902..f8ecf2da1edf 100644 > --- a/drivers/md/Kconfig > +++ b/drivers/md/Kconfig > @@ -338,6 +338,7 @@ config DM_CACHE_SMQ > config DM_WRITECACHE > tristate "Writecache target" > depends on BLK_DEV_DM > + depends on DAX > ---help--- > The writecache target caches writes on persistent memory or SSD. > It is intended for databases or other programs that need extremely I think the right way to handle this is to instead wrap all the DAX code in dm-writecache in "#if IS_ENABLED(CONFIG_DAX_DRIVER)" blocks and provide stubs for the non-DAX case. This prevents you from having to pull in all the generic DAX code unnecessarily. In looking at the file I think this is just the persistent_memory_claim() function. I'll send out a patch once I've tested a bit. - Ross