Bug ID 1011529
Summary YaST2 hung ofpathname "too many arguments" for ppc64le multipath configuration
Classification openSUSE
Product openSUSE Tumbleweed
Version Current
Hardware PowerPC-64
OS Other
Status NEW
Severity Major
Priority P5 - None
Component Installation
Assignee yast2-maintainers@suse.de
Reporter normand@linux.vnet.ibm.com
QA Contact jsrain@suse.com
Found By ---
Blocker ---

YaST2 hung on Saving bootloader configuration for multipath ppc64le guest

* Create a ppc64le guest with qemu parameters of (1) with a disk accessed by
two paths.
  (to mimic the configuration set for multipath test in openQA (2))
* YaST2 hung on Saving bootloader configuration for multipath ppc64le guest
* by ssh access able to retrieve the list of hang process (3)
  the strace of ofpathname shows an infinit loop (4)
  and the y2log is full of "too many argument" error (5)

(1)
===
$qemu-img create raid/l1 -f raw 10G
$qemu-system-ppc64 -vga std -m 4096 -machine usb=off -cpu host -nographic
-netdev user,id=qanet0,hostfwd=::10022-:22,hostname=qemu2 -device
virtio-net,netdev=qanet0 -device virtio-scsi-pci,id=scsi0 -device
virtio-scsi-pci,id=scsi1 -device scsi-hd,drive=hd1a,bus=scsi0.0 -drive
file=raid/l1,cache=none,if=none,id=hd1a,serial=mpath1,format=raw -device
scsi-hd,drive=hd1b,bus=scsi1.0 -drive
file=raid/l1,cache=none,if=none,id=hd1b,serial=mpath1,format=raw -drive
media=cdrom,if=none,id=cd0,format=raw,file=/home/michel/raid/openSUSE-Tumbleweed-DVD-ppc64le-Snapshot20161115-Media.iso
-device scsi-cd,drive=cd0,bus=scsi0.0 -boot once=d,menu=on,splash-time=5000
-smp 8,threads=8 -enable-kvm -no-shutdown -monitor stdio -serial pty -S -append
'linemode=1 linuxrc.log=/var/log/YaST2/linuxrc.log linuxrc.debug=1 startshell=1
insecure=1 UseSSH=1 SSHPassword=root' -kernel /home/michel/raid/linux -initrd
/home/michel/raid/initrd
===
(2) https://openqa.opensuse.org/tests/305788#step/start_install/15
(3)
===
$ps axf
...
15729 pts/1    S+     0:00 \_ /usr/bin/perl
/usr/lib/YaST2/servers_non_y2/ag_uid
16212 pts/1    S+     0:00 \_ /usr/sbin/grub2-install --target=powerpc-ieee1275
--force --skip-fs-probe /dev/disk/by-id/scsi-0QEMU_QEMU_HARDDISK_mpath1-part1
16231 pts/1    S+     0:00     \_ /bin/bash /usr/sbin/ofpathname
/dev/mapper/0QEMU_QEMU_HARDDISK_mpath1
16256 pts/1    S+     0:12         \_ /bin/bash /usr/sbin/ofpathname
/dev/mapper/0QEMU_QEMU_HARDDISK_mpath1
===
(4)
===
# strace -p 16256
strace: Process 16256 attached
read(3, "sda\nsdb\n", 128)              = 8
read(3, "", 128)                        = 0
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=15267, si_uid=0,
si_status=0, si_utime=0, si_stime=0} ---
waitpid(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], WNOHANG) = 15267
waitpid(-1, 0x3ffff795e9d4, WNOHANG)    = -1 ECHILD (No child processes)
rt_sigreturn()                          = 0
close(3)                                = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigaction(SIGINT, {0x10025e68, [], 0}, {SIG_IGN, [], 0}, 8) = 0
rt_sigaction(SIGINT, {SIG_IGN, [], 0}, {0x10025e68, [], 0}, 8) = 0
rt_sigaction(SIGINT, {SIG_IGN, [], 0}, {SIG_IGN, [], 0}, 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
open("slaves/", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
getdents(3, /* 4 entries */, 65536)     = 96
getdents(3, /* 0 entries */, 65536)     = 0
close(3)                                = 0
write(2, "/usr/sbin/ofpathname: line 412: "..., 55) = 55
pipe([3, 5])                            = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, [INT CHLD], [], 8) = 0
clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD,
child_tidptr=0x3fff8da64800) = 15270
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigaction(SIGCHLD, {0x1008b670, [], SA_RESTART}, {0x1008b670, [],
SA_RESTART}, 8) = 0
close(5)                                = 0
read(3, "sda\nsdb\n", 128)              = 8
read(3, "", 128)                        = 0
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=15270, si_uid=0,
si_status=0, si_utime=0, si_stime=0} ---
...
===
(5)
===
$tail -n3 /var/log/YaST2/y2log
2016-11-21 19:02:03 <3> linux-9de6(4188) [Ruby] lib/cheetah.rb:206 Error
output: /usr/sbin/ofpathname: line 412: cd: too many arguments
2016-11-21 19:02:03 <3> linux-9de6(4188) [Ruby] lib/cheetah.rb:206 Error
output: /usr/sbin/ofpathname: line 412: cd: too many arguments
2016-11-21 19:02:03 <3> linux-9de6(4188) [Ruby] lib/cheetah.rb:206 Error
output: /usr/sbin/ofpathname: line 412: cd: too many arguments
===


You are receiving this mail because: