Thanks for your explanation of the TIF_TASK_ISOLATION flag being needed for x86 _TIF_WORK_SYSCALL_ENTRY. It makes perfect sense in retrospect :-) On 9/12/2016 8:20 PM, Francis Giraldeau wrote:
On a side note, the NOSIG mode may be confusing for the users. At first, I was expecting that NOSIG behaves the same way as the normal task isolation mode. In the current situation, if the user wants the normal behavior, but does not care about the signal, the user must register an empty signal handler.
So, "normal behavior" isn't really well defined once we start allowing empty signal handlers. In particular, task isolation will be turned off before invoking your signal handler, and if the handler is empty, you just lose isolation and that's that. By contrast, the NOSIG mode will try to keep you isolated. I'm definitely open to suggestions about how to frame the API for NOSIG or equivalent modes. What were you expecting to be able to do by suppressing the signal, and how is NOSIG not the thing you wanted?
However, if I understand correctly, other settings beside NOHZ and isolcpus are required to support quiet CPUs, such as irq_affinity and rcu_nocb. It would be very convenient from the user point of view if these other settings were configure correctly.
I think it makes sense to move towards a mode where enabling task_isolation sets up the rcu_nocbs and irq_affinity automatically, rather than requiring users to understand all the fiddly configuration and boot argument details.
I can work on that and also write some doc (Documentation/task-isolation.txt ?).
Sure, documentation is always welcome! -- Chris Metcalf, Mellanox Technologies http://www.mellanox.com -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html