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>
This commit is contained in:
Subash Abhinov Kasiviswanathan 2020-03-22 21:02:58 -06:00
parent 0dfa55e06d
commit 2204dee91b
3 changed files with 6 additions and 52 deletions

View File

@ -237,8 +237,6 @@ rmnet_frag_process_flow_start(struct rmnet_map_control_command_header *cmd,
*/
if (is_dl_mark_v2)
rmnet_map_dl_hdr_notify_v2(port, dlhdr, cmd);
else
rmnet_map_dl_hdr_notify(port, dlhdr);
}
static void
@ -265,8 +263,6 @@ rmnet_frag_process_flow_end(struct rmnet_map_control_command_header *cmd,
*/
if (is_dl_mark_v2)
rmnet_map_dl_trl_notify_v2(port, dltrl, cmd);
else
rmnet_map_dl_trl_notify(port, dltrl);
}
/* Process MAP command frame and send N/ACK message as appropriate. Message cmd

View File

@ -180,20 +180,10 @@ struct rmnet_map_dl_ind_trl {
struct rmnet_map_dl_ind {
u8 priority;
union {
void (*dl_hdr_handler)(struct rmnet_map_dl_ind_hdr *dlhdr);
void (*dl_hdr_handler_v2)(struct rmnet_map_dl_ind_hdr *dlhdr,
struct
rmnet_map_control_command_header
* qcmd);
} __aligned(1);
union {
void (*dl_trl_handler)(struct rmnet_map_dl_ind_trl *dltrl);
void (*dl_trl_handler_v2)(struct rmnet_map_dl_ind_trl *dltrl,
struct
rmnet_map_control_command_header
* qcmd);
} __aligned(1);
void (*dl_hdr_handler_v2)(struct rmnet_map_dl_ind_hdr *dlhdr,
struct rmnet_map_control_command_header *qcmd);
void (*dl_trl_handler_v2)(struct rmnet_map_dl_ind_trl *dltrl,
struct rmnet_map_control_command_header *qcmd);
struct list_head list;
};
@ -275,13 +265,9 @@ void rmnet_map_tx_aggregate_init(struct rmnet_port *port);
void rmnet_map_tx_aggregate_exit(struct rmnet_port *port);
void rmnet_map_update_ul_agg_config(struct rmnet_port *port, u16 size,
u8 count, u8 features, u32 time);
void rmnet_map_dl_hdr_notify(struct rmnet_port *port,
struct rmnet_map_dl_ind_hdr *dl_hdr);
void rmnet_map_dl_hdr_notify_v2(struct rmnet_port *port,
struct rmnet_map_dl_ind_hdr *dl_hdr,
struct rmnet_map_control_command_header *qcmd);
void rmnet_map_dl_trl_notify(struct rmnet_port *port,
struct rmnet_map_dl_ind_trl *dltrl);
void rmnet_map_dl_trl_notify_v2(struct rmnet_port *port,
struct rmnet_map_dl_ind_trl *dltrl,
struct rmnet_map_control_command_header *qcmd);

View File

@ -107,16 +107,6 @@ rmnet_map_dl_hdr_notify_v2(struct rmnet_port *port,
tmp->dl_hdr_handler_v2(dlhdr, qcmd);
}
void
rmnet_map_dl_hdr_notify(struct rmnet_port *port,
struct rmnet_map_dl_ind_hdr *dlhdr)
{
struct rmnet_map_dl_ind *tmp;
list_for_each_entry(tmp, &port->dl_list, list)
tmp->dl_hdr_handler(dlhdr);
}
void
rmnet_map_dl_trl_notify_v2(struct rmnet_port *port,
struct rmnet_map_dl_ind_trl *dltrl,
@ -128,16 +118,6 @@ rmnet_map_dl_trl_notify_v2(struct rmnet_port *port,
tmp->dl_trl_handler_v2(dltrl, qcmd);
}
void
rmnet_map_dl_trl_notify(struct rmnet_port *port,
struct rmnet_map_dl_ind_trl *dltrl)
{
struct rmnet_map_dl_ind *tmp;
list_for_each_entry(tmp, &port->dl_list, list)
tmp->dl_trl_handler(dltrl);
}
static void rmnet_map_process_flow_start(struct sk_buff *skb,
struct rmnet_port *port,
bool rmnet_perf)
@ -160,8 +140,6 @@ static void rmnet_map_process_flow_start(struct sk_buff *skb,
port->stats.dl_hdr_last_qmap_vers = qcmd->reserved;
port->stats.dl_hdr_last_trans_id = qcmd->transaction_id;
pskb_pull(skb, sizeof(struct rmnet_map_control_command_header));
} else {
pskb_pull(skb, RMNET_MAP_CMD_SIZE);
}
dlhdr = (struct rmnet_map_dl_ind_hdr *)rmnet_map_data_ptr(skb);
@ -176,8 +154,6 @@ static void rmnet_map_process_flow_start(struct sk_buff *skb,
if (is_dl_mark_v2)
rmnet_map_dl_hdr_notify_v2(port, dlhdr, qcmd);
else
rmnet_map_dl_hdr_notify(port, dlhdr);
if (rmnet_perf) {
unsigned int pull_size;
@ -208,8 +184,6 @@ static void rmnet_map_process_flow_end(struct sk_buff *skb,
qcmd = (struct rmnet_map_control_command_header *)
rmnet_map_data_ptr(skb);
pskb_pull(skb, sizeof(struct rmnet_map_control_command_header));
} else {
pskb_pull(skb, RMNET_MAP_CMD_SIZE);
}
dltrl = (struct rmnet_map_dl_ind_trl *)rmnet_map_data_ptr(skb);
@ -219,8 +193,6 @@ static void rmnet_map_process_flow_end(struct sk_buff *skb,
if (is_dl_mark_v2)
rmnet_map_dl_trl_notify_v2(port, dltrl, qcmd);
else
rmnet_map_dl_trl_notify(port, dltrl);
if (rmnet_perf) {
unsigned int pull_size;
@ -311,8 +283,8 @@ int rmnet_map_dl_ind_register(struct rmnet_port *port,
struct rmnet_map_dl_ind *dl_ind_iterator;
bool empty_ind_list = true;
if (!port || !dl_ind || !dl_ind->dl_hdr_handler ||
!dl_ind->dl_trl_handler)
if (!port || !dl_ind || !dl_ind->dl_hdr_handler_v2 ||
!dl_ind->dl_trl_handler_v2)
return -EINVAL;
list_for_each_entry_rcu(dl_ind_iterator, &port->dl_list, list) {