DEBUG: Executing shell function do_compile
NOTE: make -j 8 -C wdmd CMD_LDFLAGS=-Wl,-O1  -Wl,--as-needed -fstack-protector-strong -Wl,-z,relro,-z,now LIB_LDFLAGS=-Wl,-O1  -Wl,--as-needed -fstack-protector-strong -Wl,-z,relro,-z,now
make: Entering directory 'TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/git/wdmd'
mips-bec-linux-musl-gcc  -meb -mabi=32 -mhard-float -march=mips32r2 -fstack-protector-strong  -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot  -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0=/usr/src/debug/sanlock/3.6.0-r0 -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot= -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot-native=  -D_GNU_SOURCE -g -O2 -Wall -Wformat -Wformat-security -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wextra -Wshadow -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Winline -Wredundant-decls -Wno-sign-compare -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fasynchronous-unwind-tables -fdiagnostics-show-option -fPIE -DPIE -DVERSION=\"3.6.0\" -Wl,-O1  -Wl,--as-needed -fstack-protector-strong -Wl,-z,relro,-z,now -shared -fPIC -o libwdmd.so.1.0 -Wl,-soname=libwdmd.so.1 client.c wdmd_sock.c
wdmd_sock.c: In function 'wdmd_socket_address':
wdmd_sock.c:23:2: warning: implicit declaration of function 'memset' [-Wimplicit-function-declaration]
  memset(addr, 0, sizeof(struct sockaddr_un));
  ^~~~~~
wdmd_sock.c:23:2: warning: incompatible implicit declaration of built-in function 'memset'
wdmd_sock.c:23:2: note: include '<string.h>' or provide a declaration of 'memset'
wdmd_sock.c:20:1:
+#include <string.h>
 
wdmd_sock.c:23:2:
  memset(addr, 0, sizeof(struct sockaddr_un));
  ^~~~~~
ln -sf libwdmd.so.1.0 libwdmd.so
ln -sf libwdmd.so.1.0 libwdmd.so.1
mips-bec-linux-musl-gcc  -meb -mabi=32 -mhard-float -march=mips32r2 -fstack-protector-strong  -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot  -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0=/usr/src/debug/sanlock/3.6.0-r0 -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot= -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot-native=  -D_GNU_SOURCE -g -O2 -Wall -Wformat -Wformat-security -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wextra -Wshadow -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Winline -Wredundant-decls -Wno-sign-compare -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fasynchronous-unwind-tables -fdiagnostics-show-option -fPIE -DPIE -DVERSION=\"3.6.0\" -Wl,-O1  -Wl,--as-needed -fstack-protector-strong -Wl,-z,relro,-z,now main.c wdmd_sock.c -lwdmd -lrt -o wdmd -L.
mips-bec-linux-musl-gcc  -meb -mabi=32 -mhard-float -march=mips32r2 -fstack-protector-strong  -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot  -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0=/usr/src/debug/sanlock/3.6.0-r0 -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot= -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot-native=  -D_GNU_SOURCE -g -O2 -Wall -Wformat -Wformat-security -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wextra -Wshadow -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Winline -Wredundant-decls -Wno-sign-compare -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fasynchronous-unwind-tables -fdiagnostics-show-option -fPIE -DPIE -DVERSION=\"3.6.0\" -lwdmd wdmd_client.c -lwdmd -lrt -o wdmd_client -L.
wdmd_sock.c: In function 'wdmd_socket_address':
wdmd_sock.c:23:2: warning: implicit declaration of function 'memset' [-Wimplicit-function-declaration]
  memset(addr, 0, sizeof(struct sockaddr_un));
  ^~~~~~
wdmd_sock.c:23:2: warning: incompatible implicit declaration of built-in function 'memset'
wdmd_sock.c:23:2: note: include '<string.h>' or provide a declaration of 'memset'
wdmd_sock.c:20:1:
+#include <string.h>
 
wdmd_sock.c:23:2:
  memset(addr, 0, sizeof(struct sockaddr_un));
  ^~~~~~
make: Leaving directory 'TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/git/wdmd'
NOTE: make -j 8 -C src CMD_LDFLAGS=-Wl,-O1  -Wl,--as-needed -fstack-protector-strong -Wl,-z,relro,-z,now LIB_ENTIRE_LDFLAGS=-Wl,-O1  -Wl,--as-needed -fstack-protector-strong -Wl,-z,relro,-z,now LIB_CLIENT_LDFLAGS=-Wl,-O1  -Wl,--as-needed -fstack-protector-strong -Wl,-z,relro,-z,now
make: Entering directory 'TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/git/src'
mips-bec-linux-musl-gcc  -meb -mabi=32 -mhard-float -march=mips32r2 -fstack-protector-strong  -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot  -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0=/usr/src/debug/sanlock/3.6.0-r0 -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot= -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot-native=  -D_GNU_SOURCE -Wall -Wformat -Wformat-security -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wextra -Wshadow -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Winline -Wredundant-decls -Wno-sign-compare -Wno-strict-overflow -fexceptions -fasynchronous-unwind-tables -fdiagnostics-show-option -O2 -Wp,-D_FORTIFY_SOURCE=2  -DVERSION=\"3.6.0\" -Wl,-O1  -Wl,--as-needed -fstack-protector-strong -Wl,-z,relro,-z,now -shared -fPIC -o libsanlock.so.1.0 -Wl,-soname=libsanlock.so.1 client.c sanlock_sock.c crc32c.c diskio.c ondisk.c delta_lease.c paxos_lease.c rindex.c direct.c task.c timeouts.c direct_lib.c monotime.c env.c -lpthread -lrt -laio -lblkid -L../wdmd -lwdmd
mips-bec-linux-musl-gcc  -meb -mabi=32 -mhard-float -march=mips32r2 -fstack-protector-strong  -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot  -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0=/usr/src/debug/sanlock/3.6.0-r0 -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot= -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot-native=  -D_GNU_SOURCE -Wall -Wformat -Wformat-security -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wextra -Wshadow -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Winline -Wredundant-decls -Wno-sign-compare -Wno-strict-overflow -fexceptions -fasynchronous-unwind-tables -fdiagnostics-show-option -O2 -Wp,-D_FORTIFY_SOURCE=2  -DVERSION=\"3.6.0\" -Wl,-O1  -Wl,--as-needed -fstack-protector-strong -Wl,-z,relro,-z,now -shared -fPIC -o libsanlock_client.so.1.0 -Wl,-soname=libsanlock_client.so.1 client.c sanlock_sock.c env.c
sed -e "s/@VERSION@/3.6.0/" libsanlock.pc.in > libsanlock.pc
sed -e "s/@VERSION@/3.6.0/" libsanlock_client.pc.in > libsanlock_client.pc
client.c: In function 'sanlock_get_hosts':
client.c:284:2: warning: 'strncpy' specified bound 48 equals destination size [-Wstringop-truncation]
  strncpy(ls.name, ls_name, SANLK_NAME_LEN);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
client.c: In function 'sanlock_get_hosts':
client.c:284:2: warning: 'strncpy' specified bound 48 equals destination size [-Wstringop-truncation]
  strncpy(ls.name, ls_name, SANLK_NAME_LEN);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
client.c: In function 'sanlock_set_config':
client.c:369:2: warning: 'strncpy' specified bound 48 equals destination size [-Wstringop-truncation]
  strncpy(ls.name, ls_name, SANLK_NAME_LEN);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
client.c: In function 'sanlock_set_config':
client.c:369:2: warning: 'strncpy' specified bound 48 equals destination size [-Wstringop-truncation]
  strncpy(ls.name, ls_name, SANLK_NAME_LEN);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
client.c: In function 'sanlock_reg_event':
client.c:796:2: warning: 'strncpy' specified bound 48 equals destination size [-Wstringop-truncation]
  strncpy(ls.name, ls_name, SANLK_NAME_LEN);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
client.c: In function 'sanlock_end_event':
client.c:874:2: warning: 'strncpy' specified bound 48 equals destination size [-Wstringop-truncation]
  strncpy(ls.name, ls_name, SANLK_NAME_LEN);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
client.c: In function 'sanlock_reg_event':
client.c:796:2: warning: 'strncpy' specified bound 48 equals destination size [-Wstringop-truncation]
  strncpy(ls.name, ls_name, SANLK_NAME_LEN);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
client.c: In function 'sanlock_set_event':
client.c:921:2: warning: 'strncpy' specified bound 48 equals destination size [-Wstringop-truncation]
  strncpy(ls.name, ls_name, SANLK_NAME_LEN);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
client.c: In function 'sanlock_end_event':
client.c:874:2: warning: 'strncpy' specified bound 48 equals destination size [-Wstringop-truncation]
  strncpy(ls.name, ls_name, SANLK_NAME_LEN);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
client.c: In function 'sanlock_set_event':
client.c:921:2: warning: 'strncpy' specified bound 48 equals destination size [-Wstringop-truncation]
  strncpy(ls.name, ls_name, SANLK_NAME_LEN);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
client.c: In function 'sanlock_str_to_lockspace':
client.c:2276:2: warning: 'strncpy' specified bound 48 equals destination size [-Wstringop-truncation]
  strncpy(ls->name, str, SANLK_NAME_LEN);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
client.c: In function 'sanlock_str_to_lockspace':
client.c:2276:2: warning: 'strncpy' specified bound 48 equals destination size [-Wstringop-truncation]
  strncpy(ls->name, str, SANLK_NAME_LEN);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sanlock_sock.c: In function 'sanlock_socket_address':
sanlock_sock.c:23:2: warning: implicit declaration of function 'memset' [-Wimplicit-function-declaration]
  memset(addr, 0, sizeof(struct sockaddr_un));
  ^~~~~~
sanlock_sock.c:23:2: warning: incompatible implicit declaration of built-in function 'memset'
sanlock_sock.c:23:2: note: include '<string.h>' or provide a declaration of 'memset'
sanlock_sock.c:20:1:
+#include <string.h>
 
sanlock_sock.c:23:2:
  memset(addr, 0, sizeof(struct sockaddr_un));
  ^~~~~~
sanlock_sock.c: In function 'sanlock_socket_address':
sanlock_sock.c:23:2: warning: implicit declaration of function 'memset' [-Wimplicit-function-declaration]
  memset(addr, 0, sizeof(struct sockaddr_un));
  ^~~~~~
sanlock_sock.c:23:2: warning: incompatible implicit declaration of built-in function 'memset'
sanlock_sock.c:23:2: note: include '<string.h>' or provide a declaration of 'memset'
sanlock_sock.c:20:1:
+#include <string.h>
 
sanlock_sock.c:23:2:
  memset(addr, 0, sizeof(struct sockaddr_un));
  ^~~~~~
In file included from sanlock_internal.h:32,
                 from diskio.c:29:
diskio.c: In function 'find_callback_slot':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
diskio.c:358:26: note: in expansion of macro 'container_of'
   struct aicb *ev_aicb = container_of(ev_iocb, struct aicb, iocb);
                          ^~~~~~~~~~~~
diskio.c: In function 'do_linux_aio':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
diskio.c:472:26: note: in expansion of macro 'container_of'
   struct aicb *ev_aicb = container_of(ev_iocb, struct aicb, iocb);
                          ^~~~~~~~~~~~
diskio.c: In function 'read_iobuf_reap':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
diskio.c:895:26: note: in expansion of macro 'container_of'
   struct aicb *ev_aicb = container_of(ev_iocb, struct aicb, iocb);
                          ^~~~~~~~~~~~
ln -sf libsanlock_client.so.1.0 libsanlock_client.so
ln -sf libsanlock_client.so.1.0 libsanlock_client.so.1
paxos_lease.c: In function 'run_ballot':
paxos_lease.c:555:13: warning: cast increases required alignment of target type [-Wcast-align]
    bk_end = (struct paxos_dblock *)(iobuf[d] + ((2 + q)*sector_size));
             ^
paxos_lease.c:768:13: warning: cast increases required alignment of target type [-Wcast-align]
    bk_end = (struct paxos_dblock *)(iobuf[d] + ((2 + q)*sector_size));
             ^
paxos_lease.c: In function '_lease_read_one':
paxos_lease.c:1340:12: warning: cast increases required alignment of target type [-Wcast-align]
   bk_end = (struct paxos_dblock *)(iobuf + ((2 + q) * sector_size));
            ^
paxos_lease.c: In function '_lease_read_one.constprop':
paxos_lease.c:1365:4: warning: 'strncat' output may be truncated copying 79 bytes from a string of length 79 [-Wstringop-truncation]
    strncat(bk_debug, bk_str, BK_STR_SIZE-1);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'run_ballot',
    inlined from 'paxos_lease_acquire' at paxos_lease.c:2039:10:
paxos_lease.c:580:5: warning: 'strncat' output may be truncated copying 79 bytes from a string of length 79 [-Wstringop-truncation]
     strncat(bk_debug, bk_str, BK_STR_SIZE-1);
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
paxos_lease.c:793:5: warning: 'strncat' output may be truncated copying 79 bytes from a string of length 79 [-Wstringop-truncation]
     strncat(bk_debug, bk_str, BK_STR_SIZE-1);
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rindex.c: In function 'search_entries':
rindex.c:147:12: warning: cast increases required alignment of target type [-Wcast-align]
   re_end = (struct rindex_entry *)(rindex_iobuf + entry_offset_in_rindex);
            ^
rindex.c: In function 'read_rindex_header':
rindex.c:305:11: warning: cast increases required alignment of target type [-Wcast-align]
  rh_end = (struct rindex_header *)iobuf;
           ^
rindex.c: In function 'rindex_lookup':
rindex.c:775:12: warning: cast increases required alignment of target type [-Wcast-align]
   re_end = (struct rindex_entry *)(rindex_iobuf + ent_offset);
            ^
rindex.c:805:12: warning: cast increases required alignment of target type [-Wcast-align]
   re_end = (struct rindex_entry *)(rindex_iobuf + ent_offset);
            ^
direct.c: In function 'direct_read_leader_sector_size':
direct.c:58:11: warning: cast increases required alignment of target type [-Wcast-align]
  lr_end = (struct leader_record *)data;
           ^
direct.c: In function 'direct_dump':
direct.c:585:13: warning: cast increases required alignment of target type [-Wcast-align]
    lr_end = (struct leader_record *)data;
             ^
direct.c:590:14: warning: cast increases required alignment of target type [-Wcast-align]
     lr_end = (struct leader_record *)(data + (i * sector_size));
              ^
direct.c:622:13: warning: cast increases required alignment of target type [-Wcast-align]
    lr_end = (struct leader_record *)data;
             ^
direct.c:638:37: warning: cast increases required alignment of target type [-Wcast-align]
     struct request_record *rr_end = (struct request_record *)(data + sd.sector_size);
                                     ^
direct.c:647:33: warning: cast increases required alignment of target type [-Wcast-align]
     struct mode_block *mb_end = (struct mode_block *)(pd_end + MBLOCK_OFFSET);
                                 ^
direct.c:650:22: warning: cast increases required alignment of target type [-Wcast-align]
      paxos_dblock_in((struct paxos_dblock *)pd_end, &dblock);
                      ^
direct.c:674:13: warning: cast increases required alignment of target type [-Wcast-align]
    rh_end = (struct rindex_header *)data;
             ^
direct.c:694:15: warning: cast increases required alignment of target type [-Wcast-align]
      re_end = (struct rindex_entry *)(data + (i * sector_size) + (j * entry_size));
               ^
direct.c: In function 'direct_next_free':
direct.c:774:12: warning: cast increases required alignment of target type [-Wcast-align]
   lr_end = (struct leader_record *)data;
            ^
direct.c: In function 'direct_dump':
direct.c:537:2: warning: 'strncpy' specified bound 1024 equals destination size [-Wstringop-truncation]
  strncpy(sd.path, dump_path, SANLK_PATH_LEN);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
direct.c: In function 'direct_next_free':
direct.c:744:2: warning: 'strncpy' specified bound 1024 equals destination size [-Wstringop-truncation]
  strncpy(sd.path, path, SANLK_PATH_LEN);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sanlock_internal.h:32,
                 from task.c:25:
task.c: In function 'close_task_aio':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
task.c:123:27: note: in expansion of macro 'container_of'
    struct aicb *ev_aicb = container_of(ev_iocb, struct aicb, iocb);
                           ^~~~~~~~~~~~
In file included from sanlock_internal.h:33,
                 from direct_lib.c:18:
monotime.h:13:21: warning: 'struct timespec' declared inside parameter list will not be visible outside of this definition or declaration
 void ts_diff(struct timespec *begin, struct timespec *end, struct timespec *diff);
                     ^~~~~~~~
ln -sf libsanlock.so.1.0 libsanlock.so
ln -sf libsanlock.so.1.0 libsanlock.so.1
mips-bec-linux-musl-gcc  -meb -mabi=32 -mhard-float -march=mips32r2 -fstack-protector-strong  -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot  -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0=/usr/src/debug/sanlock/3.6.0-r0 -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot= -fdebug-prefix-map=TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/recipe-sysroot-native=  -D_GNU_SOURCE -Wall -Wformat -Wformat-security -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wextra -Wshadow -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Winline -Wredundant-decls -Wno-sign-compare -Wno-strict-overflow -fexceptions -fasynchronous-unwind-tables -fdiagnostics-show-option -O2 -Wp,-D_FORTIFY_SOURCE=2  -DVERSION=\"3.6.0\" -fPIE -DPIE -Wl,-O1  -Wl,--as-needed -fstack-protector-strong -Wl,-z,relro,-z,now crc32c.c delta_lease.c direct.c diskio.c ondisk.c helper.c lockspace.c lockfile.c log.c main.c paxos_lease.c task.c timeouts.c resource.c rindex.c watchdog.c monotime.c cmd.c client_cmd.c sanlock_sock.c env.c -lpthread -luuid -lrt -laio -lblkid -lsanlock -L../wdmd -lwdmd -o sanlock -L.
direct.c: In function 'direct_read_leader_sector_size':
direct.c:58:11: warning: cast increases required alignment of target type [-Wcast-align]
  lr_end = (struct leader_record *)data;
           ^
direct.c: In function 'direct_dump':
direct.c:585:13: warning: cast increases required alignment of target type [-Wcast-align]
    lr_end = (struct leader_record *)data;
             ^
direct.c:590:14: warning: cast increases required alignment of target type [-Wcast-align]
     lr_end = (struct leader_record *)(data + (i * sector_size));
              ^
direct.c:622:13: warning: cast increases required alignment of target type [-Wcast-align]
    lr_end = (struct leader_record *)data;
             ^
direct.c:638:37: warning: cast increases required alignment of target type [-Wcast-align]
     struct request_record *rr_end = (struct request_record *)(data + sd.sector_size);
                                     ^
direct.c:647:33: warning: cast increases required alignment of target type [-Wcast-align]
     struct mode_block *mb_end = (struct mode_block *)(pd_end + MBLOCK_OFFSET);
                                 ^
direct.c:650:22: warning: cast increases required alignment of target type [-Wcast-align]
      paxos_dblock_in((struct paxos_dblock *)pd_end, &dblock);
                      ^
direct.c:674:13: warning: cast increases required alignment of target type [-Wcast-align]
    rh_end = (struct rindex_header *)data;
             ^
direct.c:694:15: warning: cast increases required alignment of target type [-Wcast-align]
      re_end = (struct rindex_entry *)(data + (i * sector_size) + (j * entry_size));
               ^
direct.c: In function 'direct_next_free':
direct.c:774:12: warning: cast increases required alignment of target type [-Wcast-align]
   lr_end = (struct leader_record *)data;
            ^
direct.c: In function 'direct_dump':
direct.c:537:2: warning: 'strncpy' specified bound 1024 equals destination size [-Wstringop-truncation]
  strncpy(sd.path, dump_path, SANLK_PATH_LEN);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
direct.c: In function 'direct_next_free':
direct.c:744:2: warning: 'strncpy' specified bound 1024 equals destination size [-Wstringop-truncation]
  strncpy(sd.path, path, SANLK_PATH_LEN);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sanlock_internal.h:32,
                 from diskio.c:29:
diskio.c: In function 'find_callback_slot':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
diskio.c:358:26: note: in expansion of macro 'container_of'
   struct aicb *ev_aicb = container_of(ev_iocb, struct aicb, iocb);
                          ^~~~~~~~~~~~
diskio.c: In function 'do_linux_aio':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
diskio.c:472:26: note: in expansion of macro 'container_of'
   struct aicb *ev_aicb = container_of(ev_iocb, struct aicb, iocb);
                          ^~~~~~~~~~~~
diskio.c: In function 'read_iobuf_reap':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
diskio.c:895:26: note: in expansion of macro 'container_of'
   struct aicb *ev_aicb = container_of(ev_iocb, struct aicb, iocb);
                          ^~~~~~~~~~~~
In file included from sanlock_internal.h:32,
                 from lockspace.c:27:
lockspace.c: In function '_search_space':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
lockspace.c:60:3: note: in expansion of macro 'list_for_each_entry'
   list_for_each_entry(sp, heads[i], list) {
   ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
lockspace.c:60:3: note: in expansion of macro 'list_for_each_entry'
   list_for_each_entry(sp, heads[i], list) {
   ^~~~~~~~~~~~~~~~~~~
lockspace.c: In function 'find_lockspace_id':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
lockspace.c:87:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(sp, &spaces, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
lockspace.c:87:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(sp, &spaces, list) {
  ^~~~~~~~~~~~~~~~~~~
lockspace.c: In function '_lockspace_info':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
lockspace.c:110:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(sp, &spaces, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
lockspace.c:110:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(sp, &spaces, list) {
  ^~~~~~~~~~~~~~~~~~~
lockspace.c: In function 'lockspace_disk':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
lockspace.c:137:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(sp, &spaces, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
lockspace.c:137:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(sp, &spaces, list) {
  ^~~~~~~~~~~~~~~~~~~
lockspace.c: In function 'host_status_set_bit':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
lockspace.c:197:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(sp, &spaces, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
lockspace.c:197:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(sp, &spaces, list) {
  ^~~~~~~~~~~~~~~~~~~
lockspace.c: In function 'host_info':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
lockspace.c:223:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(sp, &spaces, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
lockspace.c:223:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(sp, &spaces, list) {
  ^~~~~~~~~~~~~~~~~~~
lockspace.c: In function 'check_other_leases':
lockspace.c:311:16: warning: cast increases required alignment of target type [-Wcast-align]
   leader_end = (struct leader_record *)(buf + (i * sp->sector_size));
                ^
lockspace.c: In function 'get_lockspaces':
lockspace.c:1177:7: warning: cast increases required alignment of target type [-Wcast-align]
  ls = (struct sanlk_lockspace *)buf;
       ^
In file included from sanlock_internal.h:32,
                 from lockspace.c:27:
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
lockspace.c:1181:3: note: in expansion of macro 'list_for_each_entry'
   list_for_each_entry(sp, heads[i], list) {
   ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
lockspace.c:1181:3: note: in expansion of macro 'list_for_each_entry'
   list_for_each_entry(sp, heads[i], list) {
   ^~~~~~~~~~~~~~~~~~~
lockspace.c: In function 'get_hosts':
lockspace.c:1335:9: warning: cast increases required alignment of target type [-Wcast-align]
  host = (struct sanlk_host *)buf;
         ^
In file included from sanlock_internal.h:32,
                 from lockspace.c:27:
lockspace.c: In function 'free_lockspaces':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:506:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member), \
             ^~~~~~~~~~
lockspace.c:1833:2: note: in expansion of macro 'list_for_each_entry_safe'
  list_for_each_entry_safe(sp, safe, &spaces_rem, list) {
  ^~~~~~~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:507:7: note: in expansion of macro 'list_entry'
   n = list_entry(pos->member.next, typeof(*pos), member); \
       ^~~~~~~~~~
lockspace.c:1833:2: note: in expansion of macro 'list_for_each_entry_safe'
  list_for_each_entry_safe(sp, safe, &spaces_rem, list) {
  ^~~~~~~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:509:20: note: in expansion of macro 'list_entry'
       pos = n, n = list_entry(n->member.next, typeof(*n), member))
                    ^~~~~~~~~~
lockspace.c:1833:2: note: in expansion of macro 'list_for_each_entry_safe'
  list_for_each_entry_safe(sp, safe, &spaces_rem, list) {
  ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from sanlock_internal.h:32,
                 from main.c:41:
main.c: In function 'main_loop':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:506:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member), \
             ^~~~~~~~~~
main.c:802:3: note: in expansion of macro 'list_for_each_entry_safe'
   list_for_each_entry_safe(sp, safe, &spaces, list) {
   ^~~~~~~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:507:7: note: in expansion of macro 'list_entry'
   n = list_entry(pos->member.next, typeof(*pos), member); \
       ^~~~~~~~~~
main.c:802:3: note: in expansion of macro 'list_for_each_entry_safe'
   list_for_each_entry_safe(sp, safe, &spaces, list) {
   ^~~~~~~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:509:20: note: in expansion of macro 'list_entry'
       pos = n, n = list_entry(n->member.next, typeof(*n), member))
                    ^~~~~~~~~~
main.c:802:3: note: in expansion of macro 'list_for_each_entry_safe'
   list_for_each_entry_safe(sp, safe, &spaces, list) {
   ^~~~~~~~~~~~~~~~~~~~~~~~
main.c: In function 'thread_pool_worker':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:362:2: note: in expansion of macro 'list_entry'
  list_entry((ptr)->next, type, member)
  ^~~~~~~~~~
main.c:907:9: note: in expansion of macro 'list_first_entry'
    ca = list_first_entry(&pool.work_data, struct cmd_args, list);
         ^~~~~~~~~~~~~~~~
main.c: In function 'get_rand':
main.c:1393:7: warning: implicit declaration of function 'random_r'; did you mean 'random'? [-Wimplicit-function-declaration]
  rv = random_r(&rand_data, &val);
       ^~~~~~~~
       random
main.c:1393:7: warning: nested extern declaration of 'random_r' [-Wnested-externs]
main.c: In function 'setup_host_name':
main.c:1408:30: error: invalid application of 'sizeof' to incomplete type 'struct random_data'
  memset(&rand_data, 0, sizeof(rand_data));
                              ^
main.c:1410:2: warning: implicit declaration of function 'initstate_r'; did you mean 'initstate'? [-Wimplicit-function-declaration]
  initstate_r(time(NULL), rand_state, sizeof(rand_state), &rand_data);
  ^~~~~~~~~~~
  initstate
main.c:1410:2: warning: nested extern declaration of 'initstate_r' [-Wnested-externs]
main.c: At top level:
main.c:87:27: error: storage size of 'rand_data' isn't known
 static struct random_data rand_data;
                           ^~~~~~~~~
paxos_lease.c: In function 'run_ballot':
paxos_lease.c:555:13: warning: cast increases required alignment of target type [-Wcast-align]
    bk_end = (struct paxos_dblock *)(iobuf[d] + ((2 + q)*sector_size));
             ^
paxos_lease.c:768:13: warning: cast increases required alignment of target type [-Wcast-align]
    bk_end = (struct paxos_dblock *)(iobuf[d] + ((2 + q)*sector_size));
             ^
paxos_lease.c: In function '_lease_read_one':
paxos_lease.c:1340:12: warning: cast increases required alignment of target type [-Wcast-align]
   bk_end = (struct paxos_dblock *)(iobuf + ((2 + q) * sector_size));
            ^
paxos_lease.c: In function '_lease_read_one.constprop':
paxos_lease.c:1365:4: warning: 'strncat' output may be truncated copying 79 bytes from a string of length 79 [-Wstringop-truncation]
    strncat(bk_debug, bk_str, BK_STR_SIZE-1);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'run_ballot',
    inlined from 'paxos_lease_acquire' at paxos_lease.c:2039:10:
paxos_lease.c:580:5: warning: 'strncat' output may be truncated copying 79 bytes from a string of length 79 [-Wstringop-truncation]
     strncat(bk_debug, bk_str, BK_STR_SIZE-1);
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
paxos_lease.c:793:5: warning: 'strncat' output may be truncated copying 79 bytes from a string of length 79 [-Wstringop-truncation]
     strncat(bk_debug, bk_str, BK_STR_SIZE-1);
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sanlock_internal.h:32,
                 from task.c:25:
task.c: In function 'close_task_aio':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
task.c:123:27: note: in expansion of macro 'container_of'
    struct aicb *ev_aicb = container_of(ev_iocb, struct aicb, iocb);
                           ^~~~~~~~~~~~
In file included from sanlock_internal.h:32,
                 from resource.c:26:
resource.c: In function 'free_resource':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:443:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->prev, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:85:2: note: in expansion of macro 'list_for_each_entry_reverse'
  list_for_each_entry_reverse(rtmp, &resources_free, list) {
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:445:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.prev, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:85:2: note: in expansion of macro 'list_for_each_entry_reverse'
  list_for_each_entry_reverse(rtmp, &resources_free, list) {
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
resource.c: In function 'get_free_resource':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:109:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_free, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:109:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_free, list) {
  ^~~~~~~~~~~~~~~~~~~
resource.c: In function 'send_state_resources':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:139:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_held, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:139:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_held, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:140:3: note: in expansion of macro 'list_for_each_entry'
   list_for_each_entry(token, &r->tokens, list)
   ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:140:3: note: in expansion of macro 'list_for_each_entry'
   list_for_each_entry(token, &r->tokens, list)
   ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:144:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_add, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:144:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_add, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:145:3: note: in expansion of macro 'list_for_each_entry'
   list_for_each_entry(token, &r->tokens, list)
   ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:145:3: note: in expansion of macro 'list_for_each_entry'
   list_for_each_entry(token, &r->tokens, list)
   ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:149:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_rem, list)
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:149:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_rem, list)
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:152:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_orphan, list)
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:152:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_orphan, list)
  ^~~~~~~~~~~~~~~~~~~
resource.c: In function 'read_resource_owners':
resource.c:227:12: warning: cast increases required alignment of target type [-Wcast-align]
   mb_end = (struct mode_block *)(lease_buf_dblock + MBLOCK_OFFSET);
            ^
resource.c:261:9: warning: cast increases required alignment of target type [-Wcast-align]
  host = (struct sanlk_host *)hosts_buf;
         ^
resource.c:279:12: warning: cast increases required alignment of target type [-Wcast-align]
   mb_end = (struct mode_block *)(lease_buf_dblock + MBLOCK_OFFSET);
            ^
resource.c: In function 'check_mode_block':
resource.c:375:11: warning: cast increases required alignment of target type [-Wcast-align]
  mb_end = (struct mode_block *)(dblock_buf + MBLOCK_OFFSET);
           ^
resource.c: In function 'read_mode_block':
resource.c:529:12: warning: cast increases required alignment of target type [-Wcast-align]
   mb_end = (struct mode_block *)(iobuf + MBLOCK_OFFSET);
            ^
In file included from sanlock_internal.h:32,
                 from resource.c:26:
resource.c: In function 'res_set_lvb':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:666:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_held, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:666:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_held, list) {
  ^~~~~~~~~~~~~~~~~~~
resource.c: In function 'res_get_lvb':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:700:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_held, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:700:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_held, list) {
  ^~~~~~~~~~~~~~~~~~~
resource.c: In function 'find_resource':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:1146:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, head, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:1146:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, head, list) {
  ^~~~~~~~~~~~~~~~~~~
resource.c: In function 'lockspace_is_used':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:1166:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_held, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:1166:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_held, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:1170:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_add, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:1170:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_add, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:1174:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_rem, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:1174:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_rem, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:1178:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_orphan, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:1178:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_orphan, list) {
  ^~~~~~~~~~~~~~~~~~~
resource.c: In function 'resource_orphan_count':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:1195:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_orphan, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:1195:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_orphan, list) {
  ^~~~~~~~~~~~~~~~~~~
resource.c: In function 'convert_token':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:1521:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(tk, &r->tokens, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:1521:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(tk, &r->tokens, list) {
  ^~~~~~~~~~~~~~~~~~~
resource.c: In function 'set_resource_examine':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:2130:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_held, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:2130:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, &resources_held, list) {
  ^~~~~~~~~~~~~~~~~~~
resource.c: In function 'find_resource_thread':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
resource.c:2159:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, head, list) {
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
resource.c:2159:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(r, head, list) {
  ^~~~~~~~~~~~~~~~~~~
resource.c: In function 'find_host_event':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:362:2: note: in expansion of macro 'list_entry'
  list_entry((ptr)->next, type, member)
  ^~~~~~~~~~
resource.c:2385:9: note: in expansion of macro 'list_first_entry'
  return list_first_entry(&host_events, struct recv_he, list);
         ^~~~~~~~~~~~~~~~
resource.c: In function 'release_orphan':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:506:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member), \
             ^~~~~~~~~~
resource.c:2514:2: note: in expansion of macro 'list_for_each_entry_safe'
  list_for_each_entry_safe(r, safe, &resources_orphan, list) {
  ^~~~~~~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:507:7: note: in expansion of macro 'list_entry'
   n = list_entry(pos->member.next, typeof(*pos), member); \
       ^~~~~~~~~~
resource.c:2514:2: note: in expansion of macro 'list_for_each_entry_safe'
  list_for_each_entry_safe(r, safe, &resources_orphan, list) {
  ^~~~~~~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:509:20: note: in expansion of macro 'list_entry'
       pos = n, n = list_entry(n->member.next, typeof(*n), member))
                    ^~~~~~~~~~
resource.c:2514:2: note: in expansion of macro 'list_for_each_entry_safe'
  list_for_each_entry_safe(r, safe, &resources_orphan, list) {
  ^~~~~~~~~~~~~~~~~~~~~~~~
resource.c: In function 'purge_resource_list':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:506:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member), \
             ^~~~~~~~~~
resource.c:2540:2: note: in expansion of macro 'list_for_each_entry_safe'
  list_for_each_entry_safe(r, safe, head, list) {
  ^~~~~~~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:507:7: note: in expansion of macro 'list_entry'
   n = list_entry(pos->member.next, typeof(*pos), member); \
       ^~~~~~~~~~
resource.c:2540:2: note: in expansion of macro 'list_for_each_entry_safe'
  list_for_each_entry_safe(r, safe, head, list) {
  ^~~~~~~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:509:20: note: in expansion of macro 'list_entry'
       pos = n, n = list_entry(n->member.next, typeof(*n), member))
                    ^~~~~~~~~~
resource.c:2540:2: note: in expansion of macro 'list_for_each_entry_safe'
  list_for_each_entry_safe(r, safe, head, list) {
  ^~~~~~~~~~~~~~~~~~~~~~~~
rindex.c: In function 'search_entries':
rindex.c:147:12: warning: cast increases required alignment of target type [-Wcast-align]
   re_end = (struct rindex_entry *)(rindex_iobuf + entry_offset_in_rindex);
            ^
rindex.c: In function 'read_rindex_header':
rindex.c:305:11: warning: cast increases required alignment of target type [-Wcast-align]
  rh_end = (struct rindex_header *)iobuf;
           ^
rindex.c: In function 'rindex_lookup':
rindex.c:775:12: warning: cast increases required alignment of target type [-Wcast-align]
   re_end = (struct rindex_entry *)(rindex_iobuf + ent_offset);
            ^
rindex.c:805:12: warning: cast increases required alignment of target type [-Wcast-align]
   re_end = (struct rindex_entry *)(rindex_iobuf + ent_offset);
            ^
In file included from sanlock_internal.h:32,
                 from cmd.c:37:
cmd.c: In function 'cmd_status':
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
cmd.c:2631:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(sp, &spaces, list)
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
cmd.c:2631:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(sp, &spaces, list)
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
cmd.c:2633:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(sp, &spaces_add, list)
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
cmd.c:2633:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(sp, &spaces_add, list)
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:432:13: note: in expansion of macro 'list_entry'
  for (pos = list_entry((head)->next, typeof(*pos), member); \
             ^~~~~~~~~~
cmd.c:2635:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(sp, &spaces_rem, list)
  ^~~~~~~~~~~~~~~~~~~
list.h:26:2: warning: cast increases required alignment of target type [-Wcast-align]
  (type *)( (char *)__mptr - offsetof(type,member) );})
  ^
list.h:351:2: note: in expansion of macro 'container_of'
  container_of(ptr, type, member)
  ^~~~~~~~~~~~
list.h:434:13: note: in expansion of macro 'list_entry'
       pos = list_entry(pos->member.next, typeof(*pos), member))
             ^~~~~~~~~~
cmd.c:2635:2: note: in expansion of macro 'list_for_each_entry'
  list_for_each_entry(sp, &spaces_rem, list)
  ^~~~~~~~~~~~~~~~~~~
cmd.c: In function 'send_state_client':
cmd.c:2482:2: warning: 'strncpy' output may be truncated copying 48 bytes from a string of length 48 [-Wstringop-truncation]
  strncpy(st.name, cl->owner_name, NAME_ID_SIZE);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cmd.c: In function 'send_state_daemon':
cmd.c:2459:2: warning: 'strncpy' output may be truncated copying 48 bytes from a string of length 48 [-Wstringop-truncation]
  strncpy(st.name, our_host_name_global, NAME_ID_SIZE);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
client_cmd.c: In function 'status_lockspace':
client_cmd.c:97:31: warning: cast increases required alignment of target type [-Wcast-align]
  struct sanlk_lockspace *ls = (struct sanlk_lockspace *)bin;
                               ^
client_cmd.c: In function 'status_resource':
client_cmd.c:122:31: warning: cast increases required alignment of target type [-Wcast-align]
  struct sanlk_resource *res = (struct sanlk_resource *)bin;
                               ^
client_cmd.c:131:10: warning: cast increases required alignment of target type [-Wcast-align]
   disk = (struct sanlk_disk *)(bin + sizeof(struct sanlk_resource) + i * sizeof(struct sanlk_disk));
          ^
client_cmd.c: In function 'print_type':
client_cmd.c:196:8: warning: cast increases required alignment of target type [-Wcast-align]
   st = (struct sanlk_state *)buf;
        ^
client_cmd.c: In function 'print_p':
client_cmd.c:219:8: warning: cast increases required alignment of target type [-Wcast-align]
   st = (struct sanlk_state *)buf;
        ^
client_cmd.c: In function 'find_type':
client_cmd.c:245:8: warning: cast increases required alignment of target type [-Wcast-align]
   st = (struct sanlk_state *)buf;
        ^
client_cmd.c: In function 'print_r':
client_cmd.c:266:8: warning: cast increases required alignment of target type [-Wcast-align]
   st = (struct sanlk_state *)buf;
        ^
client_cmd.c:273:9: warning: cast increases required alignment of target type [-Wcast-align]
   res = (struct sanlk_resource *)bin;
         ^
client_cmd.c: In function 'print_r_by_p':
client_cmd.c:297:8: warning: cast increases required alignment of target type [-Wcast-align]
   st = (struct sanlk_state *)buf;
        ^
client_cmd.c: In function 'print_r_by_s':
client_cmd.c:323:8: warning: cast increases required alignment of target type [-Wcast-align]
   st = (struct sanlk_state *)buf;
        ^
client_cmd.c: In function 'recv_bin':
client_cmd.c:347:9: warning: cast increases required alignment of target type [-Wcast-align]
   res = (struct sanlk_resource *)bin;
         ^
client_cmd.c: In function 'sanlock_status':
client_cmd.c:396:9: warning: cast increases required alignment of target type [-Wcast-align]
    st = (struct sanlk_state *)buf;
         ^
client_cmd.c: In function 'sanlock_host_status':
client_cmd.c:572:8: warning: cast increases required alignment of target type [-Wcast-align]
   ls = (struct sanlk_lockspace *)bin;
        ^
sanlock_sock.c: In function 'sanlock_socket_address':
sanlock_sock.c:23:2: warning: implicit declaration of function 'memset' [-Wimplicit-function-declaration]
  memset(addr, 0, sizeof(struct sockaddr_un));
  ^~~~~~
sanlock_sock.c:23:2: warning: incompatible implicit declaration of built-in function 'memset'
sanlock_sock.c:23:2: note: include '<string.h>' or provide a declaration of 'memset'
sanlock_sock.c:20:1:
+#include <string.h>
 
sanlock_sock.c:23:2:
  memset(addr, 0, sizeof(struct sockaddr_un));
  ^~~~~~
Makefile:124: recipe for target 'sanlock' failed
make: *** [sanlock] Error 1
make: Leaving directory 'TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/git/src'
ERROR: oe_runmake failed
WARNING: TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/temp/run.do_compile.28646:1 exit 1 from 'exit 1'
ERROR: Function failed: do_compile (log file is located at TOPDIR/build/tmp/work/mips32r2-bec-linux-musl/sanlock/3.6.0-r0/temp/log.do_compile.28646)

Error details

Submitted on:
08/09/18 14:48
Error type:
Recipe
Task:
do_compile
Recipe:
sanlock
Recipe version:
3.6.0-r0
Machine:
qemumips
Distro:
bec
Build system:
x86_64-linux
Target system:
mips-bec-linux-musl
Host distro:
ubuntu-14.04/ubuntu-14.04
Branch:
HEAD
Commit:
245c874e293fc20206f9720e7983697998b6322b
Build:
#68093
Submitter:
raj.khem@gmail.com
Similar errors:
2
Open a bug