Commit Graph

108 Commits

Author SHA1 Message Date
Subash Abhinov Kasiviswanathan
2204dee91b core: Remove dl marker v1 usage
This removes the unused dl marker v1 definitions, handlers and users
since these are no longer used.

This also fixes the following CFI warning-
CFI failure (target: rmnet_perf_core_handle_map_control_end.cfi_jt+0x0/0x4 [rmnet_perf]):
WARNING: CPU: 1 PID: 0 at kernel/cfi.c:29 __ubsan_handle_cfi_check_fail+0x4c/0x54
pstate: 60400005 (nZCv daif +PAN -UAO)
pc: __ubsan_handle_cfi_check_fail+0x4c/0x54
lr: __ubsan_handle_cfi_check_fail+0x4c/0x54
Call trace:
__ubsan_handle_cfi_check_fail+0x4c/0x54
__cfi_check+0x204/0x220 [rmnet_perf]
rmnet_map_dl_trl_notify_v2+0x58/0x88 [rmnet_core]
rmnet_frag_flow_command+0x110/0x120 [rmnet_core]
rmnet_frag_ingress_handler+0xe0/0x3bc [rmnet_core]
rmnet_rx_handler+0x1cc/0x2a4 [rmnet_core]
__netif_receive_skb_core+0x554/0xdc4
process_backlog$4cc8cf18b485f47de9fc54109f04daea+0x1a4/0x314
net_rx_action$4cc8cf18b485f47de9fc54109f04daea+0x144/0x578
__do_softirq+0x250/0x580
irq_exit+0xcc/0xd0
handle_IPI+0x228/0x3b0
efi_header_end+0x148/0x17c
el1_irq+0x108/0x200
lpm_cpuidle_enter$a9941074ca35bb1f25355cf2ff310eae+0x57c/0x5c8
cpuidle_enter_state+0x130/0x334
cpuidle_enter+0x38/0x50
do_idle.llvm.4847091502713502628+0x1e4/0x2ec
cpu_startup_entry+0x24/0x28
__cpu_disable+0x0/0xbc

CRs-Fixed: 2647192
Change-Id: I5dc625f0791aff9738b2128f99c79d7e0dadf26d
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
2020-03-22 21:21:49 -06:00
Subash Abhinov Kasiviswanathan
0dfa55e06d core: rmnet: Remove unnecessary warning
Remove warning from module load. Fixes the following-

WARNING: CPU: 2 PID: 735 at core/rmnet_config.c:753
 init_module+0x18/0x64 [rmnet_core]
pstate: 60400005 (nZCv daif +PAN -UAO)
pc : init_module+0x18/0x64 [rmnet_core]
lr : do_one_initcall+0x190/0x380
Call trace:
 init_module+0x18/0x64 [rmnet_core]
 do_one_initcall+0x190/0x380
 do_init_module+0x5c/0x210
 load_module+0x45d8/0x480c
 __arm64_sys_finit_module+0xec/0x120
 el0_svc_common+0xbc/0x1c0
 el0_svc_handler+0x6c/0x88
 el0_svc+0x8/0xc

CRs-Fixed: 2644088
Change-Id: Icab7f3b3021a94e4376374b9cb3b905178f9894a
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
2020-03-17 21:22:05 -06:00
Conner Huff
609413920b core: Update netlink policy structure
Newer versions of kernel require attribute structs
to define lengths exactly.

Change-Id: I7195b4974cf18ff3b3cbeb4d2ed863ff97ab7b92
Acked-by: Ryan Chapman <rchapman@qti.qualcomm.com>
Signed-off-by: Conner Huff <chuff@codeaurora.org>
2020-03-11 16:57:08 -07:00
Sean Tranchetti
1ea6d3f011 net: ethernet: qualcomm: rmnet: Track RSB/RSC byte counts
Allows calculation of the average buffer utilization for RSB/RSC packets.

Change-Id: Id719b97ceffc62b1b9ce28bfab8ec32c6604529c
Acked-by: Conner Huff <chuff@codeaurora.org>
Signed-off-by: Sean Tranchetti <stranche@codeaurora.org>
2020-02-26 18:22:34 -08:00
Subash Abhinov Kasiviswanathan
1d2f235dc4 dfc: Not flow control NDP packets
Allow all NDP packets to be sent regardless of flow control state.
These packets are needed for address configuration even if the default
flow is disabled from the beginning of the call such as in 5G SA.

Change-Id: Ia10e41c5ec8e163b9682c6b4f553f9b102020042
Acked-by: Weiyi Chen <weiyic@qti.qualcomm.com>
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
2020-02-21 16:12:11 -07:00
Subash Abhinov Kasiviswanathan
c9eea21709 core: Do not zero out transport checksum
Hardware does not use the value populated in the transport checksum
field for checksum computation in MAPv5 format if checksum required
bit is set. The partial checksum can be left as is in these cases.

Explicitly marking the field as 0 could potentially cause incorrect
verdicts in hardware in translation scenarios for UDPv4.

CRs-Fixed: 2626450
Change-Id: I8d9e38e6af0df344ceebd630a895b1d7f467b1db
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
2020-02-20 17:00:03 -07:00
Sean Tranchetti
eeb4944964 core: rmnet: Fastforward to 4.19 tip
This brings the RmNet and DFC modules up to date with the 4.19 tip as of
commit 9b38611ea527 ("rmnet: Reduce synchronize_rcu calls").

As part of this, the rmnet_ctl driver was also incorporated, using commit
4ceee3aafb7d ("rmnet_ctl: Add IPC logging and optimizations")

Change-Id: Ic45d46074c7401dfed408c769cfb6462dac0d4ee
Signed-off-by: Sean Tranchetti <stranche@codeaurora.org>
2020-01-23 13:31:14 -07:00
Subash Abhinov Kasiviswanathan
08d4972b2a core: Rmnet initial commit
Inital commit of rmnet_core net device driver in dlkm form
in datarmnet. This requires rmnet to be disabled in the
kernel and for it to be loaded before dependent modules.

CRs-Fixed: 2558810
Change-Id: I742e85033fa0999bf9069d43ce73ab9a622a8388
Acked-by: Raul Martinez <mraul@qti.qualcomm.com>
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
2019-12-10 15:22:43 -07:00