The error string is `unknown error’, and the error code is 30.
I tried running my program with strace, and here’s what I got:
mmap(0x204600000, 400003072, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_FIXED|MAP_ANONYMOUS, 0, 0) = 0x204600000
ioctl(5, 0xc0304627, 0x7fff17156c70) = 0
ioctl(3, 0xc0384657, 0x7fff17156d00) = 0
write(1, "1\n", 21
) = 2
mmap(0x21c380000, 400003072, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_FIXED|MAP_ANONYMOUS, 0, 0) = 0x21c380000
ioctl(5, 0xc0304627, 0x7fff17156c70) = 0
ioctl(3, 0xc0384657, 0x7fff17156d00) = 0
write(1, "2\n", 22
) = 2
mmap(0x234100000, 400003072, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_FIXED|MAP_ANONYMOUS, 0, 0) = 0x234100000
ioctl(5, 0xc0304627, 0x7fff17156c70) = 0
ioctl(3, 0xc0384657, 0x7fff17156d00) = 0
write(1, "3\n", 23
) = 2
mmap(0x24be80000, 400003072, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_FIXED|MAP_ANONYMOUS, 0, 0) = 0x24be80000
ioctl(5, 0xc0304627, 0x7fff17156c70) = 0
ioctl(3, 0xc0384657, 0x7fff17156d00) = 0
write(1, "4\n", 24
) = 2
mmap(0x263c00000, 400003072, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_FIXED|MAP_ANONYMOUS, 0, 0) = 0x263c00000
ioctl(5, 0xc0304627, 0x7fff17156c70) = 0
ioctl(3, 0xc0384657, 0x7fff17156d00) = 0
write(1, "5\n", 25
) = 2
mmap(0x27b980000, 400003072, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_FIXED|MAP_ANONYMOUS, 0, 0) = 0x27b980000
ioctl(5, 0xc0304627, 0x7fff17156c70) = 0
ioctl(3, 0xc0384657, 0x7fff17156d00) = 0
write(1, "6\n", 26
) = 2
mmap(0x293700000, 400003072, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_FIXED|MAP_ANONYMOUS, 0, 0) = 0x293700000
ioctl(5, 0xc0304627, 0x7fff17156c70) = 0
ioctl(3, 0xc0384657, 0x7fff17156d00) = 0
write(1, "7\n", 27
) = 2
mmap(0x2ab480000, 400003072, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_FIXED|MAP_ANONYMOUS, 0, 0) = 0x2ab480000
ioctl(5, 0xc0304627, 0x7fff17156c70) = 0
ioctl(3, 0xc0384657, 0x7fff17156d00) = 0
write(1, "8\n", 28
) = 2
mmap(0x2c3200000, 400003072, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_FIXED|MAP_ANONYMOUS, 0, 0) = 0x2c3200000
ioctl(5, 0xc0304627, 0x7fff17156c70) = 0
ioctl(3, 0xc0384657, 0x7fff17156d00) = 0
write(1, "9\n", 29
) = 2
mmap(0x2daf80000, 400003072, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_FIXED|MAP_ANONYMOUS, 0, 0) = 0x2daf80000
ioctl(5, 0xc0304627, 0x7fff17156c70) = 0
ioctl(3, 0xc0384657, 0x7fff17156d00) = 0
write(1, "10\n", 310
) = 3
mmap(0x2f2d00000, 400003072, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_FIXED|MAP_ANONYMOUS, 0, 0) = 0x2f2d00000
ioctl(5, 0xc0304627, 0x7fff17156c70) = 0
mmap(0x2f2d00000, 400003072, PROT_NONE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, 0, 0) = 0x2f2d00000
open("/etc/localtime", O_RDONLY|O_CLOEXEC) = 17
fstat(17, {st_mode=S_IFREG|0444, st_size=2294, ...}) = 0
fstat(17, {st_mode=S_IFREG|0444, st_size=2294, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b215bdf5000
read(17, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\4\0\0\0\0"..., 4096) = 2294
lseek(17, -1457, SEEK_CUR) = 837
read(17, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\4\0\0\0\0"..., 4096) = 1457
close(17) = 0
munmap(0x2b215bdf5000, 4096) = 0
gettid() = 30703
write(2, "WARNING: Logging before InitGoog"..., 65WARNING: Logging before InitGoogleLogging() is written to STDERR
) = 65
write(2, "F1009 10:45:56.689123 30703 test"..., 101F1009 10:45:56.689123 30703 test.cu:49] Check failed: error == cudaSuccess (30 vs. 0) unknown error
) = 101
It seems that no mmap() or ioctl() calls return errors. But after doing the mmap() call of the 10th iteration, it calls ioctl() only once (it calls it twice in previous iterations).
Do you have any ideas?
Thanks,
Cui