Skip to content

Commit 4f72911

Browse files
committed
Guard _SC_IOV_MAX sysconf result and fallback to sane default
1 parent 3d0d67b commit 4f72911

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

src/linux/mem.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,12 @@ pub struct ProcessVirtualMemory {
1919

2020
impl ProcessVirtualMemory {
2121
pub fn new(info: &ProcessInfo) -> Self {
22-
let iov_max = unsafe { sysconf(_SC_IOV_MAX) } as usize;
22+
const DEFAULT_IOV_MAX: usize = 1024;
23+
24+
let iov_max = usize::try_from(unsafe { sysconf(_SC_IOV_MAX) })
25+
.ok()
26+
.filter(|&v| v > 0)
27+
.unwrap_or(DEFAULT_IOV_MAX);
2328

2429
Self {
2530
pid: info.pid as pid_t,

0 commit comments

Comments
 (0)