查看问题详情
编号 | 项目 | 分类 | 查看权限 | 报告日期 | 最后更新 |
---|---|---|---|---|---|
0000076 | Anolis OS 8 | - cloud kernel 4.19 | public | 2021-04-23 14:16 | 2021-06-07 11:23 |
报告员 | qwei_007 | 分派给 | geliwei-ali | ||
优先级 | normal | 严重性 | minor | 出现频率 | always |
状态 | assigned | 处理状况 | open | ||
标题 | 0000076: [Anolis 8.2-RC2-4.19-x86/aarch64]shmget系统调用参数匹配错误 | ||||
描述 | 输入参数: shmid = shmget(key, memsize, flag); 对应参数值: key:393241, size: 135168, flag: 896 从tracepoint查看对应参数: 1044154 1044154 test sys_enter_shmget key=0 size=393241 flag=135168 可以看到系统调用得到的参数为: key =0 size =393241 flag =135168 丢失参数:flag = 896 期望结果: 1172 1172 test sys_enter_shmget key=393241 size=135168 flag=896 | ||||
问题重现步骤 | 1、运行系统调用 2、通过tracepoint检查系统调用参数 具体步骤: 源文件: test.c #include <sys/types.h> #include <sys/ipc.h> #include <stdio.h> #include <sys/shm.h> int main(void) { int key_id = 0; key_t key; unsigned long flag; unsigned long memsize; int shmid; key = ftok("/dev/null", key_id); flag = IPC_CREAT | SHM_R | SHM_W; memsize = 135168; printf("key:%lu, size: %lu, flag: %lu\n", key, memsize, flag); shmid = shmget(key, memsize, flag); if (shmid == -1) { perror("Error"); } return 0; } Makefile: CFLAGS=-g test: test.c bcc工具命令: /usr/share/bcc/tools/trace 't:syscalls:sys_enter_shmget "key=%lu size=%lu flag=%lu", args->key, args->size, args->shmflg' 安装bcc工具: yum install -y bcc-tools | ||||
标签 | 8.2GA-210611 | ||||
日期 | 用户名 | 字段 | 更改 |
---|---|---|---|
2021-04-23 14:16 | qwei_007 | 新建问题 | |
2021-04-28 14:35 | jacobwang | 分派给 | => geliwei-ali |
2021-04-28 14:35 | jacobwang | 状态 | 新建 => 已分配 |
2021-06-07 11:23 | cherryliyumei | 添加标签: 8.2GA-210611 |