{"ref":"refs/heads/for-linus","push_id":55040941,"commits":[{"sha":"30a37c3f5ed38afe5bab0a6dfc0fd0642392703b","author":{"email":"f429030cf5c0faf36fac3d102073b6e63a647baa@dreamhost.com","name":"Alex Elder"},"url":"https://api.github.com/repos/NewDreamNetwork/ceph-client/commits/30a37c3f5ed38afe5bab0a6dfc0fd0642392703b","message":"ceph: take inode lock when finding an inode alias\n\nIn the ceph_dir_*_complete() functions, a call to\n__d_find_any_alias() is used to get a dentry for a inode.\nPreviously this was done under the inode's i_lock, but\nrecently this change converted things to use the ceph\ninode's i_ceph_lock instead:\n    be655596 ceph: use i_ceph_lock instead of i_lock\n\nFinding an inode alias operates (only) on the Linux inode, so\nwe really do need to take the Linux lock for this.  Since i_lock\nis ordered inside i_ceph_lock, we can safely do this for all\nthese ceph cases.\n\nFor now, just copy the d_find_any_alias() function from\n\"fs/dcache.c\" and use that instead.\n\nSigned-off-by: Alex Elder <elder@dreamhost.com>"},{"sha":"37b56bcab24865e7be0ab1e39bfbd7e918a6944d","author":{"email":"f429030cf5c0faf36fac3d102073b6e63a647baa@dreamhost.com","name":"Alex Elder"},"url":"https://api.github.com/repos/NewDreamNetwork/ceph-client/commits/37b56bcab24865e7be0ab1e39bfbd7e918a6944d","message":"ceph: take a reference to the dentry in d_find_any_alias()\n\nThe ceph code duplicates __d_find_any_alias(), but it currently\ndoes not take a reference to the returned dentry as it should.\nReplace the ceph implementation with an exact copy of what's\nfound in \"fs/dcache.c\", and update the callers so they drop\ntheir reference when they're done with it.\n\nUnfortunately this requires the wholesale copy of the functions\nthat implement __dget().  It would be much nicer to just export\nd_find_any_alias() from \"fs/dcache.c\" instead.\n\nSigned-off-by: Alex Elder <elder@dreamhost.com>"},{"sha":"442167581b51bf2e51acb50833964adfa2d6caf5","author":{"email":"6dd34506bbd5e58221bbb3e4732d97c91f02277b@newdream.net","name":"Sage Weil"},"url":"https://api.github.com/repos/NewDreamNetwork/ceph-client/commits/442167581b51bf2e51acb50833964adfa2d6caf5","message":"ceph: enable/disable dentry complete flags via mount option\n\nEnable/disable use of the dentry dir 'complete' flag via a mount option.\n\nSigned-off-by: Sage Weil <sage@newdream.net>"}],"head":"442167581b51bf2e51acb50833964adfa2d6caf5","size":3}