Message ID | 20231016093549.181952-1-jhs@mojatatu.com (mailing list archive) |
---|---|
Headers | show |
Series | Introducing P4TC | expand |
On Mon, 16 Oct 2023 05:35:31 -0400 Jamal Hadi Salim wrote: > Changes In RFC Version 7 > ------------------------- > > 0) First time removing the RFC tag! > > 1) Removed XDP cookie. It turns out as was pointed out by Toke(Thanks!) - that > using bpf links was sufficient to protect us from someone replacing or deleting > a eBPF program after it has been bound to a netdev. > > 2) Add some reviewed-bys from Vlad. > > 3) Small bug fixes from v6 based on testing for ebpf. > > 4) Added the counter extern as a sample extern. Illustrating this example because > it is slightly complex since it is possible to invoke it directly from > the P4TC domain (in case of direct counters) or from eBPF (indirect counters). > It is not exactly the most efficient implementation (a reasonable counter impl > should be per-cpu). I think that I already shared my reservations about this series. On top of that, please, please, please make sure that it builds cleanly before posting. I took the shared infra 8 hours to munch thru this series, and it threw out all sorts of warnings. 8 hours during which I could not handle any PR or high-prio patch :( Not your fault that builds are slow, I guess, but if you are throwing a huge series at the list for the what-ever'th time, it'd be great if it at least built cleanly :( FWIW please do not post another version this week (not that I think that you would do that, but better safe than sorry. Last week the patch bombs pushed the shared infra 24h+ behind the list..)
On Mon, Oct 16, 2023 at 4:15 PM Jakub Kicinski <kuba@kernel.org> wrote: > > On Mon, 16 Oct 2023 05:35:31 -0400 Jamal Hadi Salim wrote: > > Changes In RFC Version 7 > > ------------------------- > > > > 0) First time removing the RFC tag! > > > > 1) Removed XDP cookie. It turns out as was pointed out by Toke(Thanks!) - that > > using bpf links was sufficient to protect us from someone replacing or deleting > > a eBPF program after it has been bound to a netdev. > > > > 2) Add some reviewed-bys from Vlad. > > > > 3) Small bug fixes from v6 based on testing for ebpf. > > > > 4) Added the counter extern as a sample extern. Illustrating this example because > > it is slightly complex since it is possible to invoke it directly from > > the P4TC domain (in case of direct counters) or from eBPF (indirect counters). > > It is not exactly the most efficient implementation (a reasonable counter impl > > should be per-cpu). > > I think that I already shared my reservations about this series. And please please let's have a _technical_ discussion on reservations not hyperboles. > On top of that, please, please, please make sure that it builds cleanly > before posting. > > I took the shared infra 8 hours to munch thru this series, and it threw > out all sorts of warnings. 8 hours during which I could not handle any > PR or high-prio patch :( Not your fault that builds are slow, I guess, > but if you are throwing a huge series at the list for the what-ever'th > time, it'd be great if it at least built cleanly :( We absolutely dont want to add unnecessary work. Probably we may have missed the net-next tip? We'll pull the latest and retest with tip. Is there a link that we can look at on what the infra does so we can make sure it works per expectation next time? If you know what kind of warnings/issues so we can avoid it going forward? Note: We didnt see any and we built each patch separately on gcc 11, 12, 13 and clang 16. BTW: Lore does reorder the patches, but i am assuming cicd is smart enough to understand this? > FWIW please do not post another version this week (not that I think > that you would do that, but better safe than sorry. Last week the patch > bombs pushed the shared infra 24h+ behind the list..) Not intending to. cheers, jamal > -- > pw-bot: cr
On Mon, Oct 16, 2023 at 4:38 PM Jamal Hadi Salim <jhs@mojatatu.com> wrote: > > On Mon, Oct 16, 2023 at 4:15 PM Jakub Kicinski <kuba@kernel.org> wrote: > > > > On Mon, 16 Oct 2023 05:35:31 -0400 Jamal Hadi Salim wrote: > > > Changes In RFC Version 7 > > > ------------------------- > > > > > > 0) First time removing the RFC tag! > > > > > > 1) Removed XDP cookie. It turns out as was pointed out by Toke(Thanks!) - that > > > using bpf links was sufficient to protect us from someone replacing or deleting > > > a eBPF program after it has been bound to a netdev. > > > > > > 2) Add some reviewed-bys from Vlad. > > > > > > 3) Small bug fixes from v6 based on testing for ebpf. > > > > > > 4) Added the counter extern as a sample extern. Illustrating this example because > > > it is slightly complex since it is possible to invoke it directly from > > > the P4TC domain (in case of direct counters) or from eBPF (indirect counters). > > > It is not exactly the most efficient implementation (a reasonable counter impl > > > should be per-cpu). > > > > I think that I already shared my reservations about this series. > > And please please let's have a _technical_ discussion on reservations > not hyperboles. > > > On top of that, please, please, please make sure that it builds cleanly > > before posting. > > > > I took the shared infra 8 hours to munch thru this series, and it threw > > out all sorts of warnings. 8 hours during which I could not handle any > > PR or high-prio patch :( Not your fault that builds are slow, I guess, > > but if you are throwing a huge series at the list for the what-ever'th > > time, it'd be great if it at least built cleanly :( > > We absolutely dont want to add unnecessary work. > Probably we may have missed the net-next tip? We'll pull the latest > and retest with tip. > Is there a link that we can look at on what the infra does so we can > make sure it works per expectation next time? > If you know what kind of warnings/issues so we can avoid it going forward? > Note: We didnt see any and we built each patch separately on gcc 11, > 12, 13 and clang 16. > BTW: Lore does reorder the patches, but i am assuming cicd is smart > enough to understand this? Verified from downloading mbox.gz from lore that the tarball was reordered. Dont know if it contributed - but now compiling patch by patch on the latest net-next tip. cheers, jamal > > -- > > pw-bot: cr
On Mon, Oct 16, 2023 at 4:59 PM Jamal Hadi Salim <jhs@mojatatu.com> wrote: > > On Mon, Oct 16, 2023 at 4:38 PM Jamal Hadi Salim <jhs@mojatatu.com> wrote: > > > > On Mon, Oct 16, 2023 at 4:15 PM Jakub Kicinski <kuba@kernel.org> wrote: > > > > > > On Mon, 16 Oct 2023 05:35:31 -0400 Jamal Hadi Salim wrote: > > > > Changes In RFC Version 7 > > > > ------------------------- > > > > > > > > 0) First time removing the RFC tag! > > > > > > > > 1) Removed XDP cookie. It turns out as was pointed out by Toke(Thanks!) - that > > > > using bpf links was sufficient to protect us from someone replacing or deleting > > > > a eBPF program after it has been bound to a netdev. > > > > > > > > 2) Add some reviewed-bys from Vlad. > > > > > > > > 3) Small bug fixes from v6 based on testing for ebpf. > > > > > > > > 4) Added the counter extern as a sample extern. Illustrating this example because > > > > it is slightly complex since it is possible to invoke it directly from > > > > the P4TC domain (in case of direct counters) or from eBPF (indirect counters). > > > > It is not exactly the most efficient implementation (a reasonable counter impl > > > > should be per-cpu). > > > > > > I think that I already shared my reservations about this series. > > > > And please please let's have a _technical_ discussion on reservations > > not hyperboles. > > > > > On top of that, please, please, please make sure that it builds cleanly > > > before posting. > > > > > > I took the shared infra 8 hours to munch thru this series, and it threw > > > out all sorts of warnings. 8 hours during which I could not handle any > > > PR or high-prio patch :( Not your fault that builds are slow, I guess, > > > but if you are throwing a huge series at the list for the what-ever'th > > > time, it'd be great if it at least built cleanly :( > > > > We absolutely dont want to add unnecessary work. > > Probably we may have missed the net-next tip? We'll pull the latest > > and retest with tip. > > Is there a link that we can look at on what the infra does so we can > > make sure it works per expectation next time? > > If you know what kind of warnings/issues so we can avoid it going forward? > > Note: We didnt see any and we built each patch separately on gcc 11, > > 12, 13 and clang 16. > > BTW: Lore does reorder the patches, but i am assuming cicd is smart > > enough to understand this? > > Verified from downloading mbox.gz from lore that the tarball was > reordered. Dont know if it contributed - but now compiling patch by > patch on the latest net-next tip. Never mind - someone pointed me to patch work and i can see some warnings there. Looks like we need more build types and compiler options to catch some of these issues. We'll look into it and we will replicate in our cicd. cheers, jamal > cheers, > jamal > > > > -- > > > pw-bot: cr
On Mon, 16 Oct 2023 17:44:20 -0400 Jamal Hadi Salim wrote: > > Verified from downloading mbox.gz from lore that the tarball was > > reordered. Dont know if it contributed - but now compiling patch by > > patch on the latest net-next tip. > > Never mind - someone pointed me to patch work and i can see some > warnings there. Looks like we need more build types and compiler > options to catch some of these issues. > We'll look into it and we will replicate in our cicd. patch-by-patch W=1 C=1 should be good enough to catch the problems.
On 10/16/23 10:38 PM, Jamal Hadi Salim wrote: > On Mon, Oct 16, 2023 at 4:15 PM Jakub Kicinski <kuba@kernel.org> wrote: [...] >> FWIW please do not post another version this week (not that I think >> that you would do that, but better safe than sorry. Last week the patch >> bombs pushed the shared infra 24h+ behind the list..) > > Not intending to. Given bpf & kfuncs, please also Cc bpf@vger.kernel.org on future revisions as not everyone on bpf list is subscribed to netdev.
On Mon, Oct 16, 2023 at 6:35 PM Jakub Kicinski <kuba@kernel.org> wrote: > > On Mon, 16 Oct 2023 17:44:20 -0400 Jamal Hadi Salim wrote: > > > Verified from downloading mbox.gz from lore that the tarball was > > > reordered. Dont know if it contributed - but now compiling patch by > > > patch on the latest net-next tip. > > > > Never mind - someone pointed me to patch work and i can see some > > warnings there. Looks like we need more build types and compiler > > options to catch some of these issues. > > We'll look into it and we will replicate in our cicd. > > patch-by-patch W=1 C=1 should be good enough to catch the problems. Thanks - this helps. We didnt pay good attention to https://www.kernel.org/doc/Documentation/process/maintainer-netdev.rst Only thing that is missing now is the mention of C=1 in the doc. Patch to the doc acceptable? Also a note about false positives in sparse output (there were a few in the warnings from the bot) would be apropos. cheers, jamal
On Tue, Oct 17, 2023 at 11:00 AM Daniel Borkmann <daniel@iogearbox.net> wrote: > > On 10/16/23 10:38 PM, Jamal Hadi Salim wrote: > > On Mon, Oct 16, 2023 at 4:15 PM Jakub Kicinski <kuba@kernel.org> wrote: > [...] > >> FWIW please do not post another version this week (not that I think > >> that you would do that, but better safe than sorry. Last week the patch > >> bombs pushed the shared infra 24h+ behind the list..) > > > > Not intending to. > > Given bpf & kfuncs, please also Cc bpf@vger.kernel.org on future revisions > as not everyone on bpf list is subscribed to netdev. I thought i did that, maybe it was in earlier patches. Do you want Cc on everything or only on kfuncs? I am getting conflicting messages, do you have to Cc bpf for kfuncs? Example, attached from (some fs?) conference last month i think cheers, jamal
On Tue, 17 Oct 2023 11:27:36 -0400 Jamal Hadi Salim wrote: > > patch-by-patch W=1 C=1 should be good enough to catch the problems. > > Thanks - this helps. We didnt pay good attention to > https://www.kernel.org/doc/Documentation/process/maintainer-netdev.rst > Only thing that is missing now is the mention of C=1 in the doc. Patch > to the doc acceptable? > Also a note about false positives in sparse output (there were a few > in the warnings from the bot) would be apropos. Um. Maybe.. Sparse generates more false positives than good warnings lately :( We'd have to add some extra info like "Note that sparse is known to generate false-positive warnings, if you think that the warning generated with C=1 is bogus, ignore it and note that fact in the commit message". I don't like documenting things which aren't clear-cut :( I'm pretty sure you have pure W=1 warnings here, too.
On 10/17/23 5:38 PM, Jamal Hadi Salim wrote: > On Tue, Oct 17, 2023 at 11:00 AM Daniel Borkmann <daniel@iogearbox.net> wrote: >> >> On 10/16/23 10:38 PM, Jamal Hadi Salim wrote: >>> On Mon, Oct 16, 2023 at 4:15 PM Jakub Kicinski <kuba@kernel.org> wrote: >> [...] >>>> FWIW please do not post another version this week (not that I think >>>> that you would do that, but better safe than sorry. Last week the patch >>>> bombs pushed the shared infra 24h+ behind the list..) >>> >>> Not intending to. >> >> Given bpf & kfuncs, please also Cc bpf@vger.kernel.org on future revisions >> as not everyone on bpf list is subscribed to netdev. > > I thought i did that, maybe it was in earlier patches. Do you want Cc > on everything or only on kfuncs? I am getting conflicting messages, do > you have to Cc bpf for kfuncs? > Example, attached from (some fs?) conference last month i think This is extending capabilities of XDP and tc BPF prog types, so yes, the bpf list should be in the loop.
On Tue, Oct 17, 2023 at 11:40 AM Jakub Kicinski <kuba@kernel.org> wrote: > > On Tue, 17 Oct 2023 11:27:36 -0400 Jamal Hadi Salim wrote: > > > patch-by-patch W=1 C=1 should be good enough to catch the problems. > > > > Thanks - this helps. We didnt pay good attention to > > https://www.kernel.org/doc/Documentation/process/maintainer-netdev.rst > > Only thing that is missing now is the mention of C=1 in the doc. Patch > > to the doc acceptable? > > Also a note about false positives in sparse output (there were a few > > in the warnings from the bot) would be apropos. > > Um. Maybe.. Sparse generates more false positives than good warnings > lately :( We'd have to add some extra info like "Note that sparse > is known to generate false-positive warnings, if you think that the > warning generated with C=1 is bogus, ignore it and note that fact > in the commit message". > > I don't like documenting things which aren't clear-cut :( Upto you - couldnt sum up from above if you want a patch or not. I think it makes sense to document C=1 somewhere since it helps your overhead. But the comment Similar in spirit to the checkpatch comment if - "But do not be mindlessly robotic in doing so..." > I'm pretty sure you have pure W=1 warnings here, too. True - I am not sure how we missed one with function not used. cheers, jamal
On Tue, Oct 17, 2023 at 11:54 AM Daniel Borkmann <daniel@iogearbox.net> wrote: > > On 10/17/23 5:38 PM, Jamal Hadi Salim wrote: > > On Tue, Oct 17, 2023 at 11:00 AM Daniel Borkmann <daniel@iogearbox.net> wrote: > >> > >> On 10/16/23 10:38 PM, Jamal Hadi Salim wrote: > >>> On Mon, Oct 16, 2023 at 4:15 PM Jakub Kicinski <kuba@kernel.org> wrote: > >> [...] > >>>> FWIW please do not post another version this week (not that I think > >>>> that you would do that, but better safe than sorry. Last week the patch > >>>> bombs pushed the shared infra 24h+ behind the list..) > >>> > >>> Not intending to. > >> > >> Given bpf & kfuncs, please also Cc bpf@vger.kernel.org on future revisions > >> as not everyone on bpf list is subscribed to netdev. > > > > I thought i did that, maybe it was in earlier patches. Do you want Cc > > on everything or only on kfuncs? I am getting conflicting messages, do > > you have to Cc bpf for kfuncs? > > Example, attached from (some fs?) conference last month i think > > This is extending capabilities of XDP and tc BPF prog types, so yes, the bpf > list should be in the loop. Roger that, makes sense. So all patches or only kfunc ones? cheers, jamal
On Tue, 17 Oct 2023 11:56:15 -0400 Jamal Hadi Salim wrote: > > Um. Maybe.. Sparse generates more false positives than good warnings > > lately :( We'd have to add some extra info like "Note that sparse > > is known to generate false-positive warnings, if you think that the > > warning generated with C=1 is bogus, ignore it and note that fact > > in the commit message". > > > > > I don't like documenting things which aren't clear-cut :( > > Upto you - couldnt sum up from above if you want a patch or not. I > think it makes sense to document C=1 somewhere since it helps your > overhead. > But the comment Similar in spirit to the checkpatch comment if - "But > do not be mindlessly robotic in doing so..." Weak preference for keeping it as is. The wins on my end don't justify the extra rule for the drive-by developers.
On 10/17/23 5:57 PM, Jamal Hadi Salim wrote: > On Tue, Oct 17, 2023 at 11:54 AM Daniel Borkmann <daniel@iogearbox.net> wrote: >> On 10/17/23 5:38 PM, Jamal Hadi Salim wrote: >>> On Tue, Oct 17, 2023 at 11:00 AM Daniel Borkmann <daniel@iogearbox.net> wrote: >>>> On 10/16/23 10:38 PM, Jamal Hadi Salim wrote: >>>>> On Mon, Oct 16, 2023 at 4:15 PM Jakub Kicinski <kuba@kernel.org> wrote: >>>> [...] >>>>>> FWIW please do not post another version this week (not that I think >>>>>> that you would do that, but better safe than sorry. Last week the patch >>>>>> bombs pushed the shared infra 24h+ behind the list..) >>>>> >>>>> Not intending to. >>>> >>>> Given bpf & kfuncs, please also Cc bpf@vger.kernel.org on future revisions >>>> as not everyone on bpf list is subscribed to netdev. >>> >>> I thought i did that, maybe it was in earlier patches. Do you want Cc >>> on everything or only on kfuncs? I am getting conflicting messages, do >>> you have to Cc bpf for kfuncs? >>> Example, attached from (some fs?) conference last month i think >> >> This is extending capabilities of XDP and tc BPF prog types, so yes, the bpf >> list should be in the loop. > > Roger that, makes sense. So all patches or only kfunc ones? Preferably the whole series as it's a bit hard to see some end to end example on how it would be used if it's largely taken out of context.