• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

NVIDIA / nvrc / 20373283300

19 Dec 2025 02:40PM UTC coverage: 79.822% (+51.2%) from 28.618%
20373283300

Pull #84

github

web-flow
Merge 3ab21c41c into 5b8b670d9
Pull Request #84: NVRC complete code coverage

67 of 85 new or added lines in 11 files covered. (78.82%)

4 existing lines in 4 files now uncovered.

269 of 337 relevant lines covered (79.82%)

1.53 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

66.67
/src/modprobe.rs
1
use crate::execute::foreground;
2
use anyhow::Result;
3

4
const MODPROBE: &str = "/sbin/modprobe";
5

6
/// Load a kernel module via modprobe.
7
/// Used to load GPU drivers (nvidia, nvidia-uvm) during init.
8
pub fn load(module: &str) -> Result<()> {
1✔
9
    foreground(MODPROBE, &[module])
1✔
10
}
11

12
/// Reload NVIDIA modules to pick up configuration changes.
13
/// Used after nvidia-smi adjusts GPU settings (clocks, power limits)
14
/// that require a module reload to take effect.
15
pub fn reload_nvidia_modules() -> Result<()> {
1✔
16
    foreground(MODPROBE, &["-r", "nvidia-uvm", "nvidia"])?;
1✔
NEW
17
    load("nvidia")?;
×
NEW
18
    load("nvidia-uvm")
×
19
}
20

21
#[cfg(test)]
22
mod tests {
23
    use super::*;
24
    use crate::test_utils::require_root;
25
    use serial_test::serial;
26

27
    // Kernel module loading must be serialized - parallel modprobe
28
    // calls can race and cause spurious failures.
29

30
    #[test]
31
    #[serial]
32
    fn test_load_loop() {
33
        require_root();
34
        // 'loop' module is almost always available (loop devices)
35
        assert!(load("loop").is_ok());
36
    }
37

38
    #[test]
39
    #[serial]
40
    fn test_load_nonexistent() {
41
        require_root();
42
        // Should fail for a module that doesn't exist
43
        assert!(load("nonexistent_module_xyz123").is_err());
44
    }
45

46
    #[test]
47
    #[serial]
48
    fn test_reload_fails_without_hardware() {
49
        require_root();
50
        // Will fail: no nvidia modules on systems without NVIDIA
51
        let _ = reload_nvidia_modules();
52
    }
53
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc