title: libbpf: map 'hash_map': unknown field 'values' in hash_map with struct as value
body: <p>So I am compiling xdp program with hash map having struct in value</p>
  <pre><code>struct hash_elem {
      int cnt;
      struct bpf_spin_lock lock;
  };
  struct {
      __uint(type, BPF_MAP_TYPE_HASH);
      __uint(max_entries, 100);
      __uint(key_size, sizeof(__u32));
      __type(values, struct hash_elem);
  } hash_map SEC(&quot;.maps&quot;);
  struct a{struct bpf_spin_lock lock;};
  
  struct {
      __uint(type, BPF_MAP_TYPE_HASH);
      __type(key, __u32);
      __type(value, long);
      __uint(max_entries, 2);
  } hash_map1 SEC(&quot;.maps&quot;);
  //static __u32 i=0;
  
  
  
  SEC(&quot;xdp&quot;)
  int  xdp_prog_simple(struct xdp_md *ctx)
  {
      int key=1;
      struct hash_elem * val = bpf_map_lookup_elem(&amp;hash_map, &amp;key);
      if (val) {
          bpf_spin_lock(&amp;val-&gt;lock);
          val-&gt;cnt++;
          bpf_spin_unlock(&amp;val-&gt;lock);
      }
  }
  </code></pre>
  <p>But while loading the program it causes exception that</p>
  <pre><code>libbpf: map 'hash_map': unknown field 'values'.
  ERR: loading BPF-OBJ file(./k.o) (-2): No such file or directory
  ERR: loading file: ./k.o
  </code></pre>