* [PATCH 1/2] libnvdimm: add missing macros
@ 2016-07-08 16:29 Eric Engestrom
2016-07-08 17:25 ` kbuild test robot
2016-07-08 19:32 ` Dan Williams
0 siblings, 2 replies; 3+ messages in thread
From: Eric Engestrom @ 2016-07-08 16:29 UTC (permalink / raw)
To: linux-kernel; +Cc: Eric Engestrom, Eric Engestrom, linux-nvdimm
Signed-off-by: Eric Engestrom <eric.engestrom@imgtec.com>
---
This can't compile without these macros… Is this header really used by anyone?
Should it be removed, to avoid bit-rot?
---
include/uapi/linux/ndctl.h | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/include/uapi/linux/ndctl.h b/include/uapi/linux/ndctl.h
index 309915f..50ae5e7 100644
--- a/include/uapi/linux/ndctl.h
+++ b/include/uapi/linux/ndctl.h
@@ -15,6 +15,14 @@
#include <linux/types.h>
+#ifdef __GNUC__
+#define __packed __attribute__((packed))
+#else
+#define __packed
+#endif
+
+#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof(arr)[0])
+
struct nd_cmd_smart {
__u32 status;
__u8 data[128];
--
2.9.0
_______________________________________________
Linux-nvdimm mailing list
Linux-nvdimm@lists.01.org
https://lists.01.org/mailman/listinfo/linux-nvdimm
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH 1/2] libnvdimm: add missing macros
2016-07-08 16:29 [PATCH 1/2] libnvdimm: add missing macros Eric Engestrom
@ 2016-07-08 17:25 ` kbuild test robot
2016-07-08 19:32 ` Dan Williams
1 sibling, 0 replies; 3+ messages in thread
From: kbuild test robot @ 2016-07-08 17:25 UTC (permalink / raw)
To: Eric Engestrom; +Cc: linux-nvdimm, Eric Engestrom, linux-kernel, kbuild-all
Hi,
[auto build test WARNING on linux-nvdimm/libnvdimm-for-next]
[also build test WARNING on v4.7-rc6 next-20160708]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Eric-Engestrom/libnvdimm-add-missing-macros/20160709-003310
base: https://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm.git libnvdimm-for-next
config: x86_64-allmodconfig (attached as .config)
compiler: gcc-6 (Debian 6.1.1-1) 6.1.1 20160430
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64
All warnings (new ones prefixed by >>):
In file included from drivers/dax/../nvdimm/nd.h:20:0,
from drivers/dax/pmem.c:18:
>> include/uapi/linux/ndctl.h:24:0: warning: "ARRAY_SIZE" redefined
#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof(arr)[0])
In file included from include/linux/percpu-refcount.h:49:0,
from drivers/dax/pmem.c:13:
include/linux/kernel.h:54:0: note: this is the location of the previous definition
#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
vim +/ARRAY_SIZE +24 include/uapi/linux/ndctl.h
8 * This program is distributed in the hope it will be useful, but WITHOUT ANY
9 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
10 * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
11 * more details.
12 */
13 #ifndef __NDCTL_H__
14 #define __NDCTL_H__
15
16 #include <linux/types.h>
17
18 #ifdef __GNUC__
19 #define __packed __attribute__((packed))
20 #else
21 #define __packed
22 #endif
23
> 24 #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof(arr)[0])
25
26 struct nd_cmd_smart {
27 __u32 status;
28 __u8 data[128];
29 } __packed;
30
31 #define ND_SMART_HEALTH_VALID (1 << 0)
32 #define ND_SMART_TEMP_VALID (1 << 1)
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
_______________________________________________
Linux-nvdimm mailing list
Linux-nvdimm@lists.01.org
https://lists.01.org/mailman/listinfo/linux-nvdimm
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH 1/2] libnvdimm: add missing macros
2016-07-08 16:29 [PATCH 1/2] libnvdimm: add missing macros Eric Engestrom
2016-07-08 17:25 ` kbuild test robot
@ 2016-07-08 19:32 ` Dan Williams
1 sibling, 0 replies; 3+ messages in thread
From: Dan Williams @ 2016-07-08 19:32 UTC (permalink / raw)
To: Eric Engestrom
Cc: Eric Engestrom, linux-kernel@vger.kernel.org,
linux-nvdimm@lists.01.org
On Fri, Jul 8, 2016 at 9:29 AM, Eric Engestrom
<eric.engestrom@imgtec.com> wrote:
> Signed-off-by: Eric Engestrom <eric.engestrom@imgtec.com>
> ---
>
> This can't compile without these macros… Is this header really used by anyone?
> Should it be removed, to avoid bit-rot?
It's used by ndctl [1]. You can't use it directly in userspace, you
need the kernel's "make headers_install" to strip out the
kernel-specific macros.
[1]: https://github.com/pmem/ndctl
_______________________________________________
Linux-nvdimm mailing list
Linux-nvdimm@lists.01.org
https://lists.01.org/mailman/listinfo/linux-nvdimm
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2016-07-08 19:33 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-07-08 16:29 [PATCH 1/2] libnvdimm: add missing macros Eric Engestrom
2016-07-08 17:25 ` kbuild test robot
2016-07-08 19:32 ` Dan Williams
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox