Bug 1006059
| Summary: | thin_check hangs if given a non existent dump file to restore from | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | Corey Marthaler <cmarthal> |
| Component: | device-mapper-persistent-data | Assignee: | Joe Thornber <thornber> |
| Status: | CLOSED ERRATA | QA Contact: | yanfu,wang <yanwang> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | 6.5 | CC: | agk, heinzm, jbrassow, lvm-team, msnitzer, prajnoha, prockai, thornber, xiaoli, zkabelac |
| Target Milestone: | rc | ||
| Target Release: | --- | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | 966264 | Environment: | |
| Last Closed: | 2013-11-21 23:00:12 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
| Bug Depends On: | 966264 | ||
| Bug Blocks: | |||
|
Description
Corey Marthaler
2013-09-09 22:32:45 UTC
Fixed upstream in v0.2.7 https://github.com/jthornber/thin-provisioning-tools/commit/7ce306cb6d42dbce6712d9cb93ddd717521720cb v0.2.7 build to be dispatched. Verified on device-mapper-persistent-data-0.2.7-1.el6:
# strace thin_restore -i file_that_doesnt_exist -o /dev/mapper/snapper_thinp-pool_tmeta
execve("/usr/sbin/thin_restore", ["thin_restore", "-i", "file_that_doesnt_exist", "-o", "/dev/mapper/snapper_thinp-pool_t"...], [/* 37 vars */]) = 0
brk(0) = 0xcea000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fc8423fb000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=45894, ...}) = 0
mmap(NULL, 45894, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fc8423ef000
close(3) = 0
open("/usr/lib64/libstdc++.so.6", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360c\5\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=987096, ...}) = 0
mmap(NULL, 3166648, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fc841ed7000
mprotect(0x7fc841fbf000, 2097152, PROT_NONE) = 0
mmap(0x7fc8421bf000, 36864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe8000) = 0x7fc8421bf000
mmap(0x7fc8421c8000, 82360, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fc8421c8000
close(3) = 0
open("/lib64/libexpat.so.1", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320<\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=165264, ...}) = 0
mmap(NULL, 2260432, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fc841caf000
mprotect(0x7fc841cd5000, 2093056, PROT_NONE) = 0
mmap(0x7fc841ed4000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x25000) = 0x7fc841ed4000
close(3) = 0
open("/lib64/libm.so.6", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p>\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=596264, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fc8423ee000
mmap(NULL, 2633912, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fc841a2b000
mprotect(0x7fc841aae000, 2093056, PROT_NONE) = 0
mmap(0x7fc841cad000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x82000) = 0x7fc841cad000
close(3) = 0
open("/lib64/libgcc_s.so.1", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20)\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=90880, ...}) = 0
mmap(NULL, 2186584, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fc841815000
mprotect(0x7fc84182b000, 2093056, PROT_NONE) = 0
mmap(0x7fc841a2a000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15000) = 0x7fc841a2a000
close(3) = 0
open("/lib64/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000\356\1\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1921216, ...}) = 0
mmap(NULL, 3750152, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fc841481000
mprotect(0x7fc84160c000, 2093056, PROT_NONE) = 0
mmap(0x7fc84180b000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x18a000) = 0x7fc84180b000
mmap(0x7fc841810000, 18696, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fc841810000
close(3) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fc8423ed000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fc8423eb000
arch_prctl(ARCH_SET_FS, 0x7fc8423eb720) = 0
mprotect(0x7fc84180b000, 16384, PROT_READ) = 0
mprotect(0x7fc841cad000, 4096, PROT_READ) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fc8423ea000
mprotect(0x7fc8421bf000, 28672, PROT_READ) = 0
mprotect(0x7fc8423fc000, 4096, PROT_READ) = 0
munmap(0x7fc8423ef000, 45894) = 0
brk(0) = 0xcea000
brk(0xd0b000) = 0xd0b000
stat("/dev/mapper/snapper_thinp-pool_tmeta", {st_mode=S_IFBLK|0660, st_rdev=makedev(253, 6), ...}) = 0
open("/dev/mapper/snapper_thinp-pool_tmeta", O_RDONLY) = 3
ioctl(3, BLKGETSIZE64, 0x7fff6d98c620) = 0
close(3) = 0
stat("/dev/mapper/snapper_thinp-pool_tmeta", {st_mode=S_IFBLK|0660, st_rdev=makedev(253, 6), ...}) = 0
open("/dev/mapper/snapper_thinp-pool_tmeta", O_RDWR) = 3
stat("file_that_doesnt_exist", 0x7fff6d98cac0) = -1 ENOENT (No such file or directory)
write(2, "Couldn't stat file", 18Couldn't stat file) = 18
write(2, "\n", 1
) = 1
exit_group(1) = ?
[root@storageqe-17 ~]# echo $?
1
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHEA-2013-1696.html |