Details
-
Bug
-
Resolution: Fixed
-
Major
-
Lustre 2.7.0, Lustre 2.8.0
-
CentOS 6 + Lustre master tree 2.7+
-
3
-
9223372036854775807
Description
We can crash the lustre client using the simple code below:
#include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <sys/ioctl.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <stdio.h> #include <lustre/lustre_user.h> int main(int argc, char *argv[]) { int fd; int rc; int gid; char *buf; fd = open("/mnt/testfile.00000000", O_RDWR); gid = atoi(argv[1]); rc = ioctl(fd, LL_IOC_GROUP_LOCK, gid); if (rc) { printf("ioctl %d\n", rc); return rc; } buf = malloc(1<<20); memset(buf, 1, 1<<20); while (1) write(fd, buf, 1<<20); return 0; }
demo purpose only, no error handling.
Run the program with a gid and then run another instance of the program with a different gid, the client will crash right after.
crash> bt PID: 1989 TASK: ffff88013ca86ae0 CPU: 1 COMMAND: "ldlm_bl_02" #0 [ffff88011fe0d8c8] machine_kexec at ffffffff8103b5bb #1 [ffff88011fe0d928] crash_kexec at ffffffff810c9852 #2 [ffff88011fe0d9f8] panic at ffffffff81529343 #3 [ffff88011fe0da78] lbug_with_loc at ffffffffa0251ecb [libcfs] #4 [ffff88011fe0da98] osc_cache_writeback_range at ffffffffa0958e35 [osc] #5 [ffff88011fe0dc28] osc_lock_flush at ffffffffa0941495 [osc] #6 [ffff88011fe0dca8] osc_ldlm_blocking_ast at ffffffffa0941828 [osc] #7 [ffff88011fe0dd18] ldlm_cancel_callback at ffffffffa05404cc [ptlrpc] #8 [ffff88011fe0dd38] ldlm_cli_cancel_local at ffffffffa05525da [ptlrpc] #9 [ffff88011fe0dd68] ldlm_cli_cancel at ffffffffa0557200 [ptlrpc] #10 [ffff88011fe0dda8] osc_ldlm_blocking_ast at ffffffffa094165b [osc] #11 [ffff88011fe0de18] ldlm_handle_bl_callback at ffffffffa055ac40 [ptlrpc] #12 [ffff88011fe0de48] ldlm_bl_thread_main at ffffffffa055b1a1 [ptlrpc] #13 [ffff88011fe0dee8] kthread at ffffffff8109e66e #14 [ffff88011fe0df48] kernel_thread at ffffffff8100c20a
Attachments
Issue Links
- is related to
-
LU-6368 ASSERTION( cur->oe_dlmlock == victim->oe_dlmlock ) failed
-
- Resolved
-