ceph/ceph — pull request #1122 by wwformat (2014-01-21 09:02:30+00:00)
Title: Wip cephfs quota

This patch implements cephfs quota support.
Currently, the quota is implemented at directory level.

Some key designs behind,
1 Quota is get/set by extend attribute interfrace;
2 QuotaTree is used to buffer quota at client side, and it is lazily
reconstructed if directory hierarchy changed;
3 Quota update is synchronized within mds cluster by PolicyLock;
4 New rstat as well as quota are pushed to all related clients by auth mds,
prior to that, MGatherCaps message is used to collect information
of clients from other mds;
5 Quota is pushed to client within the reply to readdir request;
6 Old mds without quota support is shut down;
7 Moving files across quota trees are forbidden if quota enabled.