PCI0@0 identifiers

All your general support questions for OpenZFS on OS X.

PCI0@0 identifiers

Postby mkush » Wed Feb 20, 2019 6:58 am

I posted this question months ago and it got 0 replies... which I guess means it’s obvious or completely uninteresting. Either way, it really bugs me so if anyone could answer it would be much appreciated.

In short: when I import pools, the identifiers mostly begin with media- but sometimes randomly show up as PCI0@0- identifiers. It is inconsistent as to which disks if any show up this way. Question: what are those numbers and why do they seemingly randomly appear for certain disks and, most importantly, should I be concerned? See my previous post for better details if desired.

Hardware: Akitio 4-bay Thunderbolt 3 enclosure with four Samsung 860 EVO disks hooked to 2013 Mac Pro, running Mojave and OpenZFS 1.8.1.

Any answers appreciated! Thanks.
mkush
 
Posts: 53
Joined: Tue Sep 30, 2014 1:17 pm

Re: PCI0@0 identifiers

Postby mkush » Wed Feb 20, 2019 4:07 pm

I did find in the wiki how to import pools using different types of disk identifiers, and I now understand that the PCI0@0 identifiers are "by-path" ones, and that the media- ones are "by-id". But that still doesn't explain why they randomly switch around on import. For example, playing with this just now, I imported a pool using "by-serial". One of the drives showed up as "by-id". Then I did it again and all four were properly "by-serial". So, while I understand more about the different types of identifiers, I still don't understand why they would randomly switch around.

By the way, I'm running the newest "1.8.2" installer.
mkush
 
Posts: 53
Joined: Tue Sep 30, 2014 1:17 pm

Re: PCI0@0 identifiers

Postby lundman » Thu Feb 21, 2019 4:24 pm

I've alerted the dev of invariantdisk, he might be able to enlighten you with regards to the path names.


> Akitio 4-bay Thunderbolt 3 enclosure with four Samsung 860 EVO disks hooked to 2013 Mac Pro,

Any issues with this? I have a Akitio 4bay -> thunderbolt3<->thunderbolt2 adapter, with Mac Pro - and I get endless disconnects, to the point where I don't even use it anymore.
User avatar
lundman
 
Posts: 1337
Joined: Thu Mar 06, 2014 2:05 pm
Location: Tokyo, Japan

Re: PCI0@0 identifiers

Postby cbreak » Thu Feb 21, 2019 11:30 pm

Hi

InvariantDisks creates symlinks to the true device files to have more invariant names, especially when disks disappear and reappear. There are four types of symlinks I create:
https://github.com/cbreak-black/Invaria ... pp#L94-L97

- by-path uses the media path, the way a device is physically connected to a computer. This is useful when you want hard disks connected to the same SATA port to have the same name for example. The data is read out of DADiskRef's kDADiskDescriptionMediaPathKey.
- by-id uses partition / device UUIDs stored in the partition table. This is useful when you want devices to get the same name only when they contain the same data (maybe cloned via dd or similar).
- by-serial uses the device serial number. Only devices that have the same serial number are considered the same. But I'm not convinced I can get the serial number reliably in all cases.
- by-image-path is a hack to get something reliable from disk images.

Symlinks are created when devices appear, and removed when they disappear. It is possible to get stale symlinks if ID or the whole computer crashes, but the next time it is started, it should delete them.

I'm not entirely sure how ZFS uses those symlinks after importing, but before, you should be able to control which ones you use with zpool import -d /var/run/disk/by-serial or similar. This should persist until the pool is exported again.
cbreak
 
Posts: 13
Joined: Mon Sep 19, 2016 9:12 am

Re: PCI0@0 identifiers

Postby chrryd » Fri Feb 22, 2019 4:09 am

I'm not entirely sure how ZFS uses those symlinks after importing, but before, you should be able to control which ones you use with zpool import -d /var/run/disk/by-serial or similar. This should persist until the pool is exported again.


Is this supposed to be persistent over reboots too? If I import a pool to use, say, 'by-path', then reboot the mac (i.e. reboot it the normal Apple way, without taking any other explicit manual action like exporting the pool) I find that when the machine has rebooted it's gone back to using 'by-id'.

Any issues with this? I have a Akitio 4bay -> thunderbolt3<->thunderbolt2 adapter, with Mac Pro - and I get endless disconnects, to the point where I don't even use it anymore

I have several of the Akitio 4bay *thunderbolt 2* enclosures (not the Thunderbolt 3 version) and initially I found them a tiny bit flaky until I swapped the cables for some longer ones (just because I wanted to move the enclosures further from the MacPro trashcan) - and they've so far been rock solid since then. I wonder if either the PCB sockets are not the most solid of connections, or the original cables were not the best quality.
chrryd
 
Posts: 11
Joined: Wed Jun 17, 2015 3:44 am

Re: PCI0@0 identifiers

Postby mkush » Fri Feb 22, 2019 8:20 am

Thanks to all.

Should I try manually cleaning out /var/run/disk in case of stale data there?

Regarding the reliability of the Akitio unit... specifically it is a Thunder3 Quad Mini and it is connected to the 2013 Mac Pro by an Apple Thunderbolt 2 to 3 converter and an Apple Thunderbolt 2 cable. It has never disconnected. In fact, I have three of these units and none has ever disconnected.
mkush
 
Posts: 53
Joined: Tue Sep 30, 2014 1:17 pm

Re: PCI0@0 identifiers

Postby lundman » Sun Feb 24, 2019 4:05 pm

specifically it is a Thunder3 Quad Mini and it is connected to the 2013 Mac Pro by an Apple Thunderbolt 2 to 3 converter and an Apple Thunderbolt 2 cable.


Yeha, I have a Thunder3 Quad Mini with a "thunderbolt 2 to 3 adapter" and normal thunderbolt 2 cable. But I have constant disconnects. I have tried different SSD, macs, OS versions etc. Left cable and adapter plugged in during OS upgrade, so the adapter got a new firmware, but alas, still disconnects. I haven't tried a different cable or adapter yet - not sure it is worth investigating further :)
User avatar
lundman
 
Posts: 1337
Joined: Thu Mar 06, 2014 2:05 pm
Location: Tokyo, Japan

Re: PCI0@0 identifiers

Postby tangles » Tue Feb 26, 2019 7:32 pm

Is there a way to permanently set entries to be serial numers?
Or is that not really possible due to partitions being used?
tangles
 
Posts: 195
Joined: Tue Jun 17, 2014 6:54 am

Re: PCI0@0 identifiers

Postby mkush » Wed Mar 06, 2019 7:12 pm

lundman wrote:
specifically it is a Thunder3 Quad Mini and it is connected to the 2013 Mac Pro by an Apple Thunderbolt 2 to 3 converter and an Apple Thunderbolt 2 cable.


Yeha, I have a Thunder3 Quad Mini with a "thunderbolt 2 to 3 adapter" and normal thunderbolt 2 cable. But I have constant disconnects. I have tried different SSD, macs, OS versions etc. Left cable and adapter plugged in during OS upgrade, so the adapter got a new firmware, but alas, still disconnects. I haven't tried a different cable or adapter yet - not sure it is worth investigating further :)


Since I have three of those enclosures and have never had a disconnect I’d say, Yes, worth trying both a different cable and adapter.

I was unaware that the adapter got firmware updates. Any way to verify firmware version and upgrade besides an OS upgrade?
mkush
 
Posts: 53
Joined: Tue Sep 30, 2014 1:17 pm

Re: PCI0@0 identifiers

Postby lundman » Thu Mar 07, 2019 4:43 pm

You can easily check the firmware version in Apple Menu->About This Mac->System Report->Thunderbolt

My cable is 1.0.16, and Link controller 0.17.0, and firmware 14.1
User avatar
lundman
 
Posts: 1337
Joined: Thu Mar 06, 2014 2:05 pm
Location: Tokyo, Japan


Return to General Help

Who is online

Users browsing this forum: No registered users and 23 guests

cron