Bug #12781

/etc/ppt_aliases needs to be in the boot archive

Added by Andy Fiddaman 6 months ago. Updated 6 months ago.

Start date:
Due date:
% Done:


Estimated time:
Gerrit CR:


12680 added PCI pass-through support in bhyve and introduces a new driver aliases file called /etc/ppt_aliases
This file needs to be added to the boot archive so it is available during early boot.

This was done in OmniOS under

Related issues

Related to illumos gate - Feature #12680: want PCI pass-thru in bhyveClosedHans Rosenfeld


Updated by Andy Fiddaman 6 months ago


Updated by Andy Fiddaman 6 months ago

  • Status changed from New to In Progress
  • Assignee set to Andy Fiddaman

Updated by Hans Rosenfeld 6 months ago

I kinda doubt that /etc/ppt_aliases if of any use outside of SmartOS. It's really just a kludge to work around the problem that changes to /etc/driver_aliases aren't persistent across reboots in SmartOS, hence we introduced this new file which to be loaded as a module by the bootloader.

In any other illumos distribution it's probably much easier and less confusing to just use the normal driver_aliases mechanism, using update_drv(1M) to attach ppt to a device.


Updated by John Levon 6 months ago

I'm not sure I agree: ppt_aliases is an over-ride mechanism. If you just did a normal update_drv you'd lose the original packaged mapping (not sure what pkg would do with that) and would be unable to undo it easily without recording what it was.


Updated by Igor Kozhukhov 6 months ago

I agree with Andy and John.
separate file can be more easy managed in this case and shouldn't depend on original files.


Updated by Andy Fiddaman 6 months ago

I have been using ppt_aliases up to now just because of the problem that John highlights - I wanted to keep the original mapping in the driver_aliases and keep pkg verify happy:

bloody# update_drv -d -i 'pciex15b3,101f' mlxcx
bloody# update_drv -a -i 'pciex15b3,101f' ppt
devfsadm: driver failed to attach: ppt
Warning: Driver (ppt) successfully added to system but failed to attach
bloody# pkg verify mlxcx
PACKAGE                                                                 STATUS
pkg://omnios/driver/network/mlxcx                                        ERROR
        driver: mlxcx
                ERROR: alias 'pciex15b3,101f' missing from etc/driver_aliases

Updated by Hans Rosenfeld 6 months ago

Ok, thats a use case I didn't anticipate.

Do we already have documentation for ppt_aliases, and ideally, a tool to add entries to it? Does pptadm(1M) do that already?


Updated by Andy Fiddaman 6 months ago

It looks like ppt_aliases is only documented in the pptadm man page so far, and pptadm is currently only a utility for displaying mappings.

It looks like there's some integration work that could be done here.


Updated by John Levon 6 months ago

Yeah, I basically never got around to writing the bit that updates the aliases file


Updated by Andy Fiddaman 6 months ago

It sounds like we need at least one follow-up issue filing but that the change to put ppt_aliases in the boot archive can go ahead.
Shall I file the issues or are there any volunteers with a better understanding of what needs doing?


Updated by Electric Monk 6 months ago

  • Status changed from In Progress to Closed
  • % Done changed from 0 to 100

git commit b325f34d6fd056178a119182f410f157d35a9ea6

commit  b325f34d6fd056178a119182f410f157d35a9ea6
Author: Andy Fiddaman <>
Date:   2020-05-26T10:02:47.000Z

    12781 /etc/ppt_aliases needs to be in the boot archive
    Reviewed by: Igor Kozhukhov <>
    Reviewed by: Toomas Soome <>
    Reviewed by: Robert Mustacchi <>
    Approved by: Robert Mustacchi <>

Also available in: Atom PDF