On 09/04, Mina Almasry wrote:
> On Thu, Sep 4, 2025 at 11:27 AM Stanislav Fomichev <s...@fomichev.me> wrote:
> >
> > devmem test fails on NIPA. Most likely we get skb(s) with readable
> > frags (why?)
> 
> I would expect if we get readable frags that the frags land in the
> host buffer we provide ncdevmem and we actually hit this error:
> 
> ```
>   1                 if (!is_devmem) {
>   0                         pr_err("flow steering error");
>   1                         goto err_close_client;
>   2                 }
> ```
> 
> which as it says, should be root caused in a flow steering error. I
> don't know what would cause an EFAULT off the top of my head.

Yea, I don't understand what happens :-( I'm thinking of doing the
following as well:

diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c
index 40b774b4f587..0c18a8c7965f 100644
--- a/net/ipv4/tcp.c
+++ b/net/ipv4/tcp.c
@@ -2820,7 +2820,7 @@ static int tcp_recvmsg_locked(struct sock *sk, struct 
msghdr *msg, size_t len,
                                                         used);
                                if (err <= 0) {
                                        if (!copied)
-                                               copied = -EFAULT;
+                                               copied = err;
 
                                        break;
                                }

Should give us more info for the devmem case... LMK if you don't like
it. If I don't hear from you in a couple of days, I'll send it out..

Reply via email to