Project

General

Profile

Actions

Bug #11699

closed

x86 pci configurator should not fail device teardown if device is gone

Added by Rob Johnston over 2 years ago. Updated about 1 year ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
-
Start date:
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:

Description

This is to track upstreaming the following issue from illumos-joyent:

OS-7968 pci configurator should not fail device teardown if device is gone

For details, rationale and testing notes, please refer to the original SmartOS issue:

https://smartos.org/bugview/OS-7968

Actions #1

Updated by Rob Johnston over 2 years ago

  • Subject changed from pci configurator should not fail device teardown if device is gone to x86 pci configurator should not fail device teardown if device is gone
Actions #2

Updated by Rob Johnston over 2 years ago

If a hotpluggable PCIe device is removed, the PCIe hotplug controller ("pciehpc") will unprobe the slot, which eventually kicks off a pcicfg_unconfigure, which does a pcicfg_teardown_device for the child devinfo nodes on the slot. To disable the device, the teardown routine calls pcicfg_config_setup, which determines whether there is a device at the specified address. If there is no device, the teardown fails. For a hotpluggable slot, we do not want to fail in this case, as the absence of a device is possible and not an error.

The teardown routine should be changed to return success if the device is absent.

Actions #3

Updated by Electric Monk about 1 year ago

  • Gerrit CR set to 1381
Actions #4

Updated by Electric Monk about 1 year ago

  • Status changed from New to Closed
  • % Done changed from 0 to 100

git commit ffb6483089015eb90be1f5e7fc2a96c9929546a6

commit  ffb6483089015eb90be1f5e7fc2a96c9929546a6
Author: Jordan Paige Hendricks <jordan.hendricks@joyent.com>
Date:   2021-04-06T00:17:41.000Z

    11698 Want NVMe Hotplug Support
    11699 x86 pci configurator should not fail device teardown if device is gone
    11700 DDI hotplug request handler resets connection handle state before performing state change operations
    11701 ldi_handle dcmd segfaults occasionally
    Reviewed by: Robert Mustacchi <rm@joyent.com>
    Reviewed by: Rob Johnston <rob.johnston@joyent.com>
    Reviewed by: Paul Winder <paul@winder.uk.net>
    Approved by: Dan McDonald <danmcd@joyent.com>

Actions

Also available in: Atom PDF