feat: prefer NVIDIA DPU reset for force restart - #139
zanezhuNVIDIA wants to merge 1 commit into
Conversation
Signed-off-by: Zane Zhu <170476994+zanezhuNVIDIA@users.noreply.github.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (16)
Included review availability: Your plan provides up to 12 included reviews per hour; 10 remain after this review. 📝 WalkthroughWalkthroughThe change adds NVIDIA OpenBMC chassis reset models and uses advertised chassis targets for DPU ChangesNVIDIA DPU reset flow
Estimated code review effort: 3 (Moderate) | ~20 minutes Merge Risk: ⚪ Minimal · up to Force restart now prefers the advertised NVIDIA DPU reset action and falls back to the standard Redfish reset when unavailable or stale. The covered fallback paths leave no identified merge-blocking risk. Sequence Diagram(s)sequenceDiagram
participant Client
participant ComputerSystem
participant Chassis
participant NvidiaReset
Client->>ComputerSystem: Request ForceRestart
Client->>Chassis: Find matching chassis
Chassis-->>Client: Return OEM reset target
Client->>NvidiaReset: POST ForceDpuReset
NvidiaReset-->>Client: Return success or not-found
Client->>ComputerSystem: Use standard reset when unsupported
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 33.33% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 15 functions across 4 files. (12 skipped: 12 unsupported.)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
Comment |
Using the "/redfish/v1/Chassis/BlueField_0/Actions/Oem/NvidiaChassis.Reset" endpoint is the official way for BF4 to do the reset.
The standard redfish ForceRestart method may not work with BF4 DPU.
To handle this situation, the nv-redfish would try to use "/redfish/v1/Chassis/BlueField_0/Actions/Oem/NvidiaChassis.Reset" endpoint first to reset the BF4 DPU if the endpoint exists. If the endpoint does not exist, the nv-redfish would be fallback to standard ForceRestart method.
Summary by CodeRabbit
New Features
Tests