From 19b936effff6fb3f06cc9cc8a1f6028ec8f1d413 Mon Sep 17 00:00:00 2001 From: vasilito Date: Sat, 11 Jul 2026 23:00:30 +0300 Subject: [PATCH] kernel: fix kfdwrite signature to match RB-modified trait (add arg param, cloexec field) The RB fork's KernelScheme trait has an extra 'arg: u64' parameter in kfdwrite (not in upstream). Also RB's FileDescriptor has a 'cloexec' field. Both are now handled correctly. --- src/scheme/proc.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/scheme/proc.rs b/src/scheme/proc.rs index a8ef268b84..f7f8ca6759 100644 --- a/src/scheme/proc.rs +++ b/src/scheme/proc.rs @@ -940,6 +940,7 @@ impl KernelScheme for ProcScheme { id: usize, descs: Vec>, flags: CallFlags, + _arg: u64, metadata: &[u64], token: &mut CleanLockToken, ) -> Result { @@ -969,7 +970,7 @@ impl KernelScheme for ProcScheme { file.close(token)?; } - let mut file = descs.get(0).unwrap(); + let file = descs.get(0).unwrap(); let mut context = context.write(token.token()); let (context, mut token) = context.token_split(); context @@ -977,6 +978,7 @@ impl KernelScheme for ProcScheme { FileHandle(usize::try_from(*target_fd).map_err(|_| Error::new(EBADFD))?), context::file::FileDescriptor { description: file.clone(), + cloexec: false, }, &mut token, )