Thread (27 messages) 27 messages, 3 authors, 2014-02-28

Re: [PATCH 5/6] xfstests: Define fallocate flags locally in fsx

From: Dave Chinner <david@fromorbit.com>
Date: 2014-02-26 06:07:33
Also in: linux-fsdevel, linux-xfs

On Tue, Feb 25, 2014 at 01:56:16PM -0800, Christoph Hellwig wrote:
On Wed, Feb 26, 2014 at 07:39:22AM +1100, Dave Chinner wrote:
quoted
quoted
index b3c30db..331257e 100644
--- a/ltp/fsx.c
+++ b/ltp/fsx.c
@@ -35,8 +35,13 @@
 #endif
 #ifdef FALLOCATE
 #include <linux/falloc.h>
+#ifndef FALLOC_FL_PUNCH_HOLE
+#define FALLOC_FL_PUNCH_HOLE    0x02 /* de-allocates range */
+#endif
+#ifndef FALLOC_FL_ZERO_RANGE
+#define FALLOC_FL_ZERO_RANGE    0x10 /* zeroes range */
+#endif
 #endif
This pattern is appearing all over the place in xfstests now.  I'd
suggest that this should really be handled by autoconf,
include/config.h and src/globals.h....
Can we handle this nicely using autoconf, especially in the case of O_
flags that might be different for different architectures?
I think so, because config.h is generated from config.h.in and
ends up looking like:

#define HAVE_SOME_FUNCTION 1

src/globals.h is controlled directly by us, and ends up looking
like:

#ifdef HAVE_SOME_FUNCTION
#include <header_for_some_function.h>
#endif

If we add all the defines that may be missing that same ifdef
section, and make sure that all code includes globals.h, then
all the code will have the "HAVE_SOME_FUNCTION" defines and the
appropriate header files and definitions included.
Either way having a single header for the various flags that might not
be present in the system headers sounds like a good plan.
*nod*

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help