All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ravinandan Arakali" <ravinandan.arakali@neterion.com>
To: "'David S. Miller'" <davem@davemloft.net>
Cc: <jgarzik@pobox.com>, <netdev@oss.sgi.com>,
	<raghavendra.koushik@neterion.com>,
	<leonid.grossman@neterion.com>, <ananda.raju@neterion.com>,
	<rapuru.sriram@neterion.com>
Subject: RE: [PATCH 2.6.12-rc4] IPv4/IPv6: USO v2, Scatter-gather approach
Date: Thu, 21 Jul 2005 11:42:10 -0700	[thread overview]
Message-ID: <000c01c58e23$e81ea850$4810100a@pc.s2io.com> (raw)
In-Reply-To: <20050719.142320.52167011.davem@davemloft.net>

David,
We are working on your comments. Will get back to you before end of
next week.

Thanks,
Ravi

-----Original Message-----
From: David S. Miller [mailto:davem@davemloft.net]
Sent: Tuesday, July 19, 2005 2:23 PM
To: ravinandan.arakali@neterion.com
Cc: jgarzik@pobox.com; netdev@oss.sgi.com;
raghavendra.koushik@neterion.com; leonid.grossman@neterion.com;
ananda.raju@neterion.com; rapuru.sriram@neterion.com
Subject: Re: [PATCH 2.6.12-rc4] IPv4/IPv6: USO v2, Scatter-gather
approach


From: ravinandan.arakali@neterion.com
Date: Thu,  2 Jun 2005 17:41:06 -0700 (PDT)

> Attached below is version 2 of kernel patch for UDP Large send offload 
> feature. This patch uses the "Scatter-Gather" approach.
> It also incorporates David Miller's comments on the first version.

I've reviewed this patches, and I think there is a problem
with the sock_append_data() scheme.  You disallow the case
where there is an SKB on the write queue already.

This breaks NFS, and other things using MSG_MORE and UDP_CORK.
They do a two step packet building:

1) Send protocol headers, f.e. NFS

2) Send file contents via sendfile()

3) Uncork socket so packet gets emitted

and due to this check:

+	if (skb_queue_len(&sk->sk_write_queue)) {
+		*err = -EOPNOTSUPP;
+		return NULL;
+	}

you end up not supporting this correctly.

So we have two options, either add support for corked socket
handling to sock_append_data() or we go with the frag_list
patch which doesn't have this problem.

I prefer the frag_list patch from a cleanliness perspective,
however I remember you saying that the sock_append_data()
approach obtained better performance.  And that seems clear
since there will be less TX descriptors needed to send such
frames unless the driver does coalescing as it walks the
frag_list chain.

      reply	other threads:[~2005-07-21 18:42 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-06-03  0:41 [PATCH 2.6.12-rc4] IPv4/IPv6: USO v2, Scatter-gather approach ravinandan.arakali
2005-07-19 21:23 ` David S. Miller
2005-07-21 18:42   ` Ravinandan Arakali [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='000c01c58e23$e81ea850$4810100a@pc.s2io.com' \
    --to=ravinandan.arakali@neterion.com \
    --cc=ananda.raju@neterion.com \
    --cc=davem@davemloft.net \
    --cc=jgarzik@pobox.com \
    --cc=leonid.grossman@neterion.com \
    --cc=netdev@oss.sgi.com \
    --cc=raghavendra.koushik@neterion.com \
    --cc=rapuru.sriram@neterion.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.