From: Subash Abhinov Kasiviswanathan <subash.a.kasiviswanathan@oss.qualcomm.com>
To: davem@davemloft.net, edumazet@google.com, kuba@kernel.org,
pabeni@redhat.com, andrew+netdev@lunn.ch, corbet@lwn.net
Cc: horms@kernel.org, skhan@linuxfoundation.org,
rdunlap@infradead.org, netdev@vger.kernel.org,
linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
Subash Abhinov Kasiviswanathan
<subash.a.kasiviswanathan@oss.qualcomm.com>
Subject: [PATCH net-next 0/7] Add HW GRO handling in rmnet
Date: Tue, 29 Sep 2026 22:13:38 -0700 [thread overview]
Message-ID: <20260930051345.857443-1-subash.a.kasiviswanathan@oss.qualcomm.com> (raw)
This patch series adds support for processing coalesced packets
in rmnet driver.
Hardware can coalesce TCP and UDP flows up to a maximum size of 65k.
Up to 48 total packets can be coalesced into a single frame and
are limited to 6 different consecutive packet sizes. As kernel
supports a single packet size (gso_size), the coalescing frame
will need to be broken down and queued per size to the network stack.
Hardware can also continue to coalesce in case the transport checksum
was invalid so such segments will need to discarded in the driver.
The exact segments which have bad checksum are identified through a
bitmap in the coalescing packet header.
Patch 1 adds the UAPI flag for the coalescing packet format.
Patch 2 is in preparation for the coalescing format packet handling
where packets maybe delivered as a list to the network stack as
mentioned above in case of different sizes or checksum errors.
Patch 3 is in preparation for the coalescing format flags to ensure
that there is no invalid MAP format combination to process the packets.
Patch 4 adds the core coalescing handling.
Patch 5 is for handling some quirks observed in the coalescing
hardware.
Patch 6 adds coalescing statistics in ethtool.
Patch 7 adds documentation about the coalescing feature.
Subash Abhinov Kasiviswanathan (7):
uapi: if_link: Add RMNET_FLAGS_INGRESS_COALESCE
net: qualcomm: rmnet: Process MAPv5 frames as a list
net: qualcomm: rmnet: Restrict supported MAP checksum configurations
net: qualcomm: rmnet: Add DL packet coalescing support
net: qualcomm: rmnet: Work around coalescing hardware quirks
net: qualcomm: rmnet: Add ethtool stats for DL coalescing
docs: networking: Add documentation for the coalescing support in
rmnet
.../cellular/qualcomm/rmnet.rst | 115 ++-
.../ethernet/qualcomm/rmnet/rmnet_config.c | 70 +-
.../ethernet/qualcomm/rmnet/rmnet_config.h | 20 +
.../ethernet/qualcomm/rmnet/rmnet_handlers.c | 25 +-
.../net/ethernet/qualcomm/rmnet/rmnet_map.h | 20 +-
.../ethernet/qualcomm/rmnet/rmnet_map_data.c | 715 +++++++++++++++++-
.../net/ethernet/qualcomm/rmnet/rmnet_vnd.c | 21 +
include/linux/if_rmnet.h | 31 +
include/uapi/linux/if_link.h | 1 +
9 files changed, 958 insertions(+), 60 deletions(-)
--
2.34.1
next reply other threads:[~2026-09-30 5:14 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-30 5:13 Subash Abhinov Kasiviswanathan [this message]
2026-09-30 5:13 ` [PATCH net-next 1/7] uapi: if_link: Add RMNET_FLAGS_INGRESS_COALESCE Subash Abhinov Kasiviswanathan
2026-10-04 6:05 ` netdev-bot+sashiko
2026-09-30 5:13 ` [PATCH net-next 2/7] net: qualcomm: rmnet: Process MAPv5 frames as a list Subash Abhinov Kasiviswanathan
2026-09-30 5:13 ` [PATCH net-next 3/7] net: qualcomm: rmnet: Restrict supported MAP checksum configurations Subash Abhinov Kasiviswanathan
2026-10-04 6:05 ` netdev-bot+sashiko
2026-09-30 5:13 ` [PATCH net-next 4/7] net: qualcomm: rmnet: Add DL packet coalescing support Subash Abhinov Kasiviswanathan
2026-10-04 6:05 ` netdev-bot+sashiko
2026-09-30 5:13 ` [PATCH net-next 5/7] net: qualcomm: rmnet: Work around coalescing hardware quirks Subash Abhinov Kasiviswanathan
2026-10-04 6:05 ` netdev-bot+sashiko
2026-09-30 5:13 ` [PATCH net-next 6/7] net: qualcomm: rmnet: Add ethtool stats for DL coalescing Subash Abhinov Kasiviswanathan
2026-10-04 6:05 ` netdev-bot+sashiko
2026-09-30 5:13 ` [PATCH net-next 7/7] docs: networking: Add documentation for the coalescing support in rmnet Subash Abhinov Kasiviswanathan
2026-10-04 6:05 ` netdev-bot+sashiko
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=20260930051345.857443-1-subash.a.kasiviswanathan@oss.qualcomm.com \
--to=subash.a.kasiviswanathan@oss.qualcomm.com \
--cc=andrew+netdev@lunn.ch \
--cc=corbet@lwn.net \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=horms@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=rdunlap@infradead.org \
--cc=skhan@linuxfoundation.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox