Re: [Cluster-devel] [GFS2 PATCH 1/2] GFS2: Make gfs2_clear_inode() queue the final put

2015-12-08 Thread Steven Whitehouse
Hi, On 08/12/15 07:57, Dave Chinner wrote: On Wed, Dec 02, 2015 at 11:42:13AM -0500, Bob Peterson wrote: - Original Message - (snip) Please take a look at this again and figure out what the problematic cycle of events is, and then work out how to avoid that happening in the first place

Re: [Cluster-devel] [GFS2 PATCH 1/2] GFS2: Make gfs2_clear_inode() queue the final put

2015-12-07 Thread Dave Chinner
On Wed, Dec 02, 2015 at 11:42:13AM -0500, Bob Peterson wrote: > - Original Message - > (snip) > > Please take a look at this > > again and figure out what the problematic cycle of events is, and then > > work out how to avoid that happening in the first place. There is no > > point in repla

Re: [Cluster-devel] [GFS2 PATCH 1/2] GFS2: Make gfs2_clear_inode() queue the final put

2015-12-04 Thread Bob Peterson
- Original Message - > On Fri, Dec 04, 2015 at 09:51:53AM -0500, Bob Peterson wrote: > > it's from the fenced process, and if so, queue the final put. That should > > mitigate the problem. > > Bob, I'm perplexed by the focus on fencing; this issue is broader than > fencing as I mentioned i

Re: [Cluster-devel] [GFS2 PATCH 1/2] GFS2: Make gfs2_clear_inode() queue the final put

2015-12-04 Thread David Teigland
On Fri, Dec 04, 2015 at 09:51:53AM -0500, Bob Peterson wrote: > it's from the fenced process, and if so, queue the final put. That should > mitigate the problem. Bob, I'm perplexed by the focus on fencing; this issue is broader than fencing as I mentioned in bz 1255872. Over the years that I've r

Re: [Cluster-devel] [GFS2 PATCH 1/2] GFS2: Make gfs2_clear_inode() queue the final put

2015-12-04 Thread Bob Peterson
Hi, - Original Message - > > Hi Steve, > > > > Another possibility is to add a new inode work_queue which does the work of > > gfs2_clear_inode(). Its only function would be to clear the inode, and > > therefore, there should not be any competing work, as there is in the case > > of > > a

Re: [Cluster-devel] [GFS2 PATCH 1/2] GFS2: Make gfs2_clear_inode() queue the final put

2015-12-03 Thread Steven Whitehouse
Hi, On 02/12/15 17:41, Bob Peterson wrote: - Original Message - - Original Message - (snip) Please take a look at this again and figure out what the problematic cycle of events is, and then work out how to avoid that happening in the first place. There is no point in replacing

Re: [Cluster-devel] [GFS2 PATCH 1/2] GFS2: Make gfs2_clear_inode() queue the final put

2015-12-02 Thread Bob Peterson
- Original Message - > - Original Message - > (snip) > > Please take a look at this > > again and figure out what the problematic cycle of events is, and then > > work out how to avoid that happening in the first place. There is no > > point in replacing one problem with another one

Re: [Cluster-devel] [GFS2 PATCH 1/2] GFS2: Make gfs2_clear_inode() queue the final put

2015-12-02 Thread Bob Peterson
- Original Message - (snip) > Please take a look at this > again and figure out what the problematic cycle of events is, and then > work out how to avoid that happening in the first place. There is no > point in replacing one problem with another one, particularly one which > would likely b

Re: [Cluster-devel] [GFS2 PATCH 1/2] GFS2: Make gfs2_clear_inode() queue the final put

2015-12-02 Thread Steven Whitehouse
HI, On 01/12/15 15:42, Bob Peterson wrote: - Original Message - Hi, On 25/11/15 14:22, Bob Peterson wrote: - Original Message - Hi, On 19/11/15 18:42, Bob Peterson wrote: This patch changes function gfs2_clear_inode() so that instead of calling gfs2_glock_put directly() mos

Re: [Cluster-devel] [GFS2 PATCH 1/2] GFS2: Make gfs2_clear_inode() queue the final put

2015-12-01 Thread Bob Peterson
- Original Message - > Hi, > > On 25/11/15 14:22, Bob Peterson wrote: > > - Original Message - > >> Hi, > >> > >> On 19/11/15 18:42, Bob Peterson wrote: > >>> This patch changes function gfs2_clear_inode() so that instead > >>> of calling gfs2_glock_put directly() most of the time,

Re: [Cluster-devel] [GFS2 PATCH 1/2] GFS2: Make gfs2_clear_inode() queue the final put

2015-11-25 Thread Steven Whitehouse
Hi, On 25/11/15 14:22, Bob Peterson wrote: - Original Message - Hi, On 19/11/15 18:42, Bob Peterson wrote: This patch changes function gfs2_clear_inode() so that instead of calling gfs2_glock_put directly() most of the time, it queues the glock to the delayed work queue. That avoids a

Re: [Cluster-devel] [GFS2 PATCH 1/2] GFS2: Make gfs2_clear_inode() queue the final put

2015-11-25 Thread Bob Peterson
- Original Message - > Hi, > > On 19/11/15 18:42, Bob Peterson wrote: > > This patch changes function gfs2_clear_inode() so that instead > > of calling gfs2_glock_put directly() most of the time, it queues > > the glock to the delayed work queue. That avoids a possible > > deadlock where i

Re: [Cluster-devel] [GFS2 PATCH 1/2] GFS2: Make gfs2_clear_inode() queue the final put

2015-11-20 Thread Steven Whitehouse
Hi, On 19/11/15 18:42, Bob Peterson wrote: This patch changes function gfs2_clear_inode() so that instead of calling gfs2_glock_put directly() most of the time, it queues the glock to the delayed work queue. That avoids a possible deadlock where it calls dlm during a fence operation: dlm waits f

[Cluster-devel] [GFS2 PATCH 1/2] GFS2: Make gfs2_clear_inode() queue the final put

2015-11-19 Thread Bob Peterson
This patch changes function gfs2_clear_inode() so that instead of calling gfs2_glock_put directly() most of the time, it queues the glock to the delayed work queue. That avoids a possible deadlock where it calls dlm during a fence operation: dlm waits for a fence operation, the fence operation wait