Messages in this thread | | | Date | Fri, 11 Jun 2021 10:28:10 +0200 | From | Peter Zijlstra <> | Subject | [PATCH v2 0/7] Cleanup task_struct::state |
| |
Hi!
The task_struct::state variable is a bit odd in a number of ways:
- it's declared 'volatile' (against current practises); - it's 'unsigned long' which is a weird size; - it's type is inconsistent when used for function arguments.
These patches clean that up by making it consistently 'unsigned int', and replace (almost) all accesses with READ_ONCE()/WRITE_ONCE(). In order to not miss any, the variable is renamed, ensuring a missed conversion results in a compile error.
The first few patches fix a number of pre-existing errors and introduce a few helpers to make the final conversion less painful.
This series applies on top of tip/master, and has been having the all-clear from the robots for the past week.
Since v1: - fixed a whole bunch of compile fail on !x86 - collected tags - (slightly) smaller Cc list
The plan is to stick them in tip/sched/core early next week, I'm hoping this won't cause too much pain for sfr.
| |