On Tue, Oct 27, 2020 at 09:49:50AM -0700, Ben Gardon wrote:
Rescheduling while holding a spin lock is essential for keeping long
running kernel operations running smoothly. Add the facility to
cond_resched rwlocks.
This adds two new exports and two new macros without any in-tree users, which
is generally frowned upon. You and I know these will be used by KVM's new
TDP MMU, but the non-KVM folks, and more importantly the maintainers of this
code, are undoubtedly going to ask "why". I.e. these patches probably belong
in the KVM series to switch to a rwlock for the TDP MMU.
Regarding the code, it's all copy-pasted from the spinlock code and darn near
identical. It might be worth adding builder macros for these.