diff --git a/net/x25/af_x25.c b/net/x25/af_x25.c index 92cfe8e..07fad7c 100644 --- a/net/x25/af_x25.c +++ b/net/x25/af_x25.c @@ -83,9 +83,9 @@ struct compat_x25_subscrip_struct { int x25_addr_ntoa(unsigned char *p, struct x25_address *called_addr, struct x25_address *calling_addr) { - int called_len, calling_len; + unsigned int called_len, calling_len; char *called, *calling; - int i; + unsigned int i; called_len = (*p >> 0) & 0x0F; calling_len = (*p >> 4) & 0x0F; diff --git a/net/x25/x25_facilities.c b/net/x25/x25_facilities.c index dec404a..a21f664 100644 --- a/net/x25/x25_facilities.c +++ b/net/x25/x25_facilities.c @@ -205,9 +205,7 @@ int x25_create_facilities(unsigned char *buffer, } if (dte_facs->calling_len && (facil_mask & X25_MASK_CALLING_AE)) { - unsigned bytecount = (dte_facs->calling_len % 2) ? - dte_facs->calling_len / 2 + 1 : - dte_facs->calling_len / 2; + unsigned bytecount = (dte_facs->calling_len + 1) >> 1; *p++ = X25_FAC_CALLING_AE; *p++ = 1 + bytecount; *p++ = dte_facs->calling_len; diff --git a/net/x25/x25_in.c b/net/x25/x25_in.c index 1c88762..7d7c3ab 100644 --- a/net/x25/x25_in.c +++ b/net/x25/x25_in.c @@ -247,7 +247,7 @@ static int x25_state3_machine(struct sock *sk, struct sk_buff *skb, int frametyp break; } if (atomic_read(&sk->sk_rmem_alloc) > - (sk->sk_rcvbuf / 2)) + (sk->sk_rcvbuf >> 1)) x25->condition |= X25_COND_OWN_RX_BUSY; } /* diff --git a/net/x25/x25_proc.c b/net/x25/x25_proc.c index 7d55e50..78b0534 100644 --- a/net/x25/x25_proc.c +++ b/net/x25/x25_proc.c @@ -41,6 +41,7 @@ found: } static void *x25_seq_route_start(struct seq_file *seq, loff_t *pos) + __acquires(x25_route_list_lock) { loff_t l = *pos; @@ -70,6 +71,7 @@ out: } static void x25_seq_route_stop(struct seq_file *seq, void *v) + __releases(x25_route_list_lock) { read_unlock_bh(&x25_route_list_lock); } @@ -105,6 +107,7 @@ found: } static void *x25_seq_socket_start(struct seq_file *seq, loff_t *pos) + __acquires(x25_list_lock) { loff_t l = *pos; @@ -127,6 +130,7 @@ out: } static void x25_seq_socket_stop(struct seq_file *seq, void *v) + __releases(x25_list_lock) { read_unlock_bh(&x25_list_lock); } @@ -183,6 +187,7 @@ found: } static void *x25_seq_forward_start(struct seq_file *seq, loff_t *pos) + __acquires(x25_forward_list_lock) { loff_t l = *pos; @@ -213,6 +218,7 @@ out: } static void x25_seq_forward_stop(struct seq_file *seq, void *v) + __releases(x25_forward_list_lock) { read_unlock_bh(&x25_forward_list_lock); } diff --git a/net/x25/x25_subr.c b/net/x25/x25_subr.c index 8d6220a..511a598 100644 --- a/net/x25/x25_subr.c +++ b/net/x25/x25_subr.c @@ -359,7 +359,7 @@ void x25_check_rbuf(struct sock *sk) { struct x25_sock *x25 = x25_sk(sk); - if (atomic_read(&sk->sk_rmem_alloc) < (sk->sk_rcvbuf / 2) && + if (atomic_read(&sk->sk_rmem_alloc) < (sk->sk_rcvbuf >> 1) && (x25->condition & X25_COND_OWN_RX_BUSY)) { x25->condition &= ~X25_COND_OWN_RX_BUSY; x25->condition &= ~X25_COND_ACK_PENDING;