]> git.proxmox.com Git - mirror_spl.git/commit
Add rwsem_tryupgrade for 4.9.20-rt16 kernel (SPL)
authorTony Hutter <hutter2@llnl.gov>
Wed, 15 Aug 2018 18:58:54 +0000 (11:58 -0700)
committerTony Hutter <hutter2@llnl.gov>
Fri, 6 Jul 2018 09:45:01 +0000 (02:45 -0700)
commite503bc5edbc1dc86857d25c4e0b9e70e4380fa85
tree00c62f65bc11e4b53bfaf731cb4c59cb7d37e955
parent06b5dfd4ae10d35e43ae7353dd054ab3ff1ebf07
Add rwsem_tryupgrade for 4.9.20-rt16 kernel (SPL)

(This is the SPL backported code from 11d0525cb)

The RT rwsem implementation was changed to allow multiple readers
as of the 4.9.20-rt16 patch set.  This results in a build failure
because the existing implementation was forced to directly access
the rwsem structure which has changed.

While this could be accommodated by adding additional compatibility
code.  This patch resolves the build issue by simply assuming the
rwsem can never be upgraded.  This functionality is a performance
optimization and all callers must already handle this case.

Converting the last remaining use of __SPIN_LOCK_UNLOCKED to
spin_lock_init() was additionally required to get a clean build.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #7589
include/sys/isa_defs.h
include/sys/rwlock.h
module/spl/spl-rwlock.c
module/spl/spl-vnode.c