xfs: kill support/debug.[ch]

The remaining functionality in debug.[ch] is effectively just assert
handling, conditional debug definitions and hex dumping. The hex
dumping and assert function can be moved into the new printk module,
while the rest can be moved into top-level header files. This allows
fs/xfs/support/debug.[ch] to be completely removed from the
codebase.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Alex Elder <aelder@sgi.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
This commit is contained in:
Dave Chinner
2011-03-07 10:09:35 +11:00
committed by Dave Chinner
parent 0b932cccbd
commit 9130090b5f
7 changed files with 40 additions and 86 deletions

View File

@@ -39,7 +39,6 @@
#include <mrlock.h>
#include <time.h>
#include <support/debug.h>
#include <support/uuid.h>
#include <linux/semaphore.h>
@@ -281,4 +280,25 @@ static inline __uint64_t howmany_64(__uint64_t x, __uint32_t y)
#define __arch_pack
#endif
#define ASSERT_ALWAYS(expr) \
(unlikely(expr) ? (void)0 : assfail(#expr, __FILE__, __LINE__))
#ifndef DEBUG
#define ASSERT(expr) ((void)0)
#ifndef STATIC
# define STATIC static noinline
#endif
#else /* DEBUG */
#define ASSERT(expr) \
(unlikely(expr) ? (void)0 : assfail(#expr, __FILE__, __LINE__))
#ifndef STATIC
# define STATIC noinline
#endif
#endif /* DEBUG */
#endif /* __XFS_LINUX__ */

View File

@@ -117,3 +117,17 @@ xfs_alert_tag(
return r;
}
void
assfail(char *expr, char *file, int line)
{
xfs_emerg(NULL, "Assertion failed: %s, file: %s, line: %d",
expr, file, line);
BUG();
}
void
xfs_hex_dump(void *p, int length)
{
print_hex_dump(KERN_ALERT, "", DUMP_PREFIX_ADDRESS, 16, 1, p, length, 1);
}

View File

@@ -31,4 +31,8 @@ extern int xfs_debug(const struct xfs_mount *mp, const char *fmt, ...)
#define xfs_debug(mp, fmt, ...) (0)
#endif
extern void assfail(char *expr, char *f, int l);
extern void xfs_hex_dump(void *p, int length);
#endif /* __XFS_MESSAGE_H */