Use call instead of call_inner for fmap_inner

This commit is contained in:
bjorn3
2026-04-06 14:46:08 +02:00
committed by Jeremy Soller
parent cd3b18068f
commit bdf82a958a
+11 -18
View File
@@ -1044,33 +1044,26 @@ impl UserInner {
return Err(Error::new(EBUSY));
}
let (pid, desc) = {
let (ctx, desc) = {
let current_lock = context::current();
let mut current = current_lock.read(token.token());
let (context, mut token) = current.token_split();
let mut files = context.files.read(token.token());
let (files, mut token) = files.token_split();
let desc = files.find_by_scheme(self.scheme_id, file, &mut token)?;
(context.pid, desc.description)
(context.caller_ctx(), desc.description)
};
let response = self.call_inner(
let response = self.call(
ctx,
Vec::new(),
Sqe {
opcode: Opcode::MmapPrep as u8,
sqe_flags: SqeFlags::empty(),
_rsvd: 0,
tag: self.next_id(token)?,
args: [
file as u64,
unaligned_size as u64,
map.flags.bits() as u64,
map.offset as u64,
0,
uid_gid_hack_merge(current_uid_gid(token)),
],
caller: pid as u64,
},
Opcode::MmapPrep,
[
file as u64,
unaligned_size as u64,
map.flags.bits() as u64,
map.offset as u64,
],
&mut PageSpan::empty(),
token,
)?;