[BUG] GFS2 filesystem withdraw with: function = get_leaf, file = fs/gfs2/dir.c, line = 763
GFS2 filesystem withdraw with: function = get_leaf, file = fs/gfs2/dir.c, line = 763
Issue:
A GFS2 withdraw is occurring as seen via this message:
GFS2 withdraw is occuring: GFS2: fsid=MyCluster:MyGFS.0: function = get_leaf, file = fs/gfs2/dir.c, line = 763
Environment:
- Red Hat Enterprise Linux Server 5 (with the High Availability Add on)
- kernel-2.6.18-308.4.1.el5.x86_64
A fix will be available in an upcoming 5.9 errata release as well as in RHEL 5.10. In the meantime, a workaround is to revert to an older kernel.Versions up to and including RHEL 5.7 kernel 2.6.18-274.12.1.el5 do not demonstrate this issue.
Root Cause:
A leaked directory hash table which could occur when directories were pushed out of cache (nlink > 0) but not deallocated. If the same gfs2_inode was then reused as a directory at a later date, the hash table would appear to be already allocated and would get used instead of rereading the hash table from disk. If the gfs2_inode was not reused, then the cached hash table would just be leaked.