Ceph-fuse: Fallocate and punch hole support

This patch implements fallocate and punch hole support for Ceph fuse client.

Signed-off-by: Yunchuan Wen <yunchuanwen@ubuntukylin.com>
Signed-off-by: Li Wang <liwang@ubuntukylin.com>
client: guard fallocate with #ifdefs

Only include linux header if it's linux.  Only implement the fallocate
method if FALLOC_FL_PUNCH_HOLE is defined.

Signed-off-by: Sage Weil <sage@inktank.com>
client: do not mark_caps_dirty for generic fallocate

A normal fallocate in which the size is not changed is still a no-op.

Signed-off-by: Sage Weil <sage@inktank.com>