nfs4: improve state handler concurrency

The state handler keeps track of NFSv4 clients. This duty is not
symmetric - updates happen when a client is added or removed, but
queried almost for any compound operation in a session. Thus on a
busy system we can observe thread serialization.

replace synchronized blocks with read/write locks.

a better concurrency in a multi-client environment.

Acked-by: Paul Millar
Acked-by: Albert Rossi
Target: master
1 job for master in 1 minute and 9 seconds (queued for 6 seconds)