Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
e7741dd4
Commit
e7741dd4
authored
May 04, 2004
by
Dave Kleikamp
Browse files
Options
Browse Files
Download
Plain Diff
Merge jfs@jfs.bkbits.net:linux-2.5
into austin.ibm.com:/shaggy/bk/jfs-2.5
parents
3bbadbdf
23a2f48e
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
12 additions
and
63 deletions
+12
-63
fs/jfs/jfs_dtree.c
fs/jfs/jfs_dtree.c
+6
-1
fs/jfs/jfs_txnmgr.c
fs/jfs/jfs_txnmgr.c
+1
-60
fs/jfs/namei.c
fs/jfs/namei.c
+5
-2
No files found.
fs/jfs/jfs_dtree.c
View file @
e7741dd4
...
...
@@ -982,7 +982,9 @@ static int dtSplitUp(tid_t tid,
split
->
pxdlist
=
&
pxdlist
;
rc
=
dtSplitRoot
(
tid
,
ip
,
split
,
&
rmp
);
DT_PUTPAGE
(
rmp
);
if
(
!
rc
)
DT_PUTPAGE
(
rmp
);
DT_PUTPAGE
(
smp
);
goto
freeKeyName
;
...
...
@@ -1876,6 +1878,9 @@ static int dtSplitRoot(tid_t tid,
xlen
=
lengthPXD
(
pxd
);
xsize
=
xlen
<<
JFS_SBI
(
sb
)
->
l2bsize
;
rmp
=
get_metapage
(
ip
,
rbn
,
xsize
,
1
);
if
(
!
rmp
)
return
-
EIO
;
rp
=
rmp
->
data
;
BT_MARK_DIRTY
(
rmp
,
ip
);
...
...
fs/jfs/jfs_txnmgr.c
View file @
e7741dd4
...
...
@@ -176,7 +176,6 @@ static void dtLog(struct jfs_log * log, struct tblock * tblk, struct lrd * lrd,
struct
tlock
*
tlck
);
static
void
mapLog
(
struct
jfs_log
*
log
,
struct
tblock
*
tblk
,
struct
lrd
*
lrd
,
struct
tlock
*
tlck
);
static
void
txAbortCommit
(
struct
commit
*
cd
);
static
void
txAllocPMap
(
struct
inode
*
ip
,
struct
maplock
*
maplock
,
struct
tblock
*
tblk
);
static
void
txForce
(
struct
tblock
*
tblk
);
...
...
@@ -1315,7 +1314,7 @@ int txCommit(tid_t tid, /* transaction identifier */
out:
if
(
rc
!=
0
)
txAbort
Commit
(
&
cd
);
txAbort
(
tid
,
1
);
TheEnd:
jfs_info
(
"txCommit: tid = %d, returning %d"
,
tid
,
rc
);
...
...
@@ -2647,64 +2646,6 @@ void txAbort(tid_t tid, int dirty)
return
;
}
/*
* txAbortCommit()
*
* function: abort commit.
*
* frees tlocks of transaction; line-locks and segment locks for all
* segments in comdata structure. frees malloc storage
* sets state of file-system to FM_MDIRTY in super-block.
* log age of page-frames in memory for which caller has
* are reset to 0 (to avoid logwarap).
*/
static
void
txAbortCommit
(
struct
commit
*
cd
)
{
struct
tblock
*
tblk
;
tid_t
tid
;
lid_t
lid
,
next
;
struct
metapage
*
mp
;
jfs_warn
(
"txAbortCommit: cd:0x%p"
,
cd
);
/*
* free tlocks of the transaction
*/
tid
=
cd
->
tid
;
tblk
=
tid_to_tblock
(
tid
);
for
(
lid
=
tblk
->
next
;
lid
;
lid
=
next
)
{
next
=
lid_to_tlock
(
lid
)
->
next
;
mp
=
lid_to_tlock
(
lid
)
->
mp
;
if
(
mp
)
{
mp
->
lid
=
0
;
/*
* reset lsn of page to avoid logwarap;
*/
if
(
mp
->
xflag
&
COMMIT_PAGE
)
LogSyncRelease
(
mp
);
}
/* insert tlock at head of freelist */
TXN_LOCK
();
txLockFree
(
lid
);
TXN_UNLOCK
();
}
tblk
->
next
=
tblk
->
last
=
0
;
/* free the transaction block */
txEnd
(
tid
);
/*
* mark filesystem dirty
*/
jfs_error
(
cd
->
sb
,
"txAbortCommit"
);
}
/*
* txLazyCommit(void)
*
...
...
fs/jfs/namei.c
View file @
e7741dd4
...
...
@@ -792,14 +792,14 @@ static int jfs_link(struct dentry *old_dentry,
goto
out
;
if
((
rc
=
dtSearch
(
dir
,
&
dname
,
&
ino
,
&
btstack
,
JFS_CREATE
)))
goto
out
;
goto
free_dname
;
/*
* create entry for new link in parent directory
*/
ino
=
ip
->
i_ino
;
if
((
rc
=
dtInsert
(
tid
,
dir
,
&
dname
,
&
ino
,
&
btstack
)))
goto
out
;
goto
free_dname
;
/* update object inode */
ip
->
i_nlink
++
;
/* for new link */
...
...
@@ -812,6 +812,9 @@ static int jfs_link(struct dentry *old_dentry,
iplist
[
1
]
=
dir
;
rc
=
txCommit
(
tid
,
2
,
&
iplist
[
0
],
0
);
free_dname:
free_UCSname
(
&
dname
);
out:
txEnd
(
tid
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment