Skip to contentSkip to conversation

can: isotp: use sock_recv_cmsgs() to get SOCK_RXQ_OVFL infos

PATCH Applied Oliver Hartkopp 2 participants 3 messages Mar 30, 2023 – Apr 5, 2023

Subsystems (2)
lore
Share & tools
lore

Oliver Hartkopp

author maintainer
#0 lore raw

PATCH 1/1 can: isotp: use sock_recv_cmsgs() to get SOCK_RXQ_OVFL infos

isotp.c was still using sock_recv_timestamp() which does not provide control messages to detect dropped PDUs in the receive path.

Fixes e057dd3fc20f ("can: add ISO 15765-2:2016 transport protocol")
---
 net/can/isotp.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
net/can/isotp.c +1 -1
index 9bc344851704..47c2ebad10ed 100644
@@ -1118,11 +1118,11 @@ static int isotp_recvmsg(struct socket *sock, struct msghdr *msg, size_t size,
 
 	ret = memcpy_to_msg(msg, skb->data, size);
 	if (ret < 0)
 		goto out_err;
 
-	sock_recv_timestamp(msg, sk, skb);
+	sock_recv_cmsgs(msg, sk, skb);
 
 	if (msg->msg_name) {
 		__sockaddr_check_size(ISOTP_MIN_NAMELEN);
 		msg->msg_namelen = ISOTP_MIN_NAMELEN;
 		memcpy(msg->msg_name, skb->cb, msg->msg_namelen);
Signature · 1 line
2.30.2
author maintainer
#1 lore raw

Hi Marc,

can you please apply this one too?
I was using it to detect the poll receive buffer error.

Thanks,
Oliver

Quoted 26 lines · Oliver Hartkopp

isotp.c was still using sock_recv_timestamp() which does not provide control messages to detect dropped PDUs in the receive path.

Fixes e057dd3fc20f ("can: add ISO 15765-2:2016 transport protocol")
---
  net/can/isotp.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
net/can/isotp.c +1 -1
index 9bc344851704..47c2ebad10ed 100644
@@ -1118,11 +1118,11 @@ static int isotp_recvmsg(struct socket *sock, struct msghdr *msg, size_t size,
 
  	ret = memcpy_to_msg(msg, skb->data, size);
  	if (ret < 0)
  		goto out_err;
 
-	sock_recv_timestamp(msg, sk, skb);
+	sock_recv_cmsgs(msg, sk, skb);
 
  	if (msg->msg_name) {
  		__sockaddr_check_size(ISOTP_MIN_NAMELEN);
  		msg->msg_namelen = ISOTP_MIN_NAMELEN;
  		memcpy(msg->msg_name, skb->cb, msg->msg_namelen);
maintainer Applied
#2 lore raw
Quoted 4 lines · Oliver Hartkopp

Hi Marc,

can you please apply this one too?
I was using it to detect the poll receive buffer error.

Applied. Was on my list, but it came with a fixes tag, so I don't have to ask for one. :)

Marc

Signature · 4 lines
Pengutronix e.K.                 | Marc Kleine-Budde          |
Embedded Linux                   | https://www.pengutronix.de |
Vertretung Nürnberg              | Phone: +49-5121-206917-129 |
Amtsgericht Hildesheim, HRA 2686 | Fax:   +49-5121-206917-9   |