“72fe00f01f9a3240a1073be27aeaf4fc476cc662”上不存在“drivers/iommu/amd_iommu_init.c”
提交 94508438 编写于 作者: J Jakub Kicinski 提交者: David S. Miller

nfp: bpf: remove the register renumbering leftovers

The register renumbering was removed and will not be coming back
in its old, naive form, given that it would be fundamentally
incompatible with calling functions.  Remove the leftovers.
Signed-off-by: NJakub Kicinski <jakub.kicinski@netronome.com>
Reviewed-by: NQuentin Monnet <quentin.monnet@netronome.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 012bb8a8
...@@ -2314,9 +2314,6 @@ nfp_bpf_jit(struct bpf_prog *filter, void *prog_mem, ...@@ -2314,9 +2314,6 @@ nfp_bpf_jit(struct bpf_prog *filter, void *prog_mem,
if (ret) if (ret)
goto out; goto out;
nfp_prog->num_regs = MAX_BPF_REG;
nfp_prog->regs_per_thread = 32;
nfp_prog->prog = prog_mem; nfp_prog->prog = prog_mem;
nfp_prog->__prog_alloc_len = prog_sz; nfp_prog->__prog_alloc_len = prog_sz;
...@@ -2331,7 +2328,6 @@ nfp_bpf_jit(struct bpf_prog *filter, void *prog_mem, ...@@ -2331,7 +2328,6 @@ nfp_bpf_jit(struct bpf_prog *filter, void *prog_mem,
ret = nfp_bpf_ustore_calc(nfp_prog, (__force __le64 *)prog_mem); ret = nfp_bpf_ustore_calc(nfp_prog, (__force __le64 *)prog_mem);
res->n_instr = nfp_prog->prog_len; res->n_instr = nfp_prog->prog_len;
res->dense_mode = false;
out: out:
nfp_prog_free(nfp_prog); nfp_prog_free(nfp_prog);
......
...@@ -141,8 +141,6 @@ static inline u8 mbpf_mode(const struct nfp_insn_meta *meta) ...@@ -141,8 +141,6 @@ static inline u8 mbpf_mode(const struct nfp_insn_meta *meta)
* @prog_len: number of valid instructions in @prog array * @prog_len: number of valid instructions in @prog array
* @__prog_alloc_len: alloc size of @prog array * @__prog_alloc_len: alloc size of @prog array
* @type: BPF program type * @type: BPF program type
* @num_regs: number of registers used by this program
* @regs_per_thread: number of basic registers allocated per thread
* @start_off: address of the first instruction in the memory * @start_off: address of the first instruction in the memory
* @tgt_out: jump target for normal exit * @tgt_out: jump target for normal exit
* @tgt_abort: jump target for abort (e.g. access outside of packet buffer) * @tgt_abort: jump target for abort (e.g. access outside of packet buffer)
...@@ -159,9 +157,6 @@ struct nfp_prog { ...@@ -159,9 +157,6 @@ struct nfp_prog {
enum bpf_prog_type type; enum bpf_prog_type type;
unsigned int num_regs;
unsigned int regs_per_thread;
unsigned int start_off; unsigned int start_off;
unsigned int tgt_out; unsigned int tgt_out;
unsigned int tgt_abort; unsigned int tgt_abort;
...@@ -177,7 +172,6 @@ struct nfp_prog { ...@@ -177,7 +172,6 @@ struct nfp_prog {
struct nfp_bpf_result { struct nfp_bpf_result {
unsigned int n_instr; unsigned int n_instr;
bool dense_mode;
}; };
int int
......
...@@ -98,19 +98,14 @@ nfp_net_bpf_offload_prepare(struct nfp_net *nn, ...@@ -98,19 +98,14 @@ nfp_net_bpf_offload_prepare(struct nfp_net *nn,
static void static void
nfp_net_bpf_load_and_start(struct nfp_net *nn, u32 tc_flags, nfp_net_bpf_load_and_start(struct nfp_net *nn, u32 tc_flags,
void *code, dma_addr_t dma_addr, void *code, dma_addr_t dma_addr,
unsigned int code_sz, unsigned int n_instr, unsigned int code_sz, unsigned int n_instr)
bool dense_mode)
{ {
u64 bpf_addr = dma_addr;
int err; int err;
nn->dp.bpf_offload_skip_sw = !!(tc_flags & TCA_CLS_FLAGS_SKIP_SW); nn->dp.bpf_offload_skip_sw = !!(tc_flags & TCA_CLS_FLAGS_SKIP_SW);
if (dense_mode)
bpf_addr |= NFP_NET_CFG_BPF_CFG_8CTX;
nn_writew(nn, NFP_NET_CFG_BPF_SIZE, n_instr); nn_writew(nn, NFP_NET_CFG_BPF_SIZE, n_instr);
nn_writeq(nn, NFP_NET_CFG_BPF_ADDR, bpf_addr); nn_writeq(nn, NFP_NET_CFG_BPF_ADDR, dma_addr);
/* Load up the JITed code */ /* Load up the JITed code */
err = nfp_net_reconfig(nn, NFP_NET_CFG_UPDATE_BPF); err = nfp_net_reconfig(nn, NFP_NET_CFG_UPDATE_BPF);
...@@ -169,7 +164,7 @@ int nfp_net_bpf_offload(struct nfp_net *nn, struct tc_cls_bpf_offload *cls_bpf) ...@@ -169,7 +164,7 @@ int nfp_net_bpf_offload(struct nfp_net *nn, struct tc_cls_bpf_offload *cls_bpf)
nfp_net_bpf_stop(nn); nfp_net_bpf_stop(nn);
nfp_net_bpf_load_and_start(nn, cls_bpf->gen_flags, code, nfp_net_bpf_load_and_start(nn, cls_bpf->gen_flags, code,
dma_addr, max_instr * sizeof(u64), dma_addr, max_instr * sizeof(u64),
res.n_instr, res.dense_mode); res.n_instr);
return 0; return 0;
case TC_CLSBPF_ADD: case TC_CLSBPF_ADD:
...@@ -183,7 +178,7 @@ int nfp_net_bpf_offload(struct nfp_net *nn, struct tc_cls_bpf_offload *cls_bpf) ...@@ -183,7 +178,7 @@ int nfp_net_bpf_offload(struct nfp_net *nn, struct tc_cls_bpf_offload *cls_bpf)
nfp_net_bpf_load_and_start(nn, cls_bpf->gen_flags, code, nfp_net_bpf_load_and_start(nn, cls_bpf->gen_flags, code,
dma_addr, max_instr * sizeof(u64), dma_addr, max_instr * sizeof(u64),
res.n_instr, res.dense_mode); res.n_instr);
return 0; return 0;
case TC_CLSBPF_DESTROY: case TC_CLSBPF_DESTROY:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册