从社区中得到了一个解决方案:System call hooking example arguments are incorrect

然后搜索这个得到了这篇文章

其中,参数以const struct pt_regs *regs的形式存储,
第一个参数dfd在regs->di中
第二个参数filename在regs->si中
第三个参数flags在regs->dx中
第四个参数mode在regs->r10中
获取之后再对其进行类型转换即可。

主要是kernel4.17后对参数的获取做了修改,但是即使定义的函数没有hook上也不会影响正常使用的意思。

花了两天时间自己没解决,求助社区半天不到就解决了。