[pcied] Honour PCIE_DETACH_INFO on platforms that are not smartswitches
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 82/100
- Issue-Typ
- Bug
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- python
- Bereich
- operating-systems
Rechercherichtung
Beginne in sonic-pcied/scripts/pcied und prüfe die bedingungslose Einrichtung von PCIE_DETACH_INFO um Zeile 109 sowie die ausschließlich für smartswitch geltende Behandlung um die Zeilen 211-213. Verfolge, wie ein abgetrenntes bus_info das poll-Ergebnis, err und PCIE_DEVICES|status beeinflusst. Als erledigt gilt, wenn absichtlich abgetrennte Geräte auf Plattformen ohne smartswitch berücksichtigt werden, ohne dass status FAILED bleibt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
pcied only consults the PCIE_DETACH_INFO table when the platform is a smartswitch:
On anything else device_info.is_smartswitch() is False, so the table is never read and a device that has been deliberately detached is reported as missing on every poll:
pcied: PCIe Device: <name> Not Found
err is non-zero as a result, so PCIE_DEVICES|status in STATE_DB stays FAILED for as long as the device is detached, which in turn trips anything watching that field (e.g. loganalyzers in sonic-mgmt tests).
Nothing about the table is smartswitch-specific. pcied creates it unconditionally at startup:
and its contract is just "this bus_info is expected to be absent right now". Smartswitches are simply the first consumer; a fixed-form switch that detaches a PCIe device to upgrade it in service (an FPGA or a retimer, say) has exactly the same need and no way to express it.
pcied should honour PCIE_DETACH_INFO regardless of platform type.
- Vorherrschende Sprache
- Python
- Sterne
- 38
- Forks
- 236
- Ø Merge
- 3 T. 18 Std.
- Gemergte PRs (30 T.)
- 5
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus sonic-net/sonic-platform-daemons
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
-
sonic-net/sonic-platform-daemons#868 · 1 Kommentar · 1 zugewiesene Person ·
-
sonic-net/sonic-platform-daemons#848 · 1 zugewiesene Person ·
-
sonic-net/sonic-platform-daemons#847 · 1 zugewiesene Person ·
-
sonic-net/sonic-platform-daemons#846 · 1 zugewiesene Person ·
Alle Issues in sonic-net/sonic-platform-daemons
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
-
enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
PolicyEngine/policyengine-us#9559 ·