All of lore.kernel.org
 help / color / mirror / Atom feed
* [Cluster-devel] [PATCH] Fix change nlink deadlock
@ 2006-12-15 14:50 Wendy Cheng
  2006-12-15 15:16 ` Steven Whitehouse
  0 siblings, 1 reply; 4+ messages in thread
From: Wendy Cheng @ 2006-12-15 14:50 UTC (permalink / raw)
  To: cluster-devel.redhat.com

Bugzilla 215088

Fix deadlock in gfs2_change_nlink() while installing RHEL5 into GFS2 
partition. The gfs2_rename() apparently needs block allocation for the 
new name (into the directory) where it requires rg locks. At the same 
time, while updating the nlink count for the replaced file, 
gfs2_change_nlink() tries to return the inode meta-data back to resource 
group where it needs rg locks too. Our logic doesn't allow process to 
acquire these locks recursively by the same process  (RHEL installer) 
that results a BUG call. This only happens within rename code path and 
only if the destination file exists before the rename operation.

Patch passed a simulated test program created for this issue yesterday - 
havn't really tried it out on installer yet. Will continue to installer 
test today. Pass it up for a quick eyeball examine.

-- Wendy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gfs2_rename_nlink.patch
Type: text/x-patch
Size: 2580 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/cluster-devel/attachments/20061215/58088dfc/attachment.bin>

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Cluster-devel] [PATCH] Fix change nlink deadlock
  2006-12-15 14:50 [Cluster-devel] [PATCH] Fix change nlink deadlock Wendy Cheng
@ 2006-12-15 15:16 ` Steven Whitehouse
  2006-12-15 19:44   ` Wendy Cheng
  0 siblings, 1 reply; 4+ messages in thread
From: Steven Whitehouse @ 2006-12-15 15:16 UTC (permalink / raw)
  To: cluster-devel.redhat.com

Hi,

On Fri, 2006-12-15 at 09:50 -0500, Wendy Cheng wrote:
> Bugzilla 215088
> 
> Fix deadlock in gfs2_change_nlink() while installing RHEL5 into GFS2 
> partition. The gfs2_rename() apparently needs block allocation for the 
> new name (into the directory) where it requires rg locks. At the same 
> time, while updating the nlink count for the replaced file, 
> gfs2_change_nlink() tries to return the inode meta-data back to resource 
> group where it needs rg locks too. Our logic doesn't allow process to 
> acquire these locks recursively by the same process  (RHEL installer) 
> that results a BUG call. This only happens within rename code path and 
> only if the destination file exists before the rename operation.
> 
> Patch passed a simulated test program created for this issue yesterday - 
> havn't really tried it out on installer yet. Will continue to installer 
> test today. Pass it up for a quick eyeball examine.
> 
> -- Wendy

That looks good to me, so let me know if it passes the tests and I'll
push the patch into the -nmw tree in that case,

Steve.




^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Cluster-devel] [PATCH] Fix change nlink deadlock
  2006-12-15 15:16 ` Steven Whitehouse
@ 2006-12-15 19:44   ` Wendy Cheng
  2006-12-18 15:50     ` Steven Whitehouse
  0 siblings, 1 reply; 4+ messages in thread
From: Wendy Cheng @ 2006-12-15 19:44 UTC (permalink / raw)
  To: cluster-devel.redhat.com


>
> That looks good to me, so let me know if it passes the tests and I'll
> push the patch into the -nmw tree in that case,
>   
Steve, ok, as long as you agree with the approach ... There is another 
panic - when the new and old inodes are located in different RGs. Here 
is the revised patch. No installer testing yet but this makes great 
improvement for the single node gfs2 rename.

-- Wendy








-------------- next part --------------
A non-text attachment was scrubbed...
Name: gfs2_nlink.patch
Type: text/x-patch
Size: 3487 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/cluster-devel/attachments/20061215/93372351/attachment.bin>

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Cluster-devel] [PATCH] Fix change nlink deadlock
  2006-12-15 19:44   ` Wendy Cheng
@ 2006-12-18 15:50     ` Steven Whitehouse
  0 siblings, 0 replies; 4+ messages in thread
From: Steven Whitehouse @ 2006-12-18 15:50 UTC (permalink / raw)
  To: cluster-devel.redhat.com

Hi,

On Fri, 2006-12-15 at 14:44 -0500, Wendy Cheng wrote:
> >
> > That looks good to me, so let me know if it passes the tests and I'll
> > push the patch into the -nmw tree in that case,
> >   
> Steve, ok, as long as you agree with the approach ... There is another 
> panic - when the new and old inodes are located in different RGs. Here 
> is the revised patch. No installer testing yet but this makes great 
> improvement for the single node gfs2 rename.
> 
> -- Wendy
> 

This is now added to the -nmw git tree. Please check to see that its ok
as I had to fix up a little whitespace breakage and couple of
conversions from ip->i_di.di_nlink to ip->i_inode.i_nlink in order for
it to apply,

Steve.




^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2006-12-18 15:50 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-12-15 14:50 [Cluster-devel] [PATCH] Fix change nlink deadlock Wendy Cheng
2006-12-15 15:16 ` Steven Whitehouse
2006-12-15 19:44   ` Wendy Cheng
2006-12-18 15:50     ` Steven Whitehouse

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.