Re: Freeze with cluster-2.03.11

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Kadlecsik Jozsef wrote:
- commit 82d176ba485f2ef049fd303b9e41868667cebbdb
  gfs_drop_inode as .drop_inode replacing .put_inode.
  .put_inode was called without holding a lock, but .drop_inode
  is called under inode_lock held. Might it be a problem
Based on code reading ...
1. iput() gets inode_lock (a spin lock)
2. iput() calls iput_final()
3. iput_final() calls filesystem drop_inode(), followed by generic_drop_inode() 4. generic_drop_inode() unlock inode_lock after doing all sorts of fun things with the inode

So look to me that generic_drop_inode() statement within gfs_drop_inode() should be removed. Otherwise you would get double unlock and double list free.

In short, *remove* line #73 from gfs-kernel/src/gfs/ops_super.c in your source and let us know how it goes.

-- Wendy



--
Linux-cluster mailing list
Linux-cluster@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/linux-cluster

[Index of Archives]     [Corosync Cluster Engine]     [GFS]     [Linux Virtualization]     [Centos Virtualization]     [Centos]     [Linux RAID]     [Fedora Users]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite Camping]

  Powered by Linux