__write_overflow 声明属性错误

__write_overflow 声明属性错误

memset我在Linux 内核项目中使用memcpy。当我尝试make该项目时,出现以下错误:

在函数“memset”中,从 /home/ido/CLionProjects/Firewall/KernelSpace/minfirewall.c:118:13 的“init_minifw_read_write_module”内联:./include/linux/string.h:327:3:错误:调用使用属性错误声明的“__write_overflow”:检测到写入超出作为第一个参数 __write_overflow() 传递的对象的大小;

我没有找到解决上述错误的任何方法。

CFLAGS为了避免这个问题,我已将其添加到我的 Makefile 中:

obj-m += minfirewall.o
CFLAGS_minfirewall.o := -D_FORTIFY_SOURCE=0
all:
    make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
clean:
    make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean

但问题仍然存在。

我正在运行内核版本 4.18.0-15-generic。

有什么想法可以修复此错误吗?

相关内容