From: "Williams, Dan J" <dan.j.williams@intel.com> To: "dan.carpenter@oracle.com" <dan.carpenter@oracle.com> Cc: "toshi.kani@hp.com" <toshi.kani@hp.com>, "mingo@kernel.org" <mingo@kernel.org>, "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, "linux-nvdimm@ml01.01.org" <linux-nvdimm@ml01.01.org>, "tglx@linutronix.de" <tglx@linutronix.de>, "hch@lst.de" <hch@lst.de>, "axboe@kernel.dk" <axboe@kernel.dk>, "hpa@zytor.com" <hpa@zytor.com>, "mingo@redhat.com" <mingo@redhat.com>, "linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>, "ross.zwisler@linux.intel.com" <ross.zwisler@linux.intel.com>, "boaz@plexistor.com" <boaz@plexistor.com>, "linux-acpi@vger.kernel.org" <linux-acpi@vger.kernel.org> Subject: Re: [PATCH v2 17/17] arch, x86: pmem api for ensuring durability of persistent memory updates Date: Tue, 30 Jun 2015 16:23:21 +0000 [thread overview] Message-ID: <1435681397.18090.66.camel@intel.com> (raw) In-Reply-To: <20150630102137.GC12986@mwanda> On Tue, 2015-06-30 at 13:21 +0300, Dan Carpenter wrote: > On Thu, Jun 25, 2015 at 05:37:49AM -0400, Dan Williams wrote: > > diff --git a/include/linux/compiler.h b/include/linux/compiler.h > > index 867722591be2..9a528d945498 100644 > > --- a/include/linux/compiler.h > > +++ b/include/linux/compiler.h > > @@ -21,6 +21,7 @@ > > # define __rcu __attribute__((noderef, address_space(4))) > > On this side of the #ifdef CONFIG_SPARSE_RCU_POINTER statement then > __pmem isn't defined so it leads to a build error running a CHECKER on > today's linux-next. > > I would define __pmem away, but I don't understand why __pmem and > CONFIG_SPARSE_RCU_POINTER are related at all. Maybe it should be > outside the if statement? > Yes it should be outside the if... 8<---- Subject: sparse: fix misplaced __pmem definition From: Dan Williams <dan.j.williams@intel.com> Move the definition of __pmem outside of CONFIG_SPARSE_RCU_POINTER to fix: drivers/nvdimm/pmem.c:198:17: sparse: too many arguments for function __builtin_expect drivers/nvdimm/pmem.c:36:33: sparse: expected ; at end of declaration drivers/nvdimm/pmem.c:48:21: sparse: void declaration ...due to __pmem failing to be defined in some configurations when CONFIG_SPARSE_RCU_POINTER=y. Reported-by: kbuild test robot <fengguang.wu@intel.com> Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com> --- include/linux/compiler.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/linux/compiler.h b/include/linux/compiler.h index 26fc8bc77f85..d8fbd500330e 100644 --- a/include/linux/compiler.h +++ b/include/linux/compiler.h @@ -17,11 +17,11 @@ # define __release(x) __context__(x,-1) # define __cond_lock(x,c) ((c) ? ({ __acquire(x); 1; }) : 0) # define __percpu __attribute__((noderef, address_space(3))) +# define __pmem __attribute__((noderef, address_space(5))) #ifdef CONFIG_SPARSE_RCU_POINTER # define __rcu __attribute__((noderef, address_space(4))) #else # define __rcu -# define __pmem __attribute__((noderef, address_space(5))) #endif extern void __chk_user_ptr(const volatile void __user *); extern void __chk_io_ptr(const volatile void __iomem *);
WARNING: multiple messages have this Message-ID (diff)
From: "Williams, Dan J" <dan.j.williams@intel.com> To: "dan.carpenter@oracle.com" <dan.carpenter@oracle.com> Cc: "toshi.kani@hp.com" <toshi.kani@hp.com>, "mingo@kernel.org" <mingo@kernel.org>, "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, "linux-nvdimm@ml01.01.org" <linux-nvdimm@ml01.01.org>, "tglx@linutronix.de" <tglx@linutronix.de>, "hch@lst.de" <hch@lst.de>, "axboe@kernel.dk" <axboe@kernel.dk>, "hpa@zytor.com" <hpa@zytor.com>, "mingo@redhat.com" <mingo@redhat.com>, "linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>, "ross.zwisler@linux.intel.com" <ross.zwisler@linux.intel.com>, "boaz@plexistor.com" <boaz@plexistor.com>, "linux-acpi@vger.kernel.org" <linux-acpi@vger.kernel.org> Subject: Re: [PATCH v2 17/17] arch, x86: pmem api for ensuring durability of persistent memory updates Date: Tue, 30 Jun 2015 16:23:21 +0000 [thread overview] Message-ID: <1435681397.18090.66.camel@intel.com> (raw) In-Reply-To: <20150630102137.GC12986@mwanda> [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1: Type: text/plain; charset="utf-8", Size: 2383 bytes --] On Tue, 2015-06-30 at 13:21 +0300, Dan Carpenter wrote: > On Thu, Jun 25, 2015 at 05:37:49AM -0400, Dan Williams wrote: > > diff --git a/include/linux/compiler.h b/include/linux/compiler.h > > index 867722591be2..9a528d945498 100644 > > --- a/include/linux/compiler.h > > +++ b/include/linux/compiler.h > > @@ -21,6 +21,7 @@ > > # define __rcu __attribute__((noderef, address_space(4))) > > On this side of the #ifdef CONFIG_SPARSE_RCU_POINTER statement then > __pmem isn't defined so it leads to a build error running a CHECKER on > today's linux-next. > > I would define __pmem away, but I don't understand why __pmem and > CONFIG_SPARSE_RCU_POINTER are related at all. Maybe it should be > outside the if statement? > Yes it should be outside the if... 8<---- Subject: sparse: fix misplaced __pmem definition From: Dan Williams <dan.j.williams@intel.com> Move the definition of __pmem outside of CONFIG_SPARSE_RCU_POINTER to fix: drivers/nvdimm/pmem.c:198:17: sparse: too many arguments for function __builtin_expect drivers/nvdimm/pmem.c:36:33: sparse: expected ; at end of declaration drivers/nvdimm/pmem.c:48:21: sparse: void declaration ...due to __pmem failing to be defined in some configurations when CONFIG_SPARSE_RCU_POINTER=y. Reported-by: kbuild test robot <fengguang.wu@intel.com> Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com> --- include/linux/compiler.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/linux/compiler.h b/include/linux/compiler.h index 26fc8bc77f85..d8fbd500330e 100644 --- a/include/linux/compiler.h +++ b/include/linux/compiler.h @@ -17,11 +17,11 @@ # define __release(x) __context__(x,-1) # define __cond_lock(x,c) ((c) ? ({ __acquire(x); 1; }) : 0) # define __percpu __attribute__((noderef, address_space(3))) +# define __pmem __attribute__((noderef, address_space(5))) #ifdef CONFIG_SPARSE_RCU_POINTER # define __rcu __attribute__((noderef, address_space(4))) #else # define __rcu -# define __pmem __attribute__((noderef, address_space(5))) #endif extern void __chk_user_ptr(const volatile void __user *); extern void __chk_io_ptr(const volatile void __iomem *); ÿôèº{.nÇ+·®+%Ëÿ±éݶ\x17¥wÿº{.nÇ+·¥{±þG«éÿ{ayº\x1dÊÚë,j\a¢f£¢·hïêÿêçz_è®\x03(éÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?¨èÚ&£ø§~á¶iOæ¬z·vØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?I¥
next prev parent reply other threads:[~2015-06-30 16:23 UTC|newest] Thread overview: 70+ messages / expand[flat|nested] mbox.gz Atom feed top 2015-06-25 9:36 [PATCH v2 00/17] libnvdimm: ->rw_bytes(), BLK, BTT, PMEM api, and unit tests Dan Williams 2015-06-25 9:36 ` Dan Williams 2015-06-25 9:36 ` [PATCH v2 01/17] libnvdimm: infrastructure for btt devices Dan Williams 2015-06-25 9:36 ` Dan Williams 2015-06-25 9:36 ` [PATCH v2 02/17] nd_btt: atomic sector updates Dan Williams 2015-06-25 9:36 ` Dan Williams 2015-06-25 9:36 ` [PATCH v2 03/17] libnvdimm, nfit, nd_blk: driver for BLK-mode access persistent memory Dan Williams 2015-06-25 9:36 ` Dan Williams 2015-06-25 9:36 ` [PATCH v2 04/17] tools/testing/nvdimm: libnvdimm unit test infrastructure Dan Williams 2015-06-25 9:36 ` Dan Williams 2015-06-25 9:36 ` [PATCH v2 05/17] libnvdimm: Non-Volatile Devices Dan Williams 2015-06-25 9:36 ` Dan Williams 2015-06-25 9:36 ` Dan Williams 2015-06-25 9:36 ` [PATCH v2 06/17] fs/block_dev.c: skip rw_page if bdev has integrity Dan Williams 2015-06-25 9:36 ` Dan Williams 2015-06-25 9:36 ` [PATCH v2 07/17] libnvdimm, btt: add support for blk integrity Dan Williams 2015-06-25 9:36 ` Dan Williams 2015-06-25 9:37 ` [PATCH v2 08/17] libnvdimm, blk: " Dan Williams 2015-06-25 9:37 ` Dan Williams 2015-06-25 9:37 ` [PATCH v2 09/17] libnvdimm, pmem: fix up max_hw_sectors Dan Williams 2015-06-25 9:37 ` Dan Williams 2015-06-25 9:37 ` [PATCH v2 10/17] pmem: make_request cleanups Dan Williams 2015-06-25 9:37 ` Dan Williams 2015-06-25 9:37 ` [PATCH v2 11/17] libnvdimm: enable iostat Dan Williams 2015-06-25 9:37 ` Dan Williams 2015-06-25 9:37 ` [PATCH v2 12/17] pmem: flag pmem block devices as non-rotational Dan Williams 2015-06-25 9:37 ` Dan Williams 2015-06-25 9:37 ` [PATCH v2 13/17] libnvdimm, nfit: handle unarmed dimms, mark namespaces read-only Dan Williams 2015-06-25 9:37 ` Dan Williams 2015-06-25 9:37 ` [PATCH v2 14/17] acpi: Add acpi_map_pxm_to_online_node() Dan Williams 2015-06-25 9:37 ` Dan Williams 2015-06-25 9:37 ` [PATCH v2 15/17] libnvdimm: Set numa_node to NVDIMM devices Dan Williams 2015-06-25 9:37 ` Dan Williams 2015-06-25 17:45 ` Toshi Kani 2015-06-25 17:45 ` Toshi Kani 2015-06-25 17:47 ` Dan Williams 2015-06-25 17:47 ` Dan Williams 2015-06-25 18:34 ` Williams, Dan J 2015-06-25 18:34 ` Williams, Dan J 2015-06-25 21:31 ` Dan Williams 2015-06-25 21:31 ` Dan Williams 2015-06-25 21:51 ` Toshi Kani 2015-06-25 21:51 ` Toshi Kani 2015-06-25 22:00 ` Dan Williams 2015-06-25 22:00 ` Dan Williams 2015-06-25 22:11 ` Toshi Kani 2015-06-25 22:11 ` Toshi Kani 2015-06-25 22:34 ` Dan Williams 2015-06-25 22:34 ` Dan Williams 2015-06-25 22:55 ` Toshi Kani 2015-06-25 22:55 ` Toshi Kani 2015-06-25 23:42 ` Williams, Dan J 2015-06-25 23:42 ` Williams, Dan J 2015-06-26 0:55 ` Toshi Kani 2015-06-26 0:55 ` Toshi Kani 2015-06-26 1:08 ` Dan Williams 2015-06-26 1:08 ` Dan Williams 2015-06-26 1:21 ` Toshi Kani 2015-06-26 1:21 ` Toshi Kani 2015-06-25 9:37 ` [PATCH v2 16/17] libnvdimm: Add sysfs " Dan Williams 2015-06-25 9:37 ` Dan Williams 2015-06-26 2:21 ` Toshi Kani 2015-06-26 2:21 ` Toshi Kani 2015-06-26 15:26 ` Dan Williams 2015-06-26 15:26 ` Dan Williams 2015-06-25 9:37 ` [PATCH v2 17/17] arch, x86: pmem api for ensuring durability of persistent memory updates Dan Williams 2015-06-25 9:37 ` Dan Williams 2015-06-30 10:21 ` Dan Carpenter 2015-06-30 16:23 ` Williams, Dan J [this message] 2015-06-30 16:23 ` Williams, Dan J
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1435681397.18090.66.camel@intel.com \ --to=dan.j.williams@intel.com \ --cc=axboe@kernel.dk \ --cc=boaz@plexistor.com \ --cc=dan.carpenter@oracle.com \ --cc=hch@lst.de \ --cc=hpa@zytor.com \ --cc=linux-acpi@vger.kernel.org \ --cc=linux-fsdevel@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-nvdimm@ml01.01.org \ --cc=mingo@kernel.org \ --cc=mingo@redhat.com \ --cc=ross.zwisler@linux.intel.com \ --cc=tglx@linutronix.de \ --cc=toshi.kani@hp.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.