On Feb 5, 2025, at 1:33 PM, Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
On
Wed, 5 Feb 2025 16:19:45 -0500
Steven
Rostedt <rostedt@xxxxxxxxxxx>
wrote:
On Wed, 5 Feb 2025 21:08:47 +0000
Prakash Sangappa <prakash.sangappa@xxxxxxxxxx> wrote:
The new syscall/API proposed was to provide per thread shared mapped
area(shared structure) that are allocated from memory pages that are pinned.
So the kernel could access it without the need for a copyin/copyout.
The idea is that it would be helpful in places where we cannot take a page
fault in the kernel codepath.
What places do we need to decided this in a critical path? If we follow my
proposal, where we set NEED_RESCHED_LAZY on sched_tick when it interrupts
user space, then it should all work out.
Actually,
it doesn't need to be pinned for kernel critical paths (like an
interrupt
handler). That's because when entering the user critical path, it
writes
to the location, which will fault that memory in. If the page isn't
there
when the kernel accesses it, it most likely means the task isn't in a
critical
section and there's no reason to extend the tick.
Sure, it is not important in this use case.
--
Steve
|