cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

jfs_debug.h (2727B)


      1/* SPDX-License-Identifier: GPL-2.0-or-later */
      2/*
      3 *   Copyright (C) International Business Machines Corp., 2000-2002
      4 *   Portions Copyright (C) Christoph Hellwig, 2001-2002
      5 */
      6#ifndef _H_JFS_DEBUG
      7#define _H_JFS_DEBUG
      8
      9/*
     10 *	jfs_debug.h
     11 *
     12 * global debug message, data structure/macro definitions
     13 * under control of CONFIG_JFS_DEBUG, CONFIG_JFS_STATISTICS;
     14 */
     15
     16/*
     17 * Create /proc/fs/jfs if procfs is enabled andeither
     18 * CONFIG_JFS_DEBUG or CONFIG_JFS_STATISTICS is defined
     19 */
     20#if defined(CONFIG_PROC_FS) && (defined(CONFIG_JFS_DEBUG) || defined(CONFIG_JFS_STATISTICS))
     21#define PROC_FS_JFS
     22extern void jfs_proc_init(void);
     23extern void jfs_proc_clean(void);
     24#endif
     25
     26/*
     27 *	assert with traditional printf/panic
     28 */
     29#define assert(p) do {	\
     30	if (!(p)) {	\
     31		printk(KERN_CRIT "BUG at %s:%d assert(%s)\n",	\
     32		       __FILE__, __LINE__, #p);			\
     33		BUG();	\
     34	}		\
     35} while (0)
     36
     37/*
     38 *	debug ON
     39 *	--------
     40 */
     41#ifdef CONFIG_JFS_DEBUG
     42#define ASSERT(p) assert(p)
     43
     44/* printk verbosity */
     45#define JFS_LOGLEVEL_ERR 1
     46#define JFS_LOGLEVEL_WARN 2
     47#define JFS_LOGLEVEL_DEBUG 3
     48#define JFS_LOGLEVEL_INFO 4
     49
     50extern int jfsloglevel;
     51
     52int jfs_txanchor_proc_show(struct seq_file *m, void *v);
     53
     54/* information message: e.g., configuration, major event */
     55#define jfs_info(fmt, arg...) do {			\
     56	if (jfsloglevel >= JFS_LOGLEVEL_INFO)		\
     57		printk(KERN_INFO fmt "\n", ## arg);	\
     58} while (0)
     59
     60/* debug message: ad hoc */
     61#define jfs_debug(fmt, arg...) do {			\
     62	if (jfsloglevel >= JFS_LOGLEVEL_DEBUG)		\
     63		printk(KERN_DEBUG fmt "\n", ## arg);	\
     64} while (0)
     65
     66/* warn message: */
     67#define jfs_warn(fmt, arg...) do {			\
     68	if (jfsloglevel >= JFS_LOGLEVEL_WARN)		\
     69		printk(KERN_WARNING fmt "\n", ## arg);	\
     70} while (0)
     71
     72/* error event message: e.g., i/o error */
     73#define jfs_err(fmt, arg...) do {			\
     74	if (jfsloglevel >= JFS_LOGLEVEL_ERR)		\
     75		printk(KERN_ERR fmt "\n", ## arg);	\
     76} while (0)
     77
     78/*
     79 *	debug OFF
     80 *	---------
     81 */
     82#else				/* CONFIG_JFS_DEBUG */
     83#define ASSERT(p) do {} while (0)
     84#define jfs_info(fmt, arg...) do {} while (0)
     85#define jfs_debug(fmt, arg...) do {} while (0)
     86#define jfs_warn(fmt, arg...) do {} while (0)
     87#define jfs_err(fmt, arg...) do {} while (0)
     88#endif				/* CONFIG_JFS_DEBUG */
     89
     90/*
     91 *	statistics
     92 *	----------
     93 */
     94#ifdef	CONFIG_JFS_STATISTICS
     95int jfs_lmstats_proc_show(struct seq_file *m, void *v);
     96int jfs_txstats_proc_show(struct seq_file *m, void *v);
     97int jfs_mpstat_proc_show(struct seq_file *m, void *v);
     98int jfs_xtstat_proc_show(struct seq_file *m, void *v);
     99
    100#define	INCREMENT(x)		((x)++)
    101#define	DECREMENT(x)		((x)--)
    102#define	HIGHWATERMARK(x,y)	((x) = max((x), (y)))
    103#else
    104#define	INCREMENT(x)
    105#define	DECREMENT(x)
    106#define	HIGHWATERMARK(x,y)
    107#endif				/* CONFIG_JFS_STATISTICS */
    108
    109#endif				/* _H_JFS_DEBUG */