xfs
[Top] [All Lists]

Re: [PATCH v2 1/4] xfsprogs: Prefix LIST_... macros to XFS_LIST_...

To: Dave Chinner <david@xxxxxxxxxxxxx>
Subject: Re: [PATCH v2 1/4] xfsprogs: Prefix LIST_... macros to XFS_LIST_...
From: Jan Tulak <jtulak@xxxxxxxxxx>
Date: Tue, 4 Aug 2015 04:38:42 -0400 (EDT)
Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>, xfs@xxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <20150803221629.GT3902@dastard>
References: <1437397018-12864-1-git-send-email-jtulak@xxxxxxxxxx> <1437397018-12864-2-git-send-email-jtulak@xxxxxxxxxx> <20150802234250.GT16638@dastard> <1142980605.1953560.1438594488229.JavaMail.zimbra@xxxxxxxxxx> <20150803221629.GT3902@dastard>
Thread-index: PdYjDanZ9+kyIyvpAZ5h9l8b2Z5Riw==
Thread-topic: xfsprogs: Prefix LIST_... macros to XFS_LIST_...

----- Original Message -----
> From: "Dave Chinner" <david@xxxxxxxxxxxxx>

> > /usr/include/sys/queue.h:417:9: note: previous definition is here
> > #define LIST_HEAD(name, type)                                           \
> >         ^
> > (and the same for LIST_HEAD_INIT)
> > 
> > sys/queue.h is not linked directly, but from many system libraries.
> > A quick grep on /usr/include/ shows 24 header files including the queue,
> > sys/mount.h one of them. And I didn't found a way how to avoid it.
> 
> Ok, so 4.4BSD introduced these years ago. Now it rings a bell, but I
> can't find the relevant thread I'm thinking of (google has become
> almost useless as a mailing list search engine in recent times).
> 
> I suspect that we are going to need an
> 
> #undef LIST_HEAD
> 
> somewhere in include/libxfs.h, libxfs/libxfs_priv.h and/or
> include/list.h just to ensure we don't use the system definitions
> (with a large comment explaining it).
> 

Great! Putting it in libxfs/list.h seems to be enough. This header should be
included anywhere where our lists are used, so I think there should be no
risk of using the system definition anymore. I'm making an updated patch.

Thanks for pointing on #undef. I'm sure I must have heard of it before, 
but as I never used it... :-)

Cheers,
Jan

-- 
Jan Tulak
jtulak@xxxxxxxxxx

<Prev in Thread] Current Thread [Next in Thread>