diff mbox series

[bpf-next] docs/bpf: Document how to run CI without patch submission

Message ID 20221114211501.2068684-1-deso@posteo.net (mailing list archive)
State Accepted
Commit 26a9b433cf08adf2fdb50775128b283eb5201ab2
Delegated to: BPF
Headers show
Series [bpf-next] docs/bpf: Document how to run CI without patch submission | expand

Checks

Context Check Description
bpf/vmtest-bpf-next-PR success PR summary
bpf/vmtest-bpf-next-VM_Test-11 success Logs for test_maps on s390x with gcc
netdev/tree_selection success Clearly marked for bpf-next
netdev/fixes_present success Fixes tag not required for -next series
netdev/subject_prefix success Link
netdev/cover_letter success Single patches do not need cover letters
netdev/patch_count success Link
netdev/header_inline success No static functions without inline keyword in header files
netdev/build_32bit success Errors and warnings before: 0 this patch: 0
netdev/cc_maintainers warning 10 maintainers not CCed: sdf@google.com kpsingh@kernel.org haoluo@google.com corbet@lwn.net yhs@fb.com jolsa@kernel.org martin.lau@linux.dev linux-doc@vger.kernel.org song@kernel.org john.fastabend@gmail.com
netdev/build_clang success Errors and warnings before: 0 this patch: 0
netdev/module_param success Was 0 now: 0
netdev/verify_signedoff success Signed-off-by tag matches author and committer
netdev/check_selftest success No net selftest shell script
netdev/verify_fixes success No Fixes tag
netdev/build_allmodconfig_warn success Errors and warnings before: 0 this patch: 0
netdev/checkpatch success total: 0 errors, 0 warnings, 0 checks, 30 lines checked
netdev/kdoc success Errors and warnings before: 0 this patch: 0
netdev/source_inline success Was 0 now: 0
bpf/vmtest-bpf-next-VM_Test-1 success Logs for ShellCheck
bpf/vmtest-bpf-next-VM_Test-2 success Logs for build for aarch64 with gcc
bpf/vmtest-bpf-next-VM_Test-5 success Logs for build for x86_64 with gcc
bpf/vmtest-bpf-next-VM_Test-6 success Logs for build for x86_64 with llvm-16
bpf/vmtest-bpf-next-VM_Test-7 success Logs for llvm-toolchain
bpf/vmtest-bpf-next-VM_Test-8 success Logs for set-matrix
bpf/vmtest-bpf-next-VM_Test-3 success Logs for build for aarch64 with llvm-16
bpf/vmtest-bpf-next-VM_Test-4 success Logs for build for s390x with gcc
bpf/vmtest-bpf-next-VM_Test-9 success Logs for test_maps on aarch64 with gcc
bpf/vmtest-bpf-next-VM_Test-10 success Logs for test_maps on aarch64 with llvm-16
bpf/vmtest-bpf-next-VM_Test-12 success Logs for test_maps on x86_64 with gcc
bpf/vmtest-bpf-next-VM_Test-13 success Logs for test_maps on x86_64 with llvm-16
bpf/vmtest-bpf-next-VM_Test-14 success Logs for test_progs on aarch64 with gcc
bpf/vmtest-bpf-next-VM_Test-15 fail Logs for test_progs on aarch64 with llvm-16
bpf/vmtest-bpf-next-VM_Test-17 success Logs for test_progs on x86_64 with gcc
bpf/vmtest-bpf-next-VM_Test-18 success Logs for test_progs on x86_64 with llvm-16
bpf/vmtest-bpf-next-VM_Test-19 fail Logs for test_progs_no_alu32 on aarch64 with gcc
bpf/vmtest-bpf-next-VM_Test-20 success Logs for test_progs_no_alu32 on aarch64 with llvm-16
bpf/vmtest-bpf-next-VM_Test-22 success Logs for test_progs_no_alu32 on x86_64 with gcc
bpf/vmtest-bpf-next-VM_Test-23 success Logs for test_progs_no_alu32 on x86_64 with llvm-16
bpf/vmtest-bpf-next-VM_Test-24 success Logs for test_progs_no_alu32_parallel on aarch64 with gcc
bpf/vmtest-bpf-next-VM_Test-25 success Logs for test_progs_no_alu32_parallel on aarch64 with llvm-16
bpf/vmtest-bpf-next-VM_Test-27 success Logs for test_progs_no_alu32_parallel on x86_64 with gcc
bpf/vmtest-bpf-next-VM_Test-28 success Logs for test_progs_no_alu32_parallel on x86_64 with llvm-16
bpf/vmtest-bpf-next-VM_Test-29 success Logs for test_progs_parallel on aarch64 with gcc
bpf/vmtest-bpf-next-VM_Test-30 success Logs for test_progs_parallel on aarch64 with llvm-16
bpf/vmtest-bpf-next-VM_Test-32 success Logs for test_progs_parallel on x86_64 with gcc
bpf/vmtest-bpf-next-VM_Test-33 success Logs for test_progs_parallel on x86_64 with llvm-16
bpf/vmtest-bpf-next-VM_Test-34 success Logs for test_verifier on aarch64 with gcc
bpf/vmtest-bpf-next-VM_Test-35 success Logs for test_verifier on aarch64 with llvm-16
bpf/vmtest-bpf-next-VM_Test-37 success Logs for test_verifier on x86_64 with gcc
bpf/vmtest-bpf-next-VM_Test-38 success Logs for test_verifier on x86_64 with llvm-16
bpf/vmtest-bpf-next-VM_Test-21 success Logs for test_progs_no_alu32 on s390x with gcc
bpf/vmtest-bpf-next-VM_Test-36 success Logs for test_verifier on s390x with gcc
bpf/vmtest-bpf-next-VM_Test-26 success Logs for test_progs_no_alu32_parallel on s390x with gcc
bpf/vmtest-bpf-next-VM_Test-31 success Logs for test_progs_parallel on s390x with gcc
bpf/vmtest-bpf-next-VM_Test-16 success Logs for test_progs on s390x with gcc

Commit Message

Daniel Müller Nov. 14, 2022, 9:15 p.m. UTC
This change documents the process for running the BPF CI before
submitting a patch to the upstream mailing list, similar to what happens
if a patch is send to bpf@vger.kernel.org: it builds kernel and
selftests and runs the latter on different architecture (but it notably
does not cover stylistic checks such as cover letter verification).
Running BPF CI this way can help achieve better test coverage ahead of
patch submission than merely running locally (say, using
tools/testing/selftests/bpf/vmtest.sh), as additional architectures may
be covered as well.

Signed-off-by: Daniel Müller <deso@posteo.net>
---
 Documentation/bpf/bpf_devel_QA.rst | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

Comments

patchwork-bot+netdevbpf@kernel.org Nov. 15, 2022, 2:40 p.m. UTC | #1
Hello:

This patch was applied to bpf/bpf-next.git (master)
by Daniel Borkmann <daniel@iogearbox.net>:

On Mon, 14 Nov 2022 21:15:01 +0000 you wrote:
> This change documents the process for running the BPF CI before
> submitting a patch to the upstream mailing list, similar to what happens
> if a patch is send to bpf@vger.kernel.org: it builds kernel and
> selftests and runs the latter on different architecture (but it notably
> does not cover stylistic checks such as cover letter verification).
> Running BPF CI this way can help achieve better test coverage ahead of
> patch submission than merely running locally (say, using
> tools/testing/selftests/bpf/vmtest.sh), as additional architectures may
> be covered as well.
> 
> [...]

Here is the summary with links:
  - [bpf-next] docs/bpf: Document how to run CI without patch submission
    https://git.kernel.org/bpf/bpf-next/c/26a9b433cf08

You are awesome, thank you!
Quentin Monnet Nov. 15, 2022, 8:15 p.m. UTC | #2
On Mon, 14 Nov 2022 at 21:15, Daniel Müller <deso@posteo.net> wrote:
>
> This change documents the process for running the BPF CI before
> submitting a patch to the upstream mailing list, similar to what happens
> if a patch is send to bpf@vger.kernel.org: it builds kernel and
> selftests and runs the latter on different architecture (but it notably
> does not cover stylistic checks such as cover letter verification).
> Running BPF CI this way can help achieve better test coverage ahead of
> patch submission than merely running locally (say, using
> tools/testing/selftests/bpf/vmtest.sh), as additional architectures may
> be covered as well.
>
> Signed-off-by: Daniel Müller <deso@posteo.net>

Thanks a lot for this!
Quentin
Akira Yokosawa Nov. 16, 2022, 10:01 a.m. UTC | #3
Hi Daniel,

I know this has already been applied, but am seeing new warning msgs
from "make htmldocs" due to this change. Please see inline comment
below.

On Mon, 14 Nov 2022 21:15:01 +0000, Daniel Müller wrote:
> This change documents the process for running the BPF CI before
> submitting a patch to the upstream mailing list, similar to what happens
> if a patch is send to bpf@vger.kernel.org: it builds kernel and
> selftests and runs the latter on different architecture (but it notably
> does not cover stylistic checks such as cover letter verification).
> Running BPF CI this way can help achieve better test coverage ahead of
> patch submission than merely running locally (say, using
> tools/testing/selftests/bpf/vmtest.sh), as additional architectures may
> be covered as well.
> 
> Signed-off-by: Daniel Müller <deso@posteo.net>
> ---
>  Documentation/bpf/bpf_devel_QA.rst | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
> 
> diff --git a/Documentation/bpf/bpf_devel_QA.rst b/Documentation/bpf/bpf_devel_QA.rst
> index 761474..08572c7 100644
> --- a/Documentation/bpf/bpf_devel_QA.rst
> +++ b/Documentation/bpf/bpf_devel_QA.rst
> @@ -44,6 +44,30 @@ is a guarantee that the reported issue will be overlooked.**
>  Submitting patches
>  ==================
>  
> +Q: How do I run BPF CI on my changes before sending them out for review?
> +------------------------------------------------------------------------
> +A: BPF CI is GitHub based and hosted at https://github.com/kernel-patches/bpf.
> +While GitHub also provides a CLI that can be used to accomplish the same
> +results, here we focus on the UI based workflow.
> +
> +The following steps lay out how to start a CI run for your patches:

Lack of a blank line here results in warning msgs from "make htmldocs":

/linux/Documentation/bpf/bpf_devel_QA.rst:55: ERROR: Unexpected indentation.
/linux/Documentation/bpf/bpf_devel_QA.rst:56: WARNING: Block quote ends without a blank line; unexpected unindent.

Can you please fix it?

For your reference, here is a link to reST documentation on bullet lists:

    https://docutils.sourceforge.io/docs/ref/rst/restructuredtext.html#bullet-lists

        Thanks, Akira

> +- Create a fork of the aforementioned repository in your own account (one time
> +  action)
> +- Clone the fork locally, check out a new branch tracking either the bpf-next
> +  or bpf branch, and apply your to-be-tested patches on top of it
> +- Push the local branch to your fork and create a pull request against
> +  kernel-patches/bpf's bpf-next_base or bpf_base branch, respectively
> +
[...]
Daniel Müller Nov. 16, 2022, 5:20 p.m. UTC | #4
Hi Akira,

On Wed, Nov 16, 2022 at 07:01:17PM +0900, Akira Yokosawa wrote:
> I know this has already been applied, but am seeing new warning msgs
> from "make htmldocs" due to this change. Please see inline comment
> below.
> 
> On Mon, 14 Nov 2022 21:15:01 +0000, Daniel Müller wrote:
> > This change documents the process for running the BPF CI before
> > submitting a patch to the upstream mailing list, similar to what happens
> > if a patch is send to bpf@vger.kernel.org: it builds kernel and
> > selftests and runs the latter on different architecture (but it notably
> > does not cover stylistic checks such as cover letter verification).
> > Running BPF CI this way can help achieve better test coverage ahead of
> > patch submission than merely running locally (say, using
> > tools/testing/selftests/bpf/vmtest.sh), as additional architectures may
> > be covered as well.
> > 
> > Signed-off-by: Daniel Müller <deso@posteo.net>
> > ---
> >  Documentation/bpf/bpf_devel_QA.rst | 24 ++++++++++++++++++++++++
> >  1 file changed, 24 insertions(+)
> > 
> > diff --git a/Documentation/bpf/bpf_devel_QA.rst b/Documentation/bpf/bpf_devel_QA.rst
> > index 761474..08572c7 100644
> > --- a/Documentation/bpf/bpf_devel_QA.rst
> > +++ b/Documentation/bpf/bpf_devel_QA.rst
> > @@ -44,6 +44,30 @@ is a guarantee that the reported issue will be overlooked.**
> >  Submitting patches
> >  ==================
> >  
> > +Q: How do I run BPF CI on my changes before sending them out for review?
> > +------------------------------------------------------------------------
> > +A: BPF CI is GitHub based and hosted at https://github.com/kernel-patches/bpf.
> > +While GitHub also provides a CLI that can be used to accomplish the same
> > +results, here we focus on the UI based workflow.
> > +
> > +The following steps lay out how to start a CI run for your patches:
> 
> Lack of a blank line here results in warning msgs from "make htmldocs":
> 
> /linux/Documentation/bpf/bpf_devel_QA.rst:55: ERROR: Unexpected indentation.
> /linux/Documentation/bpf/bpf_devel_QA.rst:56: WARNING: Block quote ends without a blank line; unexpected unindent.
> 
> Can you please fix it?
> 
> For your reference, here is a link to reST documentation on bullet lists:
> 
>     https://docutils.sourceforge.io/docs/ref/rst/restructuredtext.html#bullet-lists
> 
>         Thanks, Akira

Thanks for pointing that out. I had not found any references to this rst file
being included in automated doc generation. Will fix it up.

Daniel
Akira Yokosawa Nov. 17, 2022, 2:04 a.m. UTC | #5
On Wed, 16 Nov 2022 17:20:19 +0000, Daniel Müller wrote:
> Hi Akira,
> 
> On Wed, Nov 16, 2022 at 07:01:17PM +0900, Akira Yokosawa wrote:
>> I know this has already been applied, but am seeing new warning msgs
>> from "make htmldocs" due to this change. Please see inline comment
>> below.
>>
>> On Mon, 14 Nov 2022 21:15:01 +0000, Daniel Müller wrote:
>>> This change documents the process for running the BPF CI before
>>> submitting a patch to the upstream mailing list, similar to what happens
>>> if a patch is send to bpf@vger.kernel.org: it builds kernel and
>>> selftests and runs the latter on different architecture (but it notably
>>> does not cover stylistic checks such as cover letter verification).
>>> Running BPF CI this way can help achieve better test coverage ahead of
>>> patch submission than merely running locally (say, using
>>> tools/testing/selftests/bpf/vmtest.sh), as additional architectures may
>>> be covered as well.
>>>
>>> Signed-off-by: Daniel Müller <deso@posteo.net>
>>> ---
>>>  Documentation/bpf/bpf_devel_QA.rst | 24 ++++++++++++++++++++++++
>>>  1 file changed, 24 insertions(+)
>>>
>>> diff --git a/Documentation/bpf/bpf_devel_QA.rst b/Documentation/bpf/bpf_devel_QA.rst
>>> index 761474..08572c7 100644
>>> --- a/Documentation/bpf/bpf_devel_QA.rst
>>> +++ b/Documentation/bpf/bpf_devel_QA.rst
>>> @@ -44,6 +44,30 @@ is a guarantee that the reported issue will be overlooked.**
>>>  Submitting patches
>>>  ==================
>>>  
>>> +Q: How do I run BPF CI on my changes before sending them out for review?
>>> +------------------------------------------------------------------------
>>> +A: BPF CI is GitHub based and hosted at https://github.com/kernel-patches/bpf.
>>> +While GitHub also provides a CLI that can be used to accomplish the same
>>> +results, here we focus on the UI based workflow.
>>> +
>>> +The following steps lay out how to start a CI run for your patches:
>>
>> Lack of a blank line here results in warning msgs from "make htmldocs":
>>
>> /linux/Documentation/bpf/bpf_devel_QA.rst:55: ERROR: Unexpected indentation.
>> /linux/Documentation/bpf/bpf_devel_QA.rst:56: WARNING: Block quote ends without a blank line; unexpected unindent.
>>
>> Can you please fix it?
>>
>> For your reference, here is a link to reST documentation on bullet lists:
>>
>>     https://docutils.sourceforge.io/docs/ref/rst/restructuredtext.html#bullet-lists
>>
>>         Thanks, Akira
> 
> Thanks for pointing that out. I had not found any references to this rst file
> being included in automated doc generation. Will fix it up.

JFYI,

bpf_devel_QA is listed under the toctree directive in Documentation/bpf/faq.rst.

If you failed to enlist a new .rst file in a toctree somewhere, you would see
a complaint from "make htmldocs", in this case:

  Documentation/bpf/bpf_devel_QA.rst: WARNING: document isn't included in any toctree

        Thanks, Akira

> 
> Daniel
diff mbox series

Patch

diff --git a/Documentation/bpf/bpf_devel_QA.rst b/Documentation/bpf/bpf_devel_QA.rst
index 761474..08572c7 100644
--- a/Documentation/bpf/bpf_devel_QA.rst
+++ b/Documentation/bpf/bpf_devel_QA.rst
@@ -44,6 +44,30 @@  is a guarantee that the reported issue will be overlooked.**
 Submitting patches
 ==================
 
+Q: How do I run BPF CI on my changes before sending them out for review?
+------------------------------------------------------------------------
+A: BPF CI is GitHub based and hosted at https://github.com/kernel-patches/bpf.
+While GitHub also provides a CLI that can be used to accomplish the same
+results, here we focus on the UI based workflow.
+
+The following steps lay out how to start a CI run for your patches:
+- Create a fork of the aforementioned repository in your own account (one time
+  action)
+- Clone the fork locally, check out a new branch tracking either the bpf-next
+  or bpf branch, and apply your to-be-tested patches on top of it
+- Push the local branch to your fork and create a pull request against
+  kernel-patches/bpf's bpf-next_base or bpf_base branch, respectively
+
+Shortly after the pull request has been created, the CI workflow will run. Note
+that capacity is shared with patches submitted upstream being checked and so
+depending on utilization the run can take a while to finish.
+
+Note furthermore that both base branches (bpf-next_base and bpf_base) will be
+updated as patches are pushed to the respective upstream branches they track. As
+such, your patch set will automatically (be attempted to) be rebased as well.
+This behavior can result in a CI run being aborted and restarted with the new
+base line.
+
 Q: To which mailing list do I need to submit my BPF patches?
 ------------------------------------------------------------
 A: Please submit your BPF patches to the bpf kernel mailing list: