]> git.baikalelectronics.ru Git - kernel.git/commit
ceph: use pagelist to present MDS request data
authorYan, Zheng <zyan@redhat.com>
Tue, 16 Sep 2014 11:15:28 +0000 (19:15 +0800)
committerSage Weil <sage@redhat.com>
Tue, 14 Oct 2014 19:56:49 +0000 (12:56 -0700)
commit69d5d618bda5d424ffecf094de8c2a760619bb11
tree8825e784ff921f4dd27e42b321c1a26cf26b9632
parentab7985d65b2c550b81ae66f6d6efb8ed39df8507
ceph: use pagelist to present MDS request data

Current code uses page array to present MDS request data. Pages in the
array are allocated/freed by caller of ceph_mdsc_do_request(). If request
is interrupted, the pages can be freed while they are still being used by
the request message.

The fix is use pagelist to present MDS request data. Pagelist is
reference counted.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
fs/ceph/mds_client.c
fs/ceph/mds_client.h
fs/ceph/xattr.c