[pcied] Honour PCIE_DETACH_INFO on platforms that are not smartswitches
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 82/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- Active
- Stack technique
- python
- Domaine
- operating-systems
Piste de recherche
Commencez dans sonic-pcied/scripts/pcied en vérifiant la configuration inconditionnelle de PCIE_DETACH_INFO autour de la ligne 109 ainsi que le traitement réservé à smartswitch autour des lignes 211-213. Suivez l’impact d’un bus_info détaché sur le résultat de poll, err et PCIE_DEVICES|status. C’est terminé lorsque les périphériques détachés intentionnellement sont pris en compte sur les plateformes qui ne sont pas smartswitch, sans laisser status à FAILED.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
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.
- Langage dominant
- Python
- Étoiles
- 38
- Forks
- 236
- Merge moyen
- 3 j 18 h
- PR mergées (30 j)
- 5
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de sonic-net/sonic-platform-daemons
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
-
sonic-net/sonic-platform-daemons#868 · 1 commentaire · 1 personne assignée ·
-
sonic-net/sonic-platform-daemons#848 · 1 personne assignée ·
-
sonic-net/sonic-platform-daemons#847 · 1 personne assignée ·
-
sonic-net/sonic-platform-daemons#846 · 1 personne assignée ·
Toutes les issues de sonic-net/sonic-platform-daemons
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
-
enhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
PolicyEngine/policyengine-us#9559 ·