From: Eric Sandeen Date: Wed, 6 Dec 2017 15:17:07 +0000 (-0600) Subject: xfs_io: add buf_lru_ref tag to inject table X-Git-Tag: v4.15.0-rc1~139 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=fc60b66d336158127aff0eb72d1858c13455d73d;p=thirdparty%2Fxfsprogs-dev.git xfs_io: add buf_lru_ref tag to inject table And catch it at build time if we get out of sync again. Signed-off-by: Eric Sandeen Reviewed-by: Darrick J. Wong Signed-off-by: Eric Sandeen --- diff --git a/include/xfs.h b/include/xfs.h index 9f0f11be4..a40ca0cc9 100644 --- a/include/xfs.h +++ b/include/xfs.h @@ -64,6 +64,10 @@ extern int xfs_assert_largefile[sizeof(off_t)-8]; #define __packed __attribute__((packed)) #endif +#ifndef BUILD_BUG_ON +#define BUILD_BUG_ON(condition) ((void)sizeof(char[1 - 2*!!(condition)])) +#endif + #include #include diff --git a/io/inject.c b/io/inject.c index 9d0cf62ba..fc3cf2563 100644 --- a/io/inject.c +++ b/io/inject.c @@ -30,7 +30,7 @@ error_tag(char *name) static struct { int tag; char *name; - } *e, eflags[XFS_ERRTAG_MAX + 1] = { + } *e, eflags[] = { { XFS_ERRTAG_NOERROR, "noerror" }, { XFS_ERRTAG_IFLUSH_1, "iflush1" }, { XFS_ERRTAG_IFLUSH_2, "iflush2" }, @@ -62,10 +62,14 @@ error_tag(char *name) { XFS_ERRTAG_DROP_WRITES, "drop_writes" }, { XFS_ERRTAG_LOG_BAD_CRC, "log_bad_crc" }, { XFS_ERRTAG_LOG_ITEM_PIN, "log_item_pin" }, + { XFS_ERRTAG_BUF_LRU_REF, "buf_lru_ref" }, { XFS_ERRTAG_MAX, NULL } }; int count; + /* If this fails make sure every tag is defined in the array above */ + BUILD_BUG_ON(sizeof(eflags) != (XFS_ERRTAG_MAX + 1) * sizeof(*e)); + /* Search for a name */ if (name) { for (e = eflags; e->name; e++)