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.1414.4.9, 2003-11-09 00:40:57-02:00, acme@conectiva.com.br
  o LLC: help the compiler with likely/unlikely, saving some more bytes


 af_llc.c    |   37 +++++++++++++++++++------------------
 llc_conn.c  |   12 ++++++------
 llc_input.c |    2 +-
 3 files changed, 26 insertions(+), 25 deletions(-)


diff -Nru a/net/llc/af_llc.c b/net/llc/af_llc.c
--- a/net/llc/af_llc.c	Sat Nov 15 17:04:31 2003
+++ b/net/llc/af_llc.c	Sat Nov 15 17:04:31 2003
@@ -149,7 +149,7 @@
 	struct sock *sk;
 	int rc = -ESOCKTNOSUPPORT;
 
-	if (sock->type == SOCK_DGRAM || sock->type == SOCK_STREAM) {
+	if (likely(sock->type == SOCK_DGRAM || sock->type == SOCK_STREAM)) {
 		rc = -ENOMEM;
 		sk = llc_sk_alloc(PF_LLC, GFP_KERNEL);
 		if (sk) {
@@ -171,7 +171,7 @@
 	struct sock *sk = sock->sk;
 	struct llc_opt *llc;
 
-	if (!sk)
+	if (unlikely(sk == NULL))
 		goto out;
 	sock_hold(sk);
 	lock_sock(sk);
@@ -287,10 +287,10 @@
 	int rc = -EINVAL;
 
 	dprintk("%s: binding %02X\n", __FUNCTION__, addr->sllc_sap);
-	if (!sk->sk_zapped || addrlen != sizeof(*addr))
+	if (unlikely(!sk->sk_zapped || addrlen != sizeof(*addr)))
 		goto out;
 	rc = -EAFNOSUPPORT;
-	if (addr->sllc_family != AF_LLC)
+	if (unlikely(addr->sllc_family != AF_LLC))
 		goto out;
 	if (!addr->sllc_sap) {
 		rc = -EUSERS;
@@ -350,7 +350,7 @@
 	int rc = -ENOTCONN;
 
 	lock_sock(sk);
-	if (sk->sk_state != TCP_ESTABLISHED)
+	if (unlikely(sk->sk_state != TCP_ESTABLISHED))
 		goto out;
 	rc = -EINVAL;
 	if (how != 2)
@@ -388,10 +388,15 @@
 	int rc = -EINVAL;
 
 	lock_sock(sk);
-	if (addrlen != sizeof(*addr))
+	if (unlikely(addrlen != sizeof(*addr)))
 		goto out;
 	rc = -EAFNOSUPPORT;
-	if (addr->sllc_family != AF_LLC)
+	if (unlikely(addr->sllc_family != AF_LLC))
+		goto out;
+	if (unlikely(sk->sk_type != SOCK_STREAM))
+		goto out;
+	rc = -EALREADY;
+	if (unlikely(sock->state == SS_CONNECTING))
 		goto out;
 	/* bind connection to sap if user hasn't done it. */
 	if (sk->sk_zapped) {
@@ -402,11 +407,6 @@
 		llc->daddr.lsap = addr->sllc_sap;
 		memcpy(llc->daddr.mac, addr->sllc_mac, IFHWADDRLEN);
 	}
-	if (sk->sk_type != SOCK_STREAM)
-		goto out;
-	rc = -EALREADY;
-	if (sock->state == SS_CONNECTING)
-		goto out;
 	sock->state = SS_CONNECTING;
 	sk->sk_state   = TCP_SYN_SENT;
 	llc->link   = llc_ui_next_link_no(llc->sap->laddr.lsap);
@@ -440,10 +440,10 @@
 	int rc = -EINVAL;
 
 	lock_sock(sk);
-	if (sock->state != SS_UNCONNECTED)
+	if (unlikely(sock->state != SS_UNCONNECTED))
 		goto out;
 	rc = -EOPNOTSUPP;
-	if (sk->sk_type != SOCK_STREAM)
+	if (unlikely(sk->sk_type != SOCK_STREAM))
 		goto out;
 	rc = -EAGAIN;
 	if (sk->sk_zapped)
@@ -606,10 +606,11 @@
 	dprintk("%s: accepting on %02X\n", __FUNCTION__,
 	        llc_sk(sk)->laddr.lsap);
 	lock_sock(sk);
-	if (sk->sk_type != SOCK_STREAM)
+	if (unlikely(sk->sk_type != SOCK_STREAM))
 		goto out;
 	rc = -EINVAL;
-	if (sock->state != SS_UNCONNECTED || sk->sk_state != TCP_LISTEN)
+	if (unlikely(sock->state != SS_UNCONNECTED ||
+		     sk->sk_state != TCP_LISTEN))
 		goto out;
 	/* wait for a connection to arrive. */
 	rc = llc_ui_wait_for_data(sk, sk->sk_rcvtimeo);
@@ -871,7 +872,7 @@
 	int rc = -EINVAL, opt;
 
 	lock_sock(sk);
-	if (level != SOL_LLC || optlen != sizeof(int))
+	if (unlikely(level != SOL_LLC || optlen != sizeof(int)))
 		goto out;
 	rc = get_user(opt, (int *)optval);
 	if (rc)
@@ -946,7 +947,7 @@
 	int val = 0, len = 0, rc = -EINVAL;
 
 	lock_sock(sk);
-	if (level != SOL_LLC)
+	if (unlikely(level != SOL_LLC))
 		goto out;
 	rc = get_user(len, optlen);
 	if (rc)
diff -Nru a/net/llc/llc_conn.c b/net/llc/llc_conn.c
--- a/net/llc/llc_conn.c	Sat Nov 15 17:04:31 2003
+++ b/net/llc/llc_conn.c	Sat Nov 15 17:04:31 2003
@@ -64,19 +64,19 @@
 	skb_get(skb);
 	ev->ind_prim = ev->cfm_prim = 0;
 	rc = llc_conn_service(sk, skb); /* sending event to state machine */
-	if (rc) {
+	if (unlikely(rc != 0)) {
 		printk(KERN_ERR "%s: llc_conn_service failed\n", __FUNCTION__);
 		goto out_kfree_skb;
 	}
 
-	if (!ev->ind_prim && !ev->cfm_prim) {
+	if (unlikely(!ev->ind_prim && !ev->cfm_prim)) {
 		/* indicate or confirm not required */
 		if (!skb->list)
 			goto out_kfree_skb;
 		goto out_skb_put;
 	}
 
-	if (ev->ind_prim && ev->cfm_prim) /* Paranoia */
+	if (unlikely(ev->ind_prim && ev->cfm_prim)) /* Paranoia */
 		skb_get(skb);
 
 	switch (ev->ind_prim) {
@@ -757,14 +757,14 @@
 	int rc = 0;
 	struct llc_opt *llc = llc_sk(sk);
 
-	if (llc_backlog_type(skb) == LLC_PACKET) {
-		if (llc->state > 1) /* not closed */
+	if (likely(llc_backlog_type(skb) == LLC_PACKET)) {
+		if (likely(llc->state > 1)) /* not closed */
 			rc = llc_conn_rcv(sk, skb);
 		else
 			goto out_kfree_skb;
 	} else if (llc_backlog_type(skb) == LLC_EVENT) {
 		/* timer expiration event */
-		if (llc->state > 1)  /* not closed */
+		if (likely(llc->state > 1))  /* not closed */
 			rc = llc_conn_state_process(sk, skb);
 		else
 			goto out_kfree_skb;
diff -Nru a/net/llc/llc_input.c b/net/llc/llc_input.c
--- a/net/llc/llc_input.c	Sat Nov 15 17:04:31 2003
+++ b/net/llc/llc_input.c	Sat Nov 15 17:04:31 2003
@@ -101,7 +101,7 @@
 	u8 llc_len = 2;
 	struct llc_pdu_sn *pdu;
 
-	if (!pskb_may_pull(skb, sizeof(*pdu)))
+	if (unlikely(!pskb_may_pull(skb, sizeof(*pdu))))
 		return 0;
 
 	pdu = (struct llc_pdu_sn *)skb->data;

===================================================================


This BitKeeper patch contains the following changesets:
1.1414.4.9
## Wrapped with gzip_uu ##


M'XL( +]XMC\  \U76V_:2A!^QK]BHDI5DG. O?G&$5$IT#0*)5$@#^<)+68)
M%L:VL*%*CW_\V0M)"S@I1'V(N0QX=[Z=G?F^6?@ ]YE8-BH\6 CK WQ-LKQ1
M"9)8!'FXYK4@6=3&2SEPER1RH#Y+%J*NYM;'<U*/15XE-:>&+3GCEN?!#-9B
MF34JN$:?[^2/J6A4[KJ7][W6G64UF]">\?A!#$0.S::5)\LUCR;9)Y[/HB2N
MY4L>9PN1Z[6+YZD%08C(AXU=BFRGP YB;A'@"<:<83%!A'D.LU1HGW;#WT:A
M&",?$>H37"!7?K4Z@&N8859C-1\0K6-<1_(#:C#4L-TJ(@V$H!09_J)01=9G
M^+.[:%L!)-#KM1LP$U$*^4R Q$G#2"SA>YC/( KG(GJLKV+SX6_(^#J,'R"3
M]8%%LA0P?LQ%9EV#WN'MSYQ;U2,ORT(<61?E"2@D!>I1%*C7*$N">2TP>[0I
M1I3:A!64NHY=4,]W"0DP\^RQ+X3X#1R?CJ0Q8)N",<3\@C@V(@<%(P?CDF"P
M[=!BZOD<3PEGR*=\PKRCX+;"<0FF!X6SX$%)-(0@O^"$3UP/$3P5U.6.?0!:
M&*>KO"0<N2%/2VP_=*6U/YNUH^">58=I0;#/D%8=([MZ8_[K>G.@ZKQKO1E*
MW$!U^5T_I8!N2\KQ!AEV'!>P=:7?*^$43I^B.5T&<-($='8&_UD=EZA9^GU[
MUHE85R_">#)*E^$"/GX$?2.8+O2-C;.OG?T]YUW?'=?ZN>SVL@9)R.&\+G$<
M!$0".5@:C;3!41D8\V >)0\C=3*<9O/QF>2FRO[HMM6^[@YU))4=I^I%EO-<
MP 5@LUR<Y!!$228FFP5U<HQYW7G?>U<Q&WD=)IDCE'T VI:R$?&D:#SB%H3B
MC62H?:QD,%3Q^Y:,;ENO2&:3E+=H!B.F>&',CAY2R3U9OL=1NHHB14098_A#
M)-/3\W2R.I/7%C.>SJ3#:'',8?@;N)+#D+JJ-+)$MB:%E-FQI/ E*[SW30M]
MUK] BZ><O(D3MFZ1QOS:*E3-JA>J+:F.-+AI7X\ZEW>M;U 44#(V&-YU6]],
MX\2NX9F[S[-LKCSZ][V>)%2'^$A--&:'D)E<(9N/?O TE8U)+LHGDV4D8M7=
MGYBI;IT9(&J Z!Z0FB.1% VG?!%&CPJ@]64DZZ(\J:T]C=F-54=@VJ5T&K9O
M1]W!L/6Y=S7XVNUH;Q]K;VWVUWTI7.HSX\; .2K<2N4AR1-(5OD_Y<'JFISL
MU&3;31Z03:AV6STYV/EW#T>7UNQ9U78P:M_T^]WV\*I_J4)GR :I,\9TVHQY
M&>%$(]SW-Q@F:8PYQM=Y*>7EN^@X2)_(QASEB#7)E2''1"MI)W,'ZBHC@^3!
ML-M7"WB&\5X)XR.Q%I&)J:>JJ*B<I/DV-<(XU\3PF=ZA,:_CJ(;\]+<RF(E@
5GJT63?E3 U&/3JW_ ?HF^YK+#@  
 
