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
a4f528d2
Commit
a4f528d2
authored
Jun 29, 2004
by
Anton Altaparmakov
Browse files
Options
Browse Files
Download
Plain Diff
Merge cantab.net:/home/src/ntfs-2.6
into cantab.net:/home/src/ntfs-2.6-devel
parents
7920e8ff
78019117
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
50 additions
and
17 deletions
+50
-17
Documentation/networking/pktgen.txt
Documentation/networking/pktgen.txt
+2
-2
arch/ppc64/kernel/irq.c
arch/ppc64/kernel/irq.c
+1
-1
arch/sh/kernel/cpu/sh4/sq.c
arch/sh/kernel/cpu/sh4/sq.c
+0
-2
fs/aio.c
fs/aio.c
+6
-0
fs/hugetlbfs/inode.c
fs/hugetlbfs/inode.c
+0
-3
fs/nfsctl.c
fs/nfsctl.c
+1
-0
include/linux/aio.h
include/linux/aio.h
+3
-4
include/linux/vmalloc.h
include/linux/vmalloc.h
+2
-0
include/net/sock.h
include/net/sock.h
+2
-2
net/decnet/dn_nsp_in.c
net/decnet/dn_nsp_in.c
+1
-1
net/socket.c
net/socket.c
+31
-2
net/sunrpc/rpc_pipe.c
net/sunrpc/rpc_pipe.c
+1
-0
No files found.
Documentation/networking/pktgen.txt
View file @
a4f528d2
...
...
@@ -11,13 +11,13 @@ How to use the Linux packet generator module.
5. After this two commands are defined:
A. "pg" to start generator and to get results.
B. "pgset" to change generator parameters. F.e.
pgset "clone_skb 100" sets the number of cop
p
ies of the same packet
pgset "clone_skb 100" sets the number of copies of the same packet
will be sent before a new packet is allocated
pgset "clone_skb 0" use multiple SKBs for packet generation
pgset "pkt_size 9014" sets packet size to 9014
pgset "frags 5" packet will consist of 5 fragments
pgset "count 200000" sets number of packets to send, set to zero
for contin
ious sends until
l explicitly
for contin
uous sends unti
l explicitly
stopped.
pgset "ipg 5000" sets artificial gap inserted between packets
to 5000 nanoseconds
...
...
arch/ppc64/kernel/irq.c
View file @
a4f528d2
...
...
@@ -807,7 +807,7 @@ static int prof_cpu_mask_write_proc (struct file *file, const char __user *buffe
{
unsigned
i
;
for
(
i
=
0
;
i
<
NR_CPUS
;
++
i
)
{
if
(
paca
[
i
].
prof_buffer
&&
cpu_isset
(
1
,
new_value
)
)
if
(
paca
[
i
].
prof_buffer
&&
cpu_isset
(
i
,
new_value
)
)
paca
[
i
].
prof_enabled
=
1
;
else
paca
[
i
].
prof_enabled
=
0
;
...
...
arch/sh/kernel/cpu/sh4/sq.c
View file @
a4f528d2
...
...
@@ -34,8 +34,6 @@
static
LIST_HEAD
(
sq_mapping_list
);
static
spinlock_t
sq_mapping_lock
=
SPIN_LOCK_UNLOCKED
;
extern
struct
vm_struct
*
__get_vm_area
(
unsigned
long
size
,
unsigned
long
flags
,
unsigned
long
start
,
unsigned
long
end
);
/**
* sq_flush - Flush (prefetch) the store queue cache
*
...
...
fs/aio.c
View file @
a4f528d2
...
...
@@ -396,6 +396,8 @@ static struct kiocb fastcall *__aio_get_req(struct kioctx *ctx)
req
->
ki_cancel
=
NULL
;
req
->
ki_retry
=
NULL
;
req
->
ki_obj
.
user
=
NULL
;
req
->
ki_dtor
=
NULL
;
req
->
private
=
NULL
;
/* Check if the completion queue has enough free space to
* accept an event from this io.
...
...
@@ -436,9 +438,13 @@ static inline struct kiocb *aio_get_req(struct kioctx *ctx)
static
inline
void
really_put_req
(
struct
kioctx
*
ctx
,
struct
kiocb
*
req
)
{
if
(
req
->
ki_dtor
)
req
->
ki_dtor
(
req
);
req
->
ki_ctx
=
NULL
;
req
->
ki_filp
=
NULL
;
req
->
ki_obj
.
user
=
NULL
;
req
->
ki_dtor
=
NULL
;
req
->
private
=
NULL
;
kmem_cache_free
(
kiocb_cachep
,
req
);
ctx
->
reqs_active
--
;
...
...
fs/hugetlbfs/inode.c
View file @
a4f528d2
...
...
@@ -329,9 +329,6 @@ static int hugetlbfs_setattr(struct dentry *dentry, struct iattr *attr)
if
(
error
)
goto
out
;
error
=
security_inode_setattr
(
dentry
,
attr
);
if
(
error
)
goto
out
;
if
(
ia_valid
&
ATTR_SIZE
)
{
error
=
-
EINVAL
;
if
(
!
(
attr
->
ia_size
&
~
HPAGE_MASK
))
...
...
fs/nfsctl.c
View file @
a4f528d2
...
...
@@ -32,6 +32,7 @@ static struct file *do_open(char *name, int flags)
nd
.
dentry
=
dget
(
nd
.
mnt
->
mnt_root
);
nd
.
last_type
=
LAST_ROOT
;
nd
.
flags
=
0
;
nd
.
depth
=
0
;
error
=
path_walk
(
name
,
&
nd
);
if
(
error
)
...
...
include/linux/aio.h
View file @
a4f528d2
...
...
@@ -23,8 +23,6 @@ struct kioctx;
#define KIOCB_SYNC_KEY (~0U)
#define KIOCB_PRIVATE_SIZE (24 * sizeof(long))
/* ki_flags bits */
#define KIF_LOCKED 0
#define KIF_KICKED 1
...
...
@@ -55,6 +53,7 @@ struct kiocb {
struct
kioctx
*
ki_ctx
;
/* may be NULL for sync ops */
int
(
*
ki_cancel
)(
struct
kiocb
*
,
struct
io_event
*
);
long
(
*
ki_retry
)(
struct
kiocb
*
);
void
(
*
ki_dtor
)(
struct
kiocb
*
);
struct
list_head
ki_list
;
/* the aio core uses this
* for cancellation */
...
...
@@ -65,8 +64,7 @@ struct kiocb {
}
ki_obj
;
__u64
ki_user_data
;
/* user's data for completion */
loff_t
ki_pos
;
char
private
[
KIOCB_PRIVATE_SIZE
];
void
*
private
;
};
#define is_sync_kiocb(iocb) ((iocb)->ki_key == KIOCB_SYNC_KEY)
...
...
@@ -79,6 +77,7 @@ struct kiocb {
(x)->ki_filp = (filp); \
(x)->ki_ctx = &tsk->active_mm->default_kioctx; \
(x)->ki_cancel = NULL; \
(x)->ki_dtor = NULL; \
(x)->ki_obj.tsk = tsk; \
} while (0)
...
...
include/linux/vmalloc.h
View file @
a4f528d2
...
...
@@ -36,6 +36,8 @@ extern void vunmap(void *addr);
* Lowlevel-APIs (not for driver use!)
*/
extern
struct
vm_struct
*
get_vm_area
(
unsigned
long
size
,
unsigned
long
flags
);
extern
struct
vm_struct
*
__get_vm_area
(
unsigned
long
size
,
unsigned
long
flags
,
unsigned
long
start
,
unsigned
long
end
);
extern
struct
vm_struct
*
remove_vm_area
(
void
*
addr
);
extern
int
map_vm_area
(
struct
vm_struct
*
area
,
pgprot_t
prot
,
struct
page
***
pages
);
...
...
include/net/sock.h
View file @
a4f528d2
...
...
@@ -617,17 +617,17 @@ struct sock_iocb {
struct
scm_cookie
*
scm
;
struct
msghdr
*
msg
,
async_msg
;
struct
iovec
async_iov
;
struct
kiocb
*
kiocb
;
};
static
inline
struct
sock_iocb
*
kiocb_to_siocb
(
struct
kiocb
*
iocb
)
{
BUG_ON
(
sizeof
(
struct
sock_iocb
)
>
KIOCB_PRIVATE_SIZE
);
return
(
struct
sock_iocb
*
)
iocb
->
private
;
}
static
inline
struct
kiocb
*
siocb_to_kiocb
(
struct
sock_iocb
*
si
)
{
return
container_of
((
void
*
)
si
,
struct
kiocb
,
private
)
;
return
si
->
kiocb
;
}
struct
socket_alloc
{
...
...
net/decnet/dn_nsp_in.c
View file @
a4f528d2
...
...
@@ -504,7 +504,7 @@ static void dn_nsp_linkservice(struct sock *sk, struct sk_buff *skb)
struct
dn_scp
*
scp
=
DN_SK
(
sk
);
unsigned
short
segnum
;
unsigned
char
lsflags
;
char
fcval
;
signed
char
fcval
;
int
wake_up
=
0
;
char
*
ptr
=
skb
->
data
;
unsigned
char
fctype
=
scp
->
services_rem
&
NSP_FC_MASK
;
...
...
net/socket.c
View file @
a4f528d2
...
...
@@ -548,9 +548,11 @@ static inline int __sock_sendmsg(struct kiocb *iocb, struct socket *sock,
int
sock_sendmsg
(
struct
socket
*
sock
,
struct
msghdr
*
msg
,
size_t
size
)
{
struct
kiocb
iocb
;
struct
sock_iocb
siocb
;
int
ret
;
init_sync_kiocb
(
&
iocb
,
NULL
);
iocb
.
private
=
&
siocb
;
ret
=
__sock_sendmsg
(
&
iocb
,
sock
,
msg
,
size
);
if
(
-
EIOCBQUEUED
==
ret
)
ret
=
wait_on_sync_kiocb
(
&
iocb
);
...
...
@@ -581,15 +583,22 @@ int sock_recvmsg(struct socket *sock, struct msghdr *msg,
size_t
size
,
int
flags
)
{
struct
kiocb
iocb
;
struct
sock_iocb
siocb
;
int
ret
;
init_sync_kiocb
(
&
iocb
,
NULL
);
iocb
.
private
=
&
siocb
;
ret
=
__sock_recvmsg
(
&
iocb
,
sock
,
msg
,
size
,
flags
);
if
(
-
EIOCBQUEUED
==
ret
)
ret
=
wait_on_sync_kiocb
(
&
iocb
);
return
ret
;
}
static
void
sock_aio_dtor
(
struct
kiocb
*
iocb
)
{
kfree
(
iocb
->
private
);
}
/*
* Read data from a socket. ubuf is a user mode pointer. We make sure the user
* area ubuf...ubuf+size-1 is writable before asking the protocol.
...
...
@@ -598,7 +607,7 @@ int sock_recvmsg(struct socket *sock, struct msghdr *msg,
static
ssize_t
sock_aio_read
(
struct
kiocb
*
iocb
,
char
__user
*
ubuf
,
size_t
size
,
loff_t
pos
)
{
struct
sock_iocb
*
x
=
kiocb_to_siocb
(
iocb
)
;
struct
sock_iocb
*
x
,
siocb
;
struct
socket
*
sock
;
int
flags
;
...
...
@@ -607,6 +616,16 @@ static ssize_t sock_aio_read(struct kiocb *iocb, char __user *ubuf,
if
(
size
==
0
)
/* Match SYS5 behaviour */
return
0
;
if
(
is_sync_kiocb
(
iocb
))
x
=
&
siocb
;
else
{
x
=
kmalloc
(
sizeof
(
struct
sock_iocb
),
GFP_KERNEL
);
if
(
!
x
)
return
-
ENOMEM
;
iocb
->
ki_dtor
=
sock_aio_dtor
;
}
iocb
->
private
=
x
;
x
->
kiocb
=
iocb
;
sock
=
SOCKET_I
(
iocb
->
ki_filp
->
f_dentry
->
d_inode
);
x
->
async_msg
.
msg_name
=
NULL
;
...
...
@@ -631,7 +650,7 @@ static ssize_t sock_aio_read(struct kiocb *iocb, char __user *ubuf,
static
ssize_t
sock_aio_write
(
struct
kiocb
*
iocb
,
const
char
__user
*
ubuf
,
size_t
size
,
loff_t
pos
)
{
struct
sock_iocb
*
x
=
kiocb_to_siocb
(
iocb
)
;
struct
sock_iocb
*
x
,
siocb
;
struct
socket
*
sock
;
if
(
pos
!=
0
)
...
...
@@ -639,6 +658,16 @@ static ssize_t sock_aio_write(struct kiocb *iocb, const char __user *ubuf,
if
(
size
==
0
)
/* Match SYS5 behaviour */
return
0
;
if
(
is_sync_kiocb
(
iocb
))
x
=
&
siocb
;
else
{
x
=
kmalloc
(
sizeof
(
struct
sock_iocb
),
GFP_KERNEL
);
if
(
!
x
)
return
-
ENOMEM
;
iocb
->
ki_dtor
=
sock_aio_dtor
;
}
iocb
->
private
=
x
;
x
->
kiocb
=
iocb
;
sock
=
SOCKET_I
(
iocb
->
ki_filp
->
f_dentry
->
d_inode
);
x
->
async_msg
.
msg_name
=
NULL
;
...
...
net/sunrpc/rpc_pipe.c
View file @
a4f528d2
...
...
@@ -433,6 +433,7 @@ rpc_lookup_parent(char *path, struct nameidata *nd)
nd
->
dentry
=
dget
(
rpc_mount
->
mnt_root
);
nd
->
last_type
=
LAST_ROOT
;
nd
->
flags
=
LOOKUP_PARENT
;
nd
->
depth
=
0
;
if
(
path_walk
(
path
,
nd
))
{
printk
(
KERN_WARNING
"%s: %s failed to find path %s
\n
"
,
...
...
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