Ensure only the kernel can return EINTR.

This commit is contained in:
4lDO2
2023-09-11 18:18:00 +02:00
parent 04f689cee7
commit 10256b331c
+6 -1
View File
@@ -689,7 +689,12 @@ impl UserInner {
_ => return Err(Error::new(EINVAL)),
}
} else {
self.respond(packet.id, Response::Regular(packet.a))?;
let response = if Error::demux(packet.a) == Err(Error::new(EINTR)) {
Error::mux(Err(Error::new(EIO)))
} else {
packet.a
};
self.respond(packet.id, Response::Regular(response))?;
}
Ok(())