OSDN Git Service

net: rmnet_data: Disable generic receive offload by default
authorSubash Abhinov Kasiviswanathan <subashab@codeaurora.org>
Mon, 5 Dec 2016 19:26:41 +0000 (12:26 -0700)
committerGerrit - the friendly Code Review server <code-review@localhost>
Wed, 7 Dec 2016 18:24:01 +0000 (10:24 -0800)
commit90c133c67c74d0e8f6b78899e9fca3d502b1039e
treedc69d2b766764569ecd6bac7311effecba12da88
parent368fecd7df5b203a5ce684a0c77726a5690c1147
net: rmnet_data: Disable generic receive offload by default

Generic receive offload is enabled by default on a net_device
whenever it is registered. In case of rmnet_data, a physical
device could theoretically pass cloned frames and rmnet_data
would pass on these cloned frames to GRO framework. This
would cause memory corruption or crashes since GRO modifies
the skb shared info which is shared across clones.

While cloned frames are usually not sent to rmnet_data, this
configuration actually requires userspace intervention. If
userspace does not makes appropriate calls to kernel, we will
run into crashes. Handle this scenario by disabling GRO by
default. Userspace will need to explicitly enable GRO if
required to do so.

CRs-Fixed: 1097389
Change-Id: I40d5ce940f4722b128c0138c07232c33d0b74e14
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
net/rmnet_data/rmnet_data_vnd.c