On Wed, 2021-08-25 at 21:45 +0800, xiubli@xxxxxxxxxx wrote: > From: Xiubo Li <xiubli@xxxxxxxxxx> > > V3: > - fix one crash bug in the first patch. > > V2: > - minor fixes to clean up the code from Jeff's comments, thanks > - swith to use lockdep_assert_held(). > > > > Test this for around 5 hours and this patch series worked well for me, my test script is: > > $ while [ 1 ]; do date; for d in A B C; do (for i in {1..3}; do ./bin/mount.ceph :/ /mnt/kcephfs.$d -o noshare; rm -rf /mnt/kcephfs.$d/file$i.txt; rmdir /mnt/kcephfs.$d/.snap/snap$i; dd if=/dev/zero of=/mnt/kcephfs.$d/file$i.txt bs=1M count=8; mkdir -p /mnt/kcephfs.$d/.snap/snap$i; umount -fl /mnt/kcephfs.$d; done ) & done; wait; date; done > > > > Xiubo Li (3): > ceph: remove the capsnaps when removing the caps > ceph: don't WARN if we're force umounting > ceph: don't WARN if we're iterate removing the session caps > > fs/ceph/caps.c | 106 ++++++++++++++++++++++++++++++++----------- > fs/ceph/mds_client.c | 40 ++++++++++++++-- > fs/ceph/super.h | 7 +++ > 3 files changed, 123 insertions(+), 30 deletions(-) > This looks good overall. I made a small change to the first patch to turn the old BUG_ON into a WARN_ON_ONCE. I didn't see the need to crash the box in that case. Also, I revised the changelogs and a couple of comments. Let me know if you see any issues with the changes I merged into "testing". Thanks! -- Jeff Layton <jlayton@xxxxxxxxxx>