For next

This is a new pull request after the required changes (Fix whitespace and add SoB)

Reminder:
The main merits from these changes are:
1. Setattr now supports truncate so it can be done as an atomic
operation in the fsal.
2. Setattr permissions check was faulty, now it is working correctly
for both nfsV3 and nfsV4.
3. The fsals now supports ATTR_MTIME_SERVER and ATTR_ATIME_SERVER,
which can be done with less permissions.
4. Setattr works properly when using squash root or squash everyone.
5. cache_inode_lock_trust_attrs now supports returning with write lock.
6. Fix bug in cache_inode_create_verify (In case of attributes error,
lock was released without acquiring it).
7. Fixed release bug in nfs4 - attr mask was not set since the setting
code was called inside assert (assert isn't called in release mode).