xfs
[Top] [All Lists]

TAKE - avoid umount oops due to double vn_remove

Subject: TAKE - avoid umount oops due to double vn_remove
From: Eric Sandeen <sandeen@xxxxxxx>
Date: Tue, 27 Nov 2001 15:56:05 -0600
Sender: owner-linux-xfs@xxxxxxxxxxx
** NOTE **
This still doesn't fix the underlying linux problems with 2.4.15,
please wait 'til 2.4.16 is merged before running CVS kernels.
** NOTE **

Linux 2.4.15/16 added a clear_inode in one path through iput().

xfs_unmount() was calling VN_RELE, then vn_remove on the same vnode.

But VN_RELE calls iput, calls clear_inode, calls linvfs_clear_inode, calls
vn_remove.  Attempting 2 vn_removes in a row on the same vnode will result
in an oops due to a null pointer dereference.

This adds a sanity check to vn_remove to make sure we don't 
vn_remove 2x on a vnode.

Date:  Tue Nov 27 13:55:56 PST 2001
Workarea:  stout.americas.sgi.com:/localhome/eric/2.4.x-xfs/workarea-reallyclean

The following file(s) were checked into:
  bonnie.engr.sgi.com:/isms/slinx/2.4.x-xfs


Modid:  2.4.x-xfs:slinx:107369a
linux/fs/xfs/linux/xfs_vnode.c - 1.68
        - Avoid double vn_removes



<Prev in Thread] Current Thread [Next in Thread>
  • TAKE - avoid umount oops due to double vn_remove, Eric Sandeen <=