Mock Version: 3.3 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --target x86_64 --nodeps /builddir/build/SPECS/ubdsrv.spec'], chrootPath='/var/lib/mock/fedora-rawhide-x86_64-1667655242.840077/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=0uid=1000gid=135user='mockbuild'nspawn_args=['--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.v6vv418e:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11']unshare_net=TrueprintOutput=True) Using nspawn with args ['--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.v6vv418e:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11'] Executing command: ['/usr/bin/systemd-nspawn', '-q', '-M', 'fb2df47fd1b649f0b68489c68c5c6c7c', '-D', '/var/lib/mock/fedora-rawhide-x86_64-1667655242.840077/root', '-a', '-u', 'mockbuild', '--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.v6vv418e:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11', '--console=pipe', '--setenv=TERM=vt100', '--setenv=SHELL=/bin/bash', '--setenv=HOME=/builddir', '--setenv=HOSTNAME=mock', '--setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin', '--setenv=PROMPT_COMMAND=printf "\\033]0;\\007"', '--setenv=PS1= \\s-\\v\\$ ', '--setenv=LANG=C.UTF-8', '--resolv-conf=off', 'bash', '--login', '-c', '/usr/bin/rpmbuild -bs --target x86_64 --nodeps /builddir/build/SPECS/ubdsrv.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8', 'SYSTEMD_NSPAWN_TMPFS_TMP': '0', 'SYSTEMD_SECCOMP': '0'} and shell False Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1667433600 Wrote: /builddir/build/SRPMS/ubdsrv-1.0-2.20221105gitca8baff.fc38.src.rpm Child return code was: 0 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bb --target x86_64 --nodeps /builddir/build/SPECS/ubdsrv.spec'], chrootPath='/var/lib/mock/fedora-rawhide-x86_64-1667655242.840077/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=0uid=1000gid=135user='mockbuild'nspawn_args=['--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.v6vv418e:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11']unshare_net=TrueprintOutput=True) Using nspawn with args ['--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.v6vv418e:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11'] Executing command: ['/usr/bin/systemd-nspawn', '-q', '-M', 'f748ccadc6c24e098009afb82f2ae243', '-D', '/var/lib/mock/fedora-rawhide-x86_64-1667655242.840077/root', '-a', '-u', 'mockbuild', '--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.v6vv418e:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11', '--console=pipe', '--setenv=TERM=vt100', '--setenv=SHELL=/bin/bash', '--setenv=HOME=/builddir', '--setenv=HOSTNAME=mock', '--setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin', '--setenv=PROMPT_COMMAND=printf "\\033]0;\\007"', '--setenv=PS1= \\s-\\v\\$ ', '--setenv=LANG=C.UTF-8', '--resolv-conf=off', 'bash', '--login', '-c', '/usr/bin/rpmbuild -bb --target x86_64 --nodeps /builddir/build/SPECS/ubdsrv.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8', 'SYSTEMD_NSPAWN_TMPFS_TMP': '0', 'SYSTEMD_SECCOMP': '0'} and shell False Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1667433600 Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.glPJYP + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + rm -rf ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262 + /usr/lib/rpm/rpmuncompress -x /builddir/build/SOURCES/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262.tar.gz + STATUS=0 + '[' 0 -ne 0 ']' + cd ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + RPM_EC=0 ++ jobs -p + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.2Cwayv + umask 022 + cd /builddir/build/BUILD + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262 + autoreconf -f -i libtoolize: putting auxiliary files in '.'. libtoolize: copying file './ltmain.sh' libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'. libtoolize: copying file 'm4/libtool.m4' libtoolize: copying file 'm4/ltoptions.m4' libtoolize: copying file 'm4/ltsugar.m4' libtoolize: copying file 'm4/ltversion.m4' libtoolize: copying file 'm4/lt~obsolete.m4' configure.ac:10: installing './compile' configure.ac:15: installing './config.guess' configure.ac:15: installing './config.sub' configure.ac:14: installing './install-sh' configure.ac:14: installing './missing' Makefile.am:17: warning: source file 'qcow2/tgt_qcow2.cpp' is in a subdirectory, Makefile.am:17: but option 'subdir-objects' is disabled automake: warning: possible forward-incompatibility. automake: At least one source file is in a subdirectory, but the 'subdir-objects' automake: automake option hasn't been enabled. For now, the corresponding output automake: object file(s) will be placed in the top-level directory. However, this automake: behavior may change in a future Automake major version, with object automake: files being placed in the same subdirectory as the corresponding sources. automake: You are advised to start using 'subdir-objects' option throughout your automake: project, to avoid future incompatibilities. Makefile.am:17: warning: source file 'qcow2/qcow2.cpp' is in a subdirectory, Makefile.am:17: but option 'subdir-objects' is disabled Makefile.am:17: warning: source file 'qcow2/qcow2_meta.cpp' is in a subdirectory, Makefile.am:17: but option 'subdir-objects' is disabled Makefile.am:17: warning: source file 'qcow2/utils.cpp' is in a subdirectory, Makefile.am:17: but option 'subdir-objects' is disabled Makefile.am:17: warning: source file 'qcow2/qcow2_flush_meta.cpp' is in a subdirectory, Makefile.am:17: but option 'subdir-objects' is disabled Makefile.am: installing './depcomp' + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + '[' '-flto=auto -ffat-lto-objectsx' '!=' x ']' ++ find . -type f -name configure -print + for file in $(find . -type f -name configure -print) + /usr/bin/sed -r --in-place=.backup 's/^char \(\*f\) \(\) = /__attribute__ ((used)) char (*f) () = /g' ./configure + diff -u ./configure.backup ./configure + mv ./configure.backup ./configure + /usr/bin/sed -r --in-place=.backup 's/^char \(\*f\) \(\);/__attribute__ ((used)) char (*f) ();/g' ./configure + diff -u ./configure.backup ./configure + mv ./configure.backup ./configure + /usr/bin/sed -r --in-place=.backup 's/^char \$2 \(\);/__attribute__ ((used)) char \$2 ();/g' ./configure + diff -u ./configure.backup ./configure --- ./configure.backup 2022-11-05 13:35:28.251387372 +0000 +++ ./configure 2022-11-05 13:35:28.995389963 +0000 @@ -1737,7 +1737,7 @@ #ifdef __cplusplus extern "C" #endif -char $2 (); +__attribute__ ((used)) char $2 (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ + /usr/bin/sed --in-place=.backup '1{$!N;$!N};$!N;s/int x = 1;\nint y = 0;\nint z;\nint nan;/volatile int x = 1; volatile int y = 0; volatile int z, nan;/;P;D' ./configure + diff -u ./configure.backup ./configure + mv ./configure.backup ./configure + /usr/bin/sed --in-place=.backup 's#^lt_cv_sys_global_symbol_to_cdecl=.*#lt_cv_sys_global_symbol_to_cdecl="sed -n -e '\''s/^T .* \\(.*\\)$/extern int \\1();/p'\'' -e '\''s/^$symcode* .* \\(.*\\)$/extern char \\1;/p'\''"#' ./configure + diff -u ./configure.backup ./configure --- ./configure.backup 2022-11-05 13:35:28.995389963 +0000 +++ ./configure 2022-11-05 13:35:29.013390026 +0000 @@ -7488,7 +7488,7 @@ # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. -lt_cv_sys_global_symbol_to_cdecl="$SED -n"\ +lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" $lt_cdecl_hook\ " -e 's/^T .* \(.*\)$/extern int \1();/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" @@ -19994,7 +19994,7 @@ compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`' GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`' -lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`' + '[' 1 = 1 ']' +++ dirname ./configure ++ find . -name config.guess -o -name config.sub + for i in $(find $(dirname ./configure) -name config.guess -o -name config.sub) ++ basename ./config.sub + '[' -f /usr/lib/rpm/redhat/config.sub ']' + /usr/bin/rm -f ./config.sub ++ basename ./config.sub + /usr/bin/cp -fv /usr/lib/rpm/redhat/config.sub ./config.sub '/usr/lib/rpm/redhat/config.sub' -> './config.sub' + for i in $(find $(dirname ./configure) -name config.guess -o -name config.sub) ++ basename ./config.guess + '[' -f /usr/lib/rpm/redhat/config.guess ']' + /usr/bin/rm -f ./config.guess ++ basename ./config.guess + /usr/bin/cp -fv /usr/lib/rpm/redhat/config.guess ./config.guess '/usr/lib/rpm/redhat/config.guess' -> './config.guess' + '[' 1 = 1 ']' + '[' x '!=' 'x-Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' ']' ++ find . -name ltmain.sh + for i in $(find . -name ltmain.sh) + /usr/bin/sed -i.backup -e 's~compiler_flags=$~compiler_flags="-Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld"~' ./ltmain.sh ++ grep -q runstatedir=DIR ./configure ++ echo --runstatedir=/run + ./configure --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu --program-prefix= --disable-dependency-tracking --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --runstatedir=/run --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --disable-static checking for x86_64-redhat-linux-gnu-gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether the compiler supports GNU C... yes checking whether gcc accepts -g... yes checking for gcc option to enable C11 features... none needed checking whether gcc understands -c and -o together... yes checking for stdio.h... yes checking for stdlib.h... yes checking for string.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for strings.h... yes checking for sys/stat.h... yes checking for sys/types.h... yes checking for unistd.h... yes checking for wchar.h... yes checking for minix/config.h... no checking whether it is safe to define __EXTENSIONS__... yes checking whether _XOPEN_SOURCE should be defined... no checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a race-free mkdir -p... /usr/bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether make supports the include directive... yes (GNU style) checking whether make supports nested variables... yes checking dependency style of gcc... none checking build system type... x86_64-redhat-linux-gnu checking host system type... x86_64-redhat-linux-gnu checking how to print strings... printf checking for a sed that does not truncate output... /usr/bin/sed checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for fgrep... /usr/bin/grep -F checking for ld used by gcc... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B checking the name lister (/usr/bin/nm -B) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1572864 checking how to convert x86_64-redhat-linux-gnu file names to x86_64-redhat-linux-gnu format... func_convert_file_noop checking how to convert x86_64-redhat-linux-gnu file names to toolchain format... func_convert_file_noop checking for /usr/bin/ld option to reload object files... -r checking for x86_64-redhat-linux-gnu-file... no checking for file... file checking for x86_64-redhat-linux-gnu-objdump... no checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for x86_64-redhat-linux-gnu-dlltool... no checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for x86_64-redhat-linux-gnu-ar... no checking for ar... ar checking for archiver @FILE support... @ checking for x86_64-redhat-linux-gnu-strip... no checking for strip... strip checking for x86_64-redhat-linux-gnu-ranlib... no checking for ranlib... ranlib checking command to parse /usr/bin/nm -B output from gcc object... ./configure: line 7494: -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p': No such file or directory ok checking for sysroot... no checking for a working dd... /usr/bin/dd checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1 checking for x86_64-redhat-linux-gnu-mt... no checking for mt... no checking if : is a manifest tool... no checking for dlfcn.h... yes checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... yes checking if gcc static flag -static works... no checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... no checking for a sed that does not truncate output... (cached) /usr/bin/sed checking for x86_64-redhat-linux-gnu-gcc... (cached) gcc checking whether the compiler supports GNU C... (cached) yes checking whether gcc accepts -g... (cached) yes checking for gcc option to enable C11 features... (cached) none needed checking whether gcc understands -c and -o together... (cached) yes checking how to run the C preprocessor... gcc -E checking whether gcc is Clang... no checking whether pthreads work with "-pthread" and "-lpthread"... yes checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE checking whether more special flags are required for pthreads... no checking for PTHREAD_PRIO_INHERIT... yes checking whether the compiler supports GNU C++... yes checking whether g++ accepts -g... yes checking for g++ option to enable C++11 features... none needed checking dependency style of g++... none checking how to run the C++ preprocessor... g++ -E checking for ld used by g++... /usr/bin/ld -m elf_x86_64 checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking for g++ option to produce PIC... -fPIC -DPIC checking if g++ PIC flag -fPIC -DPIC works... yes checking if g++ static flag -static works... no checking if g++ supports -c -o file.o... yes checking if g++ supports -c -o file.o... (cached) yes checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking dynamic linker characteristics... (cached) GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking for x86_64-redhat-linux-gnu-pkg-config... /usr/bin/x86_64-redhat-linux-gnu-pkg-config checking pkg-config is at least version 0.9.0... yes checking for LIBURING... yes checking that generated files are newer than configure... done configure: creating ./config.status config.status: creating Makefile config.status: creating include/Makefile config.status: creating lib/Makefile config.status: creating tests/Makefile config.status: creating ublksrv.pc config.status: creating config.h config.status: executing depfiles commands config.status: executing libtool commands + make V=1 -j2 make all-recursive make[1]: Entering directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262' Making all in include make[2]: Entering directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/include' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/include' Making all in lib make[2]: Entering directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/lib' /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -I../include -pthread -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c -o libublksrv_la-ublksrv_cmd.lo `test -f 'ublksrv_cmd.c' || echo './'`ublksrv_cmd.c /bin/sh ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -I../include -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c -o libublksrv_la-ublksrv_json.lo `test -f 'ublksrv_json.cpp' || echo './'`ublksrv_json.cpp libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I../include -pthread -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c ublksrv_cmd.c -fPIC -DPIC -o .libs/libublksrv_la-ublksrv_cmd.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -I../include -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c ublksrv_json.cpp -fPIC -DPIC -o .libs/libublksrv_la-ublksrv_json.o /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -I../include -pthread -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c -o libublksrv_la-ublksrv.lo `test -f 'ublksrv.c' || echo './'`ublksrv.c libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I../include -pthread -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c ublksrv.c -fPIC -DPIC -o .libs/libublksrv_la-ublksrv.o ublksrv.c: In function 'ublksrv_for_each_tgt_type': ublksrv.c:128:21: warning: unused variable 'len' [-Wunused-variable] 128 | int len; | ^~~ ublksrv.c: In function 'ublksrv_dev_init_io_cmds': ublksrv.c:395:30: warning: unused variable 'sqe' [-Wunused-variable] 395 | struct io_uring_sqe *sqe; | ^~~ ublksrv.c: In function 'ublksrv_setup_eventfd': ublksrv.c:496:36: warning: format '%s' expects argument of type 'char *', but argument 3 has type '__u32' {aka 'unsigned int'} [-Wformat=] 496 | syslog(LOG_INFO, "%s ublk dev %d queue %d zero tgt queue depth", | ~^ | | | char * | %d 497 | info->dev_id, q->q_id); | ~~~~~~~~~~~~ | | | __u32 {aka unsigned int} ublksrv.c:496:57: warning: format '%d' expects a matching 'int' argument [-Wformat=] 496 | syslog(LOG_INFO, "%s ublk dev %d queue %d zero tgt queue depth", | ~^ | | | int ublksrv.c:502:36: warning: format '%s' expects argument of type 'char *', but argument 3 has type '__u32' {aka 'unsigned int'} [-Wformat=] 502 | syslog(LOG_INFO, "%s ublk dev %d/%d not define ->handle_event", | ~^ | | | char * | %d 503 | info->dev_id, q->q_id); | ~~~~~~~~~~~~ | | | __u32 {aka unsigned int} ublksrv.c:502:51: warning: format '%d' expects a matching 'int' argument [-Wformat=] 502 | syslog(LOG_INFO, "%s ublk dev %d/%d not define ->handle_event", | ~^ | | | int ublksrv.c: In function 'ublksrv_dev_deinit': ublksrv.c:697:13: warning: unused variable 'i' [-Wunused-variable] 697 | int i; | ^ ublksrv.c:696:13: warning: unused variable 'dev_id' [-Wunused-variable] 696 | int dev_id = dev->ctrl_dev->dev_info.dev_id; | ^~~~~~ ublksrv.c: In function 'ublksrv_dev_init': ublksrv.c:720:13: warning: unused variable 'i' [-Wunused-variable] 720 | int i; | ^ ublksrv.c:717:13: warning: unused variable 'queue_size' [-Wunused-variable] 717 | int queue_size; | ^~~~~~~~~~ ublksrv.c:715:13: warning: unused variable 'nr_queues' [-Wunused-variable] 715 | int nr_queues = ctrl_dev->dev_info.nr_hw_queues; | ^~~~~~~~~ ublksrv.c: In function 'ublksrv_handle_tgt_cqe': ublksrv.c:772:18: warning: unused variable 'tag' [-Wunused-variable] 772 | unsigned tag = user_data_to_tag(cqe->user_data); | ^~~ ublksrv.c: At top level: ublksrv.c:46:14: warning: 'ublksrv_io_handler_fn' declared 'static' but never defined [-Wunused-function] 46 | static void *ublksrv_io_handler_fn(void *data); | ^~~~~~~~~~~~~~~~~~~~~ ublksrv.c: In function 'ublksrv_submit_aio_batch': ublksrv.c:908:17: warning: ignoring return value of 'write' declared with attribute 'warn_unused_result' [-Wunused-result] 908 | write(ctx->efd, &data, 8); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ublksrv.c: In function 'ublksrv_kill_eventfd': ublksrv.c:482:17: warning: ignoring return value of 'write' declared with attribute 'warn_unused_result' [-Wunused-result] 482 | write(q->efd, &data, 8); | ^~~~~~~~~~~~~~~~~~~~~~~ ublksrv.c: In function 'ublksrv_apply_oom_protection': ublksrv.c:980:17: warning: ignoring return value of 'write' declared with attribute 'warn_unused_result' [-Wunused-result] 980 | write(fd, val, len); | ^~~~~~~~~~~~~~~~~~~ In file included from ublksrv.c:5: In function 'ublksrv_set_sqe_cmd_op', inlined from 'ublksrv_queue_io_cmd' at ublksrv.c:206:2, inlined from 'ublksrv_submit_fetch_commands' at ublksrv.c:321:3, inlined from 'ublksrv_queue_init' at ublksrv.c:646:2: ../include/ublksrv_priv.h:80:17: warning: 'cmd_op' may be used uninitialized [-Wmaybe-uninitialized] 80 | addr[0] = cmd_op; | ~~~~~~~~^~~~~~~~ ublksrv.c: In function 'ublksrv_queue_init': ublksrv.c:173:22: note: 'cmd_op' was declared here 173 | unsigned int cmd_op; | ^~~~~~ /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -I../include -pthread -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c -o libublksrv_la-utils.lo `test -f 'utils.c' || echo './'`utils.c libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I../include -pthread -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c utils.c -fPIC -DPIC -o .libs/libublksrv_la-utils.o /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -I../include -pthread -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c -o libublksrv_la-ublksrv_aio.lo `test -f 'ublksrv_aio.c' || echo './'`ublksrv_aio.c libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I../include -pthread -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c ublksrv_aio.c -fPIC -DPIC -o .libs/libublksrv_la-ublksrv_aio.o ublksrv_aio.c: In function 'ublksrv_aio_submit_worker': ublksrv_aio.c:30:16: warning: suggest parentheses around assignment used as truth value [-Wparentheses] 30 | while (req = aio_list_pop(&sl)) { | ^~~ ublksrv_aio.c: In function 'ublksrv_aio_complete_worker': ublksrv_aio.c:99:24: warning: suggest parentheses around assignment used as truth value [-Wparentheses] 99 | while (req = aio_list_pop(completed)) { | ^~~ ublksrv_aio.c:94:42: warning: unused variable 'compl' [-Wunused-variable] 94 | struct ublksrv_aio_list *compl; | ^~~~~ ublksrv_aio.c: In function 'ublksrv_aio_ctx_init': ublksrv_aio.c:120:13: warning: unused variable 'ret' [-Wunused-variable] 120 | int ret, i; | ^~~ ublksrv_aio.c: In function 'ublksrv_aio_handle_event': ublksrv_aio.c:231:16: warning: suggest parentheses around assignment used as truth value [-Wparentheses] 231 | while (req = aio_list_pop(&al)) { | ^~~ ublksrv_aio.c: In function 'ublksrv_aio_submit_worker': ublksrv_aio.c:47:9: warning: ignoring return value of 'read' declared with attribute 'warn_unused_result' [-Wunused-result] 47 | read(ctx->efd, &data, 8); | ^~~~~~~~~~~~~~~~~~~~~~~~ ublksrv_aio.c: In function 'ublksrv_aio_ctx_shutdown': ublksrv_aio.c:153:9: warning: ignoring return value of 'write' declared with attribute 'warn_unused_result' [-Wunused-result] 153 | write(ctx->efd, &data, 8); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ublksrv_aio.c: In function 'ublksrv_aio_submit_req': ublksrv_aio.c:204:17: warning: ignoring return value of 'write' declared with attribute 'warn_unused_result' [-Wunused-result] 204 | write(ctx->efd, &data, 8); | ^~~~~~~~~~~~~~~~~~~~~~~~~ ublksrv_json.cpp: In function 'int ublksrv_json_write_params(const ublk_params*, char*, int)': ublksrv_json.cpp:108:13: warning: unused variable 'j_len' [-Wunused-variable] 108 | int j_len; | ^~~~~ ublksrv_json.cpp: In function 'int ublksrv_json_read_params(ublk_params*, const char*)': ublksrv_json.cpp:122:13: warning: unused variable 'j_len' [-Wunused-variable] 122 | int j_len; | ^~~~~ ublksrv_json.cpp: In function 'int ublksrv_json_dump_params(const char*)': ublksrv_json.cpp:138:13: warning: unused variable 'j_len' [-Wunused-variable] 138 | int j_len; | ^~~~~ ublksrv_json.cpp: In function 'int ublksrv_json_write_target_str_info(char*, int, const char*, const char*)': ublksrv_json.cpp:155:13: warning: unused variable 'j_len' [-Wunused-variable] 155 | int j_len; | ^~~~~ ublksrv_json.cpp: In function 'int ublksrv_json_write_target_long_info(char*, int, const char*, long int)': ublksrv_json.cpp:169:13: warning: unused variable 'j_len' [-Wunused-variable] 169 | int j_len; | ^~~~~ ublksrv_json.cpp: In function 'int ublksrv_json_write_target_ulong_info(char*, int, const char*, long unsigned int)': ublksrv_json.cpp:183:13: warning: unused variable 'j_len' [-Wunused-variable] 183 | int j_len; | ^~~~~ ublksrv_json.cpp: In function 'int ublksrv_json_write_target_base_info(char*, int, const ublksrv_tgt_base_json*)': ublksrv_json.cpp:197:13: warning: unused variable 'j_len' [-Wunused-variable] 197 | int j_len; | ^~~~~ ublksrv_json.cpp: In function 'int ublksrv_json_read_target_base_info(const char*, ublksrv_tgt_base_json*)': ublksrv_json.cpp:213:13: warning: unused variable 'j_len' [-Wunused-variable] 213 | int j_len; | ^~~~~ ublksrv_json.cpp: In function 'int ublksrv_json_write_queue_info(const ublksrv_ctrl_dev*, char*, int, int, int)': ublksrv_json.cpp:255:13: warning: unused variable 'j_len' [-Wunused-variable] 255 | int j_len; | ^~~~~ ublksrv_json.cpp: In function 'int ublksrv_json_read_queue_info(const char*, int, unsigned int*, char*, int)': ublksrv_json.cpp:288:26: warning: comparison of integer expressions of different signedness: 'std::__cxx11::basic_string::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare] 288 | if (str.length() < len) { | ~~~~~~~~~~~~~^~~~~ In file included from ublksrv_json.cpp:6: In member function 'nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > >::value, std::allocator >, ublk_param_discard&, 0>(std::__cxx11::basic_string, std::allocator > const&, ublk_param_discard&) conststd::decay::type', inlined from 'nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > >::value(char const*, ublk_param_discard&) conststd::decay::type' at ../include/nlohmann/json.hpp:21078:21, inlined from 'from_json(nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > > const&, ublk_params&)' at ublksrv_json.cpp:100:1: ../include/nlohmann/json.hpp:21056:57: warning: 'MEM[(const struct ublk_param_discard &)&nlohmann_json_default_obj + 40].discard_alignment' may be used uninitialized [-Wmaybe-uninitialized] 21056 | return std::forward(default_value); | ^ ublksrv_json.cpp: In function 'from_json(nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > > const&, ublk_params&)': ../include/nlohmann/json.hpp:2664:96: note: 'nlohmann_json_default_obj' declared here 2664 | inline void from_json(const nlohmann::json& nlohmann_json_j, Type& nlohmann_json_t) { Type nlohmann_json_default_obj; NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_FROM_WITH_DEFAULT, __VA_ARGS__)) } | ^~~~~~~~~~~~~~~~~~~~~~~~~ In member function 'nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > >::value, std::allocator >, ublk_param_discard&, 0>(std::__cxx11::basic_string, std::allocator > const&, ublk_param_discard&) conststd::decay::type', inlined from 'nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > >::value(char const*, ublk_param_discard&) conststd::decay::type' at ../include/nlohmann/json.hpp:21078:21, inlined from 'from_json(nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > > const&, ublk_params&)' at ublksrv_json.cpp:100:1: ../include/nlohmann/json.hpp:21056:57: warning: 'MEM[(const struct ublk_param_discard &)&nlohmann_json_default_obj + 40].discard_granularity' may be used uninitialized [-Wmaybe-uninitialized] 21056 | return std::forward(default_value); | ^ ublksrv_json.cpp: In function 'from_json(nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > > const&, ublk_params&)': ../include/nlohmann/json.hpp:2664:96: note: 'nlohmann_json_default_obj' declared here 2664 | inline void from_json(const nlohmann::json& nlohmann_json_j, Type& nlohmann_json_t) { Type nlohmann_json_default_obj; NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_FROM_WITH_DEFAULT, __VA_ARGS__)) } | ^~~~~~~~~~~~~~~~~~~~~~~~~ In member function 'nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > >::value, std::allocator >, ublk_param_discard&, 0>(std::__cxx11::basic_string, std::allocator > const&, ublk_param_discard&) conststd::decay::type', inlined from 'nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > >::value(char const*, ublk_param_discard&) conststd::decay::type' at ../include/nlohmann/json.hpp:21078:21, inlined from 'from_json(nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > > const&, ublk_params&)' at ublksrv_json.cpp:100:1: ../include/nlohmann/json.hpp:21056:57: warning: 'MEM[(const struct ublk_param_discard &)&nlohmann_json_default_obj + 40].max_discard_sectors' may be used uninitialized [-Wmaybe-uninitialized] 21056 | return std::forward(default_value); | ^ ublksrv_json.cpp: In function 'from_json(nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > > const&, ublk_params&)': ../include/nlohmann/json.hpp:2664:96: note: 'nlohmann_json_default_obj' declared here 2664 | inline void from_json(const nlohmann::json& nlohmann_json_j, Type& nlohmann_json_t) { Type nlohmann_json_default_obj; NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_FROM_WITH_DEFAULT, __VA_ARGS__)) } | ^~~~~~~~~~~~~~~~~~~~~~~~~ In member function 'nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > >::value, std::allocator >, ublk_param_discard&, 0>(std::__cxx11::basic_string, std::allocator > const&, ublk_param_discard&) conststd::decay::type', inlined from 'nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > >::value(char const*, ublk_param_discard&) conststd::decay::type' at ../include/nlohmann/json.hpp:21078:21, inlined from 'from_json(nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > > const&, ublk_params&)' at ublksrv_json.cpp:100:1: ../include/nlohmann/json.hpp:21056:57: warning: 'MEM[(const struct ublk_param_discard &)&nlohmann_json_default_obj + 40].max_write_zeroes_sectors' may be used uninitialized [-Wmaybe-uninitialized] 21056 | return std::forward(default_value); | ^ ublksrv_json.cpp: In function 'from_json(nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > > const&, ublk_params&)': ../include/nlohmann/json.hpp:2664:96: note: 'nlohmann_json_default_obj' declared here 2664 | inline void from_json(const nlohmann::json& nlohmann_json_j, Type& nlohmann_json_t) { Type nlohmann_json_default_obj; NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_FROM_WITH_DEFAULT, __VA_ARGS__)) } | ^~~~~~~~~~~~~~~~~~~~~~~~~ In member function 'nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > >::value, std::allocator >, ublk_param_discard&, 0>(std::__cxx11::basic_string, std::allocator > const&, ublk_param_discard&) conststd::decay::type', inlined from 'nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > >::value(char const*, ublk_param_discard&) conststd::decay::type' at ../include/nlohmann/json.hpp:21078:21, inlined from 'from_json(nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > > const&, ublk_params&)' at ublksrv_json.cpp:100:1: ../include/nlohmann/json.hpp:21056:57: warning: 'MEM[(const struct ublk_param_discard &)&nlohmann_json_default_obj + 40].max_discard_segments' may be used uninitialized [-Wmaybe-uninitialized] 21056 | return std::forward(default_value); | ^ ublksrv_json.cpp: In function 'from_json(nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > > const&, ublk_params&)': ../include/nlohmann/json.hpp:2664:96: note: 'nlohmann_json_default_obj' declared here 2664 | inline void from_json(const nlohmann::json& nlohmann_json_j, Type& nlohmann_json_t) { Type nlohmann_json_default_obj; NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_FROM_WITH_DEFAULT, __VA_ARGS__)) } | ^~~~~~~~~~~~~~~~~~~~~~~~~ In member function 'nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > >::value, std::allocator >, ublk_param_discard&, 0>(std::__cxx11::basic_string, std::allocator > const&, ublk_param_discard&) conststd::decay::type', inlined from 'nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > >::value(char const*, ublk_param_discard&) conststd::decay::type' at ../include/nlohmann/json.hpp:21078:21, inlined from 'from_json(nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > > const&, ublk_params&)' at ublksrv_json.cpp:100:1: ../include/nlohmann/json.hpp:21056:57: warning: 'MEM[(const struct ublk_param_discard &)&nlohmann_json_default_obj + 40].reserved0' may be used uninitialized [-Wmaybe-uninitialized] 21056 | return std::forward(default_value); | ^ ublksrv_json.cpp: In function 'from_json(nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > > const&, ublk_params&)': ../include/nlohmann/json.hpp:2664:96: note: 'nlohmann_json_default_obj' declared here 2664 | inline void from_json(const nlohmann::json& nlohmann_json_j, Type& nlohmann_json_t) { Type nlohmann_json_default_obj; NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_FROM_WITH_DEFAULT, __VA_ARGS__)) } | ^~~~~~~~~~~~~~~~~~~~~~~~~ In member function 'nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > >::value, std::allocator >, int&, 0>(std::__cxx11::basic_string, std::allocator > const&, int&) conststd::decay::type', inlined from 'nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > >::value(char const*, int&) conststd::decay::type' at ../include/nlohmann/json.hpp:21078:21, inlined from 'from_json(nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > > const&, ublksrv_ctrl_dev_info&)' at ublksrv_json.cpp:33:1: ../include/nlohmann/json.hpp:21056:57: warning: 'nlohmann_json_default_obj' may be used uninitialized [-Wmaybe-uninitialized] 21056 | return std::forward(default_value); | ^ ublksrv_json.cpp: In function 'from_json(nlohmann::basic_json, std::allocator >, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector > > const&, ublksrv_ctrl_dev_info&)': ../include/nlohmann/json.hpp:2664:96: note: 'nlohmann_json_default_obj' declared here 2664 | inline void from_json(const nlohmann::json& nlohmann_json_j, Type& nlohmann_json_t) { Type nlohmann_json_default_obj; NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_FROM_WITH_DEFAULT, __VA_ARGS__)) } | ^~~~~~~~~~~~~~~~~~~~~~~~~ /bin/sh ../libtool --tag=CXX --mode=link g++ -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -version-info 0:0:0 -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes -o libublksrv.la -rpath /usr/lib64 libublksrv_la-ublksrv_cmd.lo libublksrv_la-ublksrv_json.lo libublksrv_la-ublksrv.lo libublksrv_la-utils.lo libublksrv_la-ublksrv_aio.lo -luring -lpthread libtool: link: g++ -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-redhat-linux/12/../../../../lib64/crti.o /usr/lib/gcc/x86_64-redhat-linux/12/crtbeginS.o .libs/libublksrv_la-ublksrv_cmd.o .libs/libublksrv_la-ublksrv_json.o .libs/libublksrv_la-ublksrv.o .libs/libublksrv_la-utils.o .libs/libublksrv_la-ublksrv_aio.o -luring -lpthread -L/usr/lib/gcc/x86_64-redhat-linux/12 -L/usr/lib/gcc/x86_64-redhat-linux/12/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-redhat-linux/12/../../.. -lstdc++ -lm -lgcc_s -lc -lgcc_s /usr/lib/gcc/x86_64-redhat-linux/12/crtendS.o /usr/lib/gcc/x86_64-redhat-linux/12/../../../../lib64/crtn.o -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -O2 -flto=auto -g -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -Wl,-z -Wl,relro -Wl,--as-needed -Wl,-z -Wl,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes -Wl,-soname -Wl,libublksrv.so.0 -o .libs/libublksrv.so.0.0.0 libtool: link: (cd ".libs" && rm -f "libublksrv.so.0" && ln -s "libublksrv.so.0.0.0" "libublksrv.so.0") libtool: link: (cd ".libs" && rm -f "libublksrv.so" && ln -s "libublksrv.so.0.0.0" "libublksrv.so") libtool: link: ( cd ".libs" && rm -f "libublksrv.la" && ln -s "../libublksrv.la" "libublksrv.la" ) make[2]: Leaving directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/lib' Making all in tests make[2]: Entering directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/tests' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/tests' make[2]: Entering directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262' gcc -DHAVE_CONFIG_H -I. -I./include -pthread -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c -o demo_null-demo_null.o `test -f 'demo_null.c' || echo './'`demo_null.c gcc -DHAVE_CONFIG_H -I. -I./include -pthread -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c -o demo_event-demo_event.o `test -f 'demo_event.c' || echo './'`demo_event.c demo_event.c: In function 'sync_io_submitter': demo_event.c:142:1: warning: label 'exit' defined but not used [-Wunused-label] 142 | exit: | ^~~~ demo_event.c: In function 'demo_event_real_io_handler_fn': demo_event.c:267:13: warning: variable 'ret' set but not used [-Wunused-but-set-variable] 267 | int ret; | ^~~ demo_event.c: In function 'demo_event_io_handler_fn': demo_event.c:310:28: warning: unused variable 'ev_data' [-Wunused-variable] 310 | unsigned long long ev_data = 1; | ^~~~~~~ demo_event.c: In function 'demo_event_io_handler': demo_event.c:397:21: warning: unused variable 'j' [-Wunused-variable] 397 | int j; | ^ demo_event.c:418:21: warning: unused variable 'j' [-Wunused-variable] 418 | int j; | ^ demo_event.c:369:14: warning: unused variable 'buf' [-Wunused-variable] 369 | char buf[32]; | ^~~ demo_event.c: In function 'ublksrv_start_daemon': demo_event.c:436:13: warning: unused variable 'ret' [-Wunused-variable] 436 | int ret; | ^~~ demo_event.c:435:22: warning: unused variable 'daemon_pid' [-Wunused-variable] 435 | int cnt = 0, daemon_pid; | ^~~~~~~~~~ demo_event.c:435:13: warning: unused variable 'cnt' [-Wunused-variable] 435 | int cnt = 0, daemon_pid; | ^~~ demo_event.c: In function 'main': demo_event.c:533:15: warning: unused variable 'file' [-Wunused-variable] 533 | char *file = NULL; | ^~~~ demo_event.c:531:15: warning: unused variable 'type' [-Wunused-variable] 531 | char *type = NULL; | ^~~~ demo_null.c: In function 'demo_null_io_handler': demo_null.c:100:14: warning: unused variable 'buf' [-Wunused-variable] 100 | char buf[32]; | ^~~ demo_null.c:98:13: warning: unused variable 'dev_id' [-Wunused-variable] 98 | int dev_id = ctrl_dev->dev_info.dev_id; | ^~~~~~ demo_null.c: In function 'ublksrv_start_daemon': demo_null.c:144:22: warning: unused variable 'daemon_pid' [-Wunused-variable] 144 | int cnt = 0, daemon_pid; | ^~~~~~~~~~ demo_null.c:144:13: warning: unused variable 'cnt' [-Wunused-variable] 144 | int cnt = 0, daemon_pid; | ^~~ demo_null.c: In function 'main': demo_null.c:221:15: warning: unused variable 'type' [-Wunused-variable] 221 | char *type = NULL; | ^~~~ g++ -DHAVE_CONFIG_H -I. -I./include -fcoroutines -std=c++20 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c -o ublk-ublksrv_tgt.o `test -f 'ublksrv_tgt.cpp' || echo './'`ublksrv_tgt.cpp g++ -DHAVE_CONFIG_H -I. -I./include -fcoroutines -std=c++20 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c -o ublk-tgt_null.o `test -f 'tgt_null.cpp' || echo './'`tgt_null.cpp ublksrv_tgt.cpp: In function 'char* mprintf(const char*, ...)': ublksrv_tgt.cpp:24:13: warning: variable 'ret' set but not used [-Wunused-but-set-variable] 24 | int ret; | ^~~ ublksrv_tgt.cpp: In function 'void ublksrv_drain_fetch_commands(ublksrv_dev*, ublksrv_queue_info*)': ublksrv_tgt.cpp:250:23: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 250 | for (i = 0; i < nr_queues; i++) | ~~^~~~~~~~~~~ ublksrv_tgt.cpp: In function 'void ublksrv_io_handler(void*)': ublksrv_tgt.cpp:259:13: warning: unused variable 'ret' [-Wunused-variable] 259 | int ret, i; | ^~~ ublksrv_tgt.cpp:297:1: warning: label 'out_dev_deinit' defined but not used [-Wunused-label] 297 | out_dev_deinit: | ^~~~~~~~~~~~~~ ublksrv_tgt.cpp: In function 'int ublksrv_start_daemon(ublksrv_ctrl_dev*)': ublksrv_tgt.cpp:394:13: warning: unused variable 'ret' [-Wunused-variable] 394 | int ret; | ^~~ ublksrv_tgt.cpp: In function 'int cmd_dev_add(int, char**)': ublksrv_tgt.cpp:473:15: warning: unused variable 'type' [-Wunused-variable] 473 | char *type = NULL; | ^~~~ ublksrv_tgt.cpp:474:23: warning: unused variable 'zcopy' [-Wunused-variable] 474 | int opt, ret, zcopy = 0; | ^~~~~ ublksrv_tgt.cpp:475:13: warning: unused variable 'daemon_pid' [-Wunused-variable] 475 | int daemon_pid; | ^~~~~~~~~~ ublksrv_tgt.cpp: In function 'int cmd_dev_del(int, char**)': ublksrv_tgt.cpp:664:34: warning: unused variable 'dev' [-Wunused-variable] 664 | struct ublksrv_ctrl_dev *dev; | ^~~ ublksrv_tgt.cpp: In function 'int cmd_list_dev_info(int, char**)': ublksrv_tgt.cpp:728:34: warning: unused variable 'dev' [-Wunused-variable] 728 | struct ublksrv_ctrl_dev *dev; | ^~~ ublksrv_tgt.cpp: In function 'int start_daemon(void (*)(void*), void*)': ublksrv_tgt.cpp:56:15: warning: ignoring return value of 'char* getcwd(char*, size_t)' declared with attribute 'warn_unused_result' [-Wunused-result] 56 | getcwd(path, PATH_MAX); | ~~~~~~^~~~~~~~~~~~~~~~ ublksrv_tgt.cpp:64:14: warning: ignoring return value of 'int chdir(const char*)' declared with attribute 'warn_unused_result' [-Wunused-result] 64 | chdir(path); | ~~~~~^~~~~~ g++ -DHAVE_CONFIG_H -I. -I./include -fcoroutines -std=c++20 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c -o ublk-tgt_loop.o `test -f 'tgt_loop.cpp' || echo './'`tgt_loop.cpp ublksrv_tgt.cpp: In function 'main': ublksrv_tgt.cpp:766:16: warning: 'strncpy' specified bound 256 equals destination size [-Wstringop-truncation] 766 | strncpy(exe, full_cmd, 256); | ^ In function 'cmd_list_dev_info(int, char**)', inlined from 'main' at ublksrv_tgt.cpp:777:26: ublksrv_tgt.cpp:751:16: warning: 'ret' may be used uninitialized [-Wmaybe-uninitialized] 751 | return ret; | ^~~ ublksrv_tgt.cpp: In function 'main': ublksrv_tgt.cpp:730:18: note: 'ret' was declared here 730 | int opt, ret, i; | ^~~ g++ -DHAVE_CONFIG_H -I. -I./include -fcoroutines -std=c++20 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c -o ublk-tgt_qcow2.o `test -f 'qcow2/tgt_qcow2.cpp' || echo './'`qcow2/tgt_qcow2.cpp tgt_loop.cpp:10:20: warning: 'const char* loop_tgt_backfile(ublksrv_tgt_info*)' defined but not used [-Wunused-function] 10 | static const char *loop_tgt_backfile(struct ublksrv_tgt_info *tgt) | ^~~~~~~~~~~~~~~~~ g++ -DHAVE_CONFIG_H -I. -I./include -fcoroutines -std=c++20 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c -o ublk-qcow2.o `test -f 'qcow2/qcow2.cpp' || echo './'`qcow2/qcow2.cpp In file included from qcow2/qcow2.h:16, from qcow2/tgt_qcow2.cpp:4: qcow2/qcow2_meta.h: In member function 'virtual void Qcow2HeaderExtEncHeader::dump() const': qcow2/qcow2_meta.h:246:67: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 6 has type 'long unsigned int' [-Wformat=] 246 | syslog(LOG_INFO,"%s: type %x len %d enc(offset %llx sz %lu)\n", | ~~~^ | | | long long unsigned int | %lx 247 | typeid(*this).name(), type, len, 248 | enc_offset, enc_len); | ~~~~~~~~~~ | | | long unsigned int qcow2/qcow2_meta.h: In member function 'uint32_t Qcow2TopTable::dirty_blks()': qcow2/qcow2_meta.h:433:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 433 | for (int i = 0; i < dirty.size(); i++) | ~~^~~~~~~~~~~~~~ qcow2/qcow2_meta.h: In member function 'int Qcow2TopTable::get_1st_dirty_blk()': qcow2/qcow2_meta.h:444:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 444 | for (int i = 0; i < dirty.size(); i++) | ~~^~~~~~~~~~~~~~ qcow2/qcow2.h: In member function 'bool Qcow2ClusterMapping::__entry_is_allocating(uint64_t)': qcow2/qcow2.h:215:30: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 215 | return state != -1; | ~~~~~~^~~~~ In file included from qcow2/qcow2_meta.h:5: qcow2/qcow2.h: In member function 'uint32_t Qcow2ClusterMapping::entry_get_alloc_owner(uint64_t, bool)': qcow2/qcow2.h:268:36: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 268 | qcow2_assert(state != -1); | ~~~~~~^~~~~ qcow2/qcow2_common.h:9:15: note: in definition of macro 'qcow2_assert' 9 | if (!(x)) { \ | ^ In file included from /usr/include/c++/12/cassert:44, from /usr/include/c++/12/x86_64-redhat-linux/bits/stdc++.h:33, from qcow2/qcow2.h:10: qcow2/qcow2.h:268:36: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 268 | qcow2_assert(state != -1); | ~~~~~~^~~~~ qcow2/qcow2.h:268:17: note: in expansion of macro 'qcow2_assert' 268 | qcow2_assert(state != -1); | ^~~~~~~~~~~~ qcow2/tgt_qcow2.cpp: In function 'int qcow2_init_tgt(ublksrv_dev*, int, int, char**)': qcow2/tgt_qcow2.cpp:18:28: warning: unused variable 'bytes' [-Wunused-variable] 18 | unsigned long long bytes; | ^~~~~ qcow2/tgt_qcow2.cpp:19:21: warning: unused variable 'st' [-Wunused-variable] 19 | struct stat st; | ^~ qcow2/tgt_qcow2.cpp: In function 'co_io_job __qcow2_handle_io_async(ublksrv_queue*, ublk_io*, int)': qcow2/tgt_qcow2.cpp:370:29: warning: unused variable 'cqe_op' [-Wunused-variable] 370 | u32 cqe_op; | ^~~~~~ In file included from qcow2/qcow2.h:16, from qcow2/qcow2.cpp:2: qcow2/qcow2_meta.h: In member function 'virtual void Qcow2HeaderExtEncHeader::dump() const': qcow2/qcow2_meta.h:246:67: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 6 has type 'long unsigned int' [-Wformat=] 246 | syslog(LOG_INFO,"%s: type %x len %d enc(offset %llx sz %lu)\n", | ~~~^ | | | long long unsigned int | %lx 247 | typeid(*this).name(), type, len, 248 | enc_offset, enc_len); | ~~~~~~~~~~ | | | long unsigned int qcow2/qcow2_meta.h: In member function 'uint32_t Qcow2TopTable::dirty_blks()': qcow2/qcow2_meta.h:433:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 433 | for (int i = 0; i < dirty.size(); i++) | ~~^~~~~~~~~~~~~~ qcow2/qcow2_meta.h: In member function 'int Qcow2TopTable::get_1st_dirty_blk()': qcow2/qcow2_meta.h:444:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 444 | for (int i = 0; i < dirty.size(); i++) | ~~^~~~~~~~~~~~~~ qcow2/qcow2.h: In member function 'bool Qcow2ClusterMapping::__entry_is_allocating(uint64_t)': qcow2/qcow2.h:215:30: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 215 | return state != -1; | ~~~~~~^~~~~ In file included from qcow2/qcow2_meta.h:5: qcow2/qcow2.h: In member function 'uint32_t Qcow2ClusterMapping::entry_get_alloc_owner(uint64_t, bool)': qcow2/qcow2.h:268:36: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 268 | qcow2_assert(state != -1); | ~~~~~~^~~~~ qcow2/qcow2_common.h:9:15: note: in definition of macro 'qcow2_assert' 9 | if (!(x)) { \ | ^ In file included from ./include/ublksrv.h:9, from ./include/ublksrv_priv.h:8, from qcow2/qcow2_common.h:5: qcow2/qcow2.h:268:36: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 268 | qcow2_assert(state != -1); | ~~~~~~^~~~~ qcow2/qcow2.h:268:17: note: in expansion of macro 'qcow2_assert' 268 | qcow2_assert(state != -1); | ^~~~~~~~~~~~ qcow2/qcow2.h: In constructor 'Qcow2State::Qcow2State(const char*, const ublksrv_dev*)': qcow2/qcow2.h:633:19: warning: 'Qcow2State::meta_io_map' will be initialized after [-Wreorder] 633 | MetaArray meta_io_map; | ^~~~~~~~~~~ qcow2/qcow2.h:628:29: warning: 'Qcow2ClusterMapping Qcow2State::cluster_map' [-Wreorder] 628 | Qcow2ClusterMapping cluster_map; | ^~~~~~~~~~~ qcow2/qcow2.cpp:16:1: warning: when initialized here [-Wreorder] 16 | Qcow2State:: Qcow2State(const char *path, const struct ublksrv_dev *d): | ^~~~~~~~~~ qcow2/qcow2.cpp: In member function 'uint32_t Qcow2State::add_meta_io(uint32_t, Qcow2MappingMeta*)': qcow2/qcow2.cpp:109:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 109 | for (i = 0; i < v.size(); i++) | ~~^~~~~~~~~~ qcow2/qcow2.cpp:112:15: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 112 | if (i < v.size()) { | ~~^~~~~~~~~~ qcow2/qcow2.cpp: In member function 'uint64_t Qcow2ClusterAllocator::allocate_cluster(const qcow2_io_ctx_t&)': qcow2/qcow2.cpp:694:25: warning: comparison of integer expressions of different signedness: 'int32_t' {aka 'int'} and 'unsigned int' [-Wsign-compare] 694 | if (++slice_idx < cache.get_nr_slices()) | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ qcow2/qcow2.h: In constructor 'Qcow2ClusterMapping::Qcow2ClusterMapping(Qcow2State&)': qcow2/qcow2.h:183:31: warning: 'Qcow2ClusterMapping::cluster_bits' will be initialized after [-Wreorder] 183 | u32 l2_entries_order, cluster_bits; | ^~~~~~~~~~~~ qcow2/qcow2.h:183:13: warning: 'uint32_t Qcow2ClusterMapping::l2_entries_order' [-Wreorder] 183 | u32 l2_entries_order, cluster_bits; | ^~~~~~~~~~~~~~~~ qcow2/qcow2.cpp:733:1: warning: when initialized here [-Wreorder] 733 | Qcow2ClusterMapping::Qcow2ClusterMapping(Qcow2State &qs): state(qs), | ^~~~~~~~~~~~~~~~~~~ qcow2/qcow2.cpp: In member function 'Qcow2L2Table* Qcow2ClusterMapping::create_and_add_l2(const qcow2_io_ctx_t&, uint64_t)': qcow2/qcow2.cpp:794:24: warning: comparison of integer expressions of different signedness: 'uint64_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare] 794 | if (l2_cluster == -1) { | ~~~~~~~~~~~^~~~~ qcow2/qcow2.cpp:762:13: warning: unused variable 'ret' [-Wunused-variable] 762 | int ret; | ^~~ qcow2/qcow2.cpp: In member function 'Qcow2L2Table* Qcow2ClusterMapping::create_l2_map(const qcow2_io_ctx_t&, uint64_t, bool)': qcow2/qcow2.cpp:860:80: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 5 has type 'uint64_t' {aka 'long unsigned int'} [-Wformat=] 860 | syslog(LOG_ERR, "%s: tag %d: allocate l2 failed for %llx\n", | ~~~^ | | | long long unsigned int | %lx 861 | __func__, ioc.get_tag(), offset); | ~~~~~~ | | | uint64_t {aka long unsigned int} qcow2/qcow2.cpp: In member function 'int Qcow2ClusterMapping::build_mapping(const qcow2_io_ctx_t&, uint64_t, Qcow2L2Table*, uint32_t, uint64_t*)': qcow2/qcow2.cpp:905:26: warning: comparison of integer expressions of different signedness: 'uint64_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare] 905 | if (data_cluster == -1) { | ~~~~~~~~~~~~~^~~~~ qcow2/qcow2.cpp: In member function 'uint64_t Qcow2ClusterMapping::__map_cluster(const qcow2_io_ctx_t&, Qcow2L2Table*, uint64_t, bool)': qcow2/qcow2.cpp:936:13: warning: unused variable 'host_offset' [-Wunused-variable] 936 | u64 host_offset; | ^~~~~~~~~~~ qcow2/qcow2.cpp: In instantiation of 'slice_cache::slice_cache(uint8_t, uint8_t, uint8_t, uint32_t) [with T = Qcow2RefcountBlock; uint8_t = unsigned char; uint32_t = unsigned int]': qcow2/qcow2.cpp:483:2: required from here qcow2/qcow2.h:77:38: warning: 'slice_cache::evicted_slices' will be initialized after [-Wreorder] 77 | std::unordered_map evicted_slices; | ^~~~~~~~~~~~~~ qcow2/qcow2.h:74:12: warning: 'uint8_t slice_cache::slice_size_bits' [-Wreorder] 74 | u8 slice_size_bits, cluster_size_bits, slice_virt_size_bits; | ^~~~~~~~~~~~~~~ qcow2/qcow2.cpp:232:1: warning: when initialized here [-Wreorder] 232 | slice_cache::slice_cache(u8 slice_bits, u8 cluster_bits, u8 slice_virt_bits, | ^~~~~~~~~~~~~~ qcow2/qcow2.cpp: In instantiation of 'void slice_cache::dump(Qcow2State&) [with T = Qcow2RefcountBlock]': qcow2/qcow2.cpp:582:12: required from here qcow2/qcow2.cpp:356:39: warning: format '%u' expects argument of type 'unsigned int', but argument 3 has type 'size_t' {aka 'long unsigned int'} [-Wformat=] 356 | syslog(LOG_INFO, "cache size %u, dirty cache size %u\n", | ~^ | | | unsigned int | %lu 357 | slices.size(), evicted_slices.size()); | ~~~~~~~~~~~~~ | | | size_t {aka long unsigned int} qcow2/qcow2.cpp:356:60: warning: format '%u' expects argument of type 'unsigned int', but argument 4 has type 'std::unordered_map, std::equal_to, std::allocator > >::size_type' {aka 'long unsigned int'} [-Wformat=] 356 | syslog(LOG_INFO, "cache size %u, dirty cache size %u\n", | ~^ | | | unsigned int | %lu 357 | slices.size(), evicted_slices.size()); | ~~~~~~~~~~~~~~~~~~~~~ | | | std::unordered_map, std::equal_to, std::allocator > >::size_type {aka long unsigned int} qcow2/qcow2.cpp: In instantiation of 'T* slice_cache::alloc_slice(Qcow2State&, const qcow2_io_ctx_t&, uint64_t, uint64_t, uint32_t) [with T = Qcow2RefcountBlock; uint64_t = long unsigned int; uint32_t = unsigned int]': qcow2/qcow2.cpp:629:24: required from here qcow2/qcow2.cpp:316:47: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 6 has type 'uint64_t' {aka 'long unsigned int'} [-Wformat=] 316 | syslog(LOG_ERR, "%s %d: %s %llx/%llx parent_idx %d host_off %llx flags %x\n", | ~~~^ | | | long long unsigned int | %lx 317 | __func__, __LINE__, typeid(*t).name(), 318 | virt_offset, t->virt_offset(), parent_idx, | ~~~~~~~~~~~ | | | uint64_t {aka long unsigned int} qcow2/qcow2.cpp:316:52: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 7 has type 'uint64_t' {aka 'long unsigned int'} [-Wformat=] 316 | syslog(LOG_ERR, "%s %d: %s %llx/%llx parent_idx %d host_off %llx flags %x\n", | ~~~^ | | | long long unsigned int | %lx 317 | __func__, __LINE__, typeid(*t).name(), 318 | virt_offset, t->virt_offset(), parent_idx, | ~~~~~~~~~~~~~~~~ | | | uint64_t {aka long unsigned int} qcow2/qcow2.cpp:316:80: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 9 has type 'uint64_t' {aka 'long unsigned int'} [-Wformat=] 316 | syslog(LOG_ERR, "%s %d: %s %llx/%llx parent_idx %d host_off %llx flags %x\n", | ~~~^ | | | long long unsigned int | %lx ...... 319 | host_offset, flags); | ~~~~~~~~~~~ | | | uint64_t {aka long unsigned int} qcow2/qcow2.cpp: In instantiation of 'slice_cache::slice_cache(uint8_t, uint8_t, uint8_t, uint32_t) [with T = Qcow2L2Table; uint8_t = unsigned char; uint32_t = unsigned int]': qcow2/qcow2.cpp:734:2: required from here qcow2/qcow2.h:77:38: warning: 'slice_cache::evicted_slices' will be initialized after [-Wreorder] 77 | std::unordered_map evicted_slices; | ^~~~~~~~~~~~~~ qcow2/qcow2.h:74:12: warning: 'uint8_t slice_cache::slice_size_bits' [-Wreorder] 74 | u8 slice_size_bits, cluster_size_bits, slice_virt_size_bits; | ^~~~~~~~~~~~~~~ qcow2/qcow2.cpp:232:1: warning: when initialized here [-Wreorder] 232 | slice_cache::slice_cache(u8 slice_bits, u8 cluster_bits, u8 slice_virt_bits, | ^~~~~~~~~~~~~~ qcow2/qcow2.cpp: In instantiation of 'T* slice_cache::alloc_slice(Qcow2State&, const qcow2_io_ctx_t&, uint64_t, uint64_t, uint32_t) [with T = Qcow2L2Table; uint64_t = long unsigned int; uint32_t = unsigned int]': qcow2/qcow2.cpp:806:25: required from here qcow2/qcow2.cpp:316:47: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 6 has type 'uint64_t' {aka 'long unsigned int'} [-Wformat=] 316 | syslog(LOG_ERR, "%s %d: %s %llx/%llx parent_idx %d host_off %llx flags %x\n", | ~~~^ | | | long long unsigned int | %lx 317 | __func__, __LINE__, typeid(*t).name(), 318 | virt_offset, t->virt_offset(), parent_idx, | ~~~~~~~~~~~ | | | uint64_t {aka long unsigned int} qcow2/qcow2.cpp:316:52: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 7 has type 'uint64_t' {aka 'long unsigned int'} [-Wformat=] 316 | syslog(LOG_ERR, "%s %d: %s %llx/%llx parent_idx %d host_off %llx flags %x\n", | ~~~^ | | | long long unsigned int | %lx 317 | __func__, __LINE__, typeid(*t).name(), 318 | virt_offset, t->virt_offset(), parent_idx, | ~~~~~~~~~~~~~~~~ | | | uint64_t {aka long unsigned int} qcow2/qcow2.cpp:316:80: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 9 has type 'uint64_t' {aka 'long unsigned int'} [-Wformat=] 316 | syslog(LOG_ERR, "%s %d: %s %llx/%llx parent_idx %d host_off %llx flags %x\n", | ~~~^ | | | long long unsigned int | %lx ...... 319 | host_offset, flags); | ~~~~~~~~~~~ | | | uint64_t {aka long unsigned int} qcow2/qcow2.cpp: In instantiation of 'void slice_cache::dump(Qcow2State&) [with T = Qcow2L2Table]': qcow2/qcow2.cpp:1012:12: required from here qcow2/qcow2.cpp:356:39: warning: format '%u' expects argument of type 'unsigned int', but argument 3 has type 'size_t' {aka 'long unsigned int'} [-Wformat=] 356 | syslog(LOG_INFO, "cache size %u, dirty cache size %u\n", | ~^ | | | unsigned int | %lu 357 | slices.size(), evicted_slices.size()); | ~~~~~~~~~~~~~ | | | size_t {aka long unsigned int} qcow2/qcow2.cpp:356:60: warning: format '%u' expects argument of type 'unsigned int', but argument 4 has type 'std::unordered_map, std::equal_to, std::allocator > >::size_type' {aka 'long unsigned int'} [-Wformat=] 356 | syslog(LOG_INFO, "cache size %u, dirty cache size %u\n", | ~^ | | | unsigned int | %lu 357 | slices.size(), evicted_slices.size()); | ~~~~~~~~~~~~~~~~~~~~~ | | | std::unordered_map, std::equal_to, std::allocator > >::size_type {aka long unsigned int} g++ -DHAVE_CONFIG_H -I. -I./include -fcoroutines -std=c++20 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c -o ublk-qcow2_meta.o `test -f 'qcow2/qcow2_meta.cpp' || echo './'`qcow2/qcow2_meta.cpp In file included from qcow2/qcow2.h:16, from qcow2/qcow2_meta.cpp:4: qcow2/qcow2_meta.h: In member function 'virtual void Qcow2HeaderExtEncHeader::dump() const': qcow2/qcow2_meta.h:246:67: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 6 has type 'long unsigned int' [-Wformat=] 246 | syslog(LOG_INFO,"%s: type %x len %d enc(offset %llx sz %lu)\n", | ~~~^ | | | long long unsigned int | %lx 247 | typeid(*this).name(), type, len, 248 | enc_offset, enc_len); | ~~~~~~~~~~ | | | long unsigned int qcow2/qcow2_meta.h: In member function 'uint32_t Qcow2TopTable::dirty_blks()': qcow2/qcow2_meta.h:433:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 433 | for (int i = 0; i < dirty.size(); i++) | ~~^~~~~~~~~~~~~~ qcow2/qcow2_meta.h: In member function 'int Qcow2TopTable::get_1st_dirty_blk()': qcow2/qcow2_meta.h:444:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 444 | for (int i = 0; i < dirty.size(); i++) | ~~^~~~~~~~~~~~~~ qcow2/qcow2.h: In member function 'bool Qcow2ClusterMapping::__entry_is_allocating(uint64_t)': qcow2/qcow2.h:215:30: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 215 | return state != -1; | ~~~~~~^~~~~ In file included from qcow2/qcow2_meta.h:5: qcow2/qcow2.h: In member function 'uint32_t Qcow2ClusterMapping::entry_get_alloc_owner(uint64_t, bool)': qcow2/qcow2.h:268:36: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 268 | qcow2_assert(state != -1); | ~~~~~~^~~~~ qcow2/qcow2_common.h:9:15: note: in definition of macro 'qcow2_assert' 9 | if (!(x)) { \ | ^ In file included from ./include/ublksrv.h:9, from ./include/ublksrv_priv.h:8, from qcow2/qcow2_common.h:5: qcow2/qcow2.h:268:36: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 268 | qcow2_assert(state != -1); | ~~~~~~^~~~~ qcow2/qcow2.h:268:17: note: in expansion of macro 'qcow2_assert' 268 | qcow2_assert(state != -1); | ^~~~~~~~~~~~ qcow2/qcow2_meta.h: In constructor 'Qcow2Meta::Qcow2Meta(Qcow2Header&, uint64_t, uint32_t, const char*, uint32_t)': qcow2/qcow2_meta.h:30:15: warning: 'Qcow2Meta::buf_sz' will be initialized after [-Wreorder] 30 | u32 buf_sz; //buffer size | ^~~~~~ qcow2/qcow2_meta.h:27:26: warning: 'Qcow2Header& Qcow2Meta::header' [-Wreorder] 27 | Qcow2Header &header; | ^~~~~~ qcow2/qcow2_meta.cpp:11:1: warning: when initialized here [-Wreorder] 11 | Qcow2Meta::Qcow2Meta(Qcow2Header &h, u64 off, u32 sz, const char *name, u32 f): | ^~~~~~~~~ qcow2/qcow2_meta.cpp: In member function 'virtual int Qcow2Meta::flush(Qcow2State&, const qcow2_io_ctx_t&, uint64_t, uint32_t)': qcow2/qcow2_meta.cpp:100:17: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 100 | if (len != ret) | ~~~~^~~~~~ qcow2/qcow2_meta.cpp: In constructor 'Qcow2HeaderExtFeatureNameTable::Qcow2HeaderExtFeatureNameTable(char*, uint64_t)': qcow2/qcow2_meta.cpp:121:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare] 121 | for (int i = 0; i < __a.size(); i++) { | ~~^~~~~~~~~~~~ qcow2/qcow2_meta.cpp: In member function 'virtual void Qcow2HeaderExtFeatureNameTable::dump() const': qcow2/qcow2_meta.cpp:133:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare] 133 | for (int i = 0; i < __a.size(); i++) | ~~^~~~~~~~~~~~ qcow2/qcow2_meta.cpp: In destructor 'virtual Qcow2Header::~Qcow2Header()': qcow2/qcow2_meta.cpp:160:9: warning: deleting object of polymorphic class type 'Qcow2HeaderExtString' which has non-virtual destructor might cause undefined behavior [-Wdelete-non-virtual-dtor] 160 | delete backingfile_format_name; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ qcow2/qcow2_meta.cpp:161:9: warning: deleting object of polymorphic class type 'Qcow2HeaderExtFeatureNameTable' which has non-virtual destructor might cause undefined behavior [-Wdelete-non-virtual-dtor] 161 | delete feature_name_table; | ^~~~~~~~~~~~~~~~~~~~~~~~~~ qcow2/qcow2_meta.cpp:162:9: warning: deleting object of polymorphic class type 'Qcow2HeaderExtEncHeader' which has non-virtual destructor might cause undefined behavior [-Wdelete-non-virtual-dtor] 162 | delete enc_header_pointer; | ^~~~~~~~~~~~~~~~~~~~~~~~~~ qcow2/qcow2_meta.cpp:163:9: warning: deleting object of polymorphic class type 'Qcow2HeaderExtBitmaps' which has non-virtual destructor might cause undefined behavior [-Wdelete-non-virtual-dtor] 163 | delete bitmaps; | ^~~~~~~~~~~~~~~ qcow2/qcow2_meta.cpp:164:9: warning: deleting object of polymorphic class type 'Qcow2HeaderExtString' which has non-virtual destructor might cause undefined behavior [-Wdelete-non-virtual-dtor] 164 | delete ext_data_file_name; | ^~~~~~~~~~~~~~~~~~~~~~~~~~ qcow2/qcow2_meta.cpp: In member function 'int Qcow2Header::populate()': qcow2/qcow2_meta.cpp:238:28: warning: suggest parentheses around '+' in operand of '&' [-Wparentheses] 238 | start += 8 + (ext.len + 7) & ~0x7ULL; | ~~^~~~~~~~~~~~~~~ qcow2/qcow2_meta.cpp: In member function 'int Qcow2MappingMeta::__flush(Qcow2State&, const qcow2_io_ctx_t&, uint64_t, uint32_t, bool)': qcow2/qcow2_meta.cpp:313:51: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 5 has type 'uint64_t' {aka 'long unsigned int'} [-Wformat=] 313 | syslog(LOG_ERR, "%s %s: offset %llx is wrong\n", __func__, | ~~~^ | | | long long unsigned int | %lx 314 | typeid(*this).name(), offset); | ~~~~~~ | | | uint64_t {aka long unsigned int} qcow2/qcow2_meta.cpp:319:48: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 5 has type 'uint32_t' {aka 'unsigned int'} [-Wformat=] 319 | syslog(LOG_ERR, "%s %s: len %llx is wrong\n", __func__, | ~~~^ | | | long long unsigned int | %x 320 | typeid(*this).name(), len); | ~~~ | | | uint32_t {aka unsigned int} qcow2/qcow2_meta.cpp: In constructor 'Qcow2TopTable::Qcow2TopTable(Qcow2State&, uint64_t, uint32_t, const char*, uint32_t)': qcow2/qcow2_meta.cpp:379:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 379 | for (int i = 0; i < dirty.size(); i++) | ~~^~~~~~~~~~~~~~ qcow2/qcow2_meta.cpp: In member function 'virtual int Qcow2TopTable::flush(Qcow2State&, const qcow2_io_ctx_t&, uint64_t, uint32_t)': qcow2/qcow2_meta.cpp:424:44: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 424 | qcow2_assert(len == 512 && blk_idx < dirty.size()); | ~~~~~~~~^~~~~~~~~~~~~~ qcow2/qcow2_common.h:9:15: note: in definition of macro 'qcow2_assert' 9 | if (!(x)) { \ | ^ qcow2/qcow2_meta.cpp:424:44: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 424 | qcow2_assert(len == 512 && blk_idx < dirty.size()); | ~~~~~~~~^~~~~~~~~~~~~~ qcow2/qcow2_meta.cpp:424:9: note: in expansion of macro 'qcow2_assert' 424 | qcow2_assert(len == 512 && blk_idx < dirty.size()); | ^~~~~~~~~~~~ qcow2/qcow2_meta.cpp: In member function 'void Qcow2L1Table::dump()': qcow2/qcow2_meta.cpp:496:42: warning: format '%d' expects argument of type 'int', but argument 5 has type 'long unsigned int' [-Wformat=] 496 | syslog(LOG_INFO, "%s %s: sizeof %d\n", __func__, typeid(*this).name(), | ~^ | | | int | %ld 497 | sizeof(*this)); | ~~~~~~~~~~~~~ | | | long unsigned int qcow2/qcow2_meta.cpp:498:27: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] 498 | for (int i = 0; i < header.get_l1_size(); i++) | ~~^~~~~~~~~~~~~~~~~~~~~~ qcow2/qcow2_meta.cpp: In member function 'void Qcow2RefcountTable::dump()': qcow2/qcow2_meta.cpp:539:42: warning: format '%d' expects argument of type 'int', but argument 5 has type 'long unsigned int' [-Wformat=] 539 | syslog(LOG_INFO, "%s %s: sizeof %d\n", __func__, typeid(*this).name(), | ~^ | | | int | %ld 540 | sizeof(*this)); | ~~~~~~~~~~~~~ | | | long unsigned int qcow2/qcow2_meta.cpp:541:27: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] 541 | for (int i = 0; i < data_len / 8; i++) { | ~~^~~~~~~~~~~~~~ qcow2/qcow2_meta.cpp: In member function 'virtual void Qcow2SliceMeta::wait_clusters(Qcow2State&, const qcow2_io_ctx_t&)': qcow2/qcow2_meta.cpp:804:61: warning: suggest parentheses around '+' inside '<<' [-Wparentheses] 804 | cluster_off = virt_offset() + (u64)i << qs.header.cluster_bits; | ~~~~~~~~~~~~~~^~~~~~~~ qcow2/qcow2_meta.cpp:792:18: warning: unused variable 'cnt' [-Wunused-variable] 792 | unsigned cnt = 0; | ^~~ qcow2/qcow2_meta.cpp: In member function 'void Qcow2SliceMeta::reclaim_me()': qcow2/qcow2_meta.cpp:832:27: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare] 832 | for (int i = 0; i < queues; i++) { | ~~^~~~~~~~ qcow2/qcow2_meta.cpp: In member function 'virtual void Qcow2RefcountBlock::dump()': qcow2/qcow2_meta.cpp:937:54: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 6 has type 'uint64_t' {aka 'long unsigned int'} [-Wformat=] 937 | syslog(LOG_INFO, "%s %s: buf_sz %u offset %llx sizeof %d entries %u parent_idx %u virt_off %llx flags %x\n", | ~~~^ | | | long long unsigned int | %lx 938 | __func__, typeid(*this).name(), buf_sz, offset, sizeof(*this), | ~~~~~~ | | | uint64_t {aka long unsigned int} qcow2/qcow2_meta.cpp:937:64: warning: format '%d' expects argument of type 'int', but argument 7 has type 'long unsigned int' [-Wformat=] 937 | syslog(LOG_INFO, "%s %s: buf_sz %u offset %llx sizeof %d entries %u parent_idx %u virt_off %llx flags %x\n", | ~^ | | | int | %ld 938 | __func__, typeid(*this).name(), buf_sz, offset, sizeof(*this), | ~~~~~~~~~~~~~ | | | long unsigned int qcow2/qcow2_meta.cpp:937:103: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 10 has type 'uint64_t' {aka 'long unsigned int'} [-Wformat=] 937 | syslog(LOG_INFO, "%s %s: buf_sz %u offset %llx sizeof %d entries %u parent_idx %u virt_off %llx flags %x\n", | ~~~^ | | | long long unsigned int | %lx 938 | __func__, typeid(*this).name(), buf_sz, offset, sizeof(*this), 939 | cnt, parent_idx, virt_offset(), | ~~~~~~~~~~~~~ | | | uint64_t {aka long unsigned int} qcow2/qcow2_meta.cpp: In member function 'virtual void Qcow2L2Table::dump()': qcow2/qcow2_meta.cpp:1066:54: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 6 has type 'uint64_t' {aka 'long unsigned int'} [-Wformat=] 1066 | syslog(LOG_INFO, "%s %s: buf_sz %u offset %llx sizeof %d entries %u parent_idx %u virt_off %llx flags %x\n", | ~~~^ | | | long long unsigned int | %lx 1067 | __func__, typeid(*this).name(), buf_sz, offset, sizeof(*this), | ~~~~~~ | | | uint64_t {aka long unsigned int} qcow2/qcow2_meta.cpp:1066:64: warning: format '%d' expects argument of type 'int', but argument 7 has type 'long unsigned int' [-Wformat=] 1066 | syslog(LOG_INFO, "%s %s: buf_sz %u offset %llx sizeof %d entries %u parent_idx %u virt_off %llx flags %x\n", | ~^ | | | int | %ld 1067 | __func__, typeid(*this).name(), buf_sz, offset, sizeof(*this), | ~~~~~~~~~~~~~ | | | long unsigned int qcow2/qcow2_meta.cpp:1066:103: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 10 has type 'uint64_t' {aka 'long unsigned int'} [-Wformat=] 1066 | syslog(LOG_INFO, "%s %s: buf_sz %u offset %llx sizeof %d entries %u parent_idx %u virt_off %llx flags %x\n", | ~~~^ | | | long long unsigned int | %lx 1067 | __func__, typeid(*this).name(), buf_sz, offset, sizeof(*this), 1068 | cnt, parent_idx, virt_offset(), flags); | ~~~~~~~~~~~~~ | | | uint64_t {aka long unsigned int} g++ -DHAVE_CONFIG_H -I. -I./include -fcoroutines -std=c++20 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c -o ublk-utils.o `test -f 'qcow2/utils.cpp' || echo './'`qcow2/utils.cpp g++ -DHAVE_CONFIG_H -I. -I./include -fcoroutines -std=c++20 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c -o ublk-qcow2_flush_meta.o `test -f 'qcow2/qcow2_flush_meta.cpp' || echo './'`qcow2/qcow2_flush_meta.cpp In file included from qcow2/qcow2.h:16, from qcow2/utils.cpp:4: qcow2/qcow2_meta.h: In member function 'virtual void Qcow2HeaderExtEncHeader::dump() const': qcow2/qcow2_meta.h:246:67: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 6 has type 'long unsigned int' [-Wformat=] 246 | syslog(LOG_INFO,"%s: type %x len %d enc(offset %llx sz %lu)\n", | ~~~^ | | | long long unsigned int | %lx 247 | typeid(*this).name(), type, len, 248 | enc_offset, enc_len); | ~~~~~~~~~~ | | | long unsigned int qcow2/qcow2_meta.h: In member function 'uint32_t Qcow2TopTable::dirty_blks()': qcow2/qcow2_meta.h:433:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 433 | for (int i = 0; i < dirty.size(); i++) | ~~^~~~~~~~~~~~~~ qcow2/qcow2_meta.h: In member function 'int Qcow2TopTable::get_1st_dirty_blk()': qcow2/qcow2_meta.h:444:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 444 | for (int i = 0; i < dirty.size(); i++) | ~~^~~~~~~~~~~~~~ qcow2/qcow2.h: In member function 'bool Qcow2ClusterMapping::__entry_is_allocating(uint64_t)': qcow2/qcow2.h:215:30: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 215 | return state != -1; | ~~~~~~^~~~~ In file included from qcow2/qcow2_meta.h:5: qcow2/qcow2.h: In member function 'uint32_t Qcow2ClusterMapping::entry_get_alloc_owner(uint64_t, bool)': qcow2/qcow2.h:268:36: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 268 | qcow2_assert(state != -1); | ~~~~~~^~~~~ qcow2/qcow2_common.h:9:15: note: in definition of macro 'qcow2_assert' 9 | if (!(x)) { \ | ^ In file included from ./include/ublksrv.h:9, from ./include/ublksrv_priv.h:8, from qcow2/qcow2_common.h:5: qcow2/qcow2.h:268:36: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 268 | qcow2_assert(state != -1); | ~~~~~~^~~~~ qcow2/qcow2.h:268:17: note: in expansion of macro 'qcow2_assert' 268 | qcow2_assert(state != -1); | ^~~~~~~~~~~~ In file included from qcow2/qcow2.h:16, from qcow2/qcow2_flush_meta.cpp:2: qcow2/qcow2_meta.h: In member function 'virtual void Qcow2HeaderExtEncHeader::dump() const': qcow2/qcow2_meta.h:246:67: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 6 has type 'long unsigned int' [-Wformat=] 246 | syslog(LOG_INFO,"%s: type %x len %d enc(offset %llx sz %lu)\n", | ~~~^ | | | long long unsigned int | %lx 247 | typeid(*this).name(), type, len, 248 | enc_offset, enc_len); | ~~~~~~~~~~ | | | long unsigned int qcow2/qcow2_meta.h: In member function 'uint32_t Qcow2TopTable::dirty_blks()': qcow2/qcow2_meta.h:433:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 433 | for (int i = 0; i < dirty.size(); i++) | ~~^~~~~~~~~~~~~~ qcow2/qcow2_meta.h: In member function 'int Qcow2TopTable::get_1st_dirty_blk()': qcow2/qcow2_meta.h:444:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 444 | for (int i = 0; i < dirty.size(); i++) | ~~^~~~~~~~~~~~~~ qcow2/qcow2.h: In member function 'bool Qcow2ClusterMapping::__entry_is_allocating(uint64_t)': qcow2/qcow2.h:215:30: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 215 | return state != -1; | ~~~~~~^~~~~ In file included from qcow2/qcow2_meta.h:5: qcow2/qcow2.h: In member function 'uint32_t Qcow2ClusterMapping::entry_get_alloc_owner(uint64_t, bool)': qcow2/qcow2.h:268:36: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 268 | qcow2_assert(state != -1); | ~~~~~~^~~~~ qcow2/qcow2_common.h:9:15: note: in definition of macro 'qcow2_assert' 9 | if (!(x)) { \ | ^ In file included from ./include/ublksrv.h:9, from ./include/ublksrv_priv.h:8, from qcow2/qcow2_common.h:5: qcow2/qcow2.h:268:36: warning: comparison of integer expressions of different signedness: 'uint32_t' {aka 'unsigned int'} and 'int' [-Wsign-compare] 268 | qcow2_assert(state != -1); | ~~~~~~^~~~~ qcow2/qcow2.h:268:17: note: in expansion of macro 'qcow2_assert' 268 | qcow2_assert(state != -1); | ^~~~~~~~~~~~ qcow2/qcow2.h: In constructor 'MetaFlushingState::MetaFlushingState(Qcow2TopTable&, bool)': qcow2/qcow2.h:532:24: warning: 'MetaFlushingState::top' will be initialized after [-Wreorder] 532 | Qcow2TopTable ⊤ | ^~~ qcow2/qcow2.h:507:14: warning: 'bool MetaFlushingState::mapping' [-Wreorder] 507 | bool mapping; | ^~~~~~~ qcow2/qcow2_flush_meta.cpp:4:1: warning: when initialized here [-Wreorder] 4 | MetaFlushingState::MetaFlushingState(Qcow2TopTable &t, bool is_mapping): | ^~~~~~~~~~~~~~~~~ qcow2/qcow2_flush_meta.cpp: In member function 'void MetaFlushingState::__write_slices(Qcow2State&, ublksrv_queue*)': qcow2/qcow2_flush_meta.cpp:131:21: warning: unused variable 'ret' [-Wunused-variable] 131 | int ret, tag; | ^~~ qcow2/qcow2_flush_meta.cpp: In member function 'void MetaFlushingState::__write_top(Qcow2State&, ublksrv_queue*)': qcow2/qcow2_flush_meta.cpp:197:13: warning: unused variable 'ret' [-Wunused-variable] 197 | int ret, tag; | ^~~ qcow2/qcow2_flush_meta.cpp: In member function 'void MetaFlushingState::__prep_write_slice(Qcow2State&, ublksrv_queue*)': qcow2/qcow2_flush_meta.cpp:237:46: warning: comparison of integer expressions of different signedness: 'uint64_t' {aka 'long unsigned int'} and 'int32_t' {aka 'int'} [-Wsign-compare] 237 | qcow2_assert(idx >= 0 && idx < top.get_nr_entries()); | ~~~~^~~~~~~~~~~~~~~~~~~~~~ qcow2/qcow2_common.h:9:15: note: in definition of macro 'qcow2_assert' 9 | if (!(x)) { \ | ^ qcow2/qcow2_flush_meta.cpp:237:46: warning: comparison of integer expressions of different signedness: 'uint64_t' {aka 'long unsigned int'} and 'int32_t' {aka 'int'} [-Wsign-compare] 237 | qcow2_assert(idx >= 0 && idx < top.get_nr_entries()); | ~~~~^~~~~~~~~~~~~~~~~~~~~~ qcow2/qcow2_flush_meta.cpp:237:17: note: in expansion of macro 'qcow2_assert' 237 | qcow2_assert(idx >= 0 && idx < top.get_nr_entries()); | ^~~~~~~~~~~~ qcow2/qcow2_flush_meta.cpp: In member function 'void MetaFlushingState::__zero_my_cluster(Qcow2State&, ublksrv_queue*)': qcow2/qcow2_flush_meta.cpp:339:13: warning: unused variable 'ret' [-Wunused-variable] 339 | int ret, tag; | ^~~ qcow2/qcow2_flush_meta.cpp: In member function 'void MetaFlushingState::run_flush(Qcow2State&, ublksrv_queue*, int)': qcow2/qcow2_flush_meta.cpp:363:53: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare] 363 | if (top_blk_idx >= 0 && top_blk_idx < top.dirty_blk_size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ qcow2/qcow2.h: In constructor 'Qcow2MetaFlushing::Qcow2MetaFlushing(Qcow2State&)': qcow2/qcow2.h:579:21: warning: 'Qcow2MetaFlushing::state' will be initialized after [-Wreorder] 579 | Qcow2State &state; | ^~~~~ qcow2/qcow2.h:569:28: warning: 'std::vector Qcow2MetaFlushing::tags' [-Wreorder] 569 | std::vector tags; | ^~~~ qcow2/qcow2_flush_meta.cpp:529:1: warning: when initialized here [-Wreorder] 529 | Qcow2MetaFlushing::Qcow2MetaFlushing(Qcow2State &qs): state(qs), | ^~~~~~~~~~~~~~~~~ qcow2/qcow2.h:582:27: warning: 'Qcow2MetaFlushing::refcount_stat' will be initialized after [-Wreorder] 582 | MetaFlushingState refcount_stat; | ^~~~~~~~~~~~~ qcow2/qcow2.h:571:13: warning: 'int Qcow2MetaFlushing::refcnt_blk_start' [-Wreorder] 571 | int refcnt_blk_start; | ^~~~~~~~~~~~~~~~ qcow2/qcow2_flush_meta.cpp:529:1: warning: when initialized here [-Wreorder] 529 | Qcow2MetaFlushing::Qcow2MetaFlushing(Qcow2State &qs): state(qs), | ^~~~~~~~~~~~~~~~~ qcow2/qcow2_flush_meta.cpp:535:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 535 | for (int i = 0; i < tags.size(); i++) | ~~^~~~~~~~~~~~~ qcow2/qcow2_flush_meta.cpp: In member function 'void Qcow2MetaFlushing::free_tag(ublksrv_queue*, int)': qcow2/qcow2_flush_meta.cpp:552:42: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 552 | qcow2_assert(tag >= depth && tag < depth + tags.size()); | ~~~~^~~~~~~~~~~~~~~~~~~~~ qcow2/qcow2_common.h:9:15: note: in definition of macro 'qcow2_assert' 9 | if (!(x)) { \ | ^ qcow2/qcow2_flush_meta.cpp:552:42: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 552 | qcow2_assert(tag >= depth && tag < depth + tags.size()); | ~~~~^~~~~~~~~~~~~~~~~~~~~ qcow2/qcow2_flush_meta.cpp:552:9: note: in expansion of macro 'qcow2_assert' 552 | qcow2_assert(tag >= depth && tag < depth + tags.size()); | ^~~~~~~~~~~~ /bin/sh ./libtool --tag=CC --mode=link gcc -pthread -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes -o demo_null demo_null-demo_null.o lib/libublksrv.la -luring -lpthread libtool: link: gcc -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -Wl,-z -Wl,relro -Wl,--as-needed -Wl,-z -Wl,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes -o .libs/demo_null demo_null-demo_null.o lib/.libs/libublksrv.so -luring -lpthread -pthread /bin/sh ./libtool --tag=CC --mode=link gcc -pthread -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes -o demo_event demo_event-demo_event.o lib/libublksrv.la -luring -lpthread libtool: link: gcc -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -Wl,-z -Wl,relro -Wl,--as-needed -Wl,-z -Wl,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes -o .libs/demo_event demo_event-demo_event.o lib/.libs/libublksrv.so -luring -lpthread -pthread /bin/sh ./libtool --tag=CXX --mode=link g++ -fcoroutines -std=c++20 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes -o ublk ublk-ublksrv_tgt.o ublk-tgt_null.o ublk-tgt_loop.o ublk-tgt_qcow2.o ublk-qcow2.o ublk-qcow2_meta.o ublk-utils.o ublk-qcow2_flush_meta.o lib/libublksrv.la -luring -lpthread libtool: link: g++ -fcoroutines -std=c++20 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -Wl,-z -Wl,relro -Wl,--as-needed -Wl,-z -Wl,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes -o .libs/ublk ublk-ublksrv_tgt.o ublk-tgt_null.o ublk-tgt_loop.o ublk-tgt_qcow2.o ublk-qcow2.o ublk-qcow2_meta.o ublk-utils.o ublk-qcow2_flush_meta.o lib/.libs/libublksrv.so -luring -lpthread make[2]: Leaving directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262' make[1]: Leaving directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262' + RPM_EC=0 ++ jobs -p + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.QCX4G1 + umask 022 + cd /builddir/build/BUILD + '[' /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64 '!=' / ']' + rm -rf /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64 ++ dirname /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64 + mkdir -p /builddir/build/BUILDROOT + mkdir /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64 + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262 + /usr/bin/make install DESTDIR=/builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64 'INSTALL=/usr/bin/install -p' Making install in include make[1]: Entering directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/include' make[2]: Entering directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/include' make[2]: Nothing to be done for 'install-exec-am'. /usr/bin/mkdir -p '/builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/include' /usr/bin/install -p -m 644 ublksrv.h ublk_cmd.h ublksrv_aio.h '/builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/include' make[2]: Leaving directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/include' make[1]: Leaving directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/include' Making install in lib make[1]: Entering directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/lib' make[2]: Entering directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/lib' /usr/bin/mkdir -p '/builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/lib64' /bin/sh ../libtool --mode=install /usr/bin/install -p libublksrv.la '/builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/lib64' libtool: install: /usr/bin/install -p .libs/libublksrv.so.0.0.0 /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/lib64/libublksrv.so.0.0.0 libtool: install: (cd /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/lib64 && { ln -s -f libublksrv.so.0.0.0 libublksrv.so.0 || { rm -f libublksrv.so.0 && ln -s libublksrv.so.0.0.0 libublksrv.so.0; }; }) libtool: install: (cd /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/lib64 && { ln -s -f libublksrv.so.0.0.0 libublksrv.so || { rm -f libublksrv.so && ln -s libublksrv.so.0.0.0 libublksrv.so; }; }) libtool: install: /usr/bin/install -p .libs/libublksrv.lai /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/lib64/libublksrv.la libtool: warning: remember to run 'libtool --finish /usr/lib64' make[2]: Nothing to be done for 'install-data-am'. make[2]: Leaving directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/lib' make[1]: Leaving directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/lib' Making install in tests make[1]: Entering directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/tests' make[2]: Entering directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/tests' make[2]: Nothing to be done for 'install-exec-am'. make[2]: Nothing to be done for 'install-data-am'. make[2]: Leaving directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/tests' make[1]: Leaving directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262/tests' make[1]: Entering directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262' make[2]: Entering directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262' /usr/bin/mkdir -p '/builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/sbin' /bin/sh ./libtool --mode=install /usr/bin/install -p ublk '/builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/sbin' libtool: warning: 'lib/libublksrv.la' has not been installed in '/usr/lib64' libtool: install: /usr/bin/install -p .libs/ublk /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/sbin/ublk /usr/bin/mkdir -p '/builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/lib64/pkgconfig' /usr/bin/install -p -m 644 ublksrv.pc '/builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/lib64/pkgconfig' make[2]: Leaving directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262' make[1]: Leaving directory '/builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262' + rm /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/lib64/libublksrv.la + /usr/bin/find-debuginfo -j2 --strict-build-id -m -i --build-id-seed 1.0-2.20221105gitca8baff.fc38 --unique-debug-suffix -1.0-2.20221105gitca8baff.fc38.x86_64 --unique-debug-src-base ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64 --run-dwz --dwz-low-mem-die-limit 10000000 --dwz-max-die-limit 110000000 -S debugsourcefiles.list /builddir/build/BUILD/ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262 extracting debug info from /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/lib64/libublksrv.so.0.0.0 extracting debug info from /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/sbin/ublk original debug info size: 6088kB, size after compression: 5500kB /usr/bin/sepdebugcrcfix: Updated 2 CRC32s, 0 CRC32s did match. 2227 blocks + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/redhat/brp-ldconfig + /usr/lib/rpm/brp-compress + /usr/lib/rpm/redhat/brp-strip-lto /usr/bin/strip + /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/check-rpaths + /usr/lib/rpm/redhat/brp-mangle-shebangs + /usr/lib/rpm/brp-remove-la-files + /usr/lib/rpm/redhat/brp-python-bytecompile '' 1 0 + /usr/lib/rpm/redhat/brp-python-hardlink Processing files: ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64 Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.AtKzbI + umask 022 + cd /builddir/build/BUILD + cd ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262 + DOCDIR=/builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/share/doc/ubdsrv + export LC_ALL=C + LC_ALL=C + export DOCDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/share/doc/ubdsrv + cp -pr README.rst /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/share/doc/ubdsrv + RPM_EC=0 ++ jobs -p + exit 0 Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.3wED9S + umask 022 + cd /builddir/build/BUILD + cd ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262 + LICENSEDIR=/builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/share/licenses/ubdsrv + export LC_ALL=C + LC_ALL=C + export LICENSEDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/share/licenses/ubdsrv + cp -pr COPYING /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/share/licenses/ubdsrv + cp -pr COPYING.LGPL /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/share/licenses/ubdsrv + cp -pr LICENSE /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/share/licenses/ubdsrv + RPM_EC=0 ++ jobs -p + exit 0 Provides: libublksrv.so.0()(64bit) ubdsrv = 1.0-2.20221105gitca8baff.fc38 ubdsrv(x86-64) = 1.0-2.20221105gitca8baff.fc38 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: libc.so.6()(64bit) libc.so.6(GLIBC_2.14)(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.3.4)(64bit) libc.so.6(GLIBC_2.30)(64bit) libc.so.6(GLIBC_2.32)(64bit) libc.so.6(GLIBC_2.33)(64bit) libc.so.6(GLIBC_2.34)(64bit) libc.so.6(GLIBC_2.4)(64bit) libc.so.6(GLIBC_2.7)(64bit) libc.so.6(GLIBC_2.8)(64bit) libgcc_s.so.1()(64bit) libgcc_s.so.1(GCC_3.0)(64bit) libgcc_s.so.1(GCC_3.3.1)(64bit) libm.so.6()(64bit) libstdc++.so.6()(64bit) libstdc++.so.6(CXXABI_1.3)(64bit) libstdc++.so.6(CXXABI_1.3.9)(64bit) libstdc++.so.6(GLIBCXX_3.4)(64bit) libstdc++.so.6(GLIBCXX_3.4.11)(64bit) libstdc++.so.6(GLIBCXX_3.4.14)(64bit) libstdc++.so.6(GLIBCXX_3.4.15)(64bit) libstdc++.so.6(GLIBCXX_3.4.18)(64bit) libstdc++.so.6(GLIBCXX_3.4.19)(64bit) libstdc++.so.6(GLIBCXX_3.4.21)(64bit) libstdc++.so.6(GLIBCXX_3.4.29)(64bit) libstdc++.so.6(GLIBCXX_3.4.30)(64bit) libstdc++.so.6(GLIBCXX_3.4.9)(64bit) libublksrv.so.0()(64bit) liburing.so.2()(64bit) liburing.so.2(LIBURING_2.0)(64bit) liburing.so.2(LIBURING_2.1)(64bit) liburing.so.2(LIBURING_2.2)(64bit) rtld(GNU_HASH) Processing files: ubdsrv-devel-1.0-2.20221105gitca8baff.fc38.x86_64 Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.5vEjlH + umask 022 + cd /builddir/build/BUILD + cd ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262 + DOCDIR=/builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/share/doc/ubdsrv-devel + export LC_ALL=C + LC_ALL=C + export DOCDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/share/doc/ubdsrv-devel + cp -pr README.rst /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/share/doc/ubdsrv-devel + RPM_EC=0 ++ jobs -p + exit 0 Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.VIlZGw + umask 022 + cd /builddir/build/BUILD + cd ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262 + LICENSEDIR=/builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/share/licenses/ubdsrv-devel + export LC_ALL=C + LC_ALL=C + export LICENSEDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/share/licenses/ubdsrv-devel + cp -pr COPYING /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/share/licenses/ubdsrv-devel + cp -pr COPYING.LGPL /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/share/licenses/ubdsrv-devel + cp -pr LICENSE /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64/usr/share/licenses/ubdsrv-devel + RPM_EC=0 ++ jobs -p + exit 0 Provides: pkgconfig(ublksrv) = 1.0 ubdsrv-devel = 1.0-2.20221105gitca8baff.fc38 ubdsrv-devel(x86-64) = 1.0-2.20221105gitca8baff.fc38 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: /usr/bin/pkg-config libublksrv.so.0()(64bit) pkgconfig(liburing) Processing files: ubdsrv-debugsource-1.0-2.20221105gitca8baff.fc38.x86_64 Provides: ubdsrv-debugsource = 1.0-2.20221105gitca8baff.fc38 ubdsrv-debugsource(x86-64) = 1.0-2.20221105gitca8baff.fc38 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Processing files: ubdsrv-debuginfo-1.0-2.20221105gitca8baff.fc38.x86_64 Provides: debuginfo(build-id) = 8fe068a0af93b9d349eccc629a706151e00d1b7f debuginfo(build-id) = 918adfc1c51d87e894ff413e6dcfe069f20c7534 libublksrv.so.0.0.0-1.0-2.20221105gitca8baff.fc38.x86_64.debug()(64bit) ubdsrv-debuginfo = 1.0-2.20221105gitca8baff.fc38 ubdsrv-debuginfo(x86-64) = 1.0-2.20221105gitca8baff.fc38 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Recommends: ubdsrv-debugsource(x86-64) = 1.0-2.20221105gitca8baff.fc38 Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64 Wrote: /builddir/build/RPMS/ubdsrv-debugsource-1.0-2.20221105gitca8baff.fc38.x86_64.rpm Wrote: /builddir/build/RPMS/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64.rpm Wrote: /builddir/build/RPMS/ubdsrv-devel-1.0-2.20221105gitca8baff.fc38.x86_64.rpm Wrote: /builddir/build/RPMS/ubdsrv-debuginfo-1.0-2.20221105gitca8baff.fc38.x86_64.rpm Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.kELrqU + umask 022 + cd /builddir/build/BUILD + cd ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262 + /usr/bin/rm -rf /builddir/build/BUILDROOT/ubdsrv-1.0-2.20221105gitca8baff.fc38.x86_64 + RPM_EC=0 ++ jobs -p + exit 0 Executing(rmbuild): /bin/sh -e /var/tmp/rpm-tmp.ADH7Tc + umask 022 + cd /builddir/build/BUILD + rm -rf ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262 ubdsrv-ca8baff898868f2ee6f5cdda9c16cf8d94435262.gemspec + RPM_EC=0 ++ jobs -p + exit 0 Child return code was: 0