Page MenuHomeFreeBSD

thread: Add a return value to cpu_set_upcall()
ClosedPublic

Authored by markj on Dec 19 2023, 3:14 AM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Nov 23, 7:16 AM
Unknown Object (File)
Sun, Nov 10, 10:05 PM
Unknown Object (File)
Mon, Nov 4, 9:25 AM
Unknown Object (File)
Oct 20 2024, 11:55 AM
Unknown Object (File)
Sep 23 2024, 6:04 PM
Unknown Object (File)
Sep 14 2024, 4:26 AM
Unknown Object (File)
Sep 13 2024, 5:08 PM
Unknown Object (File)
Sep 9 2024, 5:19 AM

Details

Summary

Some implementations copy data to userspace, an operation which can in
principle fail. In preparation for adding a __result_use_check
annotation to copyin() and related functions, let implementations of
cpu_set_upcall() return an error, and check for errors when copying data
to user memory.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

markj requested review of this revision.Dec 19 2023, 3:14 AM

Might be a worth idea would be to split UVA accessing parts into a separate upcall. Not least because it is really x86-specific.

This revision is now accepted and ready to land.Dec 19 2023, 8:00 AM
In D43100#982582, @kib wrote:

Might be a worth idea would be to split UVA accessing parts into a separate upcall. Not least because it is really x86-specific.

I don't have much of an opinion on this. Note that the powerpc64 implementation needs to be able to return errors from copyin(). I fixed it in a separate diff.

This revision was automatically updated to reflect the committed changes.