Message ID | 20231117022121.23310-1-neilb@suse.de (mailing list archive) |
---|---|
Headers | show |
Series | support admin-revocation of v4 state | expand |
On Fri, 2023-11-17 at 13:18 +1100, NeilBrown wrote: > This set adds a prequel series to my previous posting which addresses > some locking problems around ->sc_type and splits that field into > to separate fields: sc_type and sc_status. > The recovation code is modified to accomodate these changed. > > Thanks > NeilBrown > > [PATCH 1/9] nfsd: hold ->cl_lock for hash_delegation_locked() > [PATCH 2/9] nfsd: avoid race after unhash_delegation_locked() > [PATCH 3/9] nfsd: split sc_status out of sc_type > [PATCH 4/9] nfsd: prepare for supporting admin-revocation of state > [PATCH 5/9] nfsd: allow admin-revoked state to appear in > [PATCH 6/9] nfsd: allow admin-revoked NFSv4.0 state to be freed. > [PATCH 7/9] nfsd: allow lock state ids to be revoked and then freed > [PATCH 8/9] nfsd: allow open state ids to be revoked and then freed > [PATCH 9/9] nfsd: allow delegation state ids to be revoked and then > Nice set. I like this overall. One (other) question: do we need to add handling for revoking layout stateids as well? I'll plan to pull this into my local branch for some testing over the weekend.
On Fri, 17 Nov 2023, Jeff Layton wrote: > On Fri, 2023-11-17 at 13:18 +1100, NeilBrown wrote: > > This set adds a prequel series to my previous posting which addresses > > some locking problems around ->sc_type and splits that field into > > to separate fields: sc_type and sc_status. > > The recovation code is modified to accomodate these changed. > > > > Thanks > > NeilBrown > > > > [PATCH 1/9] nfsd: hold ->cl_lock for hash_delegation_locked() > > [PATCH 2/9] nfsd: avoid race after unhash_delegation_locked() > > [PATCH 3/9] nfsd: split sc_status out of sc_type > > [PATCH 4/9] nfsd: prepare for supporting admin-revocation of state > > [PATCH 5/9] nfsd: allow admin-revoked state to appear in > > [PATCH 6/9] nfsd: allow admin-revoked NFSv4.0 state to be freed. > > [PATCH 7/9] nfsd: allow lock state ids to be revoked and then freed > > [PATCH 8/9] nfsd: allow open state ids to be revoked and then freed > > [PATCH 9/9] nfsd: allow delegation state ids to be revoked and then > > > > Nice set. I like this overall. One (other) question: do we need to add > handling for revoking layout stateids as well? I guess so... I don't give much thought to layout stateids. They are used in LAYOUTGET LAYOUTCOMMIT LAYOUTRETURN. (it's seems odd that they aren't used in READ/WRITE....) I guess we need to drop the ref on ->ls_file and maybe unlock the vfs lease.... I wonder if I should just use ->sc_free for that. Maybe ->sc_free could take a 'revoke_only' arg which causes it to free resources but not free the stateid itself. Maybe that would make the code cleaner. NeilBrown > > I'll plan to pull this into my local branch for some testing over the > weekend. > -- > Jeff Layton <jlayton@kernel.org> >