git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
This commit was manufactured by cvs2svn to create tag
[linux-2.6.git]
/
net
/
bluetooth
/
cmtp
/
core.c
diff --git
a/net/bluetooth/cmtp/core.c
b/net/bluetooth/cmtp/core.c
index
20ce04f
..
5d3d0dc
100644
(file)
--- a/
net/bluetooth/cmtp/core.c
+++ b/
net/bluetooth/cmtp/core.c
@@
-201,7
+201,7
@@
static inline int cmtp_recv_frame(struct cmtp_session *session, struct sk_buff *
static int cmtp_send_frame(struct cmtp_session *session, unsigned char *data, int len)
{
struct socket *sock = session->sock;
static int cmtp_send_frame(struct cmtp_session *session, unsigned char *data, int len)
{
struct socket *sock = session->sock;
- struct
k
vec iv = { data, len };
+ struct
io
vec iv = { data, len };
struct msghdr msg;
BT_DBG("session %p data %p len %d", session, data, len);
struct msghdr msg;
BT_DBG("session %p data %p len %d", session, data, len);
@@
-210,8
+210,10
@@
static int cmtp_send_frame(struct cmtp_session *session, unsigned char *data, in
return 0;
memset(&msg, 0, sizeof(msg));
return 0;
memset(&msg, 0, sizeof(msg));
+ msg.msg_iovlen = 1;
+ msg.msg_iov = &iv;
- return
kernel_sendmsg(sock, &msg, &iv, 1
, len);
+ return
sock_sendmsg(sock, &msg
, len);
}
static int cmtp_process_transmit(struct cmtp_session *session)
}
static int cmtp_process_transmit(struct cmtp_session *session)
@@
-293,6
+295,8
@@
static int cmtp_session(void *arg)
set_user_nice(current, -15);
current->flags |= PF_NOFREEZE;
set_user_nice(current, -15);
current->flags |= PF_NOFREEZE;
+ set_fs(KERNEL_DS);
+
init_waitqueue_entry(&wait, current);
add_wait_queue(sk->sk_sleep, &wait);
while (!atomic_read(&session->terminate)) {
init_waitqueue_entry(&wait, current);
add_wait_queue(sk->sk_sleep, &wait);
while (!atomic_read(&session->terminate)) {