[Bug 1489379] [NEW] LTE: ISST:leeklp4 no mpath choices for install ubuntu 15.10

Launchpad Bug Tracker 1489379 at bugs.launchpad.net
Fri Sep 4 00:17:39 UTC 2015


You have been subscribed to a public bug by Ubuntu Foundations Team Bug Bot (crichton):

== Comment: #0 - Alton L. Pundt <apundt at us.ibm.com> - 2015-08-24 15:12:28 ==
---Problem Description---
no choice for mpath disks.
They all show up as single disks.
 
Contact Information = A.P. Pundt  apundt at us.ibm.com 
 
---uname output---
4.1.0-3-generic
 
Machine Type = 8408-E8E 
 
---boot type---
Network boot
 
---bootloader---
grub
 
---Kernel cmdline used to launch install---
linux        ubuntu-installer/ppc64el/vmlinux tasks=standard pkgsel\|
 |/language-pack-patterns= pkgsel/install-language-support=false url=http://1\|
 |0.33.11.31/distros/ubuntu/preseed.cfg preseed/url/checksum=edc0fad5d7d5709d\|
 |042c734730e8fb3e disk-detect/multipath/enable=true --- quiet                |
 |        initrd        ubuntu-installer/ppc64el/initrd.gz                    |
 |                                                          
 
---Bootloader protocol---
http
 
---Install repository type---
Internet repository
 
---Install repository Location---
United Kingdon  ports.ubuntu.com
 
---Point of failure---
Other failure during installation (stage 1)

== Comment: #2 - Alton L. Pundt <apundt at us.ibm.com> - 2015-08-24 15:16:58 ==
installer user and password is lte:don2rry


[apundt at kte ~]$ sudo config_dhcpd.py list -H leeklp4
  Host Label : leeklp4
Network Type : ethernet
 MAC Address : 00:90:fa:95:60:16
  IP Address : 10.33.32.110
      Server : 10.33.11.31
    Filename : ubuntu-installer/ppc64el/powerpc-ieee1275/core.elf

[apundt at kte ~]$

== Comment: #3 - Mauricio Faria De Oliveira <mauricfo at br.ibm.com> - 2015-08-26 12:15:08 ==
Problem here is multipath is not obtaining the paths' identifiers, thus blacklists them all.
I have a good idea of what's happening, from a bug fixed in Debian, probably pending backports to Ubuntu.

I'll check a few things in the LPAR yet.

~ # multipath -v3
...

===== paths list =====
uuid hcil    dev  dev_t  pri dm_st chk_st vend/prod/rev dev_st
     2:0:7:0 sdm  8:192  -1  undef faulty IBM,2107900   running
     2:0:7:1 sdn  8:208  -1  undef faulty IBM,2107900   running
     2:0:7:2 sdo  8:224  -1  undef faulty IBM,2107900   running
     2:0:7:3 sdp  8:240  -1  undef faulty IBM,2107900   running
     2:0:0:0 sdy  65:128 -1  undef faulty IBM,2107900   running
     2:0:0:1 sdz  65:144 -1  undef faulty IBM,2107900   running
     2:0:0:2 sdaa 65:160 -1  undef faulty IBM,2107900   running
     2:0:0:3 sdab 65:176 -1  undef faulty IBM,2107900   running
     2:0:1:0 sdac 65:192 -1  undef faulty IBM,2107900   running
     2:0:1:1 sdad 65:208 -1  undef faulty IBM,2107900   running
     2:0:1:2 sdae 65:224 -1  undef faulty IBM,2107900   running
     2:0:1:3 sdaf 65:240 -1  undef faulty IBM,2107900   running
     2:0:2:0 sda  8:0    -1  undef faulty IBM,2107900   running
     2:0:2:1 sdb  8:16   -1  undef faulty IBM,2107900   running
     2:0:2:2 sdc  8:32   -1  undef faulty IBM,2107900   running
     2:0:2:3 sdd  8:48   -1  undef faulty IBM,2107900   running
     2:0:3:0 sde  8:64   -1  undef faulty IBM,2107900   running
     2:0:3:0 sde  8:64   -1  undef faulty IBM,2107900   running
     2:0:3:1 sdf  8:80   -1  undef faulty IBM,2107900   running
     2:0:3:2 sdg  8:96   -1  undef faulty IBM,2107900   running
     2:0:3:3 sdh  8:112  -1  undef faulty IBM,2107900   running
     2:0:4:0 sdi  8:128  -1  undef faulty IBM,2107900   running
     2:0:4:1 sdj  8:144  -1  undef faulty IBM,2107900   running
     2:0:4:2 sdk  8:160  -1  undef faulty IBM,2107900   running
     2:0:4:3 sdl  8:176  -1  undef faulty IBM,2107900   running
Aug 26 16:06:41 | sdm: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdn: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdo: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdp: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdy: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdz: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdaa: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdab: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdac: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdad: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdae: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdaf: orphan path, wwid blacklisted
Aug 26 16:06:41 | sda: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdb: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdc: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdd: orphan path, wwid blacklisted
Aug 26 16:06:41 | sde: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdf: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdg: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdh: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdi: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdj: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdk: orphan path, wwid blacklisted
Aug 26 16:06:41 | sdl: orphan path, wwid blacklisted


Also noticed another problem: a broken shared library dependency. (similar story w/ Debian, IIUIC).
I'll open another bug.

Aug 26 16:06:41 | loading /lib/multipath/libchecktur.so checker
Aug 26 16:06:41 | A dynamic linking error occurred: (libgcc_s.so.1: cannot open shared object file: No such file or directory)
Aug 26 16:06:41 | unloading tur checker
Aug 26 16:06:41 | sdm: path checker =  (controller setting)

== Comment: #6 - Mauricio Faria De Oliveira <mauricfo at br.ibm.com> - 2015-08-26 18:43:40 ==
The uuid (identifier) is null because of the shlib error (libgcc_s.so.1 not found)
when loading a path checker.

In libmultipath/discovery.c, pathinfo() will skip assigning an uuid 
if get_state() hits 'No checker (is) selected' (which happened; see message).

	get_state() {
		...
		                condlog(3, "%s: No checker selected", pp->dev);
		                return PATH_UNCHECKED;
		...
	}

	pathinfo() {
		...
		                pp->chkrstate = pp->state = get_state(pp, 0);
		                if (pp->state == PATH_UNCHECKED ||
		                    pp->state == PATH_WILD)
		                        goto blank;
		...
		        get_uid(pp);
		...
		blank:
		...
	}


	... | sdm: get_state
	... | loading /lib/multipath/libchecktur.so checker
	... | A dynamic linking error occurred: (libgcc_s.so.1: cannot open shared object file: No such file or directory)
	... | unloading tur checker
	...
	... | sdm: No checker selected
	... | Discover device <...>/sdm/sdm1
	... | Discover device <...>/sdm/sdm2
	... | Discover device <...>/sdm/sdm3
	... | Discover device <...>/sdn
	... | sdn: udev property ID_WWN whitelisted

There's no libgcc in the installer.

	~ # find /lib/ -name '*gcc*'
	~ # 

Tried overriding the path checker, but the setting is taken from the hardcoded value (hwentry),
and even changing the tur checker library for another one which don't depend on libgcc didn't work
 -- it seems the piece dependening on libgcc is required for the load operation, not a library.

	~ # for lib in /lib/multipath/libcheck*.so; do echo $lib; grep -a libgcc_s.so.1 $lib >/dev/null; echo $?; done
	/lib/multipath/libcheckcciss_tur.so
	1
	/lib/multipath/libcheckdirectio.so
	1
	/lib/multipath/libcheckemc_clariion.so
	1
	/lib/multipath/libcheckhp_sw.so
	1
	/lib/multipath/libcheckrdac.so
	1
	/lib/multipath/libcheckreadsector0.so
	1
	/lib/multipath/libchecktur.so
	0

	~ # mv /lib/multipath/libchecktur.so /lib/multipath/libchecktur.so.orig
	~ # ln -s /lib/multipath/libcheckdirectio.so /lib/multipath/libchecktur.so

	~ # multipath -v3
	...
	... | loading /lib/multipath/libchecktur.so checker
	... | A dynamic linking error occurred: (libgcc_s.so.1: cannot open shared object file: No such file or directory)
	... | unloading tur checker
	...

== Comment: #8 - Mauricio Faria De Oliveira <mauricfo at br.ibm.com> - 2015-08-26 18:57:56 ==
Ubuntu actually does contain the fix for static libgcc from Debian [1], 
but it's not working on Ubuntu for some reason.

[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=779579#50

== Comment: #9 - Mauricio Faria De Oliveira <mauricfo at br.ibm.com> - 2015-08-26 19:16:42 ==
(In reply to comment #8)
> but it's not working on Ubuntu for some reason.

Or not working for specific files for some reason :)

The -static-libgcc parameter is correctly being carried over in the build, but libchecktur doesn't get it. 
And for some reason it's the only libcheck* that uses libgcc.

Checking all libs in multipath-udeb for libgcc:

	~/mpathudeb$ find lib/ -name '*.so' -print -exec grep -H libgcc '{}' ';'
	lib/multipath/libpriordac.so
	lib/multipath/libpriodatacore.so
	lib/multipath/libcheckrdac.so
	lib/multipath/libcheckemc_clariion.so
	lib/multipath/libpriorandom.so
	lib/multipath/libprioontap.so
	lib/multipath/libprioconst.so
	lib/multipath/libcheckreadsector0.so
	lib/multipath/libcheckhp_sw.so
	lib/multipath/libpriohp_sw.so
	lib/multipath/libpriohds.so
	lib/multipath/libprioweightedpath.so
	lib/multipath/libcheckdirectio.so
	lib/multipath/libchecktur.so
	Binary file lib/multipath/libchecktur.so matches
	lib/multipath/libcheckcciss_tur.so
	lib/multipath/libprioiet.so
	lib/multipath/libprioalua.so
	lib/multipath/libprioemc.so

Checking the build log [1] for -static-libgcc (in there).
Maybe it's also required in the last cc command as well.

	make[2]: Entering directory '/?PKGBUILDDIR?/libmultipath/checkers'
	cc -g -O3 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -static-libgcc -D_FORTIFY_SOURCE=2 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -Wunused -Wstrict-prototypes -fPIC -DLIB_STRING=\"lib\" -I.. -c -o libsg.o libsg.c
	...
	cc -g -O3 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -static-libgcc -D_FORTIFY_SOURCE=2 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -Wunused -Wstrict-prototypes -fPIC -DLIB_STRING=\"lib\" -I.. -c -o tur.o tur.c
	cc -Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now -shared -o libchecktur.so libsg.o tur.o

[1] https://launchpadlibrarian.net/213493168/buildlog_ubuntu-wily-
ppc64el.multipath-tools_0.5.0-7ubuntu3_BUILDING.txt.gz

** Affects: multipath-tools (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: architecture-ppc64 bot-comment bugnameltc-129385 patch severity-critical targetmilestone-inin1510
-- 
LTE: ISST:leeklp4 no mpath choices for install ubuntu 15.10
https://bugs.launchpad.net/bugs/1489379
You received this bug notification because you are a member of Ubuntu Sponsors Team, which is subscribed to the bug report.



More information about the Ubuntu-sponsors mailing list