Re: [crypto 2/4] crypto/chelsio/chtls: hardware connect API

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Atul,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on crypto/master]

url:    https://github.com/0day-ci/linux/commits/Atul-Gupta/Inline-TLS-client-and-v6-support/20190412-034407
base:   https://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git master
reproduce:
        # apt-get install sparse
        make ARCH=x86_64 allmodconfig
        make C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'


sparse warnings: (new ones prefixed by >>)

>> drivers/crypto/chelsio/chtls/chtls_cm.c:1254:42: sparse: incorrect type in assignment (different base types) @@    expected restricted __be32 [usertype] atid_status @@    got e] atid_status @@
   drivers/crypto/chelsio/chtls/chtls_cm.c:1254:42:    expected restricted __be32 [usertype] atid_status
   drivers/crypto/chelsio/chtls/chtls_cm.c:1254:42:    got int
   drivers/crypto/chelsio/chtls/chtls_cm.c:1076:17: sparse: expression using sizeof(void)
>> drivers/crypto/chelsio/chtls/chtls_cm.c:1272:40: sparse: incorrect type in argument 1 (different address spaces) @@    expected struct socket_wq *wq @@    got struct socket_wq struct socket_wq *wq @@
   drivers/crypto/chelsio/chtls/chtls_cm.c:1272:40:    expected struct socket_wq *wq
   drivers/crypto/chelsio/chtls/chtls_cm.c:1272:40:    got struct socket_wq [noderef] <asn:4>*sk_wq
>> drivers/crypto/chelsio/chtls/chtls_cm.c:1273:25: sparse: cast to restricted __poll_t
   drivers/crypto/chelsio/chtls/chtls_cm.c:1320:16: sparse: expression using sizeof(void)
>> drivers/crypto/chelsio/chtls/chtls_cm.c:1470:60: sparse: Using plain integer as NULL pointer
   drivers/crypto/chelsio/chtls/chtls_cm.c:1573:22: sparse: context imbalance in 'chtls_recv_sock' - unexpected unlock

vim +1254 drivers/crypto/chelsio/chtls/chtls_cm.c

  1239	
  1240	static void chtls_connect_req_arp_failure(void *handle, struct sk_buff *skb)
  1241	{
  1242		struct sock *sk = skb->sk;
  1243	
  1244		sock_hold(sk);
  1245		bh_lock_sock(sk);
  1246		if (sk->sk_state == TCP_SYN_SENT || sk->sk_state == TCP_SYN_RECV) {
  1247			if (!sock_owned_by_user(sk)) {
  1248				chtls_act_open_fail(sk, EHOSTUNREACH);
  1249				__kfree_skb(skb);
  1250			} else {
  1251				struct cpl_act_open_rpl *rpl = cplhdr(skb) + RSS_HDR;
  1252	
  1253				rpl->ot.opcode = CPL_ACT_OPEN_RPL;
> 1254				rpl->atid_status = CPL_ERR_ARP_MISS;
  1255				BLOG_SKB_CB(skb)->backlog_rcv = chtls_active_open_rpl;
  1256				__sk_add_backlog(sk, skb);
  1257			}
  1258		}
  1259		bh_unlock_sock(sk);
  1260		sock_put(sk);
  1261	}
  1262	
  1263	static void chtls_write_space(struct sock *sk)
  1264	{
  1265		struct socket *sock = sk->sk_socket;
  1266		struct socket_wq *wq;
  1267	
  1268		if (sk_stream_wspace(sk) >= sk_stream_min_wspace(sk) && sock) {
  1269			clear_bit(SOCK_NOSPACE, &sock->flags);
  1270			rcu_read_lock();
  1271			wq = rcu_dereference(sk->sk_wq);
> 1272			if (skwq_has_sleeper(sk->sk_wq))
> 1273				wake_up_interruptible_poll(&wq->wait, POLLOUT |
  1274							   POLLWRNORM |
  1275							   POLLWRBAND);
  1276			if (wq && wq->fasync_list && !(sk->sk_shutdown & SEND_SHUTDOWN))
  1277				sock_wake_async(wq, SOCK_WAKE_SPACE, POLL_OUT);
  1278			rcu_read_unlock();
  1279		}
  1280	}
  1281	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation



[Index of Archives]     [Kernel]     [Gnu Classpath]     [Gnu Crypto]     [DM Crypt]     [Netfilter]     [Bugtraq]

  Powered by Linux