On Mon, Dec 10, 2018 at 09:45:30AM +0000, Jiong Wang wrote: > > > return -EACCES; > > > + } else if (src_reg->type == SCALAR_VALUE) { > > > + *dst_reg = *src_reg; > > > + dst_reg->live |= REG_LIVE_WRITTEN; > > > + } else { > > > + mark_reg_unknown(env, regs, > > > + insn->dst_reg); > > shouldn't we do dst_reg->live |= REG_LIVE_WRITTEN here as well ? > > Not a new issue, but probably should fix in the same patch? > > check_reg_arg(env, insn->dst_reg, DST_OP_NO_MARK) is called before this > chunk of code, it has set REG_LIVE_WRITTEN in dst_reg->live, it just > doesn't update range info. So, if we don't do full register copy, then > I think there is no need to re-set REG_LIVE_WRITTEN, make sense?
ahh. right. Applied to bpf-next. Thanks!