1. 26 Oct, 2022 20 commits
  2. 25 Oct, 2022 19 commits
  3. 22 Oct, 2022 1 commit
    • Dave Marchevsky's avatar
      selftests/bpf: Add write to hashmap to array_map iter test · 8f4bc15b
      Dave Marchevsky authored
      Modify iter prog in existing bpf_iter_bpf_array_map.c, which currently
      dumps arraymap key/val, to also do a write of (val, key) into a
      newly-added hashmap. Confirm that the write succeeds as expected by
      modifying the userspace runner program.
      
      Before a change added in an earlier commit - considering PTR_TO_BUF reg
      a valid input to helpers which expect MAP_{KEY,VAL} - the verifier
      would've rejected this prog change due to type mismatch. Since using
      current iter's key/val to access a separate map is a reasonable usecase,
      let's add support for it.
      
      Note that the test prog cannot directly write (val, key) into hashmap
      via bpf_map_update_elem when both come from iter context because key is
      marked MEM_RDONLY. This is due to bpf_map_update_elem - and other basic
      map helpers - taking ARG_PTR_TO_MAP_{KEY,VALUE} w/o MEM_RDONLY type
      flag. bpf_map_{lookup,update,delete}_elem don't modify their
      input key/val so it should be possible to tag their args READONLY, but
      due to the ubiquitous use of these helpers and verifier checks for
      type == MAP_VALUE, such a change is nontrivial and seems better to
      address in a followup series.
      
      Also fixup some 'goto's in test runner's map checking loop.
      Signed-off-by: default avatarDave Marchevsky <davemarchevsky@fb.com>
      Acked-by: default avatarAndrii Nakryiko <andrii@kernel.org>
      Link: https://lore.kernel.org/r/20221020160721.4030492-4-davemarchevsky@fb.comSigned-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
      8f4bc15b