You can import this changeset into BK by piping this whole message to: '| bk receive [path to repository]' or apply the patch as usual. =================================================================== ChangeSet@1.1422.1.4, 2003-11-12 14:20:50-02:00, acme@conectiva.com.br o BLUETOOTH: use prepare_to_wait/finish_wait af_bluetooth.c | 8 +++----- l2cap.c | 9 ++++----- rfcomm/sock.c | 18 +++++++----------- sco.c | 9 ++++----- 4 files changed, 18 insertions(+), 26 deletions(-) diff -Nru a/net/bluetooth/af_bluetooth.c b/net/bluetooth/af_bluetooth.c --- a/net/bluetooth/af_bluetooth.c Sat Nov 15 17:02:12 2003 +++ b/net/bluetooth/af_bluetooth.c Sat Nov 15 17:02:12 2003 @@ -272,14 +272,13 @@ int bt_sock_wait_state(struct sock *sk, int state, unsigned long timeo) { - DECLARE_WAITQUEUE(wait, current); + DEFINE_WAIT(wait); int err = 0; BT_DBG("sk %p", sk); - add_wait_queue(sk->sk_sleep, &wait); while (1) { - set_current_state(TASK_INTERRUPTIBLE); + prepare_to_wait(sk->sk_sleep, &wait, TASK_INTERRUPTIBLE); if (sk_wait_event(sk, &timeo, sk->sk_state == state)) break; @@ -298,8 +297,7 @@ break; } } - set_current_state(TASK_RUNNING); - remove_wait_queue(sk->sk_sleep, &wait); + finish_wait(sk->sk_sleep, &wait); return err; } diff -Nru a/net/bluetooth/l2cap.c b/net/bluetooth/l2cap.c --- a/net/bluetooth/l2cap.c Sat Nov 15 17:02:12 2003 +++ b/net/bluetooth/l2cap.c Sat Nov 15 17:02:12 2003 @@ -565,7 +565,7 @@ int l2cap_sock_accept(struct socket *sock, struct socket *newsock, int flags) { - DECLARE_WAITQUEUE(wait, current); + DEFINE_WAIT(wait); struct sock *sk = sock->sk, *nsk; long timeo; int err = 0; @@ -582,9 +582,9 @@ BT_DBG("sk %p timeo %ld", sk, timeo); /* Wait for an incoming connection. (wake-one). */ - add_wait_queue_exclusive(sk->sk_sleep, &wait); while (1) { - set_current_state(TASK_INTERRUPTIBLE); + prepare_to_wait_exclusive(sk->sk_sleep, &wait, + TASK_INTERRUPTIBLE); if (sk_wait_event(sk, &timeo, (nsk = bt_accept_dequeue(sk, newsock)) != NULL)) break; @@ -604,8 +604,7 @@ break; } } - set_current_state(TASK_RUNNING); - remove_wait_queue(sk->sk_sleep, &wait); + finish_wait(sk->sk_sleep, &wait); if (err) goto done; diff -Nru a/net/bluetooth/rfcomm/sock.c b/net/bluetooth/rfcomm/sock.c --- a/net/bluetooth/rfcomm/sock.c Sat Nov 15 17:02:12 2003 +++ b/net/bluetooth/rfcomm/sock.c Sat Nov 15 17:02:12 2003 @@ -409,7 +409,7 @@ int rfcomm_sock_accept(struct socket *sock, struct socket *newsock, int flags) { - DECLARE_WAITQUEUE(wait, current); + DEFINE_WAIT(wait); struct sock *sk = sock->sk, *nsk; long timeo; int err = 0; @@ -426,9 +426,9 @@ BT_DBG("sk %p timeo %ld", sk, timeo); /* Wait for an incoming connection. (wake-one). */ - add_wait_queue_exclusive(sk->sk_sleep, &wait); while (1) { - set_current_state(TASK_INTERRUPTIBLE); + prepare_to_wait_exclusive(sk->sk_sleep, &wait, + TASK_INTERRUPTIBLE); if (sk_wait_event(sk, &timeo, (nsk = bt_accept_dequeue(sk, newsock)) != NULL)) break; @@ -447,8 +447,7 @@ break; } } - set_current_state(TASK_RUNNING); - remove_wait_queue(sk->sk_sleep, &wait); + finish_wait(sk->sk_sleep, &wait); if (err) goto done; @@ -532,12 +531,10 @@ static long rfcomm_sock_data_wait(struct sock *sk, long timeo) { - DECLARE_WAITQUEUE(wait, current); + DEFINE_WAIT(wait); - add_wait_queue(sk->sk_sleep, &wait); for (;;) { - set_current_state(TASK_INTERRUPTIBLE); - + prepare_to_wait(sk->sk_sleep, &wait, TASK_INTERRUPTIBLE); set_bit(SOCK_ASYNC_WAITDATA, &sk->sk_socket->flags); if (sk_wait_event(sk, &timeo, skb_queue_len(&sk->sk_receive_queue) || @@ -549,8 +546,7 @@ clear_bit(SOCK_ASYNC_WAITDATA, &sk->sk_socket->flags); } - __set_current_state(TASK_RUNNING); - remove_wait_queue(sk->sk_sleep, &wait); + finish_wait(sk->sk_sleep, &wait); return timeo; } diff -Nru a/net/bluetooth/sco.c b/net/bluetooth/sco.c --- a/net/bluetooth/sco.c Sat Nov 15 17:02:12 2003 +++ b/net/bluetooth/sco.c Sat Nov 15 17:02:12 2003 @@ -558,7 +558,7 @@ int sco_sock_accept(struct socket *sock, struct socket *newsock, int flags) { - DECLARE_WAITQUEUE(wait, current); + DEFINE_WAIT(wait); struct sock *sk = sock->sk, *ch; long timeo; int err = 0; @@ -575,9 +575,9 @@ BT_DBG("sk %p timeo %ld", sk, timeo); /* Wait for an incoming connection. (wake-one). */ - add_wait_queue_exclusive(sk->sk_sleep, &wait); while (1) { - set_current_state(TASK_INTERRUPTIBLE); + prepare_to_wait_exclusive(sk->sk_sleep, &wait, + TASK_INTERRUPTIBLE); if (sk_wait_event(sk, &timeo, (ch = bt_accept_dequeue(sk, newsock)) != NULL)) break; @@ -597,8 +597,7 @@ break; } } - set_current_state(TASK_RUNNING); - remove_wait_queue(sk->sk_sleep, &wait); + finish_wait(sk->sk_sleep, &wait); if (err) goto done; =================================================================== This BitKeeper patch contains the following changesets: 1.1422.1.4 ## Wrapped with gzip_uu ## M'XL( #1XMC\ \U7;6_:.A3^C'^%I4E7G>Y([..7!*Z8V@ZVH55KQ:CV$3G& M#,1+6!+8)N7'7\I29HUI><&O<#OXS1K MUG2\,#J;K)6GX[D7)7:A%\=VP1_'<^,7>_UH"O["9'7PI$>1W7&C,CW&:Y.D MS1KUV/U_LA]+TZSU.N]NKRYZ"+5:^,U8+;Z83R;#K1;*XF2M9L/T7&7C6;SP MLD0MTKG)W+WS^ZTY$ +V*6C B) YE80'N:9#2A6G9DB AY*C@MKY0_K;*(Q2 M"E10P2T*E[R!VIAZE -XU..8,)]2GP*FO FD*4B=0),07(F,_^6X3M E?MI3 MO$$:Q_CRZK;3O[[NOV_B56KP,C%+E9A!%@^^J4GFCR:+23IV[]$'RU:"1#<_ M?C1;FRKT>#^@Z=_'BUD@O&CL!H(\1([RGN/KQ?R0@!3!Z3M!EHM1SH.#$5*0NY_1L%NA$% M3$6$,:T@.(B<@]VE!Z$48I.K]61I$N]L89%>/K@\&15)]--83^]HV6P)B\4M M"!$<9 XF$D)"H(:*V 5S$*T=W*W?',O:_:;JJ2?T#/:0E),4;<,M7;G;?=C M9_#YHML_*V[^\C^[(PCM4EN$Q&VT 5"M]H#QP'S7LU4Z69NS=%I_G4X'Z