On 06/06/2019 09:08 PM, Roman Gushchin wrote:
> On Thu, Jun 06, 2019 at 11:59:11AM -0700, Roman Gushchin wrote:
>> Currently bpf_get_current_cgroup_id() is not supported for
>> CGROUP_SKB programs. An attempt to load such a program generates an
>> error like this:
>>     libbpf:
>>     0: (b7) r6 = 0
>>     ...
>>     8: (63) *(u32 *)(r10 -28) = r6
>>     9: (85) call bpf_get_current_cgroup_id#80
>>     unknown func bpf_get_current_cgroup_id#80
>>
>> There are no particular reasons for denying it,
>> and we have some use cases where it might be useful.
> 
> Ah, sorry, it's not so simple, as we probably need to take
> the cgroup pointer from the socket, not from current.
> 
> So the implementation of the helper should be different
> for this type of programs.
> 
> So I wonder if it's better to introduce a new helper
> bpf_get_sock_cgroup_id()?
> 
> What do you think?

We do have bpf_skb_cgroup_id(), did you give that a try?

Thanks,
Daniel

Reply via email to