2016-01-11 12:54:55 |
Rafael David Tinoco |
bug |
|
|
added bug |
2016-01-11 12:55:07 |
Rafael David Tinoco |
multipath-tools (Ubuntu): status |
New |
In Progress |
|
2016-01-11 12:55:09 |
Rafael David Tinoco |
multipath-tools (Ubuntu): assignee |
|
Rafael David Tinoco (inaddy) |
|
2016-01-11 17:23:45 |
Gábor Mészáros |
bug |
|
|
added subscriber Gábor Mészáros |
2016-01-11 19:25:32 |
Rafael David Tinoco |
description |
It was brought to my attention that Trusty's multipath-tools is suffering some seg faults.
The dumps were sent to me and I'll update this bug's description soon. |
It was brought to my knowledge that multipath-tools is facing segfaults:
----
Core was generated by `/sbin/multipath -v0 /dev/sdab'. Program terminated with signal 11, Segmentation fault. #0 0x00007f2b5f6c8e88 in scsi_sysfs_pathinfo (pp=0xe5c0e0) at discovery.c:441
----
All core dumps I received - several - have IP at the same place:
----
#0 0x00007f2b5f6c8e88 in scsi_sysfs_pathinfo (pp=0xe5c0e0) at discovery.c:441
#1 0x00007f2b5f6c9c26 in sysfs_pathinfo (pp=0xe5c0e0) at discovery.c:689
#2 0x00007f2b5f6ca48b in pathinfo (pp=0xe5c0e0, hwtable=0xe222f0, mask=63) at discovery.c:823
#3 0x00007f2b5f6c7858 in store_pathinfo (pathvec=0xe2d8d0, hwtable=0xe222f0, udevice=0xe5bc60, flag=31, pp_ptr=0x0) at discovery.c:57
#4 0x00007f2b5f6c7953 in path_discover (pathvec=0xe2d8d0, conf=0xe22110, udevice=0xe5bc60, flag=31) at discovery.c:91
#5 0x00007f2b5f6c7ad3 in path_discovery (pathvec=0xe2d8d0, conf=0xe22110, flag=31) at discovery.c:127
#6 0x00000000004025e6 in configure () at main.c:322
----
From libmultipath/discovery.c:
if (!strncmp(udev_device_get_subsystem(parent), "scsi", 4)) {
It is clear that strncmp is not taking care of cases when udev_device_get_subsystem returns NULL and that is - most likely - what is happening here. I have checked upstream development for this particular fix and found the following commit:
----
commit e546687e046b1eb1cbe5567e9d7850cbbd682dba
Author: Benjamin Marzinski <bmarzins@redhat.com>
Date: Sat Jan 12 00:04:54 2013 -0600
multipath: check for NULL from udev_device_get_*
The udev_device_get_* functions can return NULL, an occassionally do
so in the multipathd code. multipath needs to check if the result
is NULL before dereferencing it.
Signed-off-by: Benjamin Marzinski <bmarzins@redhat.com>
----
Takes care of exactly this situation. This commit is found in the following versions:
----
inaddy@rafael(/home/inaddy/Codes/bugs/1532789/upstream/multipath-tools)$ git tag --contains e546687e046b1eb1cbe5567e9d7850cbbd682dba
0.5.0
----
And, from rmadison, this fix should be backported to Trusty & Vivid (not at 0.5.0 yet). |
|
2016-01-11 19:54:27 |
Rafael David Tinoco |
bug |
|
|
added subscriber Mathieu Trudel-Lapierre |
2016-01-11 20:00:42 |
Rafael David Tinoco |
attachment added |
|
trusty_multipath-tools_0.4.9-3ubuntu7.8.debdiff https://bugs.launchpad.net/ubuntu/+source/multipath-tools/+bug/1532789/+attachment/4548193/+files/trusty_multipath-tools_0.4.9-3ubuntu7.8.debdiff |
|
2016-01-11 20:04:28 |
Rafael David Tinoco |
description |
It was brought to my knowledge that multipath-tools is facing segfaults:
----
Core was generated by `/sbin/multipath -v0 /dev/sdab'. Program terminated with signal 11, Segmentation fault. #0 0x00007f2b5f6c8e88 in scsi_sysfs_pathinfo (pp=0xe5c0e0) at discovery.c:441
----
All core dumps I received - several - have IP at the same place:
----
#0 0x00007f2b5f6c8e88 in scsi_sysfs_pathinfo (pp=0xe5c0e0) at discovery.c:441
#1 0x00007f2b5f6c9c26 in sysfs_pathinfo (pp=0xe5c0e0) at discovery.c:689
#2 0x00007f2b5f6ca48b in pathinfo (pp=0xe5c0e0, hwtable=0xe222f0, mask=63) at discovery.c:823
#3 0x00007f2b5f6c7858 in store_pathinfo (pathvec=0xe2d8d0, hwtable=0xe222f0, udevice=0xe5bc60, flag=31, pp_ptr=0x0) at discovery.c:57
#4 0x00007f2b5f6c7953 in path_discover (pathvec=0xe2d8d0, conf=0xe22110, udevice=0xe5bc60, flag=31) at discovery.c:91
#5 0x00007f2b5f6c7ad3 in path_discovery (pathvec=0xe2d8d0, conf=0xe22110, flag=31) at discovery.c:127
#6 0x00000000004025e6 in configure () at main.c:322
----
From libmultipath/discovery.c:
if (!strncmp(udev_device_get_subsystem(parent), "scsi", 4)) {
It is clear that strncmp is not taking care of cases when udev_device_get_subsystem returns NULL and that is - most likely - what is happening here. I have checked upstream development for this particular fix and found the following commit:
----
commit e546687e046b1eb1cbe5567e9d7850cbbd682dba
Author: Benjamin Marzinski <bmarzins@redhat.com>
Date: Sat Jan 12 00:04:54 2013 -0600
multipath: check for NULL from udev_device_get_*
The udev_device_get_* functions can return NULL, an occassionally do
so in the multipathd code. multipath needs to check if the result
is NULL before dereferencing it.
Signed-off-by: Benjamin Marzinski <bmarzins@redhat.com>
----
Takes care of exactly this situation. This commit is found in the following versions:
----
inaddy@rafael(/home/inaddy/Codes/bugs/1532789/upstream/multipath-tools)$ git tag --contains e546687e046b1eb1cbe5567e9d7850cbbd682dba
0.5.0
----
And, from rmadison, this fix should be backported to Trusty & Vivid (not at 0.5.0 yet). |
[Impact]
* multipath segfaults constantly on given circumstances
* multipath might make other tools relying on it to misbehave (openstack)
[Test Case]
* Core Dump given. No test case or reproducer.
* Will ask user in charge for the dump to verify fix.
[Regression Potential]
* Cherry-picked commit that EXACTLY fits seg fault and dump analysis.
* Minor change.
[Other Info]
####
Original BUG Description:
It was brought to my knowledge that multipath-tools is facing segfaults:
----
Core was generated by `/sbin/multipath -v0 /dev/sdab'. Program terminated with signal 11, Segmentation fault. #0 0x00007f2b5f6c8e88 in scsi_sysfs_pathinfo (pp=0xe5c0e0) at discovery.c:441
----
All core dumps I received - several - have IP at the same place:
----
#0 0x00007f2b5f6c8e88 in scsi_sysfs_pathinfo (pp=0xe5c0e0) at discovery.c:441
#1 0x00007f2b5f6c9c26 in sysfs_pathinfo (pp=0xe5c0e0) at discovery.c:689
#2 0x00007f2b5f6ca48b in pathinfo (pp=0xe5c0e0, hwtable=0xe222f0, mask=63) at discovery.c:823
#3 0x00007f2b5f6c7858 in store_pathinfo (pathvec=0xe2d8d0, hwtable=0xe222f0, udevice=0xe5bc60, flag=31, pp_ptr=0x0) at discovery.c:57
#4 0x00007f2b5f6c7953 in path_discover (pathvec=0xe2d8d0, conf=0xe22110, udevice=0xe5bc60, flag=31) at discovery.c:91
#5 0x00007f2b5f6c7ad3 in path_discovery (pathvec=0xe2d8d0, conf=0xe22110, flag=31) at discovery.c:127
#6 0x00000000004025e6 in configure () at main.c:322
----
From libmultipath/discovery.c:
if (!strncmp(udev_device_get_subsystem(parent), "scsi", 4)) {
It is clear that strncmp is not taking care of cases when udev_device_get_subsystem returns NULL and that is - most likely - what is happening here. I have checked upstream development for this particular fix and found the following commit:
----
commit e546687e046b1eb1cbe5567e9d7850cbbd682dba
Author: Benjamin Marzinski <bmarzins@redhat.com>
Date: Sat Jan 12 00:04:54 2013 -0600
multipath: check for NULL from udev_device_get_*
The udev_device_get_* functions can return NULL, an occassionally do
so in the multipathd code. multipath needs to check if the result
is NULL before dereferencing it.
Signed-off-by: Benjamin Marzinski <bmarzins@redhat.com>
----
Takes care of exactly this situation. This commit is found in the following versions:
----
inaddy@rafael(/home/inaddy/Codes/bugs/1532789/upstream/multipath-tools)$ git tag --contains e546687e046b1eb1cbe5567e9d7850cbbd682dba
0.5.0
----
And, from rmadison, this fix should be backported to Trusty & Vivid (not at 0.5.0 yet). |
|
2016-01-11 20:16:20 |
Jorge Niedbalski |
tags |
|
sts |
|
2016-01-11 20:22:08 |
Ubuntu Foundations Team Bug Bot |
tags |
sts |
patch sts |
|
2016-01-11 20:22:16 |
Ubuntu Foundations Team Bug Bot |
bug |
|
|
added subscriber Ubuntu Sponsors Team |
2016-01-12 03:20:51 |
Mathew Hodson |
multipath-tools (Ubuntu): importance |
Undecided |
High |
|
2016-01-12 03:22:17 |
Mathew Hodson |
nominated for series |
|
Ubuntu Trusty |
|
2016-01-19 13:31:40 |
Louis Bouchard |
bug task added |
|
multipath-tools (Ubuntu Trusty) |
|
2016-01-19 13:38:04 |
Louis Bouchard |
bug |
|
|
added subscriber Louis Bouchard |
2016-01-21 01:02:01 |
Mathew Hodson |
multipath-tools (Ubuntu Trusty): importance |
Undecided |
High |
|
2016-01-28 20:45:05 |
Mathew Hodson |
multipath-tools (Ubuntu Trusty): status |
New |
Triaged |
|
2016-02-01 06:14:31 |
Ming-Xun Zhong |
bug |
|
|
added subscriber Ming-Xun Zhong |
2016-02-02 13:24:58 |
Rafael David Tinoco |
multipath-tools (Ubuntu): assignee |
Rafael David Tinoco (inaddy) |
|
|
2016-02-02 13:25:46 |
Louis Bouchard |
multipath-tools (Ubuntu Trusty): assignee |
|
Louis Bouchard (louis-bouchard) |
|
2016-02-10 10:42:17 |
Louis Bouchard |
removed subscriber Ubuntu Sponsors Team |
|
|
|
2016-03-15 11:11:08 |
Louis Bouchard |
tags |
patch sts |
patch sts sts-sru |
|
2016-04-20 09:15:35 |
Amad Ali |
bug |
|
|
added subscriber Amad Ali |
2016-05-10 12:18:38 |
Louis Bouchard |
multipath-tools (Ubuntu): status |
In Progress |
Invalid |
|
2016-05-10 12:18:43 |
Louis Bouchard |
multipath-tools (Ubuntu Trusty): status |
Triaged |
In Progress |
|
2016-05-10 12:54:55 |
Louis Bouchard |
bug |
|
|
added subscriber Ubuntu Stable Release Updates Team |
2016-05-12 17:35:57 |
Brian Murray |
multipath-tools (Ubuntu Trusty): status |
In Progress |
Fix Committed |
|
2016-05-12 17:36:00 |
Brian Murray |
bug |
|
|
added subscriber SRU Verification |
2016-05-12 17:36:11 |
Brian Murray |
tags |
patch sts sts-sru |
patch sts sts-sru verification-needed |
|
2016-05-23 15:04:14 |
Louis Bouchard |
tags |
patch sts sts-sru verification-needed |
patch sts sts-sru verification-done |
|
2016-05-23 15:13:47 |
Louis Bouchard |
tags |
patch sts sts-sru verification-done |
patch sts sts-sru verification-needed |
|
2016-06-01 14:55:09 |
Louis Bouchard |
tags |
patch sts sts-sru verification-needed |
patch sts sts-sru verification-done |
|
2016-06-02 06:58:38 |
Launchpad Janitor |
multipath-tools (Ubuntu Trusty): status |
Fix Committed |
Fix Released |
|
2016-06-02 06:58:44 |
Martin Pitt |
removed subscriber Ubuntu Stable Release Updates Team |
|
|
|