X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=debug.h;h=1a2b79ab6d24b4a385ed1720f718dc29a345cf3b;hb=890abcad90e450484f89733d1bc1ad8a30016311;hp=b11a9012eeb2b169f6d1c328603581e53aa5e227;hpb=a3d741fa3bc3120d5b62a56826a97524daa32803;p=fio.git diff --git a/debug.h b/debug.h index b11a9012..1a2b79ab 100644 --- a/debug.h +++ b/debug.h @@ -13,13 +13,19 @@ enum { FD_VERIFY, FD_RANDOM, FD_PARSE, + FD_DISKUTIL, + FD_JOB, + FD_MUTEX, FD_DEBUG_MAX, }; +extern unsigned int fio_debug_jobno, *fio_debug_jobp; + #ifdef FIO_INC_DEBUG struct debug_level { const char *name; unsigned long shift; + unsigned int jobno; }; extern struct debug_level debug_levels[]; @@ -27,10 +33,15 @@ extern unsigned long fio_debug; #define dprint(type, str, args...) \ do { \ + pid_t pid = getpid(); \ assert(type < FD_DEBUG_MAX); \ if ((((1 << type)) & fio_debug) == 0) \ break; \ + if (fio_debug_jobp && *fio_debug_jobp != -1U \ + && pid != *fio_debug_jobp) \ + break; \ log_info("%-8s ", debug_levels[(type)].name); \ + log_info("%-5u ", (int) pid); \ log_info(str, ##args); \ } while (0)