Bindgen makes the LOG_* constants unsigned, even if they are defined as (1 << 15): pub const LOG_TRACE: u32 = 32768; Make them unsigned in C as well through the BIT() macro, and also change the type of the variable that they are used with. Reviewed-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org> Reviewed-by: Zhao Liu <zhao1.liu@intel.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Message-ID: <20250929154938.594389-14-pbonzini@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
35 lines
1.1 KiB
C
35 lines
1.1 KiB
C
/* log-for-trace.h: logging basics required by the trace.h generated
|
|
* by the log trace backend.
|
|
*
|
|
* This should not be included directly by any .c file: if you
|
|
* need to use the logging functions include "qemu/log.h".
|
|
*
|
|
* The purpose of splitting these parts out into their own header
|
|
* is to catch the easy mistake where a .c file includes trace.h
|
|
* but forgets to include qemu/log.h. Without this split, that
|
|
* would result in the .c file compiling fine when the default
|
|
* trace backend is in use but failing to compile with any other
|
|
* backend.
|
|
*
|
|
* This code is licensed under the GNU General Public License,
|
|
* version 2 or (at your option) any later version.
|
|
*/
|
|
|
|
#ifndef QEMU_LOG_FOR_TRACE_H
|
|
#define QEMU_LOG_FOR_TRACE_H
|
|
|
|
/* Private global variable, don't use */
|
|
extern unsigned qemu_loglevel;
|
|
|
|
#define LOG_TRACE (1u << 15)
|
|
|
|
/* Returns true if a bit is set in the current loglevel mask */
|
|
static inline bool qemu_loglevel_mask(int mask)
|
|
{
|
|
return (qemu_loglevel & mask) != 0;
|
|
}
|
|
|
|
/* main logging function */
|
|
void G_GNUC_PRINTF(1, 2) qemu_log(const char *fmt, ...);
|
|
|
|
#endif
|