[prev in list] [next in list] [prev in thread] [next in thread]
List: lustre-cvs
Subject: [Lustre-cvs] b_devel: lustre/llite namei.c
From: Phil Schwan <pschwan () users ! sourceforge ! net>
Date: 2003-05-30 21:20:44
[Download RAW message or body]
Update of /cvsroot/lustre/lustre/llite
In directory sc8-pr-cvs1:/tmp/cvs-serv31745
Modified Files:
Tag: b_devel
namei.c
Log Message:
b=1359
- In lookup2_finish, if the size update fails, put away the inode
before we return an error
- In ll_intent_lock, if _finish fails then drop the lock, put the
request, and return the error.
Index: namei.c
===================================================================
RCS file: /cvsroot/lustre/lustre/llite/namei.c,v
retrieving revision 1.156.6.15
retrieving revision 1.156.6.16
diff -u -w -b -B -p -r1.156.6.15 -r1.156.6.16
--- namei.c 29 May 2003 03:00:32 -0000 1.156.6.15
+++ namei.c 30 May 2003 21:20:40 -0000 1.156.6.16
@@ -495,6 +495,10 @@ int ll_intent_lock(struct inode *parent,
rc = intent_finish(flag, request, parent, de, it, offset, ino);
dentry = *de; /* intent_finish may change *de */
inode = dentry->d_inode;
+ if (rc != 0) {
+ ldlm_lock_decref(&lockh, ll_intent_to_lock_mode(it));
+ GOTO(drop_req, rc);
+ }
}
ptlrpc_req_finished(request);
@@ -646,8 +650,10 @@ lookup2_finish(int flag, struct ptlrpc_r
rc = ll_extent_lock(NULL, inode, lsm, LCK_PR, &extent,
&lockh);
- if (rc != ELDLM_OK)
+ if (rc != ELDLM_OK) {
+ iput(inode);
RETURN(-EIO);
+ }
ll_extent_unlock(NULL, inode, lsm, LCK_PR, &lockh);
}
-------------------------------------------------------
This SF.net email is sponsored by: eBay
Get office equipment for less on eBay!
http://adfarm.mediaplex.com/ad/ck/711-11697-6916-5
_______________________________________________
Lustre-cvs mailing list
Lustre-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/lustre-cvs
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic