[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 13/18] nvdimm: build namespace config data
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] [PATCH v2 13/18] nvdimm: build namespace config data |
Date: |
Fri, 28 Aug 2015 12:59:55 +0100 |
User-agent: |
Mutt/1.5.23 (2014-03-12) |
On Wed, Aug 26, 2015 at 06:42:01PM +0800, Xiao Guangrong wrote:
>
>
> On 08/26/2015 12:16 AM, Stefan Hajnoczi wrote:
> >On Fri, Aug 14, 2015 at 10:52:06PM +0800, Xiao Guangrong wrote:
> >>+#ifdef NVDIMM_DEBUG
> >>+#define nvdebug(fmt, ...) fprintf(stderr, "nvdimm: " fmt, ## __VA_ARGS__)
> >>+#else
> >>+#define nvdebug(...)
> >>+#endif
> >
> >The following allows the compiler to check format strings and syntax
> >check the argument expressions:
> >
> >#define NVDIMM_DEBUG 0 /* set to 1 for debug output */
> >#define nvdebug(fmt, ...) \
> > if (NVDIMM_DEBUG) { \
> > fprintf(stderr, "nvdimm: " fmt, ## __VA_ARGS__); \
> > }
> >
> >This approach avoids bitrot (e.g. debug format string arguments have
> >become outdated).
> >
>
> Really good tips, thanks for your sharing.
I forgot the do { ... } while (0) in the macro to make nvdebug("hello
world"); work like a normal C statement.
- Re: [Qemu-devel] [PATCH v2 10/18] nvdimm: init the address region used by DSM method, (continued)
[Qemu-devel] [PATCH v2 13/18] nvdimm: build namespace config data, Xiao Guangrong, 2015/08/14
[Qemu-devel] [PATCH v2 17/18] nvdimm: support NFIT_CMD_SET_CONFIG_DATA, Xiao Guangrong, 2015/08/14
[Qemu-devel] [PATCH v2 16/18] nvdimm: support NFIT_CMD_GET_CONFIG_DATA, Xiao Guangrong, 2015/08/14
[Qemu-devel] [PATCH v2 18/18] nvdimm: add maintain info, Xiao Guangrong, 2015/08/14
[Qemu-devel] [PATCH v2 15/18] nvdimm: support NFIT_CMD_GET_CONFIG_SIZE function, Xiao Guangrong, 2015/08/14
Re: [Qemu-devel] [PATCH v2 00/18] implement vNVDIMM, Stefan Hajnoczi, 2015/08/25