All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [PATCH bpf-next 0/6] Error handling when map lookup isn't supported
       [not found] <20181005033601.6776-1-bhole_prashant_q7@lab.ntt.co.jp>
@ 2018-10-05 18:35 ` Alexei Starovoitov
  2018-10-09  0:02   ` Prashant Bhole
  0 siblings, 1 reply; 8+ messages in thread
From: Alexei Starovoitov @ 2018-10-05 18:35 UTC (permalink / raw)
  To: Prashant Bhole
  Cc: Alexei Starovoitov, Daniel Borkmann, Jakub Kicinski,
	David S . Miller, Quentin Monnet, netdev

On Fri, Oct 05, 2018 at 12:35:55PM +0900, Prashant Bhole wrote:
> Currently when map a lookup fails, user space API can not make any
> distinction whether given key was not found or lookup is not supported
> by particular map.
> 
> In this series we modify return value of maps which do not support
> lookup. Lookup on such map implementation will return -EOPNOTSUPP.
> bpf() syscall with BPF_MAP_LOOKUP_ELEM command will set EOPNOTSUPP
> errno. We also handle this error in bpftool to print appropriate
> message.
> 
> Patch 1: adds handling of BPF_MAP_LOOKUP ELEM command of bpf syscall
> such that errno will set to EOPNOTSUPP when map doesn't support lookup
> 
> Patch 2: Modifies the return value of map_lookup_elem() to EOPNOTSUPP
> for maps which do not support lookup
> 
> Patch 3: Splits do_dump() in bpftool/map.c. Element printing code is
> moved out into new function dump_map_elem(). This was done in order to
> reduce deep indentation and accomodate further changes.
> 
> Patch 4: Changes in bpftool to print strerror() message when lookup
> error is occured. This will result in appropriate message like
> "Operation not supported" when map doesn't support lookup.
> 
> Patch 5: test_verifier: change fixup map naming convention as
> suggested by Alexei
> 
> Patch 6: Added verifier tests to check whether verifier rejects call 
> to bpf_map_lookup_elem from bpf program. For all map types those
> do not support map lookup.

for the set:
Acked-by: Alexei Starovoitov <ast@kernel.org>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH bpf-next 0/6] Error handling when map lookup isn't supported
  2018-10-05 18:35 ` [PATCH bpf-next 0/6] Error handling when map lookup isn't supported Alexei Starovoitov
@ 2018-10-09  0:02   ` Prashant Bhole
  2018-10-09  0:43     ` Daniel Borkmann
  2018-10-09  1:55     ` David Miller
  0 siblings, 2 replies; 8+ messages in thread
From: Prashant Bhole @ 2018-10-09  0:02 UTC (permalink / raw)
  To: Alexei Starovoitov, Daniel Borkmann
  Cc: Alexei Starovoitov, Jakub Kicinski, David S . Miller,
	Quentin Monnet, netdev



On 10/6/2018 3:35 AM, Alexei Starovoitov wrote:
> On Fri, Oct 05, 2018 at 12:35:55PM +0900, Prashant Bhole wrote:
>> Currently when map a lookup fails, user space API can not make any
>> distinction whether given key was not found or lookup is not supported
>> by particular map.
>>
>> In this series we modify return value of maps which do not support
>> lookup. Lookup on such map implementation will return -EOPNOTSUPP.
>> bpf() syscall with BPF_MAP_LOOKUP_ELEM command will set EOPNOTSUPP
>> errno. We also handle this error in bpftool to print appropriate
>> message.
>>
>> Patch 1: adds handling of BPF_MAP_LOOKUP ELEM command of bpf syscall
>> such that errno will set to EOPNOTSUPP when map doesn't support lookup
>>
>> Patch 2: Modifies the return value of map_lookup_elem() to EOPNOTSUPP
>> for maps which do not support lookup
>>
>> Patch 3: Splits do_dump() in bpftool/map.c. Element printing code is
>> moved out into new function dump_map_elem(). This was done in order to
>> reduce deep indentation and accomodate further changes.
>>
>> Patch 4: Changes in bpftool to print strerror() message when lookup
>> error is occured. This will result in appropriate message like
>> "Operation not supported" when map doesn't support lookup.
>>
>> Patch 5: test_verifier: change fixup map naming convention as
>> suggested by Alexei
>>
>> Patch 6: Added verifier tests to check whether verifier rejects call
>> to bpf_map_lookup_elem from bpf program. For all map types those
>> do not support map lookup.
> 
> for the set:
> Acked-by: Alexei Starovoitov <ast@kernel.org>

Thanks. Is there any reason this series did not get posted on 
netdev-list and can not be seen in the patchwork?

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH bpf-next 0/6] Error handling when map lookup isn't supported
  2018-10-09  0:02   ` Prashant Bhole
@ 2018-10-09  0:43     ` Daniel Borkmann
  2018-10-09  0:47       ` Prashant Bhole
  2018-10-09  1:55     ` David Miller
  1 sibling, 1 reply; 8+ messages in thread
From: Daniel Borkmann @ 2018-10-09  0:43 UTC (permalink / raw)
  To: Prashant Bhole, Alexei Starovoitov
  Cc: Alexei Starovoitov, Jakub Kicinski, David S . Miller,
	Quentin Monnet, netdev

On 10/09/2018 02:02 AM, Prashant Bhole wrote:
> On 10/6/2018 3:35 AM, Alexei Starovoitov wrote:
>> On Fri, Oct 05, 2018 at 12:35:55PM +0900, Prashant Bhole wrote:
>>> Currently when map a lookup fails, user space API can not make any
>>> distinction whether given key was not found or lookup is not supported
>>> by particular map.
>>>
>>> In this series we modify return value of maps which do not support
>>> lookup. Lookup on such map implementation will return -EOPNOTSUPP.
>>> bpf() syscall with BPF_MAP_LOOKUP_ELEM command will set EOPNOTSUPP
>>> errno. We also handle this error in bpftool to print appropriate
>>> message.
>>>
>>> Patch 1: adds handling of BPF_MAP_LOOKUP ELEM command of bpf syscall
>>> such that errno will set to EOPNOTSUPP when map doesn't support lookup
>>>
>>> Patch 2: Modifies the return value of map_lookup_elem() to EOPNOTSUPP
>>> for maps which do not support lookup
>>>
>>> Patch 3: Splits do_dump() in bpftool/map.c. Element printing code is
>>> moved out into new function dump_map_elem(). This was done in order to
>>> reduce deep indentation and accomodate further changes.
>>>
>>> Patch 4: Changes in bpftool to print strerror() message when lookup
>>> error is occured. This will result in appropriate message like
>>> "Operation not supported" when map doesn't support lookup.
>>>
>>> Patch 5: test_verifier: change fixup map naming convention as
>>> suggested by Alexei
>>>
>>> Patch 6: Added verifier tests to check whether verifier rejects call
>>> to bpf_map_lookup_elem from bpf program. For all map types those
>>> do not support map lookup.
>>
>> for the set:
>> Acked-by: Alexei Starovoitov <ast@kernel.org>
> 
> Thanks. Is there any reason this series did not get posted on netdev-list and can not be seen in the patchwork?

Hmm, could you repost to netdev? Perhaps a netdev or patchwork issue that
it did not land there. I just double-checked and it's indeed not present.

Thanks,
Daniel

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH bpf-next 0/6] Error handling when map lookup isn't supported
  2018-10-09  0:43     ` Daniel Borkmann
@ 2018-10-09  0:47       ` Prashant Bhole
  2018-10-09  0:57         ` Alexei Starovoitov
  0 siblings, 1 reply; 8+ messages in thread
From: Prashant Bhole @ 2018-10-09  0:47 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov
  Cc: Alexei Starovoitov, Jakub Kicinski, David S . Miller,
	Quentin Monnet, netdev



On 10/9/2018 9:43 AM, Daniel Borkmann wrote:
> On 10/09/2018 02:02 AM, Prashant Bhole wrote:
>> On 10/6/2018 3:35 AM, Alexei Starovoitov wrote:
>>> On Fri, Oct 05, 2018 at 12:35:55PM +0900, Prashant Bhole wrote:
>>>> Currently when map a lookup fails, user space API can not make any
>>>> distinction whether given key was not found or lookup is not supported
>>>> by particular map.
>>>>
>>>> In this series we modify return value of maps which do not support
>>>> lookup. Lookup on such map implementation will return -EOPNOTSUPP.
>>>> bpf() syscall with BPF_MAP_LOOKUP_ELEM command will set EOPNOTSUPP
>>>> errno. We also handle this error in bpftool to print appropriate
>>>> message.
>>>>
>>>> Patch 1: adds handling of BPF_MAP_LOOKUP ELEM command of bpf syscall
>>>> such that errno will set to EOPNOTSUPP when map doesn't support lookup
>>>>
>>>> Patch 2: Modifies the return value of map_lookup_elem() to EOPNOTSUPP
>>>> for maps which do not support lookup
>>>>
>>>> Patch 3: Splits do_dump() in bpftool/map.c. Element printing code is
>>>> moved out into new function dump_map_elem(). This was done in order to
>>>> reduce deep indentation and accomodate further changes.
>>>>
>>>> Patch 4: Changes in bpftool to print strerror() message when lookup
>>>> error is occured. This will result in appropriate message like
>>>> "Operation not supported" when map doesn't support lookup.
>>>>
>>>> Patch 5: test_verifier: change fixup map naming convention as
>>>> suggested by Alexei
>>>>
>>>> Patch 6: Added verifier tests to check whether verifier rejects call
>>>> to bpf_map_lookup_elem from bpf program. For all map types those
>>>> do not support map lookup.
>>>
>>> for the set:
>>> Acked-by: Alexei Starovoitov <ast@kernel.org>
>>
>> Thanks. Is there any reason this series did not get posted on netdev-list and can not be seen in the patchwork?
> 
> Hmm, could you repost to netdev? Perhaps a netdev or patchwork issue that
> it did not land there. I just double-checked and it's indeed not present.
> 

Shall I repost with the same version and Alexei's Acked-by for the series?

-Prashant

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH bpf-next 0/6] Error handling when map lookup isn't supported
  2018-10-09  0:47       ` Prashant Bhole
@ 2018-10-09  0:57         ` Alexei Starovoitov
  0 siblings, 0 replies; 8+ messages in thread
From: Alexei Starovoitov @ 2018-10-09  0:57 UTC (permalink / raw)
  To: Prashant Bhole
  Cc: Daniel Borkmann, Alexei Starovoitov, Jakub Kicinski,
	David S. Miller, Quentin Monnet, Network Development

On Tue, Oct 9, 2018 at 12:48 AM Prashant Bhole
<bhole_prashant_q7@lab.ntt.co.jp> wrote:
>
> Shall I repost with the same version and Alexei's Acked-by for the series?

yes. please repost as-is and add my Ack to all patches.
Thanks!

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH bpf-next 0/6] Error handling when map lookup isn't supported
  2018-10-09  0:02   ` Prashant Bhole
  2018-10-09  0:43     ` Daniel Borkmann
@ 2018-10-09  1:55     ` David Miller
  1 sibling, 0 replies; 8+ messages in thread
From: David Miller @ 2018-10-09  1:55 UTC (permalink / raw)
  To: bhole_prashant_q7
  Cc: alexei.starovoitov, daniel, ast, jakub.kicinski, quentin.monnet, netdev

From: Prashant Bhole <bhole_prashant_q7@lab.ntt.co.jp>
Date: Tue, 9 Oct 2018 09:02:15 +0900

> Thanks. Is there any reason this series did not get posted on
> netdev-list and can not be seen in the patchwork?

Bad timing.  I did something stupid on vger.kernel.org, it ran out of
disk space while the postings were being processed, and thus they were
lost.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH bpf-next 0/6] Error handling when map lookup isn't supported
  2018-10-09  1:04 Prashant Bhole
@ 2018-10-10  4:55 ` Alexei Starovoitov
  0 siblings, 0 replies; 8+ messages in thread
From: Alexei Starovoitov @ 2018-10-10  4:55 UTC (permalink / raw)
  To: Prashant Bhole
  Cc: Alexei Starovoitov, Daniel Borkmann, Jakub Kicinski,
	David S . Miller, Quentin Monnet, netdev

On Tue, Oct 09, 2018 at 10:04:48AM +0900, Prashant Bhole wrote:
> Currently when map a lookup fails, user space API can not make any
> distinction whether given key was not found or lookup is not supported
> by particular map.
> 
> In this series we modify return value of maps which do not support
> lookup. Lookup on such map implementation will return -EOPNOTSUPP.
> bpf() syscall with BPF_MAP_LOOKUP_ELEM command will set EOPNOTSUPP
> errno. We also handle this error in bpftool to print appropriate
> message.
> 
> Patch 1: adds handling of BPF_MAP_LOOKUP ELEM command of bpf syscall
> such that errno will set to EOPNOTSUPP when map doesn't support lookup
> 
> Patch 2: Modifies the return value of map_lookup_elem() to EOPNOTSUPP
> for maps which do not support lookup
> 
> Patch 3: Splits do_dump() in bpftool/map.c. Element printing code is
> moved out into new function dump_map_elem(). This was done in order to
> reduce deep indentation and accomodate further changes.
> 
> Patch 4: Changes in bpftool to print strerror() message when lookup
> error is occured. This will result in appropriate message like
> "Operation not supported" when map doesn't support lookup.
> 
> Patch 5: test_verifier: change fixup map naming convention as
> suggested by Alexei
> 
> Patch 6: Added verifier tests to check whether verifier rejects call 
> to bpf_map_lookup_elem from bpf program. For all map types those
> do not support map lookup.

Applied, Thanks

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH bpf-next 0/6] Error handling when map lookup isn't supported
@ 2018-10-09  1:04 Prashant Bhole
  2018-10-10  4:55 ` Alexei Starovoitov
  0 siblings, 1 reply; 8+ messages in thread
From: Prashant Bhole @ 2018-10-09  1:04 UTC (permalink / raw)
  To: Alexei Starovoitov, Daniel Borkmann
  Cc: Prashant Bhole, Jakub Kicinski, David S . Miller, Quentin Monnet, netdev

Currently when map a lookup fails, user space API can not make any
distinction whether given key was not found or lookup is not supported
by particular map.

In this series we modify return value of maps which do not support
lookup. Lookup on such map implementation will return -EOPNOTSUPP.
bpf() syscall with BPF_MAP_LOOKUP_ELEM command will set EOPNOTSUPP
errno. We also handle this error in bpftool to print appropriate
message.

Patch 1: adds handling of BPF_MAP_LOOKUP ELEM command of bpf syscall
such that errno will set to EOPNOTSUPP when map doesn't support lookup

Patch 2: Modifies the return value of map_lookup_elem() to EOPNOTSUPP
for maps which do not support lookup

Patch 3: Splits do_dump() in bpftool/map.c. Element printing code is
moved out into new function dump_map_elem(). This was done in order to
reduce deep indentation and accomodate further changes.

Patch 4: Changes in bpftool to print strerror() message when lookup
error is occured. This will result in appropriate message like
"Operation not supported" when map doesn't support lookup.

Patch 5: test_verifier: change fixup map naming convention as
suggested by Alexei

Patch 6: Added verifier tests to check whether verifier rejects call 
to bpf_map_lookup_elem from bpf program. For all map types those
do not support map lookup.

Prashant Bhole (6):
  bpf: error handling when map_lookup_elem isn't supported
  bpf: return EOPNOTSUPP when map lookup isn't supported
  tools/bpf: bpftool, split the function do_dump()
  tools/bpf: bpftool, print strerror when map lookup error occurs
  selftests/bpf: test_verifier, change names of fixup maps
  selftests/bpf: test_verifier, check bpf_map_lookup_elem access in bpf
    prog

 kernel/bpf/arraymap.c                       |   2 +-
 kernel/bpf/sockmap.c                        |   2 +-
 kernel/bpf/stackmap.c                       |   2 +-
 kernel/bpf/syscall.c                        |   9 +-
 kernel/bpf/xskmap.c                         |   2 +-
 tools/bpf/bpftool/map.c                     | 102 ++--
 tools/testing/selftests/bpf/test_verifier.c | 501 ++++++++++++--------
 7 files changed, 389 insertions(+), 231 deletions(-)

-- 
2.17.1

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2018-10-10 12:15 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20181005033601.6776-1-bhole_prashant_q7@lab.ntt.co.jp>
2018-10-05 18:35 ` [PATCH bpf-next 0/6] Error handling when map lookup isn't supported Alexei Starovoitov
2018-10-09  0:02   ` Prashant Bhole
2018-10-09  0:43     ` Daniel Borkmann
2018-10-09  0:47       ` Prashant Bhole
2018-10-09  0:57         ` Alexei Starovoitov
2018-10-09  1:55     ` David Miller
2018-10-09  1:04 Prashant Bhole
2018-10-10  4:55 ` Alexei Starovoitov

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.