[Bug 1611945] Re: /dev/disk/by-path not properly populated for (e)SATA port multiplier disks
Norman Henderson
norm.audrey at gmail.com
Mon Feb 12 15:35:52 UTC 2018
Ladies and Gentlemen, The technical stuff is way over my head but I am
getting the same syslog errors and the same inconsistent device paths on
an HP Proliant ML110 G7 with Ubuntu 16.04.3 kernel 4.4.0-98-generic.
It seems clear that no-one is taking ownership of this to fix it in an
actual update that ordinary people like me can install in the normal
course of system updates. The nature of open source software I guess.
However could someone please let me know:
- is this just an annoying message that won't be fixed, or are there operational implications?
- if there are implications, are they serious?
- if they are serious, could you explain (or point me at a resource that explains) in detail, how to install the patch provided. I've never done that before.
Thank you in advance!
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/1611945
Title:
/dev/disk/by-path not properly populated for (e)SATA port multiplier
disks
Status in systemd package in Ubuntu:
Confirmed
Bug description:
We have a just-installed Ubuntu 16.04 LTS machine with a number of
disks behind port-multiplier eSATA ports, all of them driven by a SiI
3124 controller (sata_sil24 kernel driver). Our machine sees all disks
on all channels, however under 16.04 only one disk from each channel
shows up in /dev/disk/by-path/ (all disks show up in /dev/disk/by-id
and /dev/disk/by-uuid). For our usage this is a severe defect because
we rotate disks in and out of the external enclosure and rely on
mounting specific slots in the external enclosure through /dev/disk
/by-path.
This did not happen in Ubuntu 12.04 LTS, the release that this machine
was previously running.
According to 'udevadm info --export-db' and 'udevadm test-builtin
path_id' and so on, systemd's udev stuff is assigning all drives
behind the same port the same disk/by-path data (ID_PATH et al). In
'udevadm info /sys/block/sdX', the 'P:' and 'E: DEVPATH=' values show
a difference in the target portion of PCI path, eg:
P: /devices/pci0000:00/0000:00:01.0/0000:01:00.0/0000:02:00.0/ata1/host0/target0:0:0/0:0:0:0/block/sda
P: /devices/pci0000:00/0000:00:01.0/0000:01:00.0/0000:02:00.0/ata1/host0/target0:1:0/0:1:0:0/block/sdb
However the 'S: disk/by-path', 'E: DEVLINKS=', and 'E: ID_PATH'
portions do not. For both devices above, we see:
S: disk/by-path/pci-0000:02:00.0-ata-1
E: ID_PATH=pci-0000:02:00.0-ata-1
Naturally only one device can have a /dev/disk/by-
path/pci-0000:02:00.0-ata-1 symlink, so instead of four disks per
channel in /dev/disk/by-path we see one.
Ubuntu release: 16.04
Package versions from 'apt-cache policy udev systemd':
udev:
Installed: 229-4ubuntu7
systemd:
Installed: 229-4ubuntu7
'journalctl -b' reports that during boot systemd does report some
'appeared twice with different sysfs paths' notes, eg:
Aug 10 13:34:21 verdandi systemd[1]: dev-disk-by\x2dpath-
pci\x2d0000:02:00.0\x2data\x2d1\x2dpart1.device: Dev dev-disk-by
\x2dpath-pci\x2d0000:02:00.0\x2data\x2d1\x2dpart1.device appeared
twice with different sysfs paths
/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/0000:02:00.0/ata1/host0/target0:3:0/0:3:0:0/block/sdd/sdd1
and
/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/0000:02:00.0/ata1/host0/target0:0:0/0:0:0:0/block/sda/sda1
However it doesn't seem to be reporting this for all port-multiplier
drives and their partitions.
If it would be useful I can attach full 'udevadm info --export-db'
output or the like.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1611945/+subscriptions
More information about the foundations-bugs
mailing list