cephfs: make ceph_fallocate() platform independent
Until now the implementation of Client::_fallocate() was depending on
the GNU/Linux specific mode flags FALLOC_FL_KEEP_SIZE and
FALLOC_FL_PUNCH_HOLE. This is technically not necessary and prevents
user-space applications on non-Linux platforms to make use of
ceph_fallocate() without good reason. This change defines the flags
with hard-coded values in case they have not been defined by system
headers.