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
22285049
Commit
22285049
authored
Sep 14, 2003
by
Stephen Lord
Browse files
Options
Browse Files
Download
Plain Diff
Merge kernel.bkbits.net:/home/repos/linux-2.5
into kernel.bkbits.net:/home/lord/xfs-2.6
parents
7140df08
539c89b8
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
25 additions
and
21 deletions
+25
-21
fs/xfs/linux/xfs_aops.c
fs/xfs/linux/xfs_aops.c
+9
-5
fs/xfs/linux/xfs_iomap.c
fs/xfs/linux/xfs_iomap.c
+1
-1
fs/xfs/xfs_bit.c
fs/xfs/xfs_bit.c
+2
-2
fs/xfs/xfs_da_btree.h
fs/xfs/xfs_da_btree.h
+8
-8
fs/xfs/xfs_fsops.c
fs/xfs/xfs_fsops.c
+1
-1
fs/xfs/xfs_log.c
fs/xfs/xfs_log.c
+4
-4
No files found.
fs/xfs/linux/xfs_aops.c
View file @
22285049
...
@@ -225,7 +225,8 @@ probe_unwritten_page(
...
@@ -225,7 +225,8 @@ probe_unwritten_page(
page_buf_bmap_t
*
mp
,
page_buf_bmap_t
*
mp
,
page_buf_t
*
pb
,
page_buf_t
*
pb
,
unsigned
long
max_offset
,
unsigned
long
max_offset
,
unsigned
long
*
fsbs
)
unsigned
long
*
fsbs
,
unsigned
int
bbits
)
{
{
struct
page
*
page
;
struct
page
*
page
;
...
@@ -248,6 +249,7 @@ probe_unwritten_page(
...
@@ -248,6 +249,7 @@ probe_unwritten_page(
break
;
break
;
if
(
p_offset
>=
max_offset
)
if
(
p_offset
>=
max_offset
)
break
;
break
;
map_buffer_at_offset
(
page
,
bh
,
p_offset
,
bbits
,
mp
);
set_buffer_unwritten_io
(
bh
);
set_buffer_unwritten_io
(
bh
);
bh
->
b_private
=
pb
;
bh
->
b_private
=
pb
;
p_offset
+=
bh
->
b_size
;
p_offset
+=
bh
->
b_size
;
...
@@ -455,13 +457,14 @@ map_unwritten(
...
@@ -455,13 +457,14 @@ map_unwritten(
if
(
bh
==
head
)
{
if
(
bh
==
head
)
{
struct
address_space
*
mapping
=
inode
->
i_mapping
;
struct
address_space
*
mapping
=
inode
->
i_mapping
;
unsigned
long
tindex
,
tloff
,
tlast
,
bs
;
unsigned
long
tindex
,
tloff
,
tlast
,
bs
;
unsigned
int
bbits
=
inode
->
i_blkbits
;
struct
page
*
page
;
struct
page
*
page
;
tlast
=
i_size_read
(
inode
)
>>
PAGE_CACHE_SHIFT
;
tlast
=
i_size_read
(
inode
)
>>
PAGE_CACHE_SHIFT
;
tloff
=
min
(
tlast
,
start_page
->
index
+
pb
->
pb_page_count
-
1
);
tloff
=
min
(
tlast
,
start_page
->
index
+
pb
->
pb_page_count
-
1
);
for
(
tindex
=
start_page
->
index
+
1
;
tindex
<
tloff
;
tindex
++
)
{
for
(
tindex
=
start_page
->
index
+
1
;
tindex
<
tloff
;
tindex
++
)
{
page
=
probe_unwritten_page
(
mapping
,
tindex
,
mp
,
pb
,
page
=
probe_unwritten_page
(
mapping
,
tindex
,
mp
,
pb
,
PAGE_CACHE_SIZE
,
&
b
s
);
PAGE_CACHE_SIZE
,
&
bs
,
bbit
s
);
if
(
!
page
)
if
(
!
page
)
break
;
break
;
nblocks
+=
bs
;
nblocks
+=
bs
;
...
@@ -472,7 +475,7 @@ map_unwritten(
...
@@ -472,7 +475,7 @@ map_unwritten(
if
(
tindex
==
tlast
&&
if
(
tindex
==
tlast
&&
(
tloff
=
(
i_size_read
(
inode
)
&
(
PAGE_CACHE_SIZE
-
1
))))
{
(
tloff
=
(
i_size_read
(
inode
)
&
(
PAGE_CACHE_SIZE
-
1
))))
{
page
=
probe_unwritten_page
(
mapping
,
tindex
,
mp
,
pb
,
page
=
probe_unwritten_page
(
mapping
,
tindex
,
mp
,
pb
,
tloff
,
&
bs
);
tloff
,
&
bs
,
bbits
);
if
(
page
)
{
if
(
page
)
{
nblocks
+=
bs
;
nblocks
+=
bs
;
atomic_add
(
bs
,
&
pb
->
pb_io_remaining
);
atomic_add
(
bs
,
&
pb
->
pb_io_remaining
);
...
@@ -560,7 +563,8 @@ convert_page(
...
@@ -560,7 +563,8 @@ convert_page(
offset
=
i
<<
bbits
;
offset
=
i
<<
bbits
;
if
(
!
(
PageUptodate
(
page
)
||
buffer_uptodate
(
bh
)))
if
(
!
(
PageUptodate
(
page
)
||
buffer_uptodate
(
bh
)))
continue
;
continue
;
if
(
buffer_mapped
(
bh
)
&&
!
buffer_delay
(
bh
)
&&
all_bh
)
{
if
(
buffer_mapped
(
bh
)
&&
all_bh
&&
!
buffer_unwritten
(
bh
)
&&
!
buffer_delay
(
bh
))
{
if
(
startio
&&
(
offset
<
end
))
{
if
(
startio
&&
(
offset
<
end
))
{
lock_buffer
(
bh
);
lock_buffer
(
bh
);
bh_arr
[
index
++
]
=
bh
;
bh_arr
[
index
++
]
=
bh
;
...
@@ -581,7 +585,7 @@ convert_page(
...
@@ -581,7 +585,7 @@ convert_page(
ASSERT
(
tmp
->
pbm_flags
&
PBMF_UNWRITTEN
);
ASSERT
(
tmp
->
pbm_flags
&
PBMF_UNWRITTEN
);
map_unwritten
(
inode
,
page
,
head
,
bh
,
map_unwritten
(
inode
,
page
,
head
,
bh
,
offset
,
bbits
,
tmp
,
all_bh
);
offset
,
bbits
,
tmp
,
all_bh
);
}
else
{
}
else
if
(
!
(
buffer_unwritten
(
bh
)
&&
buffer_locked
(
bh
)))
{
map_buffer_at_offset
(
page
,
bh
,
offset
,
bbits
,
tmp
);
map_buffer_at_offset
(
page
,
bh
,
offset
,
bbits
,
tmp
);
if
(
buffer_unwritten
(
bh
))
{
if
(
buffer_unwritten
(
bh
))
{
set_buffer_unwritten_io
(
bh
);
set_buffer_unwritten_io
(
bh
);
...
...
fs/xfs/linux/xfs_iomap.c
View file @
22285049
...
@@ -156,7 +156,7 @@ xfs_iomap(
...
@@ -156,7 +156,7 @@ xfs_iomap(
if
(
flags
&
BMAP_IGNSTATE
)
if
(
flags
&
BMAP_IGNSTATE
)
bmap_flags
|=
XFS_BMAPI_IGSTATE
;
bmap_flags
|=
XFS_BMAPI_IGSTATE
;
break
;
break
;
case
PBF
_WRITE
:
case
BMAP
_WRITE
:
lockmode
=
XFS_ILOCK_EXCL
|
XFS_EXTSIZE_WR
;
lockmode
=
XFS_ILOCK_EXCL
|
XFS_EXTSIZE_WR
;
bmap_flags
=
0
;
bmap_flags
=
0
;
XFS_ILOCK
(
mp
,
io
,
lockmode
);
XFS_ILOCK
(
mp
,
io
,
lockmode
);
...
...
fs/xfs/xfs_bit.c
View file @
22285049
...
@@ -156,12 +156,12 @@ xfs_lowbit64(
...
@@ -156,12 +156,12 @@ xfs_lowbit64(
{
{
int
n
;
int
n
;
n
=
ffs
((
unsigned
)
v
);
n
=
ffs
((
unsigned
)
v
);
if
(
n
=
=
0
)
{
if
(
n
<
=
0
)
{
n
=
ffs
(
v
>>
32
);
n
=
ffs
(
v
>>
32
);
if
(
n
>=
0
)
if
(
n
>=
0
)
n
+=
32
;
n
+=
32
;
}
}
return
n
-
1
;
return
(
n
<=
0
)
?
n
:
n
-
1
;
}
}
/*
/*
...
...
fs/xfs/xfs_da_btree.h
View file @
22285049
...
@@ -189,10 +189,10 @@ typedef struct xfs_da_args {
...
@@ -189,10 +189,10 @@ typedef struct xfs_da_args {
int
index2
;
/* index of 2nd attr in blk */
int
index2
;
/* index of 2nd attr in blk */
xfs_dablk_t
rmtblkno2
;
/* remote attr value starting blkno */
xfs_dablk_t
rmtblkno2
;
/* remote attr value starting blkno */
int
rmtblkcnt2
;
/* remote attr value block count */
int
rmtblkcnt2
;
/* remote attr value block count */
int
justcheck
:
1
;
/* T/F: check for ok with no space */
unsigned
char
justcheck
;
/* T/F: check for ok with no space */
int
rename
:
1
;
/* T/F: this is an atomic rename op */
unsigned
char
rename
;
/* T/F: this is an atomic rename op */
int
addname
:
1
;
/* T/F: this is an add operation */
unsigned
char
addname
;
/* T/F: this is an add operation */
int
oknoent
:
1
;
/* T/F: ok to return ENOENT, else die */
unsigned
char
oknoent
;
/* T/F: ok to return ENOENT, else die */
}
xfs_da_args_t
;
}
xfs_da_args_t
;
/*
/*
...
@@ -252,10 +252,10 @@ typedef struct xfs_da_state {
...
@@ -252,10 +252,10 @@ typedef struct xfs_da_state {
unsigned
int
node_ents
;
/* how many entries in danode */
unsigned
int
node_ents
;
/* how many entries in danode */
xfs_da_state_path_t
path
;
/* search/split paths */
xfs_da_state_path_t
path
;
/* search/split paths */
xfs_da_state_path_t
altpath
;
/* alternate path for join */
xfs_da_state_path_t
altpath
;
/* alternate path for join */
unsigned
int
inleaf
:
1
;
/* insert into 1->lf, 0->splf */
unsigned
char
inleaf
;
/* insert into 1->lf, 0->splf */
unsigned
int
holeok
:
1
;
/* T/F: can deal with a hole */
unsigned
char
holeok
;
/* T/F: can deal with a hole */
unsigned
int
extravalid
:
1
;
/* T/F: extrablk is in use */
unsigned
char
extravalid
;
/* T/F: extrablk is in use */
unsigned
int
extraafter
:
1
;
/* T/F: extrablk is after new */
unsigned
char
extraafter
;
/* T/F: extrablk is after new */
xfs_da_state_blk_t
extrablk
;
/* for double-splits on leafs */
xfs_da_state_blk_t
extrablk
;
/* for double-splits on leafs */
/* for dirv2 extrablk is data */
/* for dirv2 extrablk is data */
}
xfs_da_state_t
;
}
xfs_da_state_t
;
...
...
fs/xfs/xfs_fsops.c
View file @
22285049
...
@@ -172,7 +172,7 @@ xfs_growfs_data_private(
...
@@ -172,7 +172,7 @@ xfs_growfs_data_private(
if
(
nb
<
mp
->
m_sb
.
sb_dblocks
)
if
(
nb
<
mp
->
m_sb
.
sb_dblocks
)
return
XFS_ERROR
(
EINVAL
);
return
XFS_ERROR
(
EINVAL
);
}
}
new
=
in
->
newblocks
-
mp
->
m_sb
.
sb_dblocks
;
new
=
nb
-
mp
->
m_sb
.
sb_dblocks
;
oagcount
=
mp
->
m_sb
.
sb_agcount
;
oagcount
=
mp
->
m_sb
.
sb_agcount
;
if
(
nagcount
>
oagcount
)
{
if
(
nagcount
>
oagcount
)
{
down_write
(
&
mp
->
m_peraglock
);
down_write
(
&
mp
->
m_peraglock
);
...
...
fs/xfs/xfs_log.c
View file @
22285049
...
@@ -3427,8 +3427,8 @@ xlog_verify_iclog(xlog_t *log,
...
@@ -3427,8 +3427,8 @@ xlog_verify_iclog(xlog_t *log,
if
(
syncing
==
B_FALSE
||
(
field_offset
&
0x1ff
))
{
if
(
syncing
==
B_FALSE
||
(
field_offset
&
0x1ff
))
{
clientid
=
ophead
->
oh_clientid
;
clientid
=
ophead
->
oh_clientid
;
}
else
{
}
else
{
idx
=
BTOBB
((
xfs_caddr_t
)
&
(
ophead
->
oh_clientid
)
-
iclog
->
ic_datap
);
idx
=
BTOBB
T
((
xfs_caddr_t
)
&
(
ophead
->
oh_clientid
)
-
iclog
->
ic_datap
);
if
(
idx
>
(
XLOG_HEADER_CYCLE_SIZE
/
BBSIZE
))
{
if
(
idx
>
=
(
XLOG_HEADER_CYCLE_SIZE
/
BBSIZE
))
{
j
=
idx
/
(
XLOG_HEADER_CYCLE_SIZE
/
BBSIZE
);
j
=
idx
/
(
XLOG_HEADER_CYCLE_SIZE
/
BBSIZE
);
k
=
idx
%
(
XLOG_HEADER_CYCLE_SIZE
/
BBSIZE
);
k
=
idx
%
(
XLOG_HEADER_CYCLE_SIZE
/
BBSIZE
);
clientid
=
GET_CLIENT_ID
(
xhdr
[
j
].
hic_xheader
.
xh_cycle_data
[
k
],
ARCH_CONVERT
);
clientid
=
GET_CLIENT_ID
(
xhdr
[
j
].
hic_xheader
.
xh_cycle_data
[
k
],
ARCH_CONVERT
);
...
@@ -3445,9 +3445,9 @@ xlog_verify_iclog(xlog_t *log,
...
@@ -3445,9 +3445,9 @@ xlog_verify_iclog(xlog_t *log,
if
(
syncing
==
B_FALSE
||
(
field_offset
&
0x1ff
))
{
if
(
syncing
==
B_FALSE
||
(
field_offset
&
0x1ff
))
{
op_len
=
INT_GET
(
ophead
->
oh_len
,
ARCH_CONVERT
);
op_len
=
INT_GET
(
ophead
->
oh_len
,
ARCH_CONVERT
);
}
else
{
}
else
{
idx
=
BTOBB
((
__psint_t
)
&
ophead
->
oh_len
-
idx
=
BTOBB
T
((
__psint_t
)
&
ophead
->
oh_len
-
(
__psint_t
)
iclog
->
ic_datap
);
(
__psint_t
)
iclog
->
ic_datap
);
if
(
idx
>
(
XLOG_HEADER_CYCLE_SIZE
/
BBSIZE
))
{
if
(
idx
>
=
(
XLOG_HEADER_CYCLE_SIZE
/
BBSIZE
))
{
j
=
idx
/
(
XLOG_HEADER_CYCLE_SIZE
/
BBSIZE
);
j
=
idx
/
(
XLOG_HEADER_CYCLE_SIZE
/
BBSIZE
);
k
=
idx
%
(
XLOG_HEADER_CYCLE_SIZE
/
BBSIZE
);
k
=
idx
%
(
XLOG_HEADER_CYCLE_SIZE
/
BBSIZE
);
op_len
=
INT_GET
(
xhdr
[
j
].
hic_xheader
.
xh_cycle_data
[
k
],
ARCH_CONVERT
);
op_len
=
INT_GET
(
xhdr
[
j
].
hic_xheader
.
xh_cycle_data
[
k
],
ARCH_CONVERT
);
...
...
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