View Incident:
http://co-op.engr.sgi.com/BugWorks/code/bwxquery.cgi?search=Search&wlong=1&view_type=Bug&wi=797419
*Status : closed Priority : 1
Assigned Engineer : lord Submitter : lord
Opened Date : 07/27/00 *Closed Date : 09/11/00
*Fixed By : lord *Fixed By Domain : sgi.com
*Modified Date : 09/11/00 *Modified User : lord
*Modified User Domain : sgi.com *Fix Description :
==========================
ADDITIONAL INFORMATION (CLOSE)
From: lord@xxxxxxx (BugWorks)
Date: Sep 11 2000 01:02:19PM
==========================
Messed up the send line in the take message. Checked in fix
2.4.0-test1-xfs:slinx:74156a
Basic change is to introduce ihold which is iget without the
create a new inode part. Apart from that some cleanup of the
xfs iget and vnode code.
This should close the race condition and has stood up to
heavier dbench load than anything previous, along with NFS
server activity.
mod 2.4.0-test1-xfs:slinx:74156a header
========================================
- SM_Location: bonnie.engr.sgi.com:/isms/slinx/2.4.0-test1-xfs
- Workarea: jen.americas.sgi.com:/src/lord/xfs-linux.2.4.0-test5
- 2.4.0-test1-xfs:slinx:74156a 09/11/00
- Files affected: linux/kernel/ksyms.c 1.57,
linux/include/linux/fs.h 1.57, linux/fs/inode.c 1.28,
linux/fs/xfs/xfs_iget.c 1.126,
linux/fs/xfs/pseudo-inc/sys/vnode.h 1.29,
linux/fs/xfs/linux/xfs_vnode.c 1.40,
linux/fs/xfs/linux/xfs_iops.c 1.66
- Author: lord
- linux/kernel/ksyms.c:
export ihold4 to modules.
- linux/include/linux/fs.h:
prototype for ihold4 and definition of ihold
- linux/fs/inode.c:
Added ihold4 - this is iget4 without creating a new inode if
there isn't one.
- linux/fs/xfs/xfs_iget.c:
get rid of confusing sim path, do not pass a dev_t to vn_alloc, replave
vn_put with vn_rele
- linux/fs/xfs/pseudo-inc/sys/vnode.h:
remove dev_t from vn_alloc prototype, remove vn_put, in vnode tracing case
call vn_rele, not vn_put.
- linux/fs/xfs/linux/xfs_vnode.c:
merge vn_put into vn_rele, remove dev_t from intitialization calls, it
was not being used anymore.
- linux/fs/xfs/linux/xfs_iops.c:
vn_rele and vn_put have been folded into one - vn_rele
|