Defined in 1 files as a function:

Referenced in 37 files:

Smatch caller information:

drivers/net/ethernet/google/gve/gve_rx.c gve_rx() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/freescale/enetc/enetc.c enetc_get_offloads() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

drivers/net/ethernet/sun/sunhme.c happy_meal_rx() -> csum_unfold()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &hp->happy_lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct happy_meal)->happy_lock

drivers/net/geneve.c geneve_opt_gro_hint_validate_csum() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 rcu_read

net/netfilter/utils.c nf_ip6_checksum() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

net/netfilter/utils.c nf_ip6_checksum_partial() -> csum_unfold()

Type Parameter Key Value

drivers/net/ethernet/intel/ice/ice_txrx_lib.c ice_rx_gcs() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/ipv6/ndisc_snoop.c ip6_compute_pseudo() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 n 0-u16max[c]
HALF_LOCKED2 rcu_read

net/ipv6/ip6_offload.c ip6_gro_compute_pseudo() -> csum_unfold()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 rcu_read

net/ipv6/ip6_gre.c lco_csum() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

net/ipv6/udp.c ip6_compute_pseudo() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 n 0-u16max[c]

net/ipv4/tcp_offload.c csum_replace4() -> csum_unfold()

Type Parameter Key Value

net/ipv4/tcp_offload.c tcp_gso_segment() -> csum_unfold()

Type Parameter Key Value
UNITS 0 n unit_byte

net/ipv4/tcp_offload.c tcp_gso_segment() -> csum_unfold()

Type Parameter Key Value
UNITS 0 n unit_byte

net/dsa/tag_ksz.c ptp_header_update_correction() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

net/core/filter.c csum_replace4() -> csum_unfold()

Type Parameter Key Value
PARAM_VALUE 0 n 0-255
USER_DATA 0 n 0-255[u]

net/core/filter.c csum_replace_by_diff() -> csum_unfold()

Type Parameter Key Value
PARAM_VALUE 0 n 0-255
USER_DATA 0 n 0-255[u]

drivers/net/ethernet/google/gve/gve_tx_dqo.c csum_replace_by_diff() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->tx_global_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags

net/netfilter/ipvs/ip_vs_xmit.c lco_csum() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

drivers/net/ethernet/chelsio/cxgb4/sge.c t4_ethrx_handler() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

drivers/net/ethernet/hisilicon/hns3/hns3_enet.c csum_replace_by_diff() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &netdev->tx_global_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags

drivers/net/ethernet/hisilicon/hns3/hns3_enet.c hns3_checksum_complete() -> csum_unfold()

Type Parameter Key Value
DATA_SOURCE 0 n $3
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

drivers/net/ethernet/intel/igbvf/netdev.c csum_replace_by_diff() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &netdev->tx_global_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

net/ipv4/udp_offload.c __skb_udp_tunnel_segment() -> csum_unfold()

Type Parameter Key Value
LOCK2 rcu_read

net/ipv4/udp_offload.c csum_replace4() -> csum_unfold()

Type Parameter Key Value

drivers/net/wireless/intel/iwlwifi/mld/rx.c iwl_mld_rx_with_sta() -> csum_unfold()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &rxq->lock
HALF_LOCKED2 bh

drivers/net/ethernet/intel/iavf/iavf_txrx.c csum_replace_by_diff() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &netdev->tx_global_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/ethernet/intel/igc/igc_main.c csum_replace_by_diff() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &netdev->tx_global_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

net/netfilter/nft_payload.c csum_replace4() -> csum_unfold()

Type Parameter Key Value

net/netfilter/nft_payload.c nft_payload_l4csum_update() -> csum_unfold()

Type Parameter Key Value

drivers/net/ethernet/sun/sungem.c gem_rx() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ni->dev_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/mellanox/mlx4/en_rx.c check_csum() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/netfilter/ipvs/ip_vs_proto_udp.c udp_fast_csum_update() -> csum_unfold()

Type Parameter Key Value
PARAM_VALUE 0 n 1-u16max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 n 1-u16max[u]

net/netfilter/ipvs/ip_vs_proto_udp.c udp_fast_csum_update() -> csum_unfold()

Type Parameter Key Value
PARAM_VALUE 0 n 1-u16max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 n 1-u16max[u]

net/netfilter/ipvs/ip_vs_proto_udp.c udp_partial_csum_update() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 n 0-u16max[u]

net/netfilter/ipvs/ip_vs_proto_udp.c udp_partial_csum_update() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 n 0-u16max[u]

net/sched/act_nat.c csum_replace4() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

drivers/net/ethernet/intel/ice/ice_txrx.c csum_replace_by_diff() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &netdev->tx_global_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/ethernet/intel/ixgbe/ixgbe_main.c csum_replace_by_diff() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

net/ipv6/udp_offload.c ip6_gro_compute_pseudo() -> csum_unfold()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 rcu_read

net/netfilter/nf_nat_proto.c csum_replace4() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 n 0-u16max[u]

net/ipv6/ila/ila_common.c ila_csum_do_neutral_fmt() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 bh

net/ipv6/ila/ila_common.c ila_csum_do_neutral_nofmt() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 bh

net/mptcp/protocol.c mptcp_update_data_checksum() -> csum_unfold()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &msk->fallback_lock
HALF_LOCKED2 bh
HALF_LOCKED2 sk
HALF_LOCKED2 ssk

drivers/net/ethernet/intel/igb/igb_main.c csum_replace_by_diff() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

net/ipv4/udp.c lco_csum() -> csum_unfold()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 rcu_read

drivers/net/ethernet/renesas/sh_eth.c sh_eth_rx_csum() -> csum_unfold()

Type Parameter Key Value
RX_PATH

net/ipv4/ip_gre.c lco_csum() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->tx_global_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

net/ipv4/netfilter/nf_nat_snmp_basic_main.c fast_csum() -> csum_unfold()

Type Parameter Key Value
PARAM_VALUE 0 n 1-u16max

drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c iwl_mvm_rx_csum() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &rxq->lock
HALF_LOCKED2 bh

drivers/net/ethernet/sun/cassini.c cas_rx_process_pkt() -> csum_unfold()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &cp->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 &ni->dev_lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct cas)->lock

drivers/net/ethernet/sun/cassini.c cas_rx_process_pkt() -> csum_unfold()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &cp->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 &ni->dev_lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct cas)->lock

drivers/net/ethernet/chelsio/cxgb4vf/sge.c t4vf_ethrx_handler() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

net/netfilter/ipvs/ip_vs_proto_tcp.c tcp_fast_csum_update() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 n 0-u16max[u]
UNITS 0 n unit_byte

net/netfilter/ipvs/ip_vs_proto_tcp.c tcp_fast_csum_update() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 n 0-u16max[u]
UNITS 0 n unit_byte

net/netfilter/ipvs/ip_vs_proto_tcp.c tcp_partial_csum_update() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 n 0-u16max[u]
UNITS 0 n unit_byte

net/netfilter/ipvs/ip_vs_proto_tcp.c tcp_partial_csum_update() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 n 0-u16max[u]
UNITS 0 n unit_byte

net/ipv6/mcast_snoop.c ip6_compute_pseudo() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 n 0-u16max[c]
HALF_LOCKED2 rcu_read

net/mptcp/options.c mptcp_make_csum() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 rcu_read
HALF_LOCKED2 sk

net/mptcp/options.c mptcp_write_options() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 rcu_read
HALF_LOCKED2 sk

drivers/net/ethernet/meta/fbnic/fbnic_txrx.c csum_replace_by_diff() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->tx_global_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

net/ipv6/raw.c rawv6_push_pending_frames() -> csum_unfold()

Type Parameter Key Value
PARAM_VALUE 0 n 1-u16max
RX_PATH
TASK_NOT_RUNNING
LOCK2 sk
HALF_LOCKED2 &vq->mutex
HALF_LOCKED2 sk

net/ipv6/raw.c rawv6_rcv() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 n 0-u16max[c]
HALF_LOCKED2 global &ip6_ra_lock
HALF_LOCKED2 rcu_read

net/ipv6/tcp_ipv6.c ip6_compute_pseudo() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 n 0-u16max[c]

drivers/net/ethernet/renesas/ravb_main.c ravb_rx_csum() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/mptcp/subflow.c get_mapping_status() -> csum_unfold()

Type Parameter Key Value
PREEMPT_ADD
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 bh

net/ipv6/netfilter/ip6t_NPT.c ip6t_npt_map_pfx() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &table->lock
HALF_LOCKED2 bh

net/ipv6/netfilter/ip6t_NPT.c ip6t_npt_map_pfx() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &table->lock
HALF_LOCKED2 bh

net/netfilter/nf_flow_table_ip.c csum_replace4() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 rcu_read

drivers/net/ethernet/sfc/ef100_tx.c csum_replace_by_diff() -> csum_unfold()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 n 0-u16max[u]
HALF_LOCKED2 &efx->net_dev->tx_global_lock
HALF_LOCKED2 bh

net/openvswitch/actions.c csum_replace4() -> csum_unfold()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

drivers/net/ethernet/intel/i40e/i40e_txrx.c csum_replace_by_diff() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &netdev->tx_global_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c csum_replace_by_diff() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &netdev->tx_global_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/ethernet/myricom/myri10ge/myri10ge.c myri10ge_clean_rx_done() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ni->dev_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/intel/idpf/idpf_txrx.c csum_replace_by_diff() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &netdev->tx_global_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/ethernet/intel/idpf/idpf_txrx.c idpf_rx_csum() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/ipv6/ip6_checksum.c lco_csum() -> csum_unfold()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 rcu_read

net/core/utils.c csum_replace4() -> csum_unfold()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 n 0-u16max[u]
HALF_LOCKED2 &ct->lock
HALF_LOCKED2 bh

net/core/utils.c csum_replace_by_diff() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 n 0-255[u]
HALF_LOCKED2 rcu_read

net/core/utils.c inet_proto_csum_replace16() -> csum_unfold()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 n 0-u16max[u]

net/core/utils.c inet_proto_csum_replace16() -> csum_unfold()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 n 0-u16max[u]

net/core/utils.c inet_proto_csum_replace4() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 n 0-u16max[u]

net/core/utils.c inet_proto_csum_replace_by_diff() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 n 0-255[u]
HALF_LOCKED2 rcu_read

drivers/net/ethernet/mellanox/mlx5/core/en_rx.c mlx5e_handle_csum() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 bh

drivers/net/ethernet/mellanox/mlx5/core/en_rx.c mlx5e_lro_update_hdr() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 bh

drivers/net/ethernet/mellanox/mlx5/core/en_rx.c mlx5e_lro_update_hdr() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 bh

drivers/net/ethernet/mellanox/mlx5/core/en_rx.c mlx5i_complete_rx_cqe() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 bh

net/ipv6/icmp.c ip6_compute_pseudo() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 n 0-u16max[c]

drivers/net/dsa/microchip/ksz_ptp.c ptp_header_update_correction() -> csum_unfold()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 rcu_read