ceph-csi/pkg/cephfs
Niels de Vos 72ac53b6b0 cephfs: add kernel version detection for mounting with client
Linux kernel 4.17.0 adds support for quota with CephFS. Without quota,
it is not possible to fullfill the requirements of the CSI Spec and
guarantee sufficient space on the filesystem for a volume. With this in
mind, usage of the kernel client is only allowed with kernel 4.17.0 or
newer.

However, some Linux vendors backport features and patches to their
Enterprise products. These kernels may have an older version, but do
support quota. One of these is the kernel that comes with RHEL-7.7.

By comparing the current running version of the Linux kernel against
known versions that support quota, we can now automatically decide to
use the kernel client, or not.

Note that this does not change the 'forcekernelclient' parameter. The
parameter is still available and can be used for kernels that are not in
the 'known to support quota list'. Or users can pass the parameter to
use a CephFS kernel client that does not support quota.

Signed-off-by: Niels de Vos <ndevos@redhat.com>
Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
(cherry picked from commit 290beb4dda)
2019-11-13 22:46:57 +05:30
..
cephfs_util.go switch to cephfs, utils, and csicommon to new loging system 2019-08-29 14:04:31 +00:00
cephuser.go switch to cephfs, utils, and csicommon to new loging system 2019-08-29 14:04:31 +00:00
controllerserver.go Fix volsize for cephfs and rbd 2019-10-11 08:22:27 +00:00
driver.go Added forcecephkernelclient as startup parameter to force enabling ceph 2019-10-16 06:47:10 +00:00
errors.go Make CephFS plugin stateless reusing RADOS based journal scheme 2019-05-30 06:20:35 -04:00
fsjournal.go switch to cephfs, utils, and csicommon to new loging system 2019-08-29 14:04:31 +00:00
identityserver.go Replaces the references to the Kubernete Authors with the Ceph-CSI authors 2019-04-03 11:14:08 +02:00
mountcache_test.go code style 2019-04-01 23:02:19 +08:00
mountcache.go switch to cephfs, utils, and csicommon to new loging system 2019-08-29 14:04:31 +00:00
nodeserver.go Change the logic of locking 2019-09-20 07:37:17 +00:00
util.go Address security concerns reported by 'gosec' 2019-09-04 11:48:37 +00:00
volume.go switch to cephfs, utils, and csicommon to new loging system 2019-08-29 14:04:31 +00:00
volumemounter_test.go cephfs: add kernel version detection for mounting with client 2019-11-13 22:46:57 +05:30
volumemounter.go cephfs: add kernel version detection for mounting with client 2019-11-13 22:46:57 +05:30
volumeoptions.go Fix volsize for cephfs and rbd 2019-10-11 08:22:27 +00:00