xfs
[Top] [All Lists]

xfsrestore freezes on restoring to JFS

To: Linux XFS Mailing List <linux-xfs@xxxxxxxxxxx>, "jfs-discussion@xxxxxxxxxxxxxxxxxxxx" <jfs-discussion@xxxxxxxxxxxxx>
Subject: xfsrestore freezes on restoring to JFS
From: "Bernhard R. Erdmann" <be@xxxxxxxxxxx>
Date: Sun, 01 Jul 2001 18:31:53 +0200
Sender: owner-linux-xfs@xxxxxxxxxxx
Hi,

i'm able to lock up xfsrestore when restoring onto a JFS filesystem.
xfsrestore becomes dead in ps and is unkillable (waiting for I/O to
happen?):

# /sbin/mkfs.jfs /dev/vg01/usrjfs 
# cd /tmp
# mount -t jfs /dev/vg01/usrjfs /mnt/usr
# strace /sbin/xfsrestore -f tmp.xfsd /mnt/usr
[..bla..]
open("/mnt/usr/xfsrestorehousekeepingdir/state",
O_RDWR|O_CREAT|O_LARGEFILE, 0600) = 4
SYS_197(0x4, 0xbffff990, 0x4010cd40, 0, 0x4) = 0
_llseek(4, 20479, [20479], SEEK_SET)    = 0
write(4, "\0", 1)                       = 1
SYS_192(0, 0x5000, 0x3, 0x1, 0x4)       = 1073831936
geteuid()                               = 0
munmap(0x40016000, 20480)               = 0
SYS_194(0x4, 0x5000, 0, 0, 0x4

...and there it ends. See the complete output attached. /tmp is on XFS
because xfsrestore wants CWD on XFS. It also happens when not using LVM
(/dev/sda1 instead of /dev/vg01/... for the block device).

$ ps auxw|grep xfsrestore
root       882  0.0  0.2  1316  528 pts/0    S    18:21   0:00 strace
/sbin/xfsrestore -f tmp.xfsd /mnt/usr
root       883  0.0  0.3  1676  784 pts/0    D    18:21   0:00
/sbin/xfsrestore -f tmp.xfsd /mnt/usr
# strace /sbin/xfsrestore -f tmp.xfsd /mnt/usr 
execve("/sbin/xfsrestore", ["/sbin/xfsrestore", "-f", "tmp.xfsd", "/mnt/usr"], 
[/* 36 vars */]) = 0
brk(0)                                  = 0x8098064
mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0x40014000
open("/etc/ld.so.preload", O_RDONLY)    = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=25469, ...}) = 0
mmap(0, 25469, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40015000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=4101836, ...}) = 0
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\210\212"..., 4096) = 
4096
mmap(0, 1001532, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4001c000
mprotect(0x40109000, 30780, PROT_NONE)  = 0
mmap(0x40109000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 
0xec000) = 0x40109000
mmap(0x4010d000, 14396, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4010d000
close(3)                                = 0
mprotect(0x4001c000, 970752, PROT_READ|PROT_WRITE) = 0
mprotect(0x4001c000, 970752, PROT_READ|PROT_EXEC) = 0
munmap(0x40015000, 25469)               = 0
personality(0 /* PER_??? */)            = 0
getpid()                                = 883
brk(0)                                  = 0x8098064
brk(0x80980c4)                          = 0x80980c4
brk(0x8099000)                          = 0x8099000
getrlimit(RLIMIT_AS, {rlim_cur=RLIM_INFINITY, rlim_max=RLIM_INFINITY}) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
setrlimit(RLIMIT_STACK, {rlim_cur=32768*1024, rlim_max=RLIM_INFINITY}) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=32768*1024, rlim_max=RLIM_INFINITY}) = 0
getrlimit(RLIMIT_DATA, {rlim_cur=RLIM_INFINITY, rlim_max=RLIM_INFINITY}) = 0
getrlimit(RLIMIT_FSIZE, {rlim_cur=RLIM_INFINITY, rlim_max=RLIM_INFINITY}) = 0
setrlimit(RLIMIT_FSIZE, {rlim_cur=RLIM_INFINITY, rlim_max=RLIM_INFINITY}) = 0
setrlimit(RLIMIT_FSIZE, {rlim_cur=RLIM_INFINITY, rlim_max=RLIM_INFINITY}) = 0
getrlimit(RLIMIT_FSIZE, {rlim_cur=RLIM_INFINITY, rlim_max=RLIM_INFINITY}) = 0
getrlimit(RLIMIT_CPU, {rlim_cur=RLIM_INFINITY, rlim_max=RLIM_INFINITY}) = 0
setrlimit(RLIMIT_CPU, {rlim_cur=RLIM_INFINITY, rlim_max=RLIM_INFINITY}) = 0
getrlimit(RLIMIT_CPU, {rlim_cur=RLIM_INFINITY, rlim_max=RLIM_INFINITY}) = 0
getpid()                                = 883
brk(0x809b000)                          = 0x809b000
getcwd("/tmp", 4095)                    = 5
getpid()                                = 883
getpid()                                = 883
getrlimit(RLIMIT_STACK, {rlim_cur=32768*1024, rlim_max=RLIM_INFINITY}) = 0
getpid()                                = 883
SYS_195(0x8099400, 0xbffff9d0, 0x4010cd40, 0x8099401, 0x8099400) = 0
SYS_195(0x8099400, 0xbffff9c8, 0x4010cd40, 0x8099401, 0x8099400) = 0
lstat("/tmp", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=4096, ...}) = 0
lstat("/tmp/tmp.xfsd", {st_mode=S_IFREG|0664, st_size=11768160, ...}) = 0
mmap(0, 270336, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0x40111000
SYS_195(0x8099400, 0xbffff9bc, 0x4010cd40, 0x8099401, 0x8099400) = 0
open("/tmp/tmp.xfsd", O_RDONLY|O_LARGEFILE) = 3
SYS_197(0x1, 0xbffffaf8, 0x4010cd40, 0x4000aea0, 0x1) = 0
ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
getpid()                                = 883
SYS_197(0x1, 0xbffff2cc, 0x4010cd40, 0x4010a960, 0x1) = 0
mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0x40015000
ioctl(1, TCGETS, {B38400 opost isig icanon echo ...}) = 0
write(1, "/sbin/xfsrestore: version 3.0", 29/sbin/xfsrestore: version 3.0) = 29
write(1, " - Running single-threaded\n", 27 - Running single-threaded
) = 27
time(NULL)                              = 994004480
SYS_195(0xbffffcfb, 0xbffffa60, 0x4010cd40, 0xbffffcfb, 0xbffffcfb) = 0
mkdir("/mnt/usr/xfsrestorehousekeepingdir", 0700) = 0
open("/mnt/usr/xfsrestorehousekeepingdir/state", O_RDWR|O_CREAT|O_LARGEFILE, 
0600) = 4
SYS_197(0x4, 0xbffff990, 0x4010cd40, 0, 0x4) = 0
_llseek(4, 20479, [20479], SEEK_SET)    = 0
write(4, "\0", 1)                       = 1
SYS_192(0, 0x5000, 0x3, 0x1, 0x4)       = 1073831936
geteuid()                               = 0
munmap(0x40016000, 20480)               = 0
SYS_194(0x4, 0x5000, 0, 0, 0x4
<Prev in Thread] Current Thread [Next in Thread>