# Re: \[PATCH net 0/5\] net: tls: break the connection after a burst of empty data records

- From: Chuck Lever \<cel@kernel.org\>
- Date: 2026-11-09 20:16:22 
- List: netdev
- Page: https://ratatoskr.run/netdev/2026/11/17899885
- Thread: https://ratatoskr.run/netdev/2026/11/17899148/t.md

```text
In patch 4/5, zero_len_peek lost the poll() check that v6 had after
the EAGAIN case. Without the poll() check, the 0data_0data_0data
variant passes on a kernel that lacks 1/5 when decryption is
synchronous. The peek queues all three empty records on rx_list and
recv() still returns EAGAIN. With patch 1/5 applied, the peek consumes
the empty records, so poll() reports the socket as not readable.

Restoring

	/* A record left on rx_list keeps the socket readable */
	EXPECT_EQ(poll(&pfd, 1, 0), 0);

after the errno check, along with the pfd declaration, would cover
the MSG_PEEK change in patch 1/5. But I have not run this series. If
the check fails with patch 1/5 applied, I'd like to understand why.

The loop rewrite in patch 2/5 looks fine to me. For patches 1/5 and
5/5:

Reviewed-by: Chuck Lever <cel@kernel.org>


-- 
Chuck Lever (Come to NFS bake-a-thon! https://nfsv4bat.org)
```
