ceph / ceph-csi

CSI driver for Ceph
Apache License 2.0
1.19k stars 527 forks source link

wip: implement a global lock for cephfs encryption #4688

Open NymanRobin opened 1 week ago

NymanRobin commented 1 week ago

Describe what this PR does

The pr implements a global mutex with the help of rados omap, this is needed because there is a concurrency in cephfs when encryption is used. This fixes the issue: #4654.

Is there anything that requires special attention

Due to this kernel requirement the testing is limited to the functionality of the mutex rather than the full feature

Sorry, I had to open this in a work in progress state, since I will be away on vacation the next four weeks and thought in case there is interest in continuing the work this would not go to waste. However I have tested this on a test setup with fscrypt compatible kernel and the concurrency issue is fixed. I will however add some things below that might need some attention still

Checklist: