This patch fixes the following [-Werror=use-after-free] and
[-Werror=stringop-overflow=] errors detected by gcc 12:
libcfs/include/libcfs/util/list.h:481:42: error: pointer 'tmp'
used after 'free' [-Werror=use-after-free]
481 | pos = list_entry(pos->member.next, typeof(*pos), member), \
| ^
libcfs/include/libcfs/util/list.h:239:28: note: in definition of macro 'list_entry'
239 | ((type *)((char *)(ptr)-(char *)(&((type *)0)->member)))
| ^~~
obd.c:5118:9: note: in expansion of macro 'list_for_each_entry'
5118 | list_for_each_entry(tmp, head, lpn_list) {
| ^~~~~~~~~~~~~~~~~~~
obd.c:5124:17: note: call to 'free' here
5124 | free(tmp);
| ^~~~~~~~~
test_brw.c: In function 'main':
test_brw.c:227:22: error: 'write' specified size between
9223372036854775808
and
18446744073709551615 exceeds maximum object size
9223372036854775807
[-Werror=stringop-overflow=]
227 | rc = write(fd, buf, len);
| ^~~~~~~~~~~~~~~~~~~
Change-Id: Ibe783ab0d13e2ecde1736946323932ab5db53740
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/51819
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>