On Thu, Oct 21, 2021 at 01:03:33PM -0700, Andy Lutomirski wrote:
On Fri, Oct 8, 2021, at 4:55 PM, Kees Cook wrote:
This makes sure that wchan contains a sensible symbol when a process is blocked. Specifically this calls the sleep() syscall, and expects the architecture to have called schedule() from a function that has "sleep" somewhere in its name. For example, on the architectures I tested (x86_64, arm64, arm, mips, and powerpc) this is "hrtimer_nanosleep":
Is this really better than admitting that the whole mechanism is nonsense and disabling it?
We could have a fixed string for each task state and call it a day.
I consider this to be "future work". In earlier discussions it came up, but there wasn't an obvious clean cost-free way to do this, so instead we're just fixing the broken corner and keeping the mostly working rest of it while cleaning up the weird edges. :)