From: Andrea Parri <andrea.parri@amarulasolutions.com> To: Ingo Molnar <mingo@kernel.org>, Jonathan Corbet <corbet@lwn.net> Cc: linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, linux-arch@vger.kernel.org, Andrea Parri <andrea.parri@amarulasolutions.com> Subject: [RFC PATCH 0/3] Documentation/features: Provide and apply "features-refresh.sh" Date: Tue, 3 Apr 2018 18:55:48 +0200 [thread overview] Message-ID: <1522774551-9503-1-git-send-email-andrea.parri@amarulasolutions.com> (raw) In Ingo's words [1]: "[...] what should be done instead is to write a script that refreshes all the arch-support.txt files in-place. [...] It's OK for the script to have various quirks for weirdly implemented features and exceptions: i.e. basically whenever it gets a feature wrong, we can just tweak the script with quirks to make it all work out of box. [...] But in the end there should only be a single new script: Documentation/features/scripts/features-refresh.sh ... which operates on the arch-support.txt files and refreshes them in place, and which, after all the refreshes have been committed, should produce an empty 'git diff' result." "[...] New features can then be added by basically just creating a header-only arch-support.txt file, such as: triton:~/tip/Documentation/features> cat foo/bar/arch-support.txt # # Feature name: shiny new fubar kernel feature # Kconfig: ARCH_USE_FUBAR # description: arch supports the fubar feature # And running Documentation/features/scripts/features-refresh.sh would auto-generate the arch support matrix. [...] This way we soft- decouple the refreshing of the entries from the introduction of the features, while still making it all easy to keep sync and to extend." This RFC presents a first attempt to implement such a feature/script, and applies it script on top of Arnd's: git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic.git arch-removal Patch 1/3 provides the "features-refresh.sh" script. Patch 2/3 removes the "BPF-JIT" feature file and it creates header-only files for "cBPF-JIT" and "eBPF-JIT". Patch 3/3 presents the results of running the script; this run also printed to standard output the following warnings: WARNING: '__HAVE_ARCH_STRNCASECMP' is not a valid Kconfig WARNING: 'Optimized asm/rwsem.h' is not a valid Kconfig WARNING: '!ARCH_USES_GETTIMEOFFSET' is not a valid Kconfig WARNING: '__HAVE_ARCH_PTE_SPECIAL' is not a valid Kconfig (I'm sending these patches with empty commit messagges, for early feedback: I'll fill in these messages in subsequent versions if this makes sense...) Cheers, Andrea Andrea Parri (3): Documentation/features: Add script that refreshes the arch support status files in place Documentation/features/core: Add arch support status files for 'cBPF-JIT' and 'eBPF-JIT' Documentation/features: Refresh and auto-generate the arch support status files in place .../features/core/BPF-JIT/arch-support.txt | 31 ------------ .../features/core/cBPF-JIT/arch-support.txt | 32 +++++++++++++ .../features/core/eBPF-JIT/arch-support.txt | 32 +++++++++++++ .../core/generic-idle-thread/arch-support.txt | 3 +- .../features/core/jump-labels/arch-support.txt | 1 + .../features/core/tracehook/arch-support.txt | 1 + .../features/debug/KASAN/arch-support.txt | 3 +- .../debug/gcov-profile-all/arch-support.txt | 1 + Documentation/features/debug/kgdb/arch-support.txt | 3 +- .../debug/kprobes-on-ftrace/arch-support.txt | 1 + .../features/debug/kprobes/arch-support.txt | 3 +- .../features/debug/kretprobes/arch-support.txt | 3 +- .../features/debug/optprobes/arch-support.txt | 3 +- .../features/debug/stackprotector/arch-support.txt | 1 + .../features/debug/uprobes/arch-support.txt | 5 +- .../debug/user-ret-profiler/arch-support.txt | 1 + .../features/io/dma-api-debug/arch-support.txt | 1 + .../features/io/dma-contiguous/arch-support.txt | 3 +- .../features/io/sg-chain/arch-support.txt | 1 + .../features/lib/strncasecmp/arch-support.txt | 1 + .../locking/cmpxchg-local/arch-support.txt | 3 +- .../features/locking/lockdep/arch-support.txt | 3 +- .../locking/queued-rwlocks/arch-support.txt | 9 ++-- .../locking/queued-spinlocks/arch-support.txt | 7 +-- .../locking/rwsem-optimized/arch-support.txt | 1 + .../features/perf/kprobes-event/arch-support.txt | 5 +- .../features/perf/perf-regs/arch-support.txt | 3 +- .../features/perf/perf-stackdump/arch-support.txt | 3 +- .../sched/membarrier-sync-core/arch-support.txt | 1 + .../features/sched/numa-balancing/arch-support.txt | 5 +- Documentation/features/scripts/features-refresh.sh | 55 ++++++++++++++++++++++ .../seccomp/seccomp-filter/arch-support.txt | 5 +- .../time/arch-tick-broadcast/arch-support.txt | 3 +- .../features/time/clockevents/arch-support.txt | 3 +- .../time/context-tracking/arch-support.txt | 1 + .../features/time/irq-time-acct/arch-support.txt | 3 +- .../time/modern-timekeeping/arch-support.txt | 1 + .../features/time/virt-cpuacct/arch-support.txt | 1 + .../features/vm/ELF-ASLR/arch-support.txt | 3 +- .../features/vm/PG_uncached/arch-support.txt | 1 + Documentation/features/vm/THP/arch-support.txt | 1 + Documentation/features/vm/TLB/arch-support.txt | 1 + .../features/vm/huge-vmap/arch-support.txt | 1 + .../features/vm/ioremap_prot/arch-support.txt | 1 + .../features/vm/numa-memblock/arch-support.txt | 3 +- .../features/vm/pte_special/arch-support.txt | 1 + 46 files changed, 192 insertions(+), 62 deletions(-) delete mode 100644 Documentation/features/core/BPF-JIT/arch-support.txt create mode 100644 Documentation/features/core/cBPF-JIT/arch-support.txt create mode 100644 Documentation/features/core/eBPF-JIT/arch-support.txt create mode 100755 Documentation/features/scripts/features-refresh.sh -- 2.7.4
WARNING: multiple messages have this Message-ID (diff)
From: Andrea Parri <andrea.parri@amarulasolutions.com> To: Ingo Molnar <mingo@kernel.org>, Jonathan Corbet <corbet@lwn.net> Cc: linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, linux-arch@vger.kernel.org, Andrea Parri <andrea.parri@amarulasolutions.com> Subject: [RFC PATCH 0/3] Documentation/features: Provide and apply "features-refresh.sh" Date: Tue, 3 Apr 2018 18:55:48 +0200 [thread overview] Message-ID: <1522774551-9503-1-git-send-email-andrea.parri@amarulasolutions.com> (raw) In Ingo's words [1]: "[...] what should be done instead is to write a script that refreshes all the arch-support.txt files in-place. [...] It's OK for the script to have various quirks for weirdly implemented features and exceptions: i.e. basically whenever it gets a feature wrong, we can just tweak the script with quirks to make it all work out of box. [...] But in the end there should only be a single new script: Documentation/features/scripts/features-refresh.sh ... which operates on the arch-support.txt files and refreshes them in place, and which, after all the refreshes have been committed, should produce an empty 'git diff' result." "[...] New features can then be added by basically just creating a header-only arch-support.txt file, such as: triton:~/tip/Documentation/features> cat foo/bar/arch-support.txt # # Feature name: shiny new fubar kernel feature # Kconfig: ARCH_USE_FUBAR # description: arch supports the fubar feature # And running Documentation/features/scripts/features-refresh.sh would auto-generate the arch support matrix. [...] This way we soft- decouple the refreshing of the entries from the introduction of the features, while still making it all easy to keep sync and to extend." This RFC presents a first attempt to implement such a feature/script, and applies it script on top of Arnd's: git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic.git arch-removal Patch 1/3 provides the "features-refresh.sh" script. Patch 2/3 removes the "BPF-JIT" feature file and it creates header-only files for "cBPF-JIT" and "eBPF-JIT". Patch 3/3 presents the results of running the script; this run also printed to standard output the following warnings: WARNING: '__HAVE_ARCH_STRNCASECMP' is not a valid Kconfig WARNING: 'Optimized asm/rwsem.h' is not a valid Kconfig WARNING: '!ARCH_USES_GETTIMEOFFSET' is not a valid Kconfig WARNING: '__HAVE_ARCH_PTE_SPECIAL' is not a valid Kconfig (I'm sending these patches with empty commit messagges, for early feedback: I'll fill in these messages in subsequent versions if this makes sense...) Cheers, Andrea Andrea Parri (3): Documentation/features: Add script that refreshes the arch support status files in place Documentation/features/core: Add arch support status files for 'cBPF-JIT' and 'eBPF-JIT' Documentation/features: Refresh and auto-generate the arch support status files in place .../features/core/BPF-JIT/arch-support.txt | 31 ------------ .../features/core/cBPF-JIT/arch-support.txt | 32 +++++++++++++ .../features/core/eBPF-JIT/arch-support.txt | 32 +++++++++++++ .../core/generic-idle-thread/arch-support.txt | 3 +- .../features/core/jump-labels/arch-support.txt | 1 + .../features/core/tracehook/arch-support.txt | 1 + .../features/debug/KASAN/arch-support.txt | 3 +- .../debug/gcov-profile-all/arch-support.txt | 1 + Documentation/features/debug/kgdb/arch-support.txt | 3 +- .../debug/kprobes-on-ftrace/arch-support.txt | 1 + .../features/debug/kprobes/arch-support.txt | 3 +- .../features/debug/kretprobes/arch-support.txt | 3 +- .../features/debug/optprobes/arch-support.txt | 3 +- .../features/debug/stackprotector/arch-support.txt | 1 + .../features/debug/uprobes/arch-support.txt | 5 +- .../debug/user-ret-profiler/arch-support.txt | 1 + .../features/io/dma-api-debug/arch-support.txt | 1 + .../features/io/dma-contiguous/arch-support.txt | 3 +- .../features/io/sg-chain/arch-support.txt | 1 + .../features/lib/strncasecmp/arch-support.txt | 1 + .../locking/cmpxchg-local/arch-support.txt | 3 +- .../features/locking/lockdep/arch-support.txt | 3 +- .../locking/queued-rwlocks/arch-support.txt | 9 ++-- .../locking/queued-spinlocks/arch-support.txt | 7 +-- .../locking/rwsem-optimized/arch-support.txt | 1 + .../features/perf/kprobes-event/arch-support.txt | 5 +- .../features/perf/perf-regs/arch-support.txt | 3 +- .../features/perf/perf-stackdump/arch-support.txt | 3 +- .../sched/membarrier-sync-core/arch-support.txt | 1 + .../features/sched/numa-balancing/arch-support.txt | 5 +- Documentation/features/scripts/features-refresh.sh | 55 ++++++++++++++++++++++ .../seccomp/seccomp-filter/arch-support.txt | 5 +- .../time/arch-tick-broadcast/arch-support.txt | 3 +- .../features/time/clockevents/arch-support.txt | 3 +- .../time/context-tracking/arch-support.txt | 1 + .../features/time/irq-time-acct/arch-support.txt | 3 +- .../time/modern-timekeeping/arch-support.txt | 1 + .../features/time/virt-cpuacct/arch-support.txt | 1 + .../features/vm/ELF-ASLR/arch-support.txt | 3 +- .../features/vm/PG_uncached/arch-support.txt | 1 + Documentation/features/vm/THP/arch-support.txt | 1 + Documentation/features/vm/TLB/arch-support.txt | 1 + .../features/vm/huge-vmap/arch-support.txt | 1 + .../features/vm/ioremap_prot/arch-support.txt | 1 + .../features/vm/numa-memblock/arch-support.txt | 3 +- .../features/vm/pte_special/arch-support.txt | 1 + 46 files changed, 192 insertions(+), 62 deletions(-) delete mode 100644 Documentation/features/core/BPF-JIT/arch-support.txt create mode 100644 Documentation/features/core/cBPF-JIT/arch-support.txt create mode 100644 Documentation/features/core/eBPF-JIT/arch-support.txt create mode 100755 Documentation/features/scripts/features-refresh.sh -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-doc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
next reply other threads:[~2018-04-03 16:56 UTC|newest] Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-04-03 16:55 Andrea Parri [this message] 2018-04-03 16:55 ` [RFC PATCH 0/3] Documentation/features: Provide and apply "features-refresh.sh" Andrea Parri 2018-04-03 16:55 ` [PATCH 1/3] Documentation/features: Add script that refreshes the arch support status files in place Andrea Parri 2018-04-03 16:55 ` Andrea Parri 2018-04-03 16:55 ` [PATCH 2/3] Documentation/features/core: Add arch support status files for 'cBPF-JIT' and 'eBPF-JIT' Andrea Parri 2018-04-03 16:55 ` Andrea Parri 2018-04-03 16:55 ` [PATCH 3/3] Documentation/features: Refresh and auto-generate the arch support status files in place Andrea Parri 2018-04-03 16:55 ` Andrea Parri 2018-04-04 4:56 ` [RFC PATCH 0/3] Documentation/features: Provide and apply "features-refresh.sh" Ingo Molnar 2018-04-04 4:56 ` Ingo Molnar 2018-04-04 13:03 ` Andrea Parri 2018-04-04 13:03 ` Andrea Parri 2018-04-05 15:18 ` Ingo Molnar 2018-04-05 15:18 ` Ingo Molnar
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1522774551-9503-1-git-send-email-andrea.parri@amarulasolutions.com \ --to=andrea.parri@amarulasolutions.com \ --cc=corbet@lwn.net \ --cc=linux-arch@vger.kernel.org \ --cc=linux-doc@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=mingo@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
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.