* [PATCH] treewide: Rename rcu_dereference_raw_notrace to _check
From: Joel Fernandes (Google) @ 2019-07-11 20:45 UTC (permalink / raw)
To: linux-kernel
Cc: rcu, kernel-team, Jonathan Corbet, linux-doc, Lai Jiangshan,
Josh Triplett, kvm-ppc, Ingo Molnar, Mathieu Desnoyers,
Steven Rostedt, Joel Fernandes (Google), Paul E. McKenney,
linuxppc-dev, byungchul.park
The rcu_dereference_raw_notrace() API name is confusing.
It is equivalent to rcu_dereference_raw() except that it also does
sparse pointer checking.
There are only a few users of rcu_dereference_raw_notrace(). This
patches renames all of them to be rcu_dereference_raw_check with the
"check" indicating sparse checking.
Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org>
---
Previous discussion is here:
https://lore.kernel.org/linuxppc-dev/20190528200014.GV28207@linux.ibm.com/T/
Documentation/RCU/Design/Requirements/Requirements.html | 2 +-
arch/powerpc/include/asm/kvm_book3s_64.h | 2 +-
include/linux/rculist.h | 4 ++--
include/linux/rcupdate.h | 2 +-
kernel/trace/ftrace_internal.h | 8 ++++----
kernel/trace/trace.c | 4 ++--
6 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/Documentation/RCU/Design/Requirements/Requirements.html b/Documentation/RCU/Design/Requirements/Requirements.html
index f04c467e55c5..467251f7fef6 100644
--- a/Documentation/RCU/Design/Requirements/Requirements.html
+++ b/Documentation/RCU/Design/Requirements/Requirements.html
@@ -2514,7 +2514,7 @@ disabled across the entire RCU read-side critical section.
<p>
It is possible to use tracing on RCU code, but tracing itself
uses RCU.
-For this reason, <tt>rcu_dereference_raw_notrace()</tt>
+For this reason, <tt>rcu_dereference_raw_check()</tt>
is provided for use by tracing, which avoids the destructive
recursion that could otherwise ensue.
This API is also used by virtualization in some architectures,
diff --git a/arch/powerpc/include/asm/kvm_book3s_64.h b/arch/powerpc/include/asm/kvm_book3s_64.h
index 21b1ed5df888..53388a311967 100644
--- a/arch/powerpc/include/asm/kvm_book3s_64.h
+++ b/arch/powerpc/include/asm/kvm_book3s_64.h
@@ -546,7 +546,7 @@ static inline void note_hpte_modification(struct kvm *kvm,
*/
static inline struct kvm_memslots *kvm_memslots_raw(struct kvm *kvm)
{
- return rcu_dereference_raw_notrace(kvm->memslots[0]);
+ return rcu_dereference_raw_check(kvm->memslots[0]);
}
extern void kvmppc_mmu_debugfs_init(struct kvm *kvm);
diff --git a/include/linux/rculist.h b/include/linux/rculist.h
index e91ec9ddcd30..10aab1d2d471 100644
--- a/include/linux/rculist.h
+++ b/include/linux/rculist.h
@@ -642,10 +642,10 @@ static inline void hlist_add_behind_rcu(struct hlist_node *n,
* not do any RCU debugging or tracing.
*/
#define hlist_for_each_entry_rcu_notrace(pos, head, member) \
- for (pos = hlist_entry_safe (rcu_dereference_raw_notrace(hlist_first_rcu(head)),\
+ for (pos = hlist_entry_safe (rcu_dereference_raw_check(hlist_first_rcu(head)),\
typeof(*(pos)), member); \
pos; \
- pos = hlist_entry_safe(rcu_dereference_raw_notrace(hlist_next_rcu(\
+ pos = hlist_entry_safe(rcu_dereference_raw_check(hlist_next_rcu(\
&(pos)->member)), typeof(*(pos)), member))
/**
diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h
index 0c9b92799abc..e5161e377ad4 100644
--- a/include/linux/rcupdate.h
+++ b/include/linux/rcupdate.h
@@ -478,7 +478,7 @@ do { \
* The no-tracing version of rcu_dereference_raw() must not call
* rcu_read_lock_held().
*/
-#define rcu_dereference_raw_notrace(p) __rcu_dereference_check((p), 1, __rcu)
+#define rcu_dereference_raw_check(p) __rcu_dereference_check((p), 1, __rcu)
/**
* rcu_dereference_protected() - fetch RCU pointer when updates prevented
diff --git a/kernel/trace/ftrace_internal.h b/kernel/trace/ftrace_internal.h
index 0515a2096f90..0456e0a3dab1 100644
--- a/kernel/trace/ftrace_internal.h
+++ b/kernel/trace/ftrace_internal.h
@@ -6,22 +6,22 @@
/*
* Traverse the ftrace_global_list, invoking all entries. The reason that we
- * can use rcu_dereference_raw_notrace() is that elements removed from this list
+ * can use rcu_dereference_raw_check() is that elements removed from this list
* are simply leaked, so there is no need to interact with a grace-period
- * mechanism. The rcu_dereference_raw_notrace() calls are needed to handle
+ * mechanism. The rcu_dereference_raw_check() calls are needed to handle
* concurrent insertions into the ftrace_global_list.
*
* Silly Alpha and silly pointer-speculation compiler optimizations!
*/
#define do_for_each_ftrace_op(op, list) \
- op = rcu_dereference_raw_notrace(list); \
+ op = rcu_dereference_raw_check(list); \
do
/*
* Optimized for just a single item in the list (as that is the normal case).
*/
#define while_for_each_ftrace_op(op) \
- while (likely(op = rcu_dereference_raw_notrace((op)->next)) && \
+ while (likely(op = rcu_dereference_raw_check((op)->next)) && \
unlikely((op) != &ftrace_list_end))
extern struct ftrace_ops __rcu *ftrace_ops_list;
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
index 2c92b3d9ea30..1d69110d9e5b 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -2642,10 +2642,10 @@ static void ftrace_exports(struct ring_buffer_event *event)
preempt_disable_notrace();
- export = rcu_dereference_raw_notrace(ftrace_exports_list);
+ export = rcu_dereference_raw_check(ftrace_exports_list);
while (export) {
trace_process_export(export, event);
- export = rcu_dereference_raw_notrace(export->next);
+ export = rcu_dereference_raw_check(export->next);
}
preempt_enable_notrace();
--
2.22.0.410.gd8fdbe21b5-goog
^ permalink raw reply related
* Re: [PATCH] treewide: Rename rcu_dereference_raw_notrace to _check
From: Joel Fernandes @ 2019-07-11 20:50 UTC (permalink / raw)
To: LKML
Cc: rcu, kernel-team, Jonathan Corbet, open list:DOCUMENTATION,
Lai Jiangshan, Josh Triplett, kvm-ppc, Ingo Molnar,
Mathieu Desnoyers, Steven Rostedt, Byungchul Park,
Paul E. McKenney, PowerPC
In-Reply-To: <20190711204541.28940-1-joel@joelfernandes.org>
On Thu, Jul 11, 2019 at 4:45 PM Joel Fernandes (Google)
<joel@joelfernandes.org> wrote:
>
> The rcu_dereference_raw_notrace() API name is confusing.
> It is equivalent to rcu_dereference_raw() except that it also does
> sparse pointer checking.
>
> There are only a few users of rcu_dereference_raw_notrace(). This
> patches renames all of them to be rcu_dereference_raw_check with the
> "check" indicating sparse checking.
>
> Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org>
There also these _notrace things but I am Ok with leaving them alone for now:
hash_for_each_possible_rcu_notrace
hlist_for_each_entry_rcu_notrace
- Joel
^ permalink raw reply
* Re: [PATCH v3] tpm: tpm_ibm_vtpm: Fix unallocated banks
From: Jarkko Sakkinen @ 2019-07-11 21:13 UTC (permalink / raw)
To: Nayna Jain
Cc: Sachin Sant, Michal Suchanek, linux-kernel, Mimi Zohar,
Jason Gunthorpe, linux-integrity, George Wilson, linuxppc-dev,
Peter Huewe
In-Reply-To: <20190711202824.dfhzxcqtk5ouud5n@linux.intel.com>
On Thu, Jul 11, 2019 at 11:28:24PM +0300, Jarkko Sakkinen wrote:
> On Thu, Jul 11, 2019 at 12:13:35PM -0400, Nayna Jain wrote:
> > The nr_allocated_banks and allocated banks are initialized as part of
> > tpm_chip_register. Currently, this is done as part of auto startup
> > function. However, some drivers, like the ibm vtpm driver, do not run
> > auto startup during initialization. This results in uninitialized memory
> > issue and causes a kernel panic during boot.
> >
> > This patch moves the pcr allocation outside the auto startup function
> > into tpm_chip_register. This ensures that allocated banks are initialized
> > in any case.
> >
> > Fixes: 879b589210a9 ("tpm: retrieve digest size of unknown algorithms with
> > PCR read")
> > Reported-by: Michal Suchanek <msuchanek@suse.de>
> > Signed-off-by: Nayna Jain <nayna@linux.ibm.com>
> > Reviewed-by: Mimi Zohar <zohar@linux.ibm.com>
> > Tested-by: Sachin Sant <sachinp@linux.vnet.ibm.com>
> > Tested-by: Michal Suchánek <msuchanek@suse.de>
>
> Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Thanks a lot! It is applied now.
/Jarkko
^ permalink raw reply
* Re: [PATCH] mm/kprobes: Add generic kprobe_fault_handler() fallback definition
From: Masami Hiramatsu @ 2019-07-11 22:49 UTC (permalink / raw)
To: Anshuman Khandual
Cc: Kate Stewart, Mark Rutland, Rich Felker, linux-ia64, linux-sh,
Heiko Carstens, linux-mips, linux-mm, Paul Mackerras,
H. Peter Anvin, sparclinux, Will Deacon, linux-s390,
Yoshinori Sato, x86, Russell King, Anil S Keshavamurthy,
Christian Borntraeger, Ingo Molnar, linux-arm-kernel,
Catalin Marinas, James Hogan, linux-snps-arc, Guenter Roeck,
Fenghua Yu, Vasily Gorbik, linuxppc-dev, Naveen N. Rao,
Borislav Petkov, Thomas Gleixner, Allison Randal, Tony Luck,
Richard Fontana, Vineet Gupta, linux-kernel, Ralf Baechle,
Paul Burton, Greg Kroah-Hartman, Andrew Morton, Enrico Weigelt,
David S. Miller
In-Reply-To: <3aee1f30-241c-d1c2-2ff5-ff521db47755@arm.com>
Hi Anshuman,
On Mon, 8 Jul 2019 09:03:13 +0530
Anshuman Khandual <anshuman.khandual@arm.com> wrote:
> >> Architectures like parisc enable CONFIG_KROBES without having a definition
> >> for kprobe_fault_handler() which results in a build failure.
> >
> > Hmm, as far as I can see, kprobe_fault_handler() is closed inside each arch
> > specific code. The reason why include/linux/kprobes.h defines
> > dummy inline function is only for !CONFIG_KPROBES case.
>
> IIRC Andrew mentioned [1] that we should remove this stub from the generic kprobes
> header because this is very much architecture specific. As we see in this proposed
> patch, except x86 there is no other current user which actually calls this from
> some where when CONFIG_KPROBES is not enabled.
>
> [1] https://www.spinics.net/lists/linux-mm/msg182649.html
Ah, OK. I saw another branch. Also, this is a bugfix patch against
commit 4dd635bce90e ("mm, kprobes: generalize and rename notify_page_fault() as
kprobe_page_fault()"), please add Fixes: tag on it.
In this case, we should just add a prototype of kprobe_fault_handler() in
include/linux/kprobes.h, and maybe add a stub of kprobe_fault_handler()
as a weak function, something like below.
int __weak kprobe_fault_handler(struct pt_regs *regs, int trapnr)
{
/*
* Each architecture which uses kprobe_page_fault() must define
* a fault handler to handle page fault in kprobe correctly.
*/
WARN_ON_ONCE(1);
return 0;
}
> >> Arch needs to
> >> provide kprobe_fault_handler() as it is platform specific and cannot have
> >> a generic working alternative. But in the event when platform lacks such a
> >> definition there needs to be a fallback.
> >
> > Wait, indeed that each arch need to implement it, but that is for calling
> > kprobe->fault_handler() as user expected.
> > Hmm, why not fixing those architecture implementations?
>
> After the recent change which introduced a generic kprobe_page_fault() every
> architecture enabling CONFIG_KPROBES must have a kprobe_fault_handler() which
> was not the case earlier.
As far as I can see, gcc complains it because there is no prototype of
kprobe_fault_handler(). Actually no need to define empty kprobe_fault_handler()
on each arch. If we have a prototype, but no actual function, gcc stops the
error unless the arch depending code uses it. So actually, we don't need above
__weak function.
> Architectures like parisc which does enable KPROBES but
> never used (kprobe_page_fault or kprobe->fault_handler) kprobe_fault_handler() now
> needs one as well.
(Hmm, it sounds like the kprobes porting is incomplete on parisc...)
> I am not sure and will probably require inputs from arch parsic
> folks whether it at all needs one. We dont have a stub or fallback definition for
> kprobe_fault_handler() when CONFIG_KPROBES is enabled just to prevent a build
> failure in such cases.
Yeah, that is a bug, and fixed by adding a prototype, not introducing new macro.
>
> In such a situation it might be better defining a stub symbol fallback than to try
> to implement one definition which the architecture previously never needed or used.
> AFAICS there is no generic MM callers for kprobe_fault_handler() as well which would
> have made it mandatory for parisc to define a real one.
>
> >
> >> This adds a stub kprobe_fault_handler() definition which not only prevents
> >> a build failure but also makes sure that kprobe_page_fault() if called will
> >> always return negative in absence of a sane platform specific alternative.
> >
> > I don't like introducing this complicated macro only for avoiding (not fixing)
> > build error. To fix that, kprobes on parisc should implement kprobe_fault_handler
> > correctly (and call kprobe->fault_handler).
>
> As I mentioned before parsic might not need a real one. But you are right this
> complicated (if perceived as such) change can be just avoided at least for the
> build failure problem by just defining a stub definition kprobe_fault_handler()
> for arch parsic when CONFIG_KPROBES is enabled. But this patch does some more
> and solves the kprobe_fault_handler() symbol dependency in a more generic way and
> forces kprobe_page_fault() to fail in absence a real arch kprobe_fault_handler().
> Is not it worth solving in this way ?
>
> >
> > BTW, even if you need such generic stub, please use a weak function instead
> > of macros for every arch headers.
>
> There is a bit problem with that. The existing definitions are with different
> signatures and an weak function will need them to be exact same for override
> requiring more code changes. Hence choose to go with a macro in each header.
>
> arch/arc/include/asm/kprobes.h:int kprobe_fault_handler(struct pt_regs *regs, unsigned long cause);
> arch/arm/include/asm/kprobes.h:int kprobe_fault_handler(struct pt_regs *regs, unsigned int fsr);
> arch/arm64/include/asm/kprobes.h:int kprobe_fault_handler(struct pt_regs *regs, unsigned int fsr);
> arch/ia64/include/asm/kprobes.h:extern int kprobe_fault_handler(struct pt_regs *regs, int trapnr);
> arch/powerpc/include/asm/kprobes.h:extern int kprobe_fault_handler(struct pt_regs *regs, int trapnr);
> arch/s390/include/asm/kprobes.h:int kprobe_fault_handler(struct pt_regs *regs, int trapnr);
> arch/sh/include/asm/kprobes.h:extern int kprobe_fault_handler(struct pt_regs *regs, int trapnr);
> arch/sparc/include/asm/kprobes.h:int kprobe_fault_handler(struct pt_regs *regs, int trapnr);
> arch/x86/include/asm/kprobes.h:extern int kprobe_fault_handler(struct pt_regs *regs, int trapnr);
OK, in that case, original commit is wrong way. it should be reverted and
should introduce something like below
/* Returns true if arch should call kprobes_fault_handler() */
static nokprobe_inline bool is_kprobe_page_fault(struct pt_regs *regs)
{
if (!kprobes_built_in())
return false;
if (user_mode(regs))
return false;
/*
* To be potentially processing a kprobe fault and to be allowed
* to call kprobe_running(), we have to be non-preemptible.
*/
if (preemptible())
return false;
if (!kprobe_running())
return false;
return true;
}
Since it silently casts the type of trapnr, which is strongly depends
on architecture.
> >> While here wrap kprobe_page_fault() in CONFIG_KPROBES. This enables stud
> >> definitions for generic kporbe_fault_handler() and kprobes_built_in() can
> >> just be dropped. Only on x86 it needs to be added back locally as it gets
> >> used in a !CONFIG_KPROBES function do_general_protection().
> >
> > If you want to remove kprobes_built_in(), you should replace it with
> > IS_ENABLED(CONFIG_KPROBES), instead of this...
>
> Apart from kprobes_built_in() the intent was to remove !CONFIG_KPROBES
> stub for kprobe_fault_handler() as well which required making generic
> kprobe_page_fault() to be empty in such case.
No, I meant that "IS_ENABLED(CONFIG_KPROBES)" is generic and is equal to
what kprobes_built_in() does.
Thank you,
--
Masami Hiramatsu <mhiramat@kernel.org>
^ permalink raw reply
* [PATCH v2 0/5] mm: Enable CONFIG_NODES_SPAN_OTHER_NODES by default for NUMA
From: Hoan Tran OS @ 2019-07-11 23:25 UTC (permalink / raw)
To: Catalin Marinas, Will Deacon, Andrew Morton, Michal Hocko,
Vlastimil Babka, Oscar Salvador, Pavel Tatashin, Mike Rapoport,
Alexander Duyck, Benjamin Herrenschmidt, Paul Mackerras,
Michael Ellerman, Thomas Gleixner, Ingo Molnar, Borislav Petkov,
H . Peter Anvin, David S . Miller, Heiko Carstens, Vasily Gorbik,
Christian Borntraeger
Cc: linux-s390@vger.kernel.org, x86@kernel.org,
linux-kernel@vger.kernel.org, open list:MEMORY MANAGEMENT,
Hoan Tran OS, sparclinux@vger.kernel.org, Open Source Submission,
linuxppc-dev@lists.ozlabs.org,
linux-arm-kernel@lists.infradead.org
In NUMA layout which nodes have memory ranges that span across other nodes,
the mm driver can detect the memory node id incorrectly.
For example, with layout below
Node 0 address: 0000 xxxx 0000 xxxx
Node 1 address: xxxx 1111 xxxx 1111
Note:
- Memory from low to high
- 0/1: Node id
- x: Invalid memory of a node
When mm probes the memory map, without CONFIG_NODES_SPAN_OTHER_NODES
config, mm only checks the memory validity but not the node id.
Because of that, Node 1 also detects the memory from node 0 as below
when it scans from the start address to the end address of node 1.
Node 0 address: 0000 xxxx xxxx xxxx
Node 1 address: xxxx 1111 1111 1111
This layout could occur on any architecture. This patch enables
CONFIG_NODES_SPAN_OTHER_NODES by default for NUMA to fix this issue.
V2:
* Revise the patch description
Hoan Tran (5):
mm: Enable CONFIG_NODES_SPAN_OTHER_NODES by default for NUMA
powerpc: Kconfig: Remove CONFIG_NODES_SPAN_OTHER_NODES
x86: Kconfig: Remove CONFIG_NODES_SPAN_OTHER_NODES
sparc: Kconfig: Remove CONFIG_NODES_SPAN_OTHER_NODES
s390: Kconfig: Remove CONFIG_NODES_SPAN_OTHER_NODES
arch/powerpc/Kconfig | 9 ---------
arch/s390/Kconfig | 8 --------
arch/sparc/Kconfig | 9 ---------
arch/x86/Kconfig | 9 ---------
mm/page_alloc.c | 2 +-
5 files changed, 1 insertion(+), 36 deletions(-)
--
2.7.4
^ permalink raw reply
* [PATCH v2 1/5] mm: Enable CONFIG_NODES_SPAN_OTHER_NODES by default for NUMA
From: Hoan Tran OS @ 2019-07-11 23:25 UTC (permalink / raw)
To: Catalin Marinas, Will Deacon, Andrew Morton, Michal Hocko,
Vlastimil Babka, Oscar Salvador, Pavel Tatashin, Mike Rapoport,
Alexander Duyck, Benjamin Herrenschmidt, Paul Mackerras,
Michael Ellerman, Thomas Gleixner, Ingo Molnar, Borislav Petkov,
H . Peter Anvin, David S . Miller, Heiko Carstens, Vasily Gorbik,
Christian Borntraeger
Cc: linux-s390@vger.kernel.org, x86@kernel.org,
linux-kernel@vger.kernel.org, open list:MEMORY MANAGEMENT,
Hoan Tran OS, sparclinux@vger.kernel.org, Open Source Submission,
linuxppc-dev@lists.ozlabs.org,
linux-arm-kernel@lists.infradead.org
In-Reply-To: <1562887528-5896-1-git-send-email-Hoan@os.amperecomputing.com>
In NUMA layout which nodes have memory ranges that span across other nodes,
the mm driver can detect the memory node id incorrectly.
For example, with layout below
Node 0 address: 0000 xxxx 0000 xxxx
Node 1 address: xxxx 1111 xxxx 1111
Note:
- Memory from low to high
- 0/1: Node id
- x: Invalid memory of a node
When mm probes the memory map, without CONFIG_NODES_SPAN_OTHER_NODES
config, mm only checks the memory validity but not the node id.
Because of that, Node 1 also detects the memory from node 0 as below
when it scans from the start address to the end address of node 1.
Node 0 address: 0000 xxxx xxxx xxxx
Node 1 address: xxxx 1111 1111 1111
This layout could occur on any architecture. This patch enables
CONFIG_NODES_SPAN_OTHER_NODES by default for NUMA to fix this issue.
Signed-off-by: Hoan Tran <Hoan@os.amperecomputing.com>
---
mm/page_alloc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index d66bc8a..6335505 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -1413,7 +1413,7 @@ int __meminit early_pfn_to_nid(unsigned long pfn)
}
#endif
-#ifdef CONFIG_NODES_SPAN_OTHER_NODES
+#ifdef CONFIG_NUMA
/* Only safe to use early in boot when initialisation is single-threaded */
static inline bool __meminit early_pfn_in_nid(unsigned long pfn, int node)
{
--
2.7.4
^ permalink raw reply related
* [PATCH v2 2/5] powerpc: Kconfig: Remove CONFIG_NODES_SPAN_OTHER_NODES
From: Hoan Tran OS @ 2019-07-11 23:25 UTC (permalink / raw)
To: Catalin Marinas, Will Deacon, Andrew Morton, Michal Hocko,
Vlastimil Babka, Oscar Salvador, Pavel Tatashin, Mike Rapoport,
Alexander Duyck, Benjamin Herrenschmidt, Paul Mackerras,
Michael Ellerman, Thomas Gleixner, Ingo Molnar, Borislav Petkov,
H . Peter Anvin, David S . Miller, Heiko Carstens, Vasily Gorbik,
Christian Borntraeger
Cc: linux-s390@vger.kernel.org, x86@kernel.org,
linux-kernel@vger.kernel.org, open list:MEMORY MANAGEMENT,
Hoan Tran OS, sparclinux@vger.kernel.org, Open Source Submission,
linuxppc-dev@lists.ozlabs.org,
linux-arm-kernel@lists.infradead.org
In-Reply-To: <1562887528-5896-1-git-send-email-Hoan@os.amperecomputing.com>
Remove CONFIG_NODES_SPAN_OTHER_NODES as it's enabled by
default with NUMA.
Signed-off-by: Hoan Tran <Hoan@os.amperecomputing.com>
---
arch/powerpc/Kconfig | 9 ---------
1 file changed, 9 deletions(-)
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index 8c1c636..bdde8bc 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -629,15 +629,6 @@ config ARCH_MEMORY_PROBE
def_bool y
depends on MEMORY_HOTPLUG
-# Some NUMA nodes have memory ranges that span
-# other nodes. Even though a pfn is valid and
-# between a node's start and end pfns, it may not
-# reside on that node. See memmap_init_zone()
-# for details.
-config NODES_SPAN_OTHER_NODES
- def_bool y
- depends on NEED_MULTIPLE_NODES
-
config STDBINUTILS
bool "Using standard binutils settings"
depends on 44x
--
2.7.4
^ permalink raw reply related
* [PATCH v2 3/5] x86: Kconfig: Remove CONFIG_NODES_SPAN_OTHER_NODES
From: Hoan Tran OS @ 2019-07-11 23:25 UTC (permalink / raw)
To: Catalin Marinas, Will Deacon, Andrew Morton, Michal Hocko,
Vlastimil Babka, Oscar Salvador, Pavel Tatashin, Mike Rapoport,
Alexander Duyck, Benjamin Herrenschmidt, Paul Mackerras,
Michael Ellerman, Thomas Gleixner, Ingo Molnar, Borislav Petkov,
H . Peter Anvin, David S . Miller, Heiko Carstens, Vasily Gorbik,
Christian Borntraeger
Cc: linux-s390@vger.kernel.org, x86@kernel.org,
linux-kernel@vger.kernel.org, open list:MEMORY MANAGEMENT,
Hoan Tran OS, sparclinux@vger.kernel.org, Open Source Submission,
linuxppc-dev@lists.ozlabs.org,
linux-arm-kernel@lists.infradead.org
In-Reply-To: <1562887528-5896-1-git-send-email-Hoan@os.amperecomputing.com>
Remove CONFIG_NODES_SPAN_OTHER_NODES as it's enabled
by default with NUMA.
Signed-off-by: Hoan Tran <Hoan@os.amperecomputing.com>
---
arch/x86/Kconfig | 9 ---------
1 file changed, 9 deletions(-)
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 2bbbd4d..fa9318c 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -1567,15 +1567,6 @@ config X86_64_ACPI_NUMA
---help---
Enable ACPI SRAT based node topology detection.
-# Some NUMA nodes have memory ranges that span
-# other nodes. Even though a pfn is valid and
-# between a node's start and end pfns, it may not
-# reside on that node. See memmap_init_zone()
-# for details.
-config NODES_SPAN_OTHER_NODES
- def_bool y
- depends on X86_64_ACPI_NUMA
-
config NUMA_EMU
bool "NUMA emulation"
depends on NUMA
--
2.7.4
^ permalink raw reply related
* [PATCH v2 4/5] sparc: Kconfig: Remove CONFIG_NODES_SPAN_OTHER_NODES
From: Hoan Tran OS @ 2019-07-11 23:25 UTC (permalink / raw)
To: Catalin Marinas, Will Deacon, Andrew Morton, Michal Hocko,
Vlastimil Babka, Oscar Salvador, Pavel Tatashin, Mike Rapoport,
Alexander Duyck, Benjamin Herrenschmidt, Paul Mackerras,
Michael Ellerman, Thomas Gleixner, Ingo Molnar, Borislav Petkov,
H . Peter Anvin, David S . Miller, Heiko Carstens, Vasily Gorbik,
Christian Borntraeger
Cc: linux-s390@vger.kernel.org, x86@kernel.org,
linux-kernel@vger.kernel.org, open list:MEMORY MANAGEMENT,
Hoan Tran OS, sparclinux@vger.kernel.org, Open Source Submission,
linuxppc-dev@lists.ozlabs.org,
linux-arm-kernel@lists.infradead.org
In-Reply-To: <1562887528-5896-1-git-send-email-Hoan@os.amperecomputing.com>
Remove CONFIG_NODES_SPAN_OTHER_NODES as it's enabled
by default with NUMA.
Signed-off-by: Hoan Tran <Hoan@os.amperecomputing.com>
---
arch/sparc/Kconfig | 9 ---------
1 file changed, 9 deletions(-)
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 26ab6f5..13449ea 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -291,15 +291,6 @@ config NODES_SHIFT
Specify the maximum number of NUMA Nodes available on the target
system. Increases memory reserved to accommodate various tables.
-# Some NUMA nodes have memory ranges that span
-# other nodes. Even though a pfn is valid and
-# between a node's start and end pfns, it may not
-# reside on that node. See memmap_init_zone()
-# for details.
-config NODES_SPAN_OTHER_NODES
- def_bool y
- depends on NEED_MULTIPLE_NODES
-
config ARCH_SELECT_MEMORY_MODEL
def_bool y if SPARC64
--
2.7.4
^ permalink raw reply related
* [PATCH v2 5/5] s390: Kconfig: Remove CONFIG_NODES_SPAN_OTHER_NODES
From: Hoan Tran OS @ 2019-07-11 23:25 UTC (permalink / raw)
To: Catalin Marinas, Will Deacon, Andrew Morton, Michal Hocko,
Vlastimil Babka, Oscar Salvador, Pavel Tatashin, Mike Rapoport,
Alexander Duyck, Benjamin Herrenschmidt, Paul Mackerras,
Michael Ellerman, Thomas Gleixner, Ingo Molnar, Borislav Petkov,
H . Peter Anvin, David S . Miller, Heiko Carstens, Vasily Gorbik,
Christian Borntraeger
Cc: linux-s390@vger.kernel.org, x86@kernel.org,
linux-kernel@vger.kernel.org, open list:MEMORY MANAGEMENT,
Hoan Tran OS, sparclinux@vger.kernel.org, Open Source Submission,
linuxppc-dev@lists.ozlabs.org,
linux-arm-kernel@lists.infradead.org
In-Reply-To: <1562887528-5896-1-git-send-email-Hoan@os.amperecomputing.com>
Remove CONFIG_NODES_SPAN_OTHER_NODES as it's enabled
by default with NUMA.
Signed-off-by: Hoan Tran <Hoan@os.amperecomputing.com>
---
arch/s390/Kconfig | 8 --------
1 file changed, 8 deletions(-)
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig
index 109243f..788a8e9 100644
--- a/arch/s390/Kconfig
+++ b/arch/s390/Kconfig
@@ -438,14 +438,6 @@ config HOTPLUG_CPU
can be controlled through /sys/devices/system/cpu/cpu#.
Say N if you want to disable CPU hotplug.
-# Some NUMA nodes have memory ranges that span
-# other nodes. Even though a pfn is valid and
-# between a node's start and end pfns, it may not
-# reside on that node. See memmap_init_zone()
-# for details. <- They meant memory holes!
-config NODES_SPAN_OTHER_NODES
- def_bool NUMA
-
config NUMA
bool "NUMA support"
depends on SMP && SCHED_TOPOLOGY
--
2.7.4
^ permalink raw reply related
* Re: [PATCH v2] powerpc/book3s/mm: Update Oops message to print the correct translation in use
From: Nicholas Piggin @ 2019-07-12 0:43 UTC (permalink / raw)
To: Aneesh Kumar K.V, mpe, paulus; +Cc: linuxppc-dev
In-Reply-To: <20190711145814.17970-1-aneesh.kumar@linux.ibm.com>
Aneesh Kumar K.V's on July 12, 2019 12:58 am:
> Avoids confusion when printing Oops message like below
>
> Faulting instruction address: 0xc00000000008bdb4
> Oops: Kernel access of bad area, sig: 11 [#1]
> LE PAGE_SIZE=64K MMU=Radix MMU=Hash SMP NR_CPUS=2048 NUMA PowerNV
>
> This was because we never clear the MMU_FTR_HPTE_TABLE feature flag
> even if we run with radix translation. It was discussed that we should
> look at this feature flag as an indication of the capability to run
> hash translation and we should not clear the flag even if we run in
> radix translation. All the code paths check for radix_enabled() check and
> if found true consider we are running with radix translation. Follow the
> same sequence for finding the MMU translation string to be used in Oops
> message.
>
> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com>
> ---
>
> Changes from V1:
> * Don't clear the HPTE feature flag.
Thanks,
Acked-by: Nicholas Piggin <npiggin@gmail.com>
>
> arch/powerpc/kernel/traps.c | 15 +++++++++++----
> 1 file changed, 11 insertions(+), 4 deletions(-)
>
> diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c
> index 11caa0291254..b181d6860f28 100644
> --- a/arch/powerpc/kernel/traps.c
> +++ b/arch/powerpc/kernel/traps.c
> @@ -250,15 +250,22 @@ static void oops_end(unsigned long flags, struct pt_regs *regs,
> }
> NOKPROBE_SYMBOL(oops_end);
>
> +static char *get_mmu_str(void)
> +{
> + if (early_radix_enabled())
> + return " MMU=Radix";
> + if (early_mmu_has_feature(MMU_FTR_HPTE_TABLE))
> + return " MMU=Hash";
> + return "";
> +}
> +
> static int __die(const char *str, struct pt_regs *regs, long err)
> {
> printk("Oops: %s, sig: %ld [#%d]\n", str, err, ++die_counter);
>
> - printk("%s PAGE_SIZE=%luK%s%s%s%s%s%s%s %s\n",
> + printk("%s PAGE_SIZE=%luK%s%s%s%s%s%s %s\n",
> IS_ENABLED(CONFIG_CPU_LITTLE_ENDIAN) ? "LE" : "BE",
> - PAGE_SIZE / 1024,
> - early_radix_enabled() ? " MMU=Radix" : "",
> - early_mmu_has_feature(MMU_FTR_HPTE_TABLE) ? " MMU=Hash" : "",
> + PAGE_SIZE / 1024, get_mmu_str(),
> IS_ENABLED(CONFIG_PREEMPT) ? " PREEMPT" : "",
> IS_ENABLED(CONFIG_SMP) ? " SMP" : "",
> IS_ENABLED(CONFIG_SMP) ? (" NR_CPUS=" __stringify(NR_CPUS)) : "",
> --
> 2.21.0
>
>
^ permalink raw reply
* Re: [PATCH v4 1/8] KVM: PPC: Ultravisor: Introduce the MSR_S bit
From: Nicholas Piggin @ 2019-07-12 0:57 UTC (permalink / raw)
To: Claudio Carvalho, linuxppc-dev
Cc: Madhavan Srinivasan, Michael Anderson, Ram Pai, kvm-ppc,
Bharata B Rao, Ryan Grimm, Sukadev Bhattiprolu, Thiago Bauermann,
Anshuman Khandual
In-Reply-To: <20190628200825.31049-2-cclaudio@linux.ibm.com>
Claudio Carvalho's on June 29, 2019 6:08 am:
> From: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
>
> The ultravisor processor mode is introduced in POWER platforms that
> supports the Protected Execution Facility (PEF). Ultravisor is higher
> privileged than hypervisor mode.
>
> In PEF enabled platforms, the MSR_S bit is used to indicate if the
> thread is in secure state. With the MSR_S bit, the privilege state of
> the thread is now determined by MSR_S, MSR_HV and MSR_PR, as follows:
>
> S HV PR
> -----------------------
> 0 x 1 problem
> 1 0 1 problem
> x x 0 privileged
> x 1 0 hypervisor
> 1 1 0 ultravisor
> 1 1 1 reserved
What does this table mean? I thought 'x' meant either, but in that
case there are several states that can apply to the same
combination of bits.
Would it be clearer to rearrange the table so the columns are the HV
and PR bits we know and love, plus the effect of S=1 on each of them?
HV PR S=0 S=1
---------------------------------------------
0 0 privileged privileged (secure guest kernel)
0 1 problem problem (secure guest userspace)
1 0 hypervisor ultravisor
1 1 problem reserved
Is that accurate?
>
> The hypervisor doesn't (and can't) run with the MSR_S bit set, but a
> secure guest and the ultravisor firmware do.
>
> Signed-off-by: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
> Signed-off-by: Ram Pai <linuxram@us.ibm.com>
> [ Update the commit message ]
> Signed-off-by: Claudio Carvalho <cclaudio@linux.ibm.com>
> ---
> arch/powerpc/include/asm/reg.h | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/arch/powerpc/include/asm/reg.h b/arch/powerpc/include/asm/reg.h
> index 10caa145f98b..39b4c0a519f5 100644
> --- a/arch/powerpc/include/asm/reg.h
> +++ b/arch/powerpc/include/asm/reg.h
> @@ -38,6 +38,7 @@
> #define MSR_TM_LG 32 /* Trans Mem Available */
> #define MSR_VEC_LG 25 /* Enable AltiVec */
> #define MSR_VSX_LG 23 /* Enable VSX */
> +#define MSR_S_LG 22 /* Secure VM bit */
> #define MSR_POW_LG 18 /* Enable Power Management */
> #define MSR_WE_LG 18 /* Wait State Enable */
> #define MSR_TGPR_LG 17 /* TLB Update registers in use */
> @@ -71,11 +72,13 @@
> #define MSR_SF __MASK(MSR_SF_LG) /* Enable 64 bit mode */
> #define MSR_ISF __MASK(MSR_ISF_LG) /* Interrupt 64b mode valid on 630 */
> #define MSR_HV __MASK(MSR_HV_LG) /* Hypervisor state */
> +#define MSR_S __MASK(MSR_S_LG) /* Secure state */
This is a real nitpick, but why two different comments for the bit
number and the mask?
^ permalink raw reply
* Re: [PATCH v4 1/8] KVM: PPC: Ultravisor: Introduce the MSR_S bit
From: Nicholas Piggin @ 2019-07-12 0:59 UTC (permalink / raw)
To: Claudio Carvalho, linuxppc-dev, Michael Ellerman
Cc: Madhavan Srinivasan, Michael Anderson, Ram Pai, kvm-ppc,
Bharata B Rao, Ryan Grimm, Sukadev Bhattiprolu, Thiago Bauermann,
Anshuman Khandual
In-Reply-To: <87muhkg258.fsf@concordia.ellerman.id.au>
Michael Ellerman's on July 11, 2019 10:57 pm:
> Claudio Carvalho <cclaudio@linux.ibm.com> writes:
>> From: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
>>
>> The ultravisor processor mode is introduced in POWER platforms that
>> supports the Protected Execution Facility (PEF). Ultravisor is higher
>> privileged than hypervisor mode.
>>
>> In PEF enabled platforms, the MSR_S bit is used to indicate if the
>> thread is in secure state. With the MSR_S bit, the privilege state of
>> the thread is now determined by MSR_S, MSR_HV and MSR_PR, as follows:
>>
>> S HV PR
>> -----------------------
>> 0 x 1 problem
>> 1 0 1 problem
>> x x 0 privileged
>> x 1 0 hypervisor
>> 1 1 0 ultravisor
>> 1 1 1 reserved
>
> What are you trying to express with the 'x' value?
>
> I guess you mean it as "either" or "don't care" - but then you have
> cases where it could only have one value, such as hypervisor. I think it
> would be clearer if you spelled it out more explicitly.
>
>> The hypervisor doesn't (and can't) run with the MSR_S bit set, but a
>> secure guest and the ultravisor firmware do.
>
> I know you're trying to be helpful, but this comment is really just
> confusing to someone who doesn't have all the documentation.
>
> I'd really like to see something in Documentation/powerpc describing at
> least the outline of how the system works. I'm pretty sure most of that
> is public, so even if it's mostly a list of references to other
> documentations or presentations that would be fine. But I'm not really
> happy with a whole new processor mode appearing with zero documentation
> in the tree.
>
>> Signed-off-by: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
>> Signed-off-by: Ram Pai <linuxram@us.ibm.com>
>> [ Update the commit message ]
>
> It's normal to prefix these comments with your handle to make it clear
> who is saying it.
>
>> Signed-off-by: Claudio Carvalho <cclaudio@linux.ibm.com>
>> ---
>> arch/powerpc/include/asm/reg.h | 3 +++
>> 1 file changed, 3 insertions(+)
>>
>> diff --git a/arch/powerpc/include/asm/reg.h b/arch/powerpc/include/asm/reg.h
>> index 10caa145f98b..39b4c0a519f5 100644
>> --- a/arch/powerpc/include/asm/reg.h
>> +++ b/arch/powerpc/include/asm/reg.h
>> @@ -38,6 +38,7 @@
>> #define MSR_TM_LG 32 /* Trans Mem Available */
>> #define MSR_VEC_LG 25 /* Enable AltiVec */
>> #define MSR_VSX_LG 23 /* Enable VSX */
>> +#define MSR_S_LG 22 /* Secure VM bit */
>
> I don't think that's the best description, because it's also the
> Ultravisor bit when MSR[HV] = 1.
>
> So "Secure state" as you have below would be better IMO.
Ooops I see Michael covered everything I wrote, sorry for the noise
I missed the thread.
Thanks,
Nick
^ permalink raw reply
* Re: [PATCH v4 3/8] KVM: PPC: Ultravisor: Add generic ultravisor call handler
From: Nicholas Piggin @ 2019-07-12 1:18 UTC (permalink / raw)
To: Claudio Carvalho, linuxppc-dev
Cc: Madhavan Srinivasan, Michael Anderson, Ram Pai, kvm-ppc,
Bharata B Rao, Ryan Grimm, Sukadev Bhattiprolu, Thiago Bauermann,
Anshuman Khandual
In-Reply-To: <20190628200825.31049-4-cclaudio@linux.ibm.com>
Claudio Carvalho's on June 29, 2019 6:08 am:
> From: Ram Pai <linuxram@us.ibm.com>
>
> Add the ucall() function, which can be used to make ultravisor calls
> with varied number of in and out arguments. Ultravisor calls can be made
> from the host or guests.
>
> This copies the implementation of plpar_hcall().
>
> Signed-off-by: Ram Pai <linuxram@us.ibm.com>
> [ Change ucall.S to not save CR, rename and move headers, build ucall.S
> if CONFIG_PPC_POWERNV set, use R3 for the ucall number and add some
> comments in the code ]
> Signed-off-by: Claudio Carvalho <cclaudio@linux.ibm.com>
> ---
> arch/powerpc/include/asm/ultravisor-api.h | 20 +++++++++++++++
> arch/powerpc/include/asm/ultravisor.h | 20 +++++++++++++++
> arch/powerpc/kernel/Makefile | 2 +-
> arch/powerpc/kernel/ucall.S | 30 +++++++++++++++++++++++
> arch/powerpc/kernel/ultravisor.c | 4 +++
> 5 files changed, 75 insertions(+), 1 deletion(-)
> create mode 100644 arch/powerpc/include/asm/ultravisor-api.h
> create mode 100644 arch/powerpc/kernel/ucall.S
>
> diff --git a/arch/powerpc/include/asm/ultravisor-api.h b/arch/powerpc/include/asm/ultravisor-api.h
> new file mode 100644
> index 000000000000..49e766adabc7
> --- /dev/null
> +++ b/arch/powerpc/include/asm/ultravisor-api.h
> @@ -0,0 +1,20 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +/*
> + * Ultravisor API.
> + *
> + * Copyright 2019, IBM Corporation.
> + *
> + */
> +#ifndef _ASM_POWERPC_ULTRAVISOR_API_H
> +#define _ASM_POWERPC_ULTRAVISOR_API_H
> +
> +#include <asm/hvcall.h>
> +
> +/* Return codes */
> +#define U_NOT_AVAILABLE H_NOT_AVAILABLE
> +#define U_SUCCESS H_SUCCESS
> +#define U_FUNCTION H_FUNCTION
> +#define U_PARAMETER H_PARAMETER
> +
> +#endif /* _ASM_POWERPC_ULTRAVISOR_API_H */
> +
> diff --git a/arch/powerpc/include/asm/ultravisor.h b/arch/powerpc/include/asm/ultravisor.h
> index e5009b0d84ea..a78a2dacfd0b 100644
> --- a/arch/powerpc/include/asm/ultravisor.h
> +++ b/arch/powerpc/include/asm/ultravisor.h
> @@ -8,8 +8,28 @@
> #ifndef _ASM_POWERPC_ULTRAVISOR_H
> #define _ASM_POWERPC_ULTRAVISOR_H
>
> +#include <asm/ultravisor-api.h>
> +
> +#if !defined(__ASSEMBLY__)
> +
> /* Internal functions */
> extern int early_init_dt_scan_ultravisor(unsigned long node, const char *uname,
> int depth, void *data);
>
> +/* API functions */
> +#define UCALL_BUFSIZE 4
> +/**
> + * ucall: Make a powerpc ultravisor call.
> + * @opcode: The ultravisor call to make.
> + * @retbuf: Buffer to store up to 4 return arguments in.
> + *
> + * This call supports up to 6 arguments and 4 return arguments. Use
> + * UCALL_BUFSIZE to size the return argument buffer.
> + */
> +#if defined(CONFIG_PPC_POWERNV)
> +long ucall(unsigned long opcode, unsigned long *retbuf, ...);
> +#endif
> +
> +#endif /* !__ASSEMBLY__ */
> +
> #endif /* _ASM_POWERPC_ULTRAVISOR_H */
> diff --git a/arch/powerpc/kernel/Makefile b/arch/powerpc/kernel/Makefile
> index f0caa302c8c0..f28baccc0a79 100644
> --- a/arch/powerpc/kernel/Makefile
> +++ b/arch/powerpc/kernel/Makefile
> @@ -154,7 +154,7 @@ endif
>
> obj-$(CONFIG_EPAPR_PARAVIRT) += epapr_paravirt.o epapr_hcalls.o
> obj-$(CONFIG_KVM_GUEST) += kvm.o kvm_emul.o
> -obj-$(CONFIG_PPC_POWERNV) += ultravisor.o
> +obj-$(CONFIG_PPC_POWERNV) += ultravisor.o ucall.o
>
> # Disable GCOV, KCOV & sanitizers in odd or sensitive code
> GCOV_PROFILE_prom_init.o := n
> diff --git a/arch/powerpc/kernel/ucall.S b/arch/powerpc/kernel/ucall.S
> new file mode 100644
> index 000000000000..1678f6eb7230
> --- /dev/null
> +++ b/arch/powerpc/kernel/ucall.S
> @@ -0,0 +1,30 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +/*
> + * Generic code to perform an ultravisor call.
> + *
> + * Copyright 2019, IBM Corporation.
> + *
> + */
> +#include <asm/ppc_asm.h>
> +
> +/*
> + * This function is based on the plpar_hcall()
A better comment might be to specify calling convention.
> + */
> +_GLOBAL_TOC(ucall)
> + std r4,STK_PARAM(R4)(r1) /* Save ret buffer */
> + mr r4,r5
> + mr r5,r6
> + mr r6,r7
> + mr r7,r8
> + mr r8,r9
> + mr r9,r10
I guess this is fine, is there any particular reason that you made
the call convention this way rather than leaving regs in place and
r4 is a scratch?
> +
> + sc 2 /* Invoke the ultravisor */
> +
> + ld r12,STK_PARAM(R4)(r1)
> + std r4, 0(r12)
> + std r5, 8(r12)
> + std r6, 16(r12)
> + std r7, 24(r12)
> +
^ permalink raw reply
* [Bug 204125] FTBFS on ppc64 big endian and gcc9 because of -mcall-aixdesc and missing __linux__
From: bugzilla-daemon @ 2019-07-12 1:41 UTC (permalink / raw)
To: linuxppc-dev
In-Reply-To: <bug-204125-206035@https.bugzilla.kernel.org/>
https://bugzilla.kernel.org/show_bug.cgi?id=204125
--- Comment #6 from Daniel Kolesa (linux@octaforge.org) ---
This appears to be the actual reason why the kernel fails to link without
-mcall-aixdesc:
<smaeul> specifically it's the -mcall-aixdesc that's problematic. but removing
it breaks recordmcount.pl, because nm is looking in the wrong section for
symbols
<smaeul> so it fails to recognize static symbols and the kernel fails to link
<smaeul> (quick hack is to update the local-symbol regex from "t" to "d" in
recordmcount.pl)
--
You are receiving this mail because:
You are watching the assignee of the bug.
^ permalink raw reply
* Re: [PATCH v4 7/8] KVM: PPC: Ultravisor: Enter a secure guest
From: Nicholas Piggin @ 2019-07-12 2:03 UTC (permalink / raw)
To: Claudio Carvalho, linuxppc-dev
Cc: Madhavan Srinivasan, Michael Anderson, Ram Pai, kvm-ppc,
Bharata B Rao, Ryan Grimm, Sukadev Bhattiprolu, Thiago Bauermann,
Anshuman Khandual
In-Reply-To: <20190628200825.31049-8-cclaudio@linux.ibm.com>
Claudio Carvalho's on June 29, 2019 6:08 am:
> From: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
>
> To enter a secure guest, we have to go through the ultravisor, therefore
> we do a ucall when we are entering a secure guest.
>
> This change is needed for any sort of entry to the secure guest from the
> hypervisor, whether it is a return from an hcall, a return from a
> hypervisor interrupt, or the first time that a secure guest vCPU is run.
>
> If we are returning from an hcall, the results are already in the
> appropriate registers R3:12, except for R3, R6 and R7. R3 has the status
> of the reflected hcall, therefore we move it to R0 for the ultravisor and
> set R3 to the UV_RETURN ucall number. R6,7 were used as temporary
> registers, hence we restore them.
>
> Have fast_guest_return check the kvm_arch.secure_guest field so that a
> new CPU enters UV when started (in response to a RTAS start-cpu call).
>
> Thanks to input from Paul Mackerras, Ram Pai and Mike Anderson.
>
> Signed-off-by: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
> [ Pass SRR1 in r11 for UV_RETURN, fix kvmppc_msr_interrupt to preserve
> the MSR_S bit ]
> Signed-off-by: Paul Mackerras <paulus@ozlabs.org>
> [ Fix UV_RETURN ucall number and arch.secure_guest check ]
> Signed-off-by: Ram Pai <linuxram@us.ibm.com>
> [ Save the actual R3 in R0 for the ultravisor and use R3 for the
> UV_RETURN ucall number. Update commit message and ret_to_ultra comment ]
> Signed-off-by: Claudio Carvalho <cclaudio@linux.ibm.com>
> ---
> arch/powerpc/include/asm/kvm_host.h | 1 +
> arch/powerpc/include/asm/ultravisor-api.h | 1 +
> arch/powerpc/kernel/asm-offsets.c | 1 +
> arch/powerpc/kvm/book3s_hv_rmhandlers.S | 40 +++++++++++++++++++----
> 4 files changed, 37 insertions(+), 6 deletions(-)
>
> diff --git a/arch/powerpc/include/asm/kvm_host.h b/arch/powerpc/include/asm/kvm_host.h
> index 013c76a0a03e..184becb62ea4 100644
> --- a/arch/powerpc/include/asm/kvm_host.h
> +++ b/arch/powerpc/include/asm/kvm_host.h
> @@ -294,6 +294,7 @@ struct kvm_arch {
> cpumask_t cpu_in_guest;
> u8 radix;
> u8 fwnmi_enabled;
> + u8 secure_guest;
> bool threads_indep;
> bool nested_enable;
> pgd_t *pgtable;
> diff --git a/arch/powerpc/include/asm/ultravisor-api.h b/arch/powerpc/include/asm/ultravisor-api.h
> index 141940771add..7c4d0b4ced12 100644
> --- a/arch/powerpc/include/asm/ultravisor-api.h
> +++ b/arch/powerpc/include/asm/ultravisor-api.h
> @@ -19,5 +19,6 @@
>
> /* opcodes */
> #define UV_WRITE_PATE 0xF104
> +#define UV_RETURN 0xF11C
>
> #endif /* _ASM_POWERPC_ULTRAVISOR_API_H */
> diff --git a/arch/powerpc/kernel/asm-offsets.c b/arch/powerpc/kernel/asm-offsets.c
> index 8e02444e9d3d..44742724513e 100644
> --- a/arch/powerpc/kernel/asm-offsets.c
> +++ b/arch/powerpc/kernel/asm-offsets.c
> @@ -508,6 +508,7 @@ int main(void)
> OFFSET(KVM_VRMA_SLB_V, kvm, arch.vrma_slb_v);
> OFFSET(KVM_RADIX, kvm, arch.radix);
> OFFSET(KVM_FWNMI, kvm, arch.fwnmi_enabled);
> + OFFSET(KVM_SECURE_GUEST, kvm, arch.secure_guest);
> OFFSET(VCPU_DSISR, kvm_vcpu, arch.shregs.dsisr);
> OFFSET(VCPU_DAR, kvm_vcpu, arch.shregs.dar);
> OFFSET(VCPU_VPA, kvm_vcpu, arch.vpa.pinned_addr);
> diff --git a/arch/powerpc/kvm/book3s_hv_rmhandlers.S b/arch/powerpc/kvm/book3s_hv_rmhandlers.S
> index cffb365d9d02..89813ca987c2 100644
> --- a/arch/powerpc/kvm/book3s_hv_rmhandlers.S
> +++ b/arch/powerpc/kvm/book3s_hv_rmhandlers.S
> @@ -36,6 +36,7 @@
> #include <asm/asm-compat.h>
> #include <asm/feature-fixups.h>
> #include <asm/cpuidle.h>
> +#include <asm/ultravisor-api.h>
>
> /* Sign-extend HDEC if not on POWER9 */
> #define EXTEND_HDEC(reg) \
> @@ -1092,16 +1093,12 @@ BEGIN_FTR_SECTION
> END_FTR_SECTION_IFSET(CPU_FTR_HAS_PPR)
>
> ld r5, VCPU_LR(r4)
> - ld r6, VCPU_CR(r4)
> mtlr r5
> - mtcr r6
>
> ld r1, VCPU_GPR(R1)(r4)
> ld r2, VCPU_GPR(R2)(r4)
> ld r3, VCPU_GPR(R3)(r4)
> ld r5, VCPU_GPR(R5)(r4)
> - ld r6, VCPU_GPR(R6)(r4)
> - ld r7, VCPU_GPR(R7)(r4)
> ld r8, VCPU_GPR(R8)(r4)
> ld r9, VCPU_GPR(R9)(r4)
> ld r10, VCPU_GPR(R10)(r4)
Just to try to be less arbitrary about things, could you use regs
adjacent to r4? Generally good because then it has a chance to get
our loads paired up (which may not help some CPUs).
Thanks,
Nick
^ permalink raw reply
* [Bug 204125] FTBFS on ppc64 big endian and gcc9 because of -mcall-aixdesc and missing __linux__
From: bugzilla-daemon @ 2019-07-12 2:11 UTC (permalink / raw)
To: linuxppc-dev
In-Reply-To: <bug-204125-206035@https.bugzilla.kernel.org/>
https://bugzilla.kernel.org/show_bug.cgi?id=204125
--- Comment #7 from Daniel Kolesa (linux@octaforge.org) ---
Btw, turns out an ELFv2 BE kernel requires little to no changes, these two
commits produce a working kernel:
https://github.com/smaeul/linux/commit/7a9d26b7be68c21fd1be524ee4bf797d7b8c3c37
https://github.com/smaeul/linux/commit/c972894da682eff8905d9dbc7efd1bd0f1051bbf
--
You are receiving this mail because:
You are watching the assignee of the bug.
^ permalink raw reply
* Re: [PATCH v2 0/5] mm: Enable CONFIG_NODES_SPAN_OTHER_NODES by default for NUMA
From: Matthew Wilcox @ 2019-07-12 2:45 UTC (permalink / raw)
To: Hoan Tran OS
Cc: Michal Hocko, Catalin Marinas, Heiko Carstens,
open list:MEMORY MANAGEMENT, Paul Mackerras, H . Peter Anvin,
sparclinux@vger.kernel.org, Alexander Duyck,
linux-s390@vger.kernel.org, x86@kernel.org, Mike Rapoport,
Christian Borntraeger, Ingo Molnar, Vlastimil Babka,
Open Source Submission, Pavel Tatashin, Vasily Gorbik,
Will Deacon, Borislav Petkov, Thomas Gleixner,
linux-arm-kernel@lists.infradead.org, Oscar Salvador,
linux-kernel@vger.kernel.org, Andrew Morton,
linuxppc-dev@lists.ozlabs.org, David S . Miller
In-Reply-To: <1562887528-5896-1-git-send-email-Hoan@os.amperecomputing.com>
On Thu, Jul 11, 2019 at 11:25:44PM +0000, Hoan Tran OS wrote:
> In NUMA layout which nodes have memory ranges that span across other nodes,
> the mm driver can detect the memory node id incorrectly.
>
> For example, with layout below
> Node 0 address: 0000 xxxx 0000 xxxx
> Node 1 address: xxxx 1111 xxxx 1111
>
> Note:
> - Memory from low to high
> - 0/1: Node id
> - x: Invalid memory of a node
>
> When mm probes the memory map, without CONFIG_NODES_SPAN_OTHER_NODES
> config, mm only checks the memory validity but not the node id.
> Because of that, Node 1 also detects the memory from node 0 as below
> when it scans from the start address to the end address of node 1.
>
> Node 0 address: 0000 xxxx xxxx xxxx
> Node 1 address: xxxx 1111 1111 1111
>
> This layout could occur on any architecture. This patch enables
> CONFIG_NODES_SPAN_OTHER_NODES by default for NUMA to fix this issue.
How do you know it could occur on any architecture? Surely you should
just enable this for the architecture where you've noticed the problem.
^ permalink raw reply
* [PATCH v6] cpufreq/pasemi: fix an use-after-free in pas_cpufreq_cpu_init()
From: Wen Yang @ 2019-07-12 2:44 UTC (permalink / raw)
To: rjw
Cc: wang.yi59, linux-pm, viresh.kumar, linux-kernel, xue.zhihong,
cheng.shengyu, linuxppc-dev, Wen Yang
The cpu variable is still being used in the of_get_property() call
after the of_node_put() call, which may result in use-after-free.
Fixes: a9acc26b75f6 ("cpufreq/pasemi: fix possible object reference leak")
Signed-off-by: Wen Yang <wen.yang99@zte.com.cn>
Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net>
Cc: Viresh Kumar <viresh.kumar@linaro.org>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: linuxppc-dev@lists.ozlabs.org
Cc: linux-pm@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
---
v6: keep the blank line and fix warning: label 'out_unmap_sdcpwr' defined but not used.
v5: put together the code to get, use, and release cpu device_node.
v4: restore the blank line.
v3: fix a leaked reference.
v2: clean up the code according to the advice of viresh.
drivers/cpufreq/pasemi-cpufreq.c | 26 ++++++++++++++------------
1 file changed, 14 insertions(+), 12 deletions(-)
diff --git a/drivers/cpufreq/pasemi-cpufreq.c b/drivers/cpufreq/pasemi-cpufreq.c
index 6b1e4ab..7d557f9 100644
--- a/drivers/cpufreq/pasemi-cpufreq.c
+++ b/drivers/cpufreq/pasemi-cpufreq.c
@@ -131,10 +131,18 @@ static int pas_cpufreq_cpu_init(struct cpufreq_policy *policy)
int err = -ENODEV;
cpu = of_get_cpu_node(policy->cpu, NULL);
+ if (!cpu)
+ goto out;
+ max_freqp = of_get_property(cpu, "clock-frequency", NULL);
of_node_put(cpu);
- if (!cpu)
+ if (!max_freqp) {
+ err = -EINVAL;
goto out;
+ }
+
+ /* we need the freq in kHz */
+ max_freq = *max_freqp / 1000;
dn = of_find_compatible_node(NULL, NULL, "1682m-sdc");
if (!dn)
@@ -171,16 +179,6 @@ static int pas_cpufreq_cpu_init(struct cpufreq_policy *policy)
}
pr_debug("init cpufreq on CPU %d\n", policy->cpu);
-
- max_freqp = of_get_property(cpu, "clock-frequency", NULL);
- if (!max_freqp) {
- err = -EINVAL;
- goto out_unmap_sdcpwr;
- }
-
- /* we need the freq in kHz */
- max_freq = *max_freqp / 1000;
-
pr_debug("max clock-frequency is at %u kHz\n", max_freq);
pr_debug("initializing frequency table\n");
@@ -196,7 +194,11 @@ static int pas_cpufreq_cpu_init(struct cpufreq_policy *policy)
policy->cur = pas_freqs[cur_astate].frequency;
ppc_proc_freq = policy->cur * 1000ul;
- return cpufreq_generic_init(policy, pas_freqs, get_gizmo_latency());
+ err = cpufreq_generic_init(policy, pas_freqs, get_gizmo_latency());
+ if (err)
+ goto out_unmap_sdcpwr;
+
+ return 0;
out_unmap_sdcpwr:
iounmap(sdcpwr_mapbase);
--
2.9.5
^ permalink raw reply related
* [PATCH 07/12] Documentation/parisc: repointer docs to Documentation/arch/
From: Alex Shi @ 2019-07-12 2:20 UTC (permalink / raw)
To: linux-doc, Jonathan Corbet
Cc: linux-s390, linux-fbdev, linux-omap, linux-ia64, linux-scsi,
linux-parisc, linux-sh, linux-kernel, linux-mips,
linux-samsung-soc, kvm, Mauro Carvalho Chehab, linux-riscv,
Alex Shi, linuxppc-dev, linux-stm32, linux-arm-kernel
In-Reply-To: <20190712022018.27989-1-alex.shi@linux.alibaba.com>
Since we move Documentation/parisc docs to Documentation/arch/parisc
dir, redirect the doc pointer to them.
Signed-off-by: Alex Shi <alex.shi@linux.alibaba.com>
Cc: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Cc: linux-kernel@vger.kernel.org
---
MAINTAINERS | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/MAINTAINERS b/MAINTAINERS
index 03a8c687f87f..e1aad1b8224c 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -12000,7 +12000,7 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/jejb/parisc-2.6.git
T: git git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux.git
S: Maintained
F: arch/parisc/
-F: Documentation/parisc/
+F: Documentation/arch/parisc/
F: drivers/parisc/
F: drivers/char/agp/parisc-agp.c
F: drivers/input/serio/gscps2.c
--
2.19.1.856.g8858448bb
^ permalink raw reply related
* [PATCH 09/12] Dcumentation/sh: repointer docs to Documentation/arch/
From: Alex Shi @ 2019-07-12 2:20 UTC (permalink / raw)
To: linux-doc, Jonathan Corbet
Cc: linux-s390, linux-fbdev, linux-omap, linux-ia64, linux-scsi,
linux-parisc, linux-sh, linux-kernel, linux-mips,
linux-samsung-soc, kvm, linux-riscv, Alex Shi, linuxppc-dev,
linux-stm32, linux-arm-kernel
In-Reply-To: <20190712022018.27989-1-alex.shi@linux.alibaba.com>
Since we move Documentation/sh docs to Documentation/arch/sh
dir, redirect the doc pointer to them.
Signed-off-by: Alex Shi <alex.shi@linux.alibaba.com>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: linux-doc@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-sh@vger.kernel.org
---
Documentation/conf.py | 2 +-
MAINTAINERS | 2 +-
arch/sh/Kconfig.cpu | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/Documentation/conf.py b/Documentation/conf.py
index 3b2397bcb565..8bbe421c1d97 100644
--- a/Documentation/conf.py
+++ b/Documentation/conf.py
@@ -402,7 +402,7 @@ latex_documents = [
'The kernel development community', 'manual'),
('security/index', 'security.tex', 'The kernel security subsystem manual',
'The kernel development community', 'manual'),
- ('sh/index', 'sh.tex', 'SuperH architecture implementation manual',
+ ('arch/sh/index', 'sh.tex', 'SuperH architecture implementation manual',
'The kernel development community', 'manual'),
('sound/index', 'sound.tex', 'Linux Sound Subsystem Documentation',
'The kernel development community', 'manual'),
diff --git a/MAINTAINERS b/MAINTAINERS
index 7a245d3f02fd..84448d5838b7 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -15169,7 +15169,7 @@ M: Rich Felker <dalias@libc.org>
L: linux-sh@vger.kernel.org
Q: http://patchwork.kernel.org/project/linux-sh/list/
S: Maintained
-F: Documentation/sh/
+F: Documentation/arch/sh/
F: arch/sh/
F: drivers/sh/
diff --git a/arch/sh/Kconfig.cpu b/arch/sh/Kconfig.cpu
index 4a4edc7e03d4..fdc8b565241b 100644
--- a/arch/sh/Kconfig.cpu
+++ b/arch/sh/Kconfig.cpu
@@ -94,7 +94,7 @@ config CPU_HAS_SR_RB
that are lacking this bit must have another method in place for
accomplishing what is taken care of by the banked registers.
- See <file:Documentation/sh/register-banks.txt> for further
+ See <file:Documentation/arch/sh/register-banks.txt> for further
information on SR.RB and register banking in the kernel in general.
config CPU_HAS_PTEAEX
--
2.19.1.856.g8858448bb
^ permalink raw reply related
* [PATCH 02/12] Documentation/arm: repointer docs to Documentation/arch/arm
From: Alex Shi @ 2019-07-12 2:20 UTC (permalink / raw)
To: linux-doc, Jonathan Corbet
Cc: linux-s390, linux-fbdev, linux-omap, linux-ia64, linux-scsi,
linux-parisc, linux-sh, linux-kernel, Krzysztof Kozlowski,
linux-mips, linux-serial, linux-samsung-soc, Kukjin Kim, kvm,
linux-input, linux-riscv, Alex Shi, linuxppc-dev, linux-stm32,
linux-arm-kernel, linux-crypto
In-Reply-To: <20190712022018.27989-1-alex.shi@linux.alibaba.com>
Since we move 'arm/arm64' docs to Documentation/arch/{arm,arm64} dir,
redirect the doc pointer to them.
Signed-off-by: Alex Shi <alex.shi@linux.alibaba.com>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Kukjin Kim <kgene@kernel.org>
Cc: Krzysztof Kozlowski <krzk@kernel.org>
Cc: linux-doc@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-samsung-soc@vger.kernel.org
Cc: linux-crypto@vger.kernel.org
Cc: linux-input@vger.kernel.org
Cc: linux-serial@vger.kernel.org
---
Documentation/arch/arm/Samsung-S3C24XX/GPIO.txt | 2 +-
.../arch/arm/Samsung-S3C24XX/Overview.txt | 6 +++---
Documentation/arch/arm/Samsung/GPIO.txt | 2 +-
Documentation/arch/arm/Samsung/Overview.txt | 4 ++--
Documentation/devicetree/bindings/arm/xen.txt | 2 +-
Documentation/devicetree/booting-without-of.txt | 4 ++--
Documentation/translations/zh_CN/arm/Booting | 4 ++--
.../translations/zh_CN/arm/kernel_user_helpers.txt | 4 ++--
MAINTAINERS | 6 +++---
arch/arm/Kconfig | 2 +-
arch/arm/common/mcpm_entry.c | 2 +-
arch/arm/common/mcpm_head.S | 2 +-
arch/arm/common/vlock.S | 2 +-
arch/arm/include/asm/setup.h | 2 +-
arch/arm/include/uapi/asm/setup.h | 2 +-
arch/arm/kernel/entry-armv.S | 2 +-
arch/arm/mach-exynos/common.h | 2 +-
arch/arm/mach-ixp4xx/Kconfig | 14 +++++++-------
arch/arm/mach-s3c24xx/pm.c | 2 +-
arch/arm/mach-sti/Kconfig | 2 +-
arch/arm/mm/Kconfig | 4 ++--
arch/arm/plat-samsung/Kconfig | 6 +++---
arch/arm/tools/mach-types | 2 +-
arch/arm64/Kconfig | 2 +-
arch/arm64/kernel/kuser32.S | 2 +-
arch/mips/bmips/setup.c | 2 +-
drivers/crypto/sunxi-ss/sun4i-ss-cipher.c | 2 +-
drivers/crypto/sunxi-ss/sun4i-ss-core.c | 2 +-
drivers/crypto/sunxi-ss/sun4i-ss-hash.c | 2 +-
drivers/crypto/sunxi-ss/sun4i-ss.h | 2 +-
drivers/input/touchscreen/sun4i-ts.c | 2 +-
drivers/tty/serial/Kconfig | 2 +-
32 files changed, 49 insertions(+), 49 deletions(-)
diff --git a/Documentation/arch/arm/Samsung-S3C24XX/GPIO.txt b/Documentation/arch/arm/Samsung-S3C24XX/GPIO.txt
index e8f918b96123..542a95cd82e7 100644
--- a/Documentation/arch/arm/Samsung-S3C24XX/GPIO.txt
+++ b/Documentation/arch/arm/Samsung-S3C24XX/GPIO.txt
@@ -12,7 +12,7 @@ Introduction
of the s3c2410 GPIO system, please read the Samsung provided
data-sheet/users manual to find out the complete list.
- See Documentation/arm/Samsung/GPIO.txt for the core implementation.
+ See Documentation/arch/arm/Samsung/GPIO.txt for the core implementation.
GPIOLIB
diff --git a/Documentation/arch/arm/Samsung-S3C24XX/Overview.txt b/Documentation/arch/arm/Samsung-S3C24XX/Overview.txt
index 00d3c3141e21..8d84a1c6216d 100644
--- a/Documentation/arch/arm/Samsung-S3C24XX/Overview.txt
+++ b/Documentation/arch/arm/Samsung-S3C24XX/Overview.txt
@@ -182,7 +182,7 @@ NAND
controller. If there are any problems the latest linux-mtd
code can be found from http://www.linux-mtd.infradead.org/
- For more information see Documentation/arm/Samsung-S3C24XX/NAND.txt
+ For more information see Documentation/arch/arm/Samsung-S3C24XX/NAND.txt
SD/MMC
@@ -221,8 +221,8 @@ GPIO
As of v2.6.34, the move towards using gpiolib support is almost
complete, and very little of the old calls are left.
- See Documentation/arm/Samsung-S3C24XX/GPIO.txt for the S3C24XX specific
- support and Documentation/arm/Samsung/GPIO.txt for the core Samsung
+ See Documentation/arch/arm/Samsung-S3C24XX/GPIO.txt for the S3C24XX specific
+ support and Documentation/arch/arm/Samsung/GPIO.txt for the core Samsung
implementation.
diff --git a/Documentation/arch/arm/Samsung/GPIO.txt b/Documentation/arch/arm/Samsung/GPIO.txt
index 795adfd88081..e693603f38af 100644
--- a/Documentation/arch/arm/Samsung/GPIO.txt
+++ b/Documentation/arch/arm/Samsung/GPIO.txt
@@ -11,7 +11,7 @@ specific calls provided alongside the drivers/gpio core.
S3C24XX (Legacy)
----------------
-See Documentation/arm/Samsung-S3C24XX/GPIO.txt for more information
+See Documentation/arch/arm/Samsung-S3C24XX/GPIO.txt for more information
about these devices. Their implementation has been brought into line
with the core samsung implementation described in this document.
diff --git a/Documentation/arch/arm/Samsung/Overview.txt b/Documentation/arch/arm/Samsung/Overview.txt
index 8f7309bad460..93091054a215 100644
--- a/Documentation/arch/arm/Samsung/Overview.txt
+++ b/Documentation/arch/arm/Samsung/Overview.txt
@@ -11,7 +11,7 @@ Introduction
The currently supported SoCs are:
- - S3C24XX: See Documentation/arm/Samsung-S3C24XX/Overview.txt for full list
+ - S3C24XX: See Documentation/arch/arm/Samsung-S3C24XX/Overview.txt for full list
- S3C64XX: S3C6400 and S3C6410
- S5PC110 / S5PV210
@@ -22,7 +22,7 @@ S3C24XX Systems
There is still documentation in Documnetation/arm/Samsung-S3C24XX/ which
deals with the architecture and drivers specific to these devices.
- See Documentation/arm/Samsung-S3C24XX/Overview.txt for more information
+ See Documentation/arch/arm/Samsung-S3C24XX/Overview.txt for more information
on the implementation details and specific support.
diff --git a/Documentation/devicetree/bindings/arm/xen.txt b/Documentation/devicetree/bindings/arm/xen.txt
index c9b9321434ea..2533cd4f5d79 100644
--- a/Documentation/devicetree/bindings/arm/xen.txt
+++ b/Documentation/devicetree/bindings/arm/xen.txt
@@ -54,7 +54,7 @@ hypervisor {
};
The format and meaning of the "xen,uefi-*" parameters are similar to those in
-Documentation/arm/uefi.txt, which are provided by the regular UEFI stub. However
+Documentation/arch/arm/uefi.txt, which are provided by the regular UEFI stub. However
they differ because they are provided by the Xen hypervisor, together with a set
of UEFI runtime services implemented via hypercalls, see
http://xenbits.xen.org/docs/unstable/hypercall/x86_64/include,public,platform.h.html.
diff --git a/Documentation/devicetree/booting-without-of.txt b/Documentation/devicetree/booting-without-of.txt
index 60f8640f2b2f..58d606fca7eb 100644
--- a/Documentation/devicetree/booting-without-of.txt
+++ b/Documentation/devicetree/booting-without-of.txt
@@ -160,7 +160,7 @@ it with special cases.
of the kernel image. That entry point supports two calling
conventions. A summary of the interface is described here. A full
description of the boot requirements is documented in
- Documentation/arm/Booting
+ Documentation/arch/arm/Booting
a) ATAGS interface. Minimal information is passed from firmware
to the kernel with a tagged list of predefined parameters.
@@ -174,7 +174,7 @@ it with special cases.
b) Entry with a flattened device-tree block. Firmware loads the
physical address of the flattened device tree block (dtb) into r2,
r1 is not used, but it is considered good practice to use a valid
- machine number as described in Documentation/arm/Booting.
+ machine number as described in Documentation/arch/arm/Booting.
r0 : 0
diff --git a/Documentation/translations/zh_CN/arm/Booting b/Documentation/translations/zh_CN/arm/Booting
index 1fe866f8218f..8bcad25099b3 100644
--- a/Documentation/translations/zh_CN/arm/Booting
+++ b/Documentation/translations/zh_CN/arm/Booting
@@ -1,4 +1,4 @@
-Chinese translated version of Documentation/arm/Booting
+Chinese translated version of Documentation/arch/arm/Booting
If you have any comment or update to the content, please contact the
original document maintainer directly. However, if you have a problem
@@ -9,7 +9,7 @@ or if there is a problem with the translation.
Maintainer: Russell King <linux@arm.linux.org.uk>
Chinese maintainer: Fu Wei <tekkamanninja@gmail.com>
---------------------------------------------------------------------
-Documentation/arm/Booting 的中文翻译
+Documentation/arch/arm/Booting 的中文翻译
如果想评论或更新本文的内容,请直接联系原文档的维护者。如果你使用英文
交流有困难的话,也可以向中文版维护者求助。如果本翻译更新不及时或者翻
diff --git a/Documentation/translations/zh_CN/arm/kernel_user_helpers.txt b/Documentation/translations/zh_CN/arm/kernel_user_helpers.txt
index cd7fc8f34cf9..ed7083e7e43d 100644
--- a/Documentation/translations/zh_CN/arm/kernel_user_helpers.txt
+++ b/Documentation/translations/zh_CN/arm/kernel_user_helpers.txt
@@ -1,4 +1,4 @@
-Chinese translated version of Documentation/arm/kernel_user_helpers.txt
+Chinese translated version of Documentation/arch/arm/kernel_user_helpers.txt
If you have any comment or update to the content, please contact the
original document maintainer directly. However, if you have a problem
@@ -10,7 +10,7 @@ Maintainer: Nicolas Pitre <nicolas.pitre@linaro.org>
Dave Martin <dave.martin@linaro.org>
Chinese maintainer: Fu Wei <tekkamanninja@gmail.com>
---------------------------------------------------------------------
-Documentation/arm/kernel_user_helpers.txt 的中文翻译
+Documentation/arch/arm/kernel_user_helpers.txt 的中文翻译
如果想评论或更新本文的内容,请直接联系原文档的维护者。如果你使用英文
交流有困难的话,也可以向中文版维护者求助。如果本翻译更新不及时或者翻
diff --git a/MAINTAINERS b/MAINTAINERS
index 43ca94856944..c21d5464c86f 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -2192,7 +2192,7 @@ F: drivers/*/*s3c64xx*
F: drivers/*/*s5pv210*
F: drivers/memory/samsung/*
F: drivers/soc/samsung/*
-F: Documentation/arm/Samsung/
+F: Documentation/arch/arm/Samsung/
F: Documentation/devicetree/bindings/arm/samsung/
F: Documentation/devicetree/bindings/sram/samsung-sram.txt
F: Documentation/devicetree/bindings/power/pd-samsung.txt
@@ -2569,7 +2569,7 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git
S: Maintained
F: arch/arm64/
X: arch/arm64/boot/dts/
-F: Documentation/arm64/
+F: Documentation/arch/arm64/
AS3645A LED FLASH CONTROLLER DRIVER
M: Sakari Ailus <sakari.ailus@iki.fi>
@@ -11470,7 +11470,7 @@ L: linux-omap@vger.kernel.org
L: linux-fbdev@vger.kernel.org
S: Orphan
F: drivers/video/fbdev/omap2/
-F: Documentation/arm/OMAP/DSS
+F: Documentation/arch/arm/OMAP/DSS
OMAP FRAMEBUFFER SUPPORT
L: linux-fbdev@vger.kernel.org
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index ad00e17d6988..1b276dda837d 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -2146,7 +2146,7 @@ config VFP
Say Y to include VFP support code in the kernel. This is needed
if your hardware includes a VFP unit.
- Please see <file:Documentation/arm/VFP/release-notes.txt> for
+ Please see <file:Documentation/arch/arm/VFP/release-notes.txt> for
release notes and additional status information.
Say N if your target does not have VFP hardware.
diff --git a/arch/arm/common/mcpm_entry.c b/arch/arm/common/mcpm_entry.c
index e24ad60891b2..0ed7d19e0fbe 100644
--- a/arch/arm/common/mcpm_entry.c
+++ b/arch/arm/common/mcpm_entry.c
@@ -21,7 +21,7 @@
/*
* The public API for this code is documented in arch/arm/include/asm/mcpm.h.
* For a comprehensive description of the main algorithm used here, please
- * see Documentation/arm/cluster-pm-race-avoidance.txt.
+ * see Documentation/arch/arm/cluster-pm-race-avoidance.txt.
*/
struct sync_struct mcpm_sync;
diff --git a/arch/arm/common/mcpm_head.S b/arch/arm/common/mcpm_head.S
index d5bd75dd576d..c7071314ad76 100644
--- a/arch/arm/common/mcpm_head.S
+++ b/arch/arm/common/mcpm_head.S
@@ -5,7 +5,7 @@
* Created by: Nicolas Pitre, March 2012
* Copyright: (C) 2012-2013 Linaro Limited
*
- * Refer to Documentation/arm/cluster-pm-race-avoidance.txt
+ * Refer to Documentation/arch/arm/cluster-pm-race-avoidance.txt
* for details of the synchronisation algorithms used here.
*/
diff --git a/arch/arm/common/vlock.S b/arch/arm/common/vlock.S
index 9675cc15d0c4..cfb6db2053f7 100644
--- a/arch/arm/common/vlock.S
+++ b/arch/arm/common/vlock.S
@@ -6,7 +6,7 @@
* Copyright: (C) 2012-2013 Linaro Limited
*
* This algorithm is described in more detail in
- * Documentation/arm/vlocks.txt.
+ * Documentation/arch/arm/vlocks.txt.
*/
#include <linux/linkage.h>
diff --git a/arch/arm/include/asm/setup.h b/arch/arm/include/asm/setup.h
index 77e5582c2259..483f9f29170a 100644
--- a/arch/arm/include/asm/setup.h
+++ b/arch/arm/include/asm/setup.h
@@ -5,7 +5,7 @@
* Copyright (C) 1997-1999 Russell King
*
* Structure passed to kernel to tell it about the
- * hardware it's running on. See Documentation/arm/Setup
+ * hardware it's running on. See Documentation/arch/arm/Setup
* for more info.
*/
#ifndef __ASMARM_SETUP_H
diff --git a/arch/arm/include/uapi/asm/setup.h b/arch/arm/include/uapi/asm/setup.h
index 6b335a9ff8c8..3691ac2a00b9 100644
--- a/arch/arm/include/uapi/asm/setup.h
+++ b/arch/arm/include/uapi/asm/setup.h
@@ -9,7 +9,7 @@
* published by the Free Software Foundation.
*
* Structure passed to kernel to tell it about the
- * hardware it's running on. See Documentation/arm/Setup
+ * hardware it's running on. See Documentation/arch/arm/Setup
* for more info.
*/
#ifndef _UAPI__ASMARM_SETUP_H
diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S
index 0b8cfdd60b90..929f6332438e 100644
--- a/arch/arm/kernel/entry-armv.S
+++ b/arch/arm/kernel/entry-armv.S
@@ -826,7 +826,7 @@ ENDPROC(__switch_to)
* existing ones. This mechanism should be used only for things that are
* really small and justified, and not be abused freely.
*
- * See Documentation/arm/kernel_user_helpers.txt for formal definitions.
+ * See Documentation/arch/arm/kernel_user_helpers.txt for formal definitions.
*/
THUMB( .arm )
diff --git a/arch/arm/mach-exynos/common.h b/arch/arm/mach-exynos/common.h
index c93356a8d662..cd0878c5614f 100644
--- a/arch/arm/mach-exynos/common.h
+++ b/arch/arm/mach-exynos/common.h
@@ -106,7 +106,7 @@ void exynos_firmware_init(void);
#define C2_STATE (1 << 3)
/*
* Magic values for bootloader indicating chosen low power mode.
- * See also Documentation/arm/Samsung/Bootloader-interface.txt
+ * See also Documentation/arch/arm/Samsung/Bootloader-interface.txt
*/
#define EXYNOS_SLEEP_MAGIC 0x00000bad
#define EXYNOS_AFTR_MAGIC 0xfcba0d10
diff --git a/arch/arm/mach-ixp4xx/Kconfig b/arch/arm/mach-ixp4xx/Kconfig
index fc5378b00f3d..dd9c8009dffd 100644
--- a/arch/arm/mach-ixp4xx/Kconfig
+++ b/arch/arm/mach-ixp4xx/Kconfig
@@ -33,7 +33,7 @@ config MACH_AVILA
help
Say 'Y' here if you want your kernel to support the Gateworks
Avila Network Platform. For more information on this platform,
- see <file:Documentation/arm/IXP4xx>.
+ see <file:Documentation/arch/arm/IXP4xx>.
config MACH_LOFT
bool "Loft"
@@ -49,7 +49,7 @@ config ARCH_ADI_COYOTE
help
Say 'Y' here if you want your kernel to support the ADI
Engineering Coyote Gateway Reference Platform. For more
- information on this platform, see <file:Documentation/arm/IXP4xx>.
+ information on this platform, see <file:Documentation/arch/arm/IXP4xx>.
config MACH_GATEWAY7001
bool "Gateway 7001"
@@ -72,21 +72,21 @@ config ARCH_IXDP425
help
Say 'Y' here if you want your kernel to support Intel's
IXDP425 Development Platform (Also known as Richfield).
- For more information on this platform, see <file:Documentation/arm/IXP4xx>.
+ For more information on this platform, see <file:Documentation/arch/arm/IXP4xx>.
config MACH_IXDPG425
bool "IXDPG425"
help
Say 'Y' here if you want your kernel to support Intel's
IXDPG425 Development Platform (Also known as Montajade).
- For more information on this platform, see <file:Documentation/arm/IXP4xx>.
+ For more information on this platform, see <file:Documentation/arch/arm/IXP4xx>.
config MACH_IXDP465
bool "IXDP465"
help
Say 'Y' here if you want your kernel to support Intel's
IXDP465 Development Platform (Also known as BMP).
- For more information on this platform, see <file:Documentation/arm/IXP4xx>.
+ For more information on this platform, see <file:Documentation/arch/arm/IXP4xx>.
config MACH_GORAMO_MLR
bool "GORAMO Multi Link Router"
@@ -99,7 +99,7 @@ config MACH_KIXRP435
help
Say 'Y' here if you want your kernel to support Intel's
KIXRP435 Reference Platform.
- For more information on this platform, see <file:Documentation/arm/IXP4xx>.
+ For more information on this platform, see <file:Documentation/arch/arm/IXP4xx>.
#
# IXCDP1100 is the exact same HW as IXDP425, but with a different machine
@@ -116,7 +116,7 @@ config ARCH_PRPMC1100
help
Say 'Y' here if you want your kernel to support the Motorola
PrPCM1100 Processor Mezanine Module. For more information on
- this platform, see <file:Documentation/arm/IXP4xx>.
+ this platform, see <file:Documentation/arch/arm/IXP4xx>.
config MACH_NAS100D
bool
diff --git a/arch/arm/mach-s3c24xx/pm.c b/arch/arm/mach-s3c24xx/pm.c
index adcb90645460..ff605c777976 100644
--- a/arch/arm/mach-s3c24xx/pm.c
+++ b/arch/arm/mach-s3c24xx/pm.c
@@ -5,7 +5,7 @@
//
// S3C24XX Power Manager (Suspend-To-RAM) support
//
-// See Documentation/arm/Samsung-S3C24XX/Suspend.txt for more information
+// See Documentation/arch/arm/Samsung-S3C24XX/Suspend.txt for more information
//
// Parts based on arch/arm/mach-pxa/pm.c
//
diff --git a/arch/arm/mach-sti/Kconfig b/arch/arm/mach-sti/Kconfig
index b2d45cf10a3c..b3842c971d31 100644
--- a/arch/arm/mach-sti/Kconfig
+++ b/arch/arm/mach-sti/Kconfig
@@ -21,7 +21,7 @@ menuconfig ARCH_STI
help
Include support for STMicroelectronics' STiH415/416, STiH407/10 and
STiH418 family SoCs using the Device Tree for discovery. More
- information can be found in Documentation/arm/sti/ and
+ information can be found in Documentation/arch/arm/sti/ and
Documentation/devicetree.
if ARCH_STI
diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig
index cc798115aa9b..3ef82f228947 100644
--- a/arch/arm/mm/Kconfig
+++ b/arch/arm/mm/Kconfig
@@ -709,7 +709,7 @@ config ARM_VIRT_EXT
assistance.
A compliant bootloader is required in order to make maximum
- use of this feature. Refer to Documentation/arm/Booting for
+ use of this feature. Refer to Documentation/arch/arm/Booting for
details.
config SWP_EMULATE
@@ -875,7 +875,7 @@ config KUSER_HELPERS
the CPU type fitted to the system. This permits binaries to be
run on ARMv4 through to ARMv7 without modification.
- See Documentation/arm/kernel_user_helpers.txt for details.
+ See Documentation/arch/arm/kernel_user_helpers.txt for details.
However, the fixed address nature of these helpers can be used
by ROP (return orientated programming) authors when creating
diff --git a/arch/arm/plat-samsung/Kconfig b/arch/arm/plat-samsung/Kconfig
index 53da57fba39c..17b18f2e4b80 100644
--- a/arch/arm/plat-samsung/Kconfig
+++ b/arch/arm/plat-samsung/Kconfig
@@ -243,7 +243,7 @@ config SAMSUNG_PM_DEBUG
depends on DEBUG_EXYNOS_UART || DEBUG_S3C24XX_UART || DEBUG_S3C2410_UART
help
Say Y here if you want verbose debugging from the PM Suspend and
- Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
+ Resume code. See <file:Documentation/arch/arm/Samsung-S3C24XX/Suspend.txt>
for more information.
config S3C_PM_DEBUG_LED_SMDK
@@ -268,7 +268,7 @@ config SAMSUNG_PM_CHECK
Note, this can take several seconds depending on memory size
and CPU speed.
- See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
+ See <file:Documentation/arch/arm/Samsung-S3C24XX/Suspend.txt>
config SAMSUNG_PM_CHECK_CHUNKSIZE
int "S3C2410 PM Suspend CRC Chunksize (KiB)"
@@ -280,7 +280,7 @@ config SAMSUNG_PM_CHECK_CHUNKSIZE
the CRC data block will take more memory, but will identify any
faults with better precision.
- See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
+ See <file:Documentation/arch/arm/Samsung-S3C24XX/Suspend.txt>
config SAMSUNG_WAKEMASK
bool
diff --git a/arch/arm/tools/mach-types b/arch/arm/tools/mach-types
index 4eac94c1eb6f..84f19e0b134b 100644
--- a/arch/arm/tools/mach-types
+++ b/arch/arm/tools/mach-types
@@ -7,7 +7,7 @@
# http://www.arm.linux.org.uk/developer/machines/download.php
#
# Please do not send patches to this file; it is automatically generated!
-# To add an entry into this database, please see Documentation/arm/README,
+# To add an entry into this database, please see Documentation/arch/arm/README,
# or visit:
#
# http://www.arm.linux.org.uk/developer/machines/?action=new
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index c085aec9459b..68d3a3af112f 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -1144,7 +1144,7 @@ config KUSER_HELPERS
the system. This permits binaries to be run on ARMv4 through
to ARMv8 without modification.
- See Documentation/arm/kernel_user_helpers.txt for details.
+ See Documentation/arch/arm/kernel_user_helpers.txt for details.
However, the fixed address nature of these helpers can be used
by ROP (return orientated programming) authors when creating
diff --git a/arch/arm64/kernel/kuser32.S b/arch/arm64/kernel/kuser32.S
index 49825e9e421e..e828a1577166 100644
--- a/arch/arm64/kernel/kuser32.S
+++ b/arch/arm64/kernel/kuser32.S
@@ -10,7 +10,7 @@
* aarch32_setup_additional_pages() and are provided for compatibility
* reasons with 32 bit (aarch32) applications that need them.
*
- * See Documentation/arm/kernel_user_helpers.txt for formal definitions.
+ * See Documentation/arch/arm/kernel_user_helpers.txt for formal definitions.
*/
#include <asm/unistd.h>
diff --git a/arch/mips/bmips/setup.c b/arch/mips/bmips/setup.c
index 1738a06396f9..cf6a5d50cf36 100644
--- a/arch/mips/bmips/setup.c
+++ b/arch/mips/bmips/setup.c
@@ -162,7 +162,7 @@ void __init plat_mem_setup(void)
ioport_resource.start = 0;
ioport_resource.end = ~0;
- /* intended to somewhat resemble ARM; see Documentation/arm/Booting */
+ /* intended to somewhat resemble ARM; see Documentation/arch/arm/Booting */
if (fw_arg0 == 0 && fw_arg1 == 0xffffffff)
dtb = phys_to_virt(fw_arg2);
else if (fw_passed_dtb) /* UHI interface or appended dtb */
diff --git a/drivers/crypto/sunxi-ss/sun4i-ss-cipher.c b/drivers/crypto/sunxi-ss/sun4i-ss-cipher.c
index 4ab14d58e85b..333c2c83d52b 100644
--- a/drivers/crypto/sunxi-ss/sun4i-ss-cipher.c
+++ b/drivers/crypto/sunxi-ss/sun4i-ss-cipher.c
@@ -8,7 +8,7 @@
* keysize in CBC and ECB mode.
* Add support also for DES and 3DES in CBC and ECB mode.
*
- * You could find the datasheet in Documentation/arm/sunxi/README
+ * You could find the datasheet in Documentation/arch/arm/sunxi/README
*/
#include "sun4i-ss.h"
diff --git a/drivers/crypto/sunxi-ss/sun4i-ss-core.c b/drivers/crypto/sunxi-ss/sun4i-ss-core.c
index cdcda7f059c8..f0af1847b632 100644
--- a/drivers/crypto/sunxi-ss/sun4i-ss-core.c
+++ b/drivers/crypto/sunxi-ss/sun4i-ss-core.c
@@ -6,7 +6,7 @@
*
* Core file which registers crypto algorithms supported by the SS.
*
- * You could find a link for the datasheet in Documentation/arm/sunxi/README
+ * You could find a link for the datasheet in Documentation/arch/arm/sunxi/README
*/
#include <linux/clk.h>
#include <linux/crypto.h>
diff --git a/drivers/crypto/sunxi-ss/sun4i-ss-hash.c b/drivers/crypto/sunxi-ss/sun4i-ss-hash.c
index d2b6d89aad28..93c243aaf66e 100644
--- a/drivers/crypto/sunxi-ss/sun4i-ss-hash.c
+++ b/drivers/crypto/sunxi-ss/sun4i-ss-hash.c
@@ -6,7 +6,7 @@
*
* This file add support for MD5 and SHA1.
*
- * You could find the datasheet in Documentation/arm/sunxi/README
+ * You could find the datasheet in Documentation/arch/arm/sunxi/README
*/
#include "sun4i-ss.h"
#include <linux/scatterlist.h>
diff --git a/drivers/crypto/sunxi-ss/sun4i-ss.h b/drivers/crypto/sunxi-ss/sun4i-ss.h
index 68b82d1a6303..0fc0f9580d0c 100644
--- a/drivers/crypto/sunxi-ss/sun4i-ss.h
+++ b/drivers/crypto/sunxi-ss/sun4i-ss.h
@@ -8,7 +8,7 @@
* Support MD5 and SHA1 hash algorithms.
* Support DES and 3DES
*
- * You could find the datasheet in Documentation/arm/sunxi/README
+ * You could find the datasheet in Documentation/arch/arm/sunxi/README
*/
#include <linux/clk.h>
diff --git a/drivers/input/touchscreen/sun4i-ts.c b/drivers/input/touchscreen/sun4i-ts.c
index 92f6e1ae23a2..3a01766a259b 100644
--- a/drivers/input/touchscreen/sun4i-ts.c
+++ b/drivers/input/touchscreen/sun4i-ts.c
@@ -22,7 +22,7 @@
* in the kernel). So this driver offers straight forward, reliable single
* touch functionality only.
*
- * s.a. A20 User Manual "1.15 TP" (Documentation/arm/sunxi/README)
+ * s.a. A20 User Manual "1.15 TP" (Documentation/arch/arm/sunxi/README)
* (looks like the description in the A20 User Manual v1.3 is better
* than the one in the A10 User Manual v.1.5)
*/
diff --git a/drivers/tty/serial/Kconfig b/drivers/tty/serial/Kconfig
index 0d31251e04cc..d6376d38079f 100644
--- a/drivers/tty/serial/Kconfig
+++ b/drivers/tty/serial/Kconfig
@@ -514,7 +514,7 @@ config SERIAL_SA1100
help
If you have a machine based on a SA1100/SA1110 StrongARM(R) CPU you
can enable its onboard serial port by enabling this option.
- Please read <file:Documentation/arm/SA1100/serial_UART> for further
+ Please read <file:Documentation/arch/arm/SA1100/serial_UART> for further
info.
config SERIAL_SA1100_CONSOLE
--
2.19.1.856.g8858448bb
^ permalink raw reply related
* [PATCH 12/12] Documentation/xtensa: repointer docs to Documentation/arch/
From: Alex Shi @ 2019-07-12 2:20 UTC (permalink / raw)
To: linux-doc, Jonathan Corbet
Cc: linux-s390, linux-fbdev, linux-omap, linux-ia64, linux-scsi,
linux-parisc, linux-sh, linux-xtensa, linux-kernel, linux-mips,
Max Filippov, linux-samsung-soc, kvm, Chris Zankel, linux-riscv,
Alex Shi, linuxppc-dev, linux-stm32, linux-arm-kernel
In-Reply-To: <20190712022018.27989-1-alex.shi@linux.alibaba.com>
Since we move Documentation/xtensa docs to Documentation/arch/xtensa
dir, redirect the doc pointer to them.
Signed-off-by: Alex Shi <alex.shi@linux.alibaba.com>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: linux-doc@vger.kernel.org
Cc: Chris Zankel <chris@zankel.net>
Cc: Max Filippov <jcmvbkbc@gmail.com>
Cc: linux-xtensa@linux-xtensa.org
Cc: linux-kernel@vger.kernel.org
---
arch/xtensa/include/asm/initialize_mmu.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/xtensa/include/asm/initialize_mmu.h b/arch/xtensa/include/asm/initialize_mmu.h
index 323d05789159..499fe4847490 100644
--- a/arch/xtensa/include/asm/initialize_mmu.h
+++ b/arch/xtensa/include/asm/initialize_mmu.h
@@ -42,7 +42,7 @@
#if XCHAL_HAVE_S32C1I && (XCHAL_HW_MIN_VERSION >= XTENSA_HWVERSION_RC_2009_0)
/*
* We Have Atomic Operation Control (ATOMCTL) Register; Initialize it.
- * For details see Documentation/xtensa/atomctl.txt
+ * For details see Documentation/arch/xtensa/atomctl.txt
*/
#if XCHAL_DCACHE_IS_COHERENT
movi a3, 0x25 /* For SMP/MX -- internal for writeback,
--
2.19.1.856.g8858448bb
^ permalink raw reply related
* [PATCH 01/12] Documentation: move architectures together
From: Alex Shi @ 2019-07-12 2:20 UTC (permalink / raw)
To: linux-doc, Jonathan Corbet
Cc: linux-s390, linux-fbdev, linux-omap, linux-ia64, linux-scsi,
linux-parisc, linux-sh, linux-kernel, linux-mips,
linux-samsung-soc, kvm, linux-riscv, Alex Shi, linuxppc-dev,
linux-stm32, linux-arm-kernel
There are many different archs in Documentation/ dir, it's better to
move them together in 'Documentation/arch' which follows from kernel source.
Signed-off-by: Alex Shi <alex.shi@linux.alibaba.com>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: linux-doc@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-stm32@st-md-mailman.stormreply.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: linuxppc-dev@lists.ozlabs.org
Cc: linux-riscv@lists.infradead.org
Cc: linux-omap@vger.kernel.org
Cc: linux-fbdev@vger.kernel.org
Cc: linux-samsung-soc@vger.kernel.org
Cc: linux-ia64@vger.kernel.org
Cc: linux-mips@vger.kernel.org
Cc: linux-parisc@vger.kernel.org
Cc: linux-scsi@vger.kernel.org
Cc: linux-s390@vger.kernel.org
Cc: kvm@vger.kernel.org
Cc: linux-sh@vger.kernel.org
---
Documentation/{ => arch}/arm/Booting | 0
Documentation/{ => arch}/arm/IXP4xx | 0
Documentation/{ => arch}/arm/Interrupts | 0
Documentation/{ => arch}/arm/Marvell/README | 0
Documentation/{ => arch}/arm/Microchip/README | 0
Documentation/{ => arch}/arm/Netwinder | 0
Documentation/{ => arch}/arm/OMAP/DSS | 0
Documentation/{ => arch}/arm/OMAP/README | 0
Documentation/{ => arch}/arm/OMAP/omap_pm | 0
Documentation/{ => arch}/arm/Porting | 0
Documentation/{ => arch}/arm/README | 0
Documentation/{ => arch}/arm/SA1100/ADSBitsy | 0
Documentation/{ => arch}/arm/SA1100/Assabet | 0
Documentation/{ => arch}/arm/SA1100/Brutus | 0
Documentation/{ => arch}/arm/SA1100/CERF | 0
Documentation/{ => arch}/arm/SA1100/FreeBird | 0
Documentation/{ => arch}/arm/SA1100/GraphicsClient | 0
Documentation/{ => arch}/arm/SA1100/GraphicsMaster | 0
Documentation/{ => arch}/arm/SA1100/HUW_WEBPANEL | 0
Documentation/{ => arch}/arm/SA1100/Itsy | 0
Documentation/{ => arch}/arm/SA1100/LART | 0
Documentation/{ => arch}/arm/SA1100/PLEB | 0
Documentation/{ => arch}/arm/SA1100/Pangolin | 0
Documentation/{ => arch}/arm/SA1100/Tifon | 0
Documentation/{ => arch}/arm/SA1100/Yopy | 0
Documentation/{ => arch}/arm/SA1100/empeg | 0
Documentation/{ => arch}/arm/SA1100/nanoEngine | 0
Documentation/{ => arch}/arm/SA1100/serial_UART | 0
Documentation/{ => arch}/arm/SH-Mobile/.gitignore | 0
Documentation/{ => arch}/arm/SPEAr/overview.txt | 0
Documentation/{ => arch}/arm/Samsung-S3C24XX/CPUfreq.txt | 0
Documentation/{ => arch}/arm/Samsung-S3C24XX/EB2410ITX.txt | 0
Documentation/{ => arch}/arm/Samsung-S3C24XX/GPIO.txt | 0
Documentation/{ => arch}/arm/Samsung-S3C24XX/H1940.txt | 0
Documentation/{ => arch}/arm/Samsung-S3C24XX/NAND.txt | 0
Documentation/{ => arch}/arm/Samsung-S3C24XX/Overview.txt | 0
Documentation/{ => arch}/arm/Samsung-S3C24XX/S3C2412.txt | 0
Documentation/{ => arch}/arm/Samsung-S3C24XX/S3C2413.txt | 0
Documentation/{ => arch}/arm/Samsung-S3C24XX/SMDK2440.txt | 0
Documentation/{ => arch}/arm/Samsung-S3C24XX/Suspend.txt | 0
Documentation/{ => arch}/arm/Samsung-S3C24XX/USB-Host.txt | 0
Documentation/{ => arch}/arm/Samsung/Bootloader-interface.txt | 0
Documentation/{ => arch}/arm/Samsung/GPIO.txt | 0
Documentation/{ => arch}/arm/Samsung/Overview.txt | 0
Documentation/{ => arch}/arm/Samsung/clksrc-change-registers.awk | 0
Documentation/{ => arch}/arm/Setup | 0
Documentation/{ => arch}/arm/VFP/release-notes.txt | 0
Documentation/{ => arch}/arm/cluster-pm-race-avoidance.txt | 0
Documentation/{ => arch}/arm/firmware.txt | 0
Documentation/{ => arch}/arm/kernel_mode_neon.txt | 0
Documentation/{ => arch}/arm/kernel_user_helpers.txt | 0
Documentation/{ => arch}/arm/keystone/Overview.txt | 0
Documentation/{ => arch}/arm/keystone/knav-qmss.txt | 0
Documentation/{ => arch}/arm/mem_alignment | 0
Documentation/{ => arch}/arm/memory.txt | 0
Documentation/{ => arch}/arm/nwfpe/NOTES | 0
Documentation/{ => arch}/arm/nwfpe/README | 0
Documentation/{ => arch}/arm/nwfpe/README.FPE | 0
Documentation/{ => arch}/arm/nwfpe/TODO | 0
Documentation/{ => arch}/arm/pxa/mfp.txt | 0
Documentation/{ => arch}/arm/sti/overview.txt | 0
Documentation/{ => arch}/arm/sti/stih407-overview.txt | 0
Documentation/{ => arch}/arm/sti/stih415-overview.txt | 0
Documentation/{ => arch}/arm/sti/stih416-overview.txt | 0
Documentation/{ => arch}/arm/sti/stih418-overview.txt | 0
Documentation/{ => arch}/arm/stm32/overview.rst | 0
Documentation/{ => arch}/arm/stm32/stm32f429-overview.rst | 0
Documentation/{ => arch}/arm/stm32/stm32f746-overview.rst | 0
Documentation/{ => arch}/arm/stm32/stm32f769-overview.rst | 0
Documentation/{ => arch}/arm/stm32/stm32h743-overview.rst | 0
Documentation/{ => arch}/arm/stm32/stm32mp157-overview.rst | 0
Documentation/{ => arch}/arm/sunxi/README | 0
Documentation/{ => arch}/arm/sunxi/clocks.txt | 0
Documentation/{ => arch}/arm/swp_emulation | 0
Documentation/{ => arch}/arm/tcm.txt | 0
Documentation/{ => arch}/arm/uefi.txt | 0
Documentation/{ => arch}/arm/vlocks.txt | 0
Documentation/{ => arch}/arm64/acpi_object_usage.rst | 0
Documentation/{ => arch}/arm64/arm-acpi.rst | 0
Documentation/{ => arch}/arm64/booting.rst | 0
Documentation/{ => arch}/arm64/cpu-feature-registers.rst | 0
Documentation/{ => arch}/arm64/elf_hwcaps.rst | 0
Documentation/{ => arch}/arm64/hugetlbpage.rst | 0
Documentation/{ => arch}/arm64/index.rst | 0
Documentation/{ => arch}/arm64/legacy_instructions.rst | 0
Documentation/{ => arch}/arm64/memory.rst | 0
Documentation/{ => arch}/arm64/perf.txt | 0
Documentation/{ => arch}/arm64/pointer-authentication.rst | 0
Documentation/{ => arch}/arm64/silicon-errata.rst | 0
Documentation/{ => arch}/arm64/sve.rst | 0
Documentation/{ => arch}/arm64/tagged-pointers.rst | 0
Documentation/{ => arch}/ia64/IRQ-redir.txt | 0
Documentation/{ => arch}/ia64/README | 0
Documentation/{ => arch}/ia64/aliasing.txt | 0
Documentation/{ => arch}/ia64/efirtc.txt | 0
Documentation/{ => arch}/ia64/err_inject.txt | 0
Documentation/{ => arch}/ia64/fsys.txt | 0
Documentation/{ => arch}/ia64/mca.txt | 0
Documentation/{ => arch}/ia64/serial.txt | 0
Documentation/{ => arch}/ia64/xen.txt | 0
Documentation/{ => arch}/m68k/README.buddha | 0
Documentation/{ => arch}/m68k/kernel-options.txt | 0
Documentation/{ => arch}/mips/AU1xxx_IDE.README | 0
Documentation/{ => arch}/nios2/README | 0
Documentation/{ => arch}/parisc/debugging | 0
Documentation/{ => arch}/parisc/registers | 0
Documentation/{ => arch}/powerpc/DAWR-POWER9.txt | 0
Documentation/{ => arch}/powerpc/bootwrapper.txt | 0
Documentation/{ => arch}/powerpc/cpu_families.txt | 0
Documentation/{ => arch}/powerpc/cpu_features.txt | 0
Documentation/{ => arch}/powerpc/cxl.txt | 0
Documentation/{ => arch}/powerpc/cxlflash.txt | 0
Documentation/{ => arch}/powerpc/dscr.txt | 0
Documentation/{ => arch}/powerpc/eeh-pci-error-recovery.txt | 0
Documentation/{ => arch}/powerpc/firmware-assisted-dump.txt | 0
Documentation/{ => arch}/powerpc/hvcs.txt | 0
Documentation/{ => arch}/powerpc/isa-versions.rst | 0
Documentation/{ => arch}/powerpc/mpc52xx.txt | 0
Documentation/{ => arch}/powerpc/pci_iov_resource_on_powernv.txt | 0
Documentation/{ => arch}/powerpc/pmu-ebb.txt | 0
Documentation/{ => arch}/powerpc/ptrace.txt | 0
Documentation/{ => arch}/powerpc/qe_firmware.txt | 0
Documentation/{ => arch}/powerpc/syscall64-abi.txt | 0
Documentation/{ => arch}/powerpc/transactional_memory.txt | 0
Documentation/{ => arch}/riscv/index.rst | 0
Documentation/{ => arch}/riscv/pmu.rst | 0
Documentation/{ => arch}/s390/3270.ChangeLog | 0
Documentation/{ => arch}/s390/3270.rst | 0
Documentation/{ => arch}/s390/cds.rst | 0
Documentation/{ => arch}/s390/common_io.rst | 0
Documentation/{ => arch}/s390/config3270.sh | 0
Documentation/{ => arch}/s390/dasd.rst | 0
Documentation/{ => arch}/s390/debugging390.rst | 0
Documentation/{ => arch}/s390/driver-model.rst | 0
Documentation/{ => arch}/s390/index.rst | 0
Documentation/{ => arch}/s390/monreader.rst | 0
Documentation/{ => arch}/s390/qeth.rst | 0
Documentation/{ => arch}/s390/s390dbf.rst | 0
Documentation/{ => arch}/s390/text_files.rst | 0
Documentation/{ => arch}/s390/vfio-ap.rst | 0
Documentation/{ => arch}/s390/vfio-ccw.rst | 0
Documentation/{ => arch}/s390/zfcpdump.rst | 0
Documentation/{ => arch}/sh/conf.py | 0
Documentation/{ => arch}/sh/index.rst | 0
Documentation/{ => arch}/sh/new-machine.txt | 0
Documentation/{ => arch}/sh/register-banks.txt | 0
Documentation/{ => arch}/sparc/adi.rst | 0
Documentation/{ => arch}/sparc/console.rst | 0
Documentation/{ => arch}/sparc/index.rst | 0
Documentation/{ => arch}/sparc/oradax/dax-hv-api.txt | 0
Documentation/{ => arch}/sparc/oradax/oracle-dax.rst | 0
Documentation/{ => arch}/x86/amd-memory-encryption.rst | 0
Documentation/{ => arch}/x86/boot.rst | 0
Documentation/{ => arch}/x86/conf.py | 0
Documentation/{ => arch}/x86/earlyprintk.rst | 0
Documentation/{ => arch}/x86/entry_64.rst | 0
Documentation/{ => arch}/x86/exception-tables.rst | 0
Documentation/{ => arch}/x86/i386/IO-APIC.rst | 0
Documentation/{ => arch}/x86/i386/index.rst | 0
Documentation/{ => arch}/x86/index.rst | 0
Documentation/{ => arch}/x86/intel_mpx.rst | 0
Documentation/{ => arch}/x86/kernel-stacks.rst | 0
Documentation/{ => arch}/x86/mds.rst | 0
Documentation/{ => arch}/x86/microcode.rst | 0
Documentation/{ => arch}/x86/mtrr.rst | 0
Documentation/{ => arch}/x86/orc-unwinder.rst | 0
Documentation/{ => arch}/x86/pat.rst | 0
Documentation/{ => arch}/x86/pti.rst | 0
Documentation/{ => arch}/x86/resctrl_ui.rst | 0
Documentation/{ => arch}/x86/tlb.rst | 0
Documentation/{ => arch}/x86/topology.rst | 0
Documentation/{ => arch}/x86/usb-legacy-support.rst | 0
Documentation/{ => arch}/x86/x86_64/5level-paging.rst | 0
Documentation/{ => arch}/x86/x86_64/boot-options.rst | 0
Documentation/{ => arch}/x86/x86_64/cpu-hotplug-spec.rst | 0
Documentation/{ => arch}/x86/x86_64/fake-numa-for-cpusets.rst | 0
Documentation/{ => arch}/x86/x86_64/index.rst | 0
Documentation/{ => arch}/x86/x86_64/machinecheck.rst | 0
Documentation/{ => arch}/x86/x86_64/mm.rst | 0
Documentation/{ => arch}/x86/x86_64/uefi.rst | 0
Documentation/{ => arch}/x86/zero-page.rst | 0
Documentation/{ => arch}/xtensa/atomctl.txt | 0
Documentation/{ => arch}/xtensa/booting.txt | 0
Documentation/{ => arch}/xtensa/mmu.txt | 0
184 files changed, 0 insertions(+), 0 deletions(-)
rename Documentation/{ => arch}/arm/Booting (100%)
rename Documentation/{ => arch}/arm/IXP4xx (100%)
rename Documentation/{ => arch}/arm/Interrupts (100%)
rename Documentation/{ => arch}/arm/Marvell/README (100%)
rename Documentation/{ => arch}/arm/Microchip/README (100%)
rename Documentation/{ => arch}/arm/Netwinder (100%)
rename Documentation/{ => arch}/arm/OMAP/DSS (100%)
rename Documentation/{ => arch}/arm/OMAP/README (100%)
rename Documentation/{ => arch}/arm/OMAP/omap_pm (100%)
rename Documentation/{ => arch}/arm/Porting (100%)
rename Documentation/{ => arch}/arm/README (100%)
rename Documentation/{ => arch}/arm/SA1100/ADSBitsy (100%)
rename Documentation/{ => arch}/arm/SA1100/Assabet (100%)
rename Documentation/{ => arch}/arm/SA1100/Brutus (100%)
rename Documentation/{ => arch}/arm/SA1100/CERF (100%)
rename Documentation/{ => arch}/arm/SA1100/FreeBird (100%)
rename Documentation/{ => arch}/arm/SA1100/GraphicsClient (100%)
rename Documentation/{ => arch}/arm/SA1100/GraphicsMaster (100%)
rename Documentation/{ => arch}/arm/SA1100/HUW_WEBPANEL (100%)
rename Documentation/{ => arch}/arm/SA1100/Itsy (100%)
rename Documentation/{ => arch}/arm/SA1100/LART (100%)
rename Documentation/{ => arch}/arm/SA1100/PLEB (100%)
rename Documentation/{ => arch}/arm/SA1100/Pangolin (100%)
rename Documentation/{ => arch}/arm/SA1100/Tifon (100%)
rename Documentation/{ => arch}/arm/SA1100/Yopy (100%)
rename Documentation/{ => arch}/arm/SA1100/empeg (100%)
rename Documentation/{ => arch}/arm/SA1100/nanoEngine (100%)
rename Documentation/{ => arch}/arm/SA1100/serial_UART (100%)
rename Documentation/{ => arch}/arm/SH-Mobile/.gitignore (100%)
rename Documentation/{ => arch}/arm/SPEAr/overview.txt (100%)
rename Documentation/{ => arch}/arm/Samsung-S3C24XX/CPUfreq.txt (100%)
rename Documentation/{ => arch}/arm/Samsung-S3C24XX/EB2410ITX.txt (100%)
rename Documentation/{ => arch}/arm/Samsung-S3C24XX/GPIO.txt (100%)
rename Documentation/{ => arch}/arm/Samsung-S3C24XX/H1940.txt (100%)
rename Documentation/{ => arch}/arm/Samsung-S3C24XX/NAND.txt (100%)
rename Documentation/{ => arch}/arm/Samsung-S3C24XX/Overview.txt (100%)
rename Documentation/{ => arch}/arm/Samsung-S3C24XX/S3C2412.txt (100%)
rename Documentation/{ => arch}/arm/Samsung-S3C24XX/S3C2413.txt (100%)
rename Documentation/{ => arch}/arm/Samsung-S3C24XX/SMDK2440.txt (100%)
rename Documentation/{ => arch}/arm/Samsung-S3C24XX/Suspend.txt (100%)
rename Documentation/{ => arch}/arm/Samsung-S3C24XX/USB-Host.txt (100%)
rename Documentation/{ => arch}/arm/Samsung/Bootloader-interface.txt (100%)
rename Documentation/{ => arch}/arm/Samsung/GPIO.txt (100%)
rename Documentation/{ => arch}/arm/Samsung/Overview.txt (100%)
rename Documentation/{ => arch}/arm/Samsung/clksrc-change-registers.awk (100%)
rename Documentation/{ => arch}/arm/Setup (100%)
rename Documentation/{ => arch}/arm/VFP/release-notes.txt (100%)
rename Documentation/{ => arch}/arm/cluster-pm-race-avoidance.txt (100%)
rename Documentation/{ => arch}/arm/firmware.txt (100%)
rename Documentation/{ => arch}/arm/kernel_mode_neon.txt (100%)
rename Documentation/{ => arch}/arm/kernel_user_helpers.txt (100%)
rename Documentation/{ => arch}/arm/keystone/Overview.txt (100%)
rename Documentation/{ => arch}/arm/keystone/knav-qmss.txt (100%)
rename Documentation/{ => arch}/arm/mem_alignment (100%)
rename Documentation/{ => arch}/arm/memory.txt (100%)
rename Documentation/{ => arch}/arm/nwfpe/NOTES (100%)
rename Documentation/{ => arch}/arm/nwfpe/README (100%)
rename Documentation/{ => arch}/arm/nwfpe/README.FPE (100%)
rename Documentation/{ => arch}/arm/nwfpe/TODO (100%)
rename Documentation/{ => arch}/arm/pxa/mfp.txt (100%)
rename Documentation/{ => arch}/arm/sti/overview.txt (100%)
rename Documentation/{ => arch}/arm/sti/stih407-overview.txt (100%)
rename Documentation/{ => arch}/arm/sti/stih415-overview.txt (100%)
rename Documentation/{ => arch}/arm/sti/stih416-overview.txt (100%)
rename Documentation/{ => arch}/arm/sti/stih418-overview.txt (100%)
rename Documentation/{ => arch}/arm/stm32/overview.rst (100%)
rename Documentation/{ => arch}/arm/stm32/stm32f429-overview.rst (100%)
rename Documentation/{ => arch}/arm/stm32/stm32f746-overview.rst (100%)
rename Documentation/{ => arch}/arm/stm32/stm32f769-overview.rst (100%)
rename Documentation/{ => arch}/arm/stm32/stm32h743-overview.rst (100%)
rename Documentation/{ => arch}/arm/stm32/stm32mp157-overview.rst (100%)
rename Documentation/{ => arch}/arm/sunxi/README (100%)
rename Documentation/{ => arch}/arm/sunxi/clocks.txt (100%)
rename Documentation/{ => arch}/arm/swp_emulation (100%)
rename Documentation/{ => arch}/arm/tcm.txt (100%)
rename Documentation/{ => arch}/arm/uefi.txt (100%)
rename Documentation/{ => arch}/arm/vlocks.txt (100%)
rename Documentation/{ => arch}/arm64/acpi_object_usage.rst (100%)
rename Documentation/{ => arch}/arm64/arm-acpi.rst (100%)
rename Documentation/{ => arch}/arm64/booting.rst (100%)
rename Documentation/{ => arch}/arm64/cpu-feature-registers.rst (100%)
rename Documentation/{ => arch}/arm64/elf_hwcaps.rst (100%)
rename Documentation/{ => arch}/arm64/hugetlbpage.rst (100%)
rename Documentation/{ => arch}/arm64/index.rst (100%)
rename Documentation/{ => arch}/arm64/legacy_instructions.rst (100%)
rename Documentation/{ => arch}/arm64/memory.rst (100%)
rename Documentation/{ => arch}/arm64/perf.txt (100%)
rename Documentation/{ => arch}/arm64/pointer-authentication.rst (100%)
rename Documentation/{ => arch}/arm64/silicon-errata.rst (100%)
rename Documentation/{ => arch}/arm64/sve.rst (100%)
rename Documentation/{ => arch}/arm64/tagged-pointers.rst (100%)
rename Documentation/{ => arch}/ia64/IRQ-redir.txt (100%)
rename Documentation/{ => arch}/ia64/README (100%)
rename Documentation/{ => arch}/ia64/aliasing.txt (100%)
rename Documentation/{ => arch}/ia64/efirtc.txt (100%)
rename Documentation/{ => arch}/ia64/err_inject.txt (100%)
rename Documentation/{ => arch}/ia64/fsys.txt (100%)
rename Documentation/{ => arch}/ia64/mca.txt (100%)
rename Documentation/{ => arch}/ia64/serial.txt (100%)
rename Documentation/{ => arch}/ia64/xen.txt (100%)
rename Documentation/{ => arch}/m68k/README.buddha (100%)
rename Documentation/{ => arch}/m68k/kernel-options.txt (100%)
rename Documentation/{ => arch}/mips/AU1xxx_IDE.README (100%)
rename Documentation/{ => arch}/nios2/README (100%)
rename Documentation/{ => arch}/parisc/debugging (100%)
rename Documentation/{ => arch}/parisc/registers (100%)
rename Documentation/{ => arch}/powerpc/DAWR-POWER9.txt (100%)
rename Documentation/{ => arch}/powerpc/bootwrapper.txt (100%)
rename Documentation/{ => arch}/powerpc/cpu_families.txt (100%)
rename Documentation/{ => arch}/powerpc/cpu_features.txt (100%)
rename Documentation/{ => arch}/powerpc/cxl.txt (100%)
rename Documentation/{ => arch}/powerpc/cxlflash.txt (100%)
rename Documentation/{ => arch}/powerpc/dscr.txt (100%)
rename Documentation/{ => arch}/powerpc/eeh-pci-error-recovery.txt (100%)
rename Documentation/{ => arch}/powerpc/firmware-assisted-dump.txt (100%)
rename Documentation/{ => arch}/powerpc/hvcs.txt (100%)
rename Documentation/{ => arch}/powerpc/isa-versions.rst (100%)
rename Documentation/{ => arch}/powerpc/mpc52xx.txt (100%)
rename Documentation/{ => arch}/powerpc/pci_iov_resource_on_powernv.txt (100%)
rename Documentation/{ => arch}/powerpc/pmu-ebb.txt (100%)
rename Documentation/{ => arch}/powerpc/ptrace.txt (100%)
rename Documentation/{ => arch}/powerpc/qe_firmware.txt (100%)
rename Documentation/{ => arch}/powerpc/syscall64-abi.txt (100%)
rename Documentation/{ => arch}/powerpc/transactional_memory.txt (100%)
rename Documentation/{ => arch}/riscv/index.rst (100%)
rename Documentation/{ => arch}/riscv/pmu.rst (100%)
rename Documentation/{ => arch}/s390/3270.ChangeLog (100%)
rename Documentation/{ => arch}/s390/3270.rst (100%)
rename Documentation/{ => arch}/s390/cds.rst (100%)
rename Documentation/{ => arch}/s390/common_io.rst (100%)
rename Documentation/{ => arch}/s390/config3270.sh (100%)
rename Documentation/{ => arch}/s390/dasd.rst (100%)
rename Documentation/{ => arch}/s390/debugging390.rst (100%)
rename Documentation/{ => arch}/s390/driver-model.rst (100%)
rename Documentation/{ => arch}/s390/index.rst (100%)
rename Documentation/{ => arch}/s390/monreader.rst (100%)
rename Documentation/{ => arch}/s390/qeth.rst (100%)
rename Documentation/{ => arch}/s390/s390dbf.rst (100%)
rename Documentation/{ => arch}/s390/text_files.rst (100%)
rename Documentation/{ => arch}/s390/vfio-ap.rst (100%)
rename Documentation/{ => arch}/s390/vfio-ccw.rst (100%)
rename Documentation/{ => arch}/s390/zfcpdump.rst (100%)
rename Documentation/{ => arch}/sh/conf.py (100%)
rename Documentation/{ => arch}/sh/index.rst (100%)
rename Documentation/{ => arch}/sh/new-machine.txt (100%)
rename Documentation/{ => arch}/sh/register-banks.txt (100%)
rename Documentation/{ => arch}/sparc/adi.rst (100%)
rename Documentation/{ => arch}/sparc/console.rst (100%)
rename Documentation/{ => arch}/sparc/index.rst (100%)
rename Documentation/{ => arch}/sparc/oradax/dax-hv-api.txt (100%)
rename Documentation/{ => arch}/sparc/oradax/oracle-dax.rst (100%)
rename Documentation/{ => arch}/x86/amd-memory-encryption.rst (100%)
rename Documentation/{ => arch}/x86/boot.rst (100%)
rename Documentation/{ => arch}/x86/conf.py (100%)
rename Documentation/{ => arch}/x86/earlyprintk.rst (100%)
rename Documentation/{ => arch}/x86/entry_64.rst (100%)
rename Documentation/{ => arch}/x86/exception-tables.rst (100%)
rename Documentation/{ => arch}/x86/i386/IO-APIC.rst (100%)
rename Documentation/{ => arch}/x86/i386/index.rst (100%)
rename Documentation/{ => arch}/x86/index.rst (100%)
rename Documentation/{ => arch}/x86/intel_mpx.rst (100%)
rename Documentation/{ => arch}/x86/kernel-stacks.rst (100%)
rename Documentation/{ => arch}/x86/mds.rst (100%)
rename Documentation/{ => arch}/x86/microcode.rst (100%)
rename Documentation/{ => arch}/x86/mtrr.rst (100%)
rename Documentation/{ => arch}/x86/orc-unwinder.rst (100%)
rename Documentation/{ => arch}/x86/pat.rst (100%)
rename Documentation/{ => arch}/x86/pti.rst (100%)
rename Documentation/{ => arch}/x86/resctrl_ui.rst (100%)
rename Documentation/{ => arch}/x86/tlb.rst (100%)
rename Documentation/{ => arch}/x86/topology.rst (100%)
rename Documentation/{ => arch}/x86/usb-legacy-support.rst (100%)
rename Documentation/{ => arch}/x86/x86_64/5level-paging.rst (100%)
rename Documentation/{ => arch}/x86/x86_64/boot-options.rst (100%)
rename Documentation/{ => arch}/x86/x86_64/cpu-hotplug-spec.rst (100%)
rename Documentation/{ => arch}/x86/x86_64/fake-numa-for-cpusets.rst (100%)
rename Documentation/{ => arch}/x86/x86_64/index.rst (100%)
rename Documentation/{ => arch}/x86/x86_64/machinecheck.rst (100%)
rename Documentation/{ => arch}/x86/x86_64/mm.rst (100%)
rename Documentation/{ => arch}/x86/x86_64/uefi.rst (100%)
rename Documentation/{ => arch}/x86/zero-page.rst (100%)
rename Documentation/{ => arch}/xtensa/atomctl.txt (100%)
rename Documentation/{ => arch}/xtensa/booting.txt (100%)
rename Documentation/{ => arch}/xtensa/mmu.txt (100%)
diff --git a/Documentation/arm/Booting b/Documentation/arch/arm/Booting
similarity index 100%
rename from Documentation/arm/Booting
rename to Documentation/arch/arm/Booting
diff --git a/Documentation/arm/IXP4xx b/Documentation/arch/arm/IXP4xx
similarity index 100%
rename from Documentation/arm/IXP4xx
rename to Documentation/arch/arm/IXP4xx
diff --git a/Documentation/arm/Interrupts b/Documentation/arch/arm/Interrupts
similarity index 100%
rename from Documentation/arm/Interrupts
rename to Documentation/arch/arm/Interrupts
diff --git a/Documentation/arm/Marvell/README b/Documentation/arch/arm/Marvell/README
similarity index 100%
rename from Documentation/arm/Marvell/README
rename to Documentation/arch/arm/Marvell/README
diff --git a/Documentation/arm/Microchip/README b/Documentation/arch/arm/Microchip/README
similarity index 100%
rename from Documentation/arm/Microchip/README
rename to Documentation/arch/arm/Microchip/README
diff --git a/Documentation/arm/Netwinder b/Documentation/arch/arm/Netwinder
similarity index 100%
rename from Documentation/arm/Netwinder
rename to Documentation/arch/arm/Netwinder
diff --git a/Documentation/arm/OMAP/DSS b/Documentation/arch/arm/OMAP/DSS
similarity index 100%
rename from Documentation/arm/OMAP/DSS
rename to Documentation/arch/arm/OMAP/DSS
diff --git a/Documentation/arm/OMAP/README b/Documentation/arch/arm/OMAP/README
similarity index 100%
rename from Documentation/arm/OMAP/README
rename to Documentation/arch/arm/OMAP/README
diff --git a/Documentation/arm/OMAP/omap_pm b/Documentation/arch/arm/OMAP/omap_pm
similarity index 100%
rename from Documentation/arm/OMAP/omap_pm
rename to Documentation/arch/arm/OMAP/omap_pm
diff --git a/Documentation/arm/Porting b/Documentation/arch/arm/Porting
similarity index 100%
rename from Documentation/arm/Porting
rename to Documentation/arch/arm/Porting
diff --git a/Documentation/arm/README b/Documentation/arch/arm/README
similarity index 100%
rename from Documentation/arm/README
rename to Documentation/arch/arm/README
diff --git a/Documentation/arm/SA1100/ADSBitsy b/Documentation/arch/arm/SA1100/ADSBitsy
similarity index 100%
rename from Documentation/arm/SA1100/ADSBitsy
rename to Documentation/arch/arm/SA1100/ADSBitsy
diff --git a/Documentation/arm/SA1100/Assabet b/Documentation/arch/arm/SA1100/Assabet
similarity index 100%
rename from Documentation/arm/SA1100/Assabet
rename to Documentation/arch/arm/SA1100/Assabet
diff --git a/Documentation/arm/SA1100/Brutus b/Documentation/arch/arm/SA1100/Brutus
similarity index 100%
rename from Documentation/arm/SA1100/Brutus
rename to Documentation/arch/arm/SA1100/Brutus
diff --git a/Documentation/arm/SA1100/CERF b/Documentation/arch/arm/SA1100/CERF
similarity index 100%
rename from Documentation/arm/SA1100/CERF
rename to Documentation/arch/arm/SA1100/CERF
diff --git a/Documentation/arm/SA1100/FreeBird b/Documentation/arch/arm/SA1100/FreeBird
similarity index 100%
rename from Documentation/arm/SA1100/FreeBird
rename to Documentation/arch/arm/SA1100/FreeBird
diff --git a/Documentation/arm/SA1100/GraphicsClient b/Documentation/arch/arm/SA1100/GraphicsClient
similarity index 100%
rename from Documentation/arm/SA1100/GraphicsClient
rename to Documentation/arch/arm/SA1100/GraphicsClient
diff --git a/Documentation/arm/SA1100/GraphicsMaster b/Documentation/arch/arm/SA1100/GraphicsMaster
similarity index 100%
rename from Documentation/arm/SA1100/GraphicsMaster
rename to Documentation/arch/arm/SA1100/GraphicsMaster
diff --git a/Documentation/arm/SA1100/HUW_WEBPANEL b/Documentation/arch/arm/SA1100/HUW_WEBPANEL
similarity index 100%
rename from Documentation/arm/SA1100/HUW_WEBPANEL
rename to Documentation/arch/arm/SA1100/HUW_WEBPANEL
diff --git a/Documentation/arm/SA1100/Itsy b/Documentation/arch/arm/SA1100/Itsy
similarity index 100%
rename from Documentation/arm/SA1100/Itsy
rename to Documentation/arch/arm/SA1100/Itsy
diff --git a/Documentation/arm/SA1100/LART b/Documentation/arch/arm/SA1100/LART
similarity index 100%
rename from Documentation/arm/SA1100/LART
rename to Documentation/arch/arm/SA1100/LART
diff --git a/Documentation/arm/SA1100/PLEB b/Documentation/arch/arm/SA1100/PLEB
similarity index 100%
rename from Documentation/arm/SA1100/PLEB
rename to Documentation/arch/arm/SA1100/PLEB
diff --git a/Documentation/arm/SA1100/Pangolin b/Documentation/arch/arm/SA1100/Pangolin
similarity index 100%
rename from Documentation/arm/SA1100/Pangolin
rename to Documentation/arch/arm/SA1100/Pangolin
diff --git a/Documentation/arm/SA1100/Tifon b/Documentation/arch/arm/SA1100/Tifon
similarity index 100%
rename from Documentation/arm/SA1100/Tifon
rename to Documentation/arch/arm/SA1100/Tifon
diff --git a/Documentation/arm/SA1100/Yopy b/Documentation/arch/arm/SA1100/Yopy
similarity index 100%
rename from Documentation/arm/SA1100/Yopy
rename to Documentation/arch/arm/SA1100/Yopy
diff --git a/Documentation/arm/SA1100/empeg b/Documentation/arch/arm/SA1100/empeg
similarity index 100%
rename from Documentation/arm/SA1100/empeg
rename to Documentation/arch/arm/SA1100/empeg
diff --git a/Documentation/arm/SA1100/nanoEngine b/Documentation/arch/arm/SA1100/nanoEngine
similarity index 100%
rename from Documentation/arm/SA1100/nanoEngine
rename to Documentation/arch/arm/SA1100/nanoEngine
diff --git a/Documentation/arm/SA1100/serial_UART b/Documentation/arch/arm/SA1100/serial_UART
similarity index 100%
rename from Documentation/arm/SA1100/serial_UART
rename to Documentation/arch/arm/SA1100/serial_UART
diff --git a/Documentation/arm/SH-Mobile/.gitignore b/Documentation/arch/arm/SH-Mobile/.gitignore
similarity index 100%
rename from Documentation/arm/SH-Mobile/.gitignore
rename to Documentation/arch/arm/SH-Mobile/.gitignore
diff --git a/Documentation/arm/SPEAr/overview.txt b/Documentation/arch/arm/SPEAr/overview.txt
similarity index 100%
rename from Documentation/arm/SPEAr/overview.txt
rename to Documentation/arch/arm/SPEAr/overview.txt
diff --git a/Documentation/arm/Samsung-S3C24XX/CPUfreq.txt b/Documentation/arch/arm/Samsung-S3C24XX/CPUfreq.txt
similarity index 100%
rename from Documentation/arm/Samsung-S3C24XX/CPUfreq.txt
rename to Documentation/arch/arm/Samsung-S3C24XX/CPUfreq.txt
diff --git a/Documentation/arm/Samsung-S3C24XX/EB2410ITX.txt b/Documentation/arch/arm/Samsung-S3C24XX/EB2410ITX.txt
similarity index 100%
rename from Documentation/arm/Samsung-S3C24XX/EB2410ITX.txt
rename to Documentation/arch/arm/Samsung-S3C24XX/EB2410ITX.txt
diff --git a/Documentation/arm/Samsung-S3C24XX/GPIO.txt b/Documentation/arch/arm/Samsung-S3C24XX/GPIO.txt
similarity index 100%
rename from Documentation/arm/Samsung-S3C24XX/GPIO.txt
rename to Documentation/arch/arm/Samsung-S3C24XX/GPIO.txt
diff --git a/Documentation/arm/Samsung-S3C24XX/H1940.txt b/Documentation/arch/arm/Samsung-S3C24XX/H1940.txt
similarity index 100%
rename from Documentation/arm/Samsung-S3C24XX/H1940.txt
rename to Documentation/arch/arm/Samsung-S3C24XX/H1940.txt
diff --git a/Documentation/arm/Samsung-S3C24XX/NAND.txt b/Documentation/arch/arm/Samsung-S3C24XX/NAND.txt
similarity index 100%
rename from Documentation/arm/Samsung-S3C24XX/NAND.txt
rename to Documentation/arch/arm/Samsung-S3C24XX/NAND.txt
diff --git a/Documentation/arm/Samsung-S3C24XX/Overview.txt b/Documentation/arch/arm/Samsung-S3C24XX/Overview.txt
similarity index 100%
rename from Documentation/arm/Samsung-S3C24XX/Overview.txt
rename to Documentation/arch/arm/Samsung-S3C24XX/Overview.txt
diff --git a/Documentation/arm/Samsung-S3C24XX/S3C2412.txt b/Documentation/arch/arm/Samsung-S3C24XX/S3C2412.txt
similarity index 100%
rename from Documentation/arm/Samsung-S3C24XX/S3C2412.txt
rename to Documentation/arch/arm/Samsung-S3C24XX/S3C2412.txt
diff --git a/Documentation/arm/Samsung-S3C24XX/S3C2413.txt b/Documentation/arch/arm/Samsung-S3C24XX/S3C2413.txt
similarity index 100%
rename from Documentation/arm/Samsung-S3C24XX/S3C2413.txt
rename to Documentation/arch/arm/Samsung-S3C24XX/S3C2413.txt
diff --git a/Documentation/arm/Samsung-S3C24XX/SMDK2440.txt b/Documentation/arch/arm/Samsung-S3C24XX/SMDK2440.txt
similarity index 100%
rename from Documentation/arm/Samsung-S3C24XX/SMDK2440.txt
rename to Documentation/arch/arm/Samsung-S3C24XX/SMDK2440.txt
diff --git a/Documentation/arm/Samsung-S3C24XX/Suspend.txt b/Documentation/arch/arm/Samsung-S3C24XX/Suspend.txt
similarity index 100%
rename from Documentation/arm/Samsung-S3C24XX/Suspend.txt
rename to Documentation/arch/arm/Samsung-S3C24XX/Suspend.txt
diff --git a/Documentation/arm/Samsung-S3C24XX/USB-Host.txt b/Documentation/arch/arm/Samsung-S3C24XX/USB-Host.txt
similarity index 100%
rename from Documentation/arm/Samsung-S3C24XX/USB-Host.txt
rename to Documentation/arch/arm/Samsung-S3C24XX/USB-Host.txt
diff --git a/Documentation/arm/Samsung/Bootloader-interface.txt b/Documentation/arch/arm/Samsung/Bootloader-interface.txt
similarity index 100%
rename from Documentation/arm/Samsung/Bootloader-interface.txt
rename to Documentation/arch/arm/Samsung/Bootloader-interface.txt
diff --git a/Documentation/arm/Samsung/GPIO.txt b/Documentation/arch/arm/Samsung/GPIO.txt
similarity index 100%
rename from Documentation/arm/Samsung/GPIO.txt
rename to Documentation/arch/arm/Samsung/GPIO.txt
diff --git a/Documentation/arm/Samsung/Overview.txt b/Documentation/arch/arm/Samsung/Overview.txt
similarity index 100%
rename from Documentation/arm/Samsung/Overview.txt
rename to Documentation/arch/arm/Samsung/Overview.txt
diff --git a/Documentation/arm/Samsung/clksrc-change-registers.awk b/Documentation/arch/arm/Samsung/clksrc-change-registers.awk
similarity index 100%
rename from Documentation/arm/Samsung/clksrc-change-registers.awk
rename to Documentation/arch/arm/Samsung/clksrc-change-registers.awk
diff --git a/Documentation/arm/Setup b/Documentation/arch/arm/Setup
similarity index 100%
rename from Documentation/arm/Setup
rename to Documentation/arch/arm/Setup
diff --git a/Documentation/arm/VFP/release-notes.txt b/Documentation/arch/arm/VFP/release-notes.txt
similarity index 100%
rename from Documentation/arm/VFP/release-notes.txt
rename to Documentation/arch/arm/VFP/release-notes.txt
diff --git a/Documentation/arm/cluster-pm-race-avoidance.txt b/Documentation/arch/arm/cluster-pm-race-avoidance.txt
similarity index 100%
rename from Documentation/arm/cluster-pm-race-avoidance.txt
rename to Documentation/arch/arm/cluster-pm-race-avoidance.txt
diff --git a/Documentation/arm/firmware.txt b/Documentation/arch/arm/firmware.txt
similarity index 100%
rename from Documentation/arm/firmware.txt
rename to Documentation/arch/arm/firmware.txt
diff --git a/Documentation/arm/kernel_mode_neon.txt b/Documentation/arch/arm/kernel_mode_neon.txt
similarity index 100%
rename from Documentation/arm/kernel_mode_neon.txt
rename to Documentation/arch/arm/kernel_mode_neon.txt
diff --git a/Documentation/arm/kernel_user_helpers.txt b/Documentation/arch/arm/kernel_user_helpers.txt
similarity index 100%
rename from Documentation/arm/kernel_user_helpers.txt
rename to Documentation/arch/arm/kernel_user_helpers.txt
diff --git a/Documentation/arm/keystone/Overview.txt b/Documentation/arch/arm/keystone/Overview.txt
similarity index 100%
rename from Documentation/arm/keystone/Overview.txt
rename to Documentation/arch/arm/keystone/Overview.txt
diff --git a/Documentation/arm/keystone/knav-qmss.txt b/Documentation/arch/arm/keystone/knav-qmss.txt
similarity index 100%
rename from Documentation/arm/keystone/knav-qmss.txt
rename to Documentation/arch/arm/keystone/knav-qmss.txt
diff --git a/Documentation/arm/mem_alignment b/Documentation/arch/arm/mem_alignment
similarity index 100%
rename from Documentation/arm/mem_alignment
rename to Documentation/arch/arm/mem_alignment
diff --git a/Documentation/arm/memory.txt b/Documentation/arch/arm/memory.txt
similarity index 100%
rename from Documentation/arm/memory.txt
rename to Documentation/arch/arm/memory.txt
diff --git a/Documentation/arm/nwfpe/NOTES b/Documentation/arch/arm/nwfpe/NOTES
similarity index 100%
rename from Documentation/arm/nwfpe/NOTES
rename to Documentation/arch/arm/nwfpe/NOTES
diff --git a/Documentation/arm/nwfpe/README b/Documentation/arch/arm/nwfpe/README
similarity index 100%
rename from Documentation/arm/nwfpe/README
rename to Documentation/arch/arm/nwfpe/README
diff --git a/Documentation/arm/nwfpe/README.FPE b/Documentation/arch/arm/nwfpe/README.FPE
similarity index 100%
rename from Documentation/arm/nwfpe/README.FPE
rename to Documentation/arch/arm/nwfpe/README.FPE
diff --git a/Documentation/arm/nwfpe/TODO b/Documentation/arch/arm/nwfpe/TODO
similarity index 100%
rename from Documentation/arm/nwfpe/TODO
rename to Documentation/arch/arm/nwfpe/TODO
diff --git a/Documentation/arm/pxa/mfp.txt b/Documentation/arch/arm/pxa/mfp.txt
similarity index 100%
rename from Documentation/arm/pxa/mfp.txt
rename to Documentation/arch/arm/pxa/mfp.txt
diff --git a/Documentation/arm/sti/overview.txt b/Documentation/arch/arm/sti/overview.txt
similarity index 100%
rename from Documentation/arm/sti/overview.txt
rename to Documentation/arch/arm/sti/overview.txt
diff --git a/Documentation/arm/sti/stih407-overview.txt b/Documentation/arch/arm/sti/stih407-overview.txt
similarity index 100%
rename from Documentation/arm/sti/stih407-overview.txt
rename to Documentation/arch/arm/sti/stih407-overview.txt
diff --git a/Documentation/arm/sti/stih415-overview.txt b/Documentation/arch/arm/sti/stih415-overview.txt
similarity index 100%
rename from Documentation/arm/sti/stih415-overview.txt
rename to Documentation/arch/arm/sti/stih415-overview.txt
diff --git a/Documentation/arm/sti/stih416-overview.txt b/Documentation/arch/arm/sti/stih416-overview.txt
similarity index 100%
rename from Documentation/arm/sti/stih416-overview.txt
rename to Documentation/arch/arm/sti/stih416-overview.txt
diff --git a/Documentation/arm/sti/stih418-overview.txt b/Documentation/arch/arm/sti/stih418-overview.txt
similarity index 100%
rename from Documentation/arm/sti/stih418-overview.txt
rename to Documentation/arch/arm/sti/stih418-overview.txt
diff --git a/Documentation/arm/stm32/overview.rst b/Documentation/arch/arm/stm32/overview.rst
similarity index 100%
rename from Documentation/arm/stm32/overview.rst
rename to Documentation/arch/arm/stm32/overview.rst
diff --git a/Documentation/arm/stm32/stm32f429-overview.rst b/Documentation/arch/arm/stm32/stm32f429-overview.rst
similarity index 100%
rename from Documentation/arm/stm32/stm32f429-overview.rst
rename to Documentation/arch/arm/stm32/stm32f429-overview.rst
diff --git a/Documentation/arm/stm32/stm32f746-overview.rst b/Documentation/arch/arm/stm32/stm32f746-overview.rst
similarity index 100%
rename from Documentation/arm/stm32/stm32f746-overview.rst
rename to Documentation/arch/arm/stm32/stm32f746-overview.rst
diff --git a/Documentation/arm/stm32/stm32f769-overview.rst b/Documentation/arch/arm/stm32/stm32f769-overview.rst
similarity index 100%
rename from Documentation/arm/stm32/stm32f769-overview.rst
rename to Documentation/arch/arm/stm32/stm32f769-overview.rst
diff --git a/Documentation/arm/stm32/stm32h743-overview.rst b/Documentation/arch/arm/stm32/stm32h743-overview.rst
similarity index 100%
rename from Documentation/arm/stm32/stm32h743-overview.rst
rename to Documentation/arch/arm/stm32/stm32h743-overview.rst
diff --git a/Documentation/arm/stm32/stm32mp157-overview.rst b/Documentation/arch/arm/stm32/stm32mp157-overview.rst
similarity index 100%
rename from Documentation/arm/stm32/stm32mp157-overview.rst
rename to Documentation/arch/arm/stm32/stm32mp157-overview.rst
diff --git a/Documentation/arm/sunxi/README b/Documentation/arch/arm/sunxi/README
similarity index 100%
rename from Documentation/arm/sunxi/README
rename to Documentation/arch/arm/sunxi/README
diff --git a/Documentation/arm/sunxi/clocks.txt b/Documentation/arch/arm/sunxi/clocks.txt
similarity index 100%
rename from Documentation/arm/sunxi/clocks.txt
rename to Documentation/arch/arm/sunxi/clocks.txt
diff --git a/Documentation/arm/swp_emulation b/Documentation/arch/arm/swp_emulation
similarity index 100%
rename from Documentation/arm/swp_emulation
rename to Documentation/arch/arm/swp_emulation
diff --git a/Documentation/arm/tcm.txt b/Documentation/arch/arm/tcm.txt
similarity index 100%
rename from Documentation/arm/tcm.txt
rename to Documentation/arch/arm/tcm.txt
diff --git a/Documentation/arm/uefi.txt b/Documentation/arch/arm/uefi.txt
similarity index 100%
rename from Documentation/arm/uefi.txt
rename to Documentation/arch/arm/uefi.txt
diff --git a/Documentation/arm/vlocks.txt b/Documentation/arch/arm/vlocks.txt
similarity index 100%
rename from Documentation/arm/vlocks.txt
rename to Documentation/arch/arm/vlocks.txt
diff --git a/Documentation/arm64/acpi_object_usage.rst b/Documentation/arch/arm64/acpi_object_usage.rst
similarity index 100%
rename from Documentation/arm64/acpi_object_usage.rst
rename to Documentation/arch/arm64/acpi_object_usage.rst
diff --git a/Documentation/arm64/arm-acpi.rst b/Documentation/arch/arm64/arm-acpi.rst
similarity index 100%
rename from Documentation/arm64/arm-acpi.rst
rename to Documentation/arch/arm64/arm-acpi.rst
diff --git a/Documentation/arm64/booting.rst b/Documentation/arch/arm64/booting.rst
similarity index 100%
rename from Documentation/arm64/booting.rst
rename to Documentation/arch/arm64/booting.rst
diff --git a/Documentation/arm64/cpu-feature-registers.rst b/Documentation/arch/arm64/cpu-feature-registers.rst
similarity index 100%
rename from Documentation/arm64/cpu-feature-registers.rst
rename to Documentation/arch/arm64/cpu-feature-registers.rst
diff --git a/Documentation/arm64/elf_hwcaps.rst b/Documentation/arch/arm64/elf_hwcaps.rst
similarity index 100%
rename from Documentation/arm64/elf_hwcaps.rst
rename to Documentation/arch/arm64/elf_hwcaps.rst
diff --git a/Documentation/arm64/hugetlbpage.rst b/Documentation/arch/arm64/hugetlbpage.rst
similarity index 100%
rename from Documentation/arm64/hugetlbpage.rst
rename to Documentation/arch/arm64/hugetlbpage.rst
diff --git a/Documentation/arm64/index.rst b/Documentation/arch/arm64/index.rst
similarity index 100%
rename from Documentation/arm64/index.rst
rename to Documentation/arch/arm64/index.rst
diff --git a/Documentation/arm64/legacy_instructions.rst b/Documentation/arch/arm64/legacy_instructions.rst
similarity index 100%
rename from Documentation/arm64/legacy_instructions.rst
rename to Documentation/arch/arm64/legacy_instructions.rst
diff --git a/Documentation/arm64/memory.rst b/Documentation/arch/arm64/memory.rst
similarity index 100%
rename from Documentation/arm64/memory.rst
rename to Documentation/arch/arm64/memory.rst
diff --git a/Documentation/arm64/perf.txt b/Documentation/arch/arm64/perf.txt
similarity index 100%
rename from Documentation/arm64/perf.txt
rename to Documentation/arch/arm64/perf.txt
diff --git a/Documentation/arm64/pointer-authentication.rst b/Documentation/arch/arm64/pointer-authentication.rst
similarity index 100%
rename from Documentation/arm64/pointer-authentication.rst
rename to Documentation/arch/arm64/pointer-authentication.rst
diff --git a/Documentation/arm64/silicon-errata.rst b/Documentation/arch/arm64/silicon-errata.rst
similarity index 100%
rename from Documentation/arm64/silicon-errata.rst
rename to Documentation/arch/arm64/silicon-errata.rst
diff --git a/Documentation/arm64/sve.rst b/Documentation/arch/arm64/sve.rst
similarity index 100%
rename from Documentation/arm64/sve.rst
rename to Documentation/arch/arm64/sve.rst
diff --git a/Documentation/arm64/tagged-pointers.rst b/Documentation/arch/arm64/tagged-pointers.rst
similarity index 100%
rename from Documentation/arm64/tagged-pointers.rst
rename to Documentation/arch/arm64/tagged-pointers.rst
diff --git a/Documentation/ia64/IRQ-redir.txt b/Documentation/arch/ia64/IRQ-redir.txt
similarity index 100%
rename from Documentation/ia64/IRQ-redir.txt
rename to Documentation/arch/ia64/IRQ-redir.txt
diff --git a/Documentation/ia64/README b/Documentation/arch/ia64/README
similarity index 100%
rename from Documentation/ia64/README
rename to Documentation/arch/ia64/README
diff --git a/Documentation/ia64/aliasing.txt b/Documentation/arch/ia64/aliasing.txt
similarity index 100%
rename from Documentation/ia64/aliasing.txt
rename to Documentation/arch/ia64/aliasing.txt
diff --git a/Documentation/ia64/efirtc.txt b/Documentation/arch/ia64/efirtc.txt
similarity index 100%
rename from Documentation/ia64/efirtc.txt
rename to Documentation/arch/ia64/efirtc.txt
diff --git a/Documentation/ia64/err_inject.txt b/Documentation/arch/ia64/err_inject.txt
similarity index 100%
rename from Documentation/ia64/err_inject.txt
rename to Documentation/arch/ia64/err_inject.txt
diff --git a/Documentation/ia64/fsys.txt b/Documentation/arch/ia64/fsys.txt
similarity index 100%
rename from Documentation/ia64/fsys.txt
rename to Documentation/arch/ia64/fsys.txt
diff --git a/Documentation/ia64/mca.txt b/Documentation/arch/ia64/mca.txt
similarity index 100%
rename from Documentation/ia64/mca.txt
rename to Documentation/arch/ia64/mca.txt
diff --git a/Documentation/ia64/serial.txt b/Documentation/arch/ia64/serial.txt
similarity index 100%
rename from Documentation/ia64/serial.txt
rename to Documentation/arch/ia64/serial.txt
diff --git a/Documentation/ia64/xen.txt b/Documentation/arch/ia64/xen.txt
similarity index 100%
rename from Documentation/ia64/xen.txt
rename to Documentation/arch/ia64/xen.txt
diff --git a/Documentation/m68k/README.buddha b/Documentation/arch/m68k/README.buddha
similarity index 100%
rename from Documentation/m68k/README.buddha
rename to Documentation/arch/m68k/README.buddha
diff --git a/Documentation/m68k/kernel-options.txt b/Documentation/arch/m68k/kernel-options.txt
similarity index 100%
rename from Documentation/m68k/kernel-options.txt
rename to Documentation/arch/m68k/kernel-options.txt
diff --git a/Documentation/mips/AU1xxx_IDE.README b/Documentation/arch/mips/AU1xxx_IDE.README
similarity index 100%
rename from Documentation/mips/AU1xxx_IDE.README
rename to Documentation/arch/mips/AU1xxx_IDE.README
diff --git a/Documentation/nios2/README b/Documentation/arch/nios2/README
similarity index 100%
rename from Documentation/nios2/README
rename to Documentation/arch/nios2/README
diff --git a/Documentation/parisc/debugging b/Documentation/arch/parisc/debugging
similarity index 100%
rename from Documentation/parisc/debugging
rename to Documentation/arch/parisc/debugging
diff --git a/Documentation/parisc/registers b/Documentation/arch/parisc/registers
similarity index 100%
rename from Documentation/parisc/registers
rename to Documentation/arch/parisc/registers
diff --git a/Documentation/powerpc/DAWR-POWER9.txt b/Documentation/arch/powerpc/DAWR-POWER9.txt
similarity index 100%
rename from Documentation/powerpc/DAWR-POWER9.txt
rename to Documentation/arch/powerpc/DAWR-POWER9.txt
diff --git a/Documentation/powerpc/bootwrapper.txt b/Documentation/arch/powerpc/bootwrapper.txt
similarity index 100%
rename from Documentation/powerpc/bootwrapper.txt
rename to Documentation/arch/powerpc/bootwrapper.txt
diff --git a/Documentation/powerpc/cpu_families.txt b/Documentation/arch/powerpc/cpu_families.txt
similarity index 100%
rename from Documentation/powerpc/cpu_families.txt
rename to Documentation/arch/powerpc/cpu_families.txt
diff --git a/Documentation/powerpc/cpu_features.txt b/Documentation/arch/powerpc/cpu_features.txt
similarity index 100%
rename from Documentation/powerpc/cpu_features.txt
rename to Documentation/arch/powerpc/cpu_features.txt
diff --git a/Documentation/powerpc/cxl.txt b/Documentation/arch/powerpc/cxl.txt
similarity index 100%
rename from Documentation/powerpc/cxl.txt
rename to Documentation/arch/powerpc/cxl.txt
diff --git a/Documentation/powerpc/cxlflash.txt b/Documentation/arch/powerpc/cxlflash.txt
similarity index 100%
rename from Documentation/powerpc/cxlflash.txt
rename to Documentation/arch/powerpc/cxlflash.txt
diff --git a/Documentation/powerpc/dscr.txt b/Documentation/arch/powerpc/dscr.txt
similarity index 100%
rename from Documentation/powerpc/dscr.txt
rename to Documentation/arch/powerpc/dscr.txt
diff --git a/Documentation/powerpc/eeh-pci-error-recovery.txt b/Documentation/arch/powerpc/eeh-pci-error-recovery.txt
similarity index 100%
rename from Documentation/powerpc/eeh-pci-error-recovery.txt
rename to Documentation/arch/powerpc/eeh-pci-error-recovery.txt
diff --git a/Documentation/powerpc/firmware-assisted-dump.txt b/Documentation/arch/powerpc/firmware-assisted-dump.txt
similarity index 100%
rename from Documentation/powerpc/firmware-assisted-dump.txt
rename to Documentation/arch/powerpc/firmware-assisted-dump.txt
diff --git a/Documentation/powerpc/hvcs.txt b/Documentation/arch/powerpc/hvcs.txt
similarity index 100%
rename from Documentation/powerpc/hvcs.txt
rename to Documentation/arch/powerpc/hvcs.txt
diff --git a/Documentation/powerpc/isa-versions.rst b/Documentation/arch/powerpc/isa-versions.rst
similarity index 100%
rename from Documentation/powerpc/isa-versions.rst
rename to Documentation/arch/powerpc/isa-versions.rst
diff --git a/Documentation/powerpc/mpc52xx.txt b/Documentation/arch/powerpc/mpc52xx.txt
similarity index 100%
rename from Documentation/powerpc/mpc52xx.txt
rename to Documentation/arch/powerpc/mpc52xx.txt
diff --git a/Documentation/powerpc/pci_iov_resource_on_powernv.txt b/Documentation/arch/powerpc/pci_iov_resource_on_powernv.txt
similarity index 100%
rename from Documentation/powerpc/pci_iov_resource_on_powernv.txt
rename to Documentation/arch/powerpc/pci_iov_resource_on_powernv.txt
diff --git a/Documentation/powerpc/pmu-ebb.txt b/Documentation/arch/powerpc/pmu-ebb.txt
similarity index 100%
rename from Documentation/powerpc/pmu-ebb.txt
rename to Documentation/arch/powerpc/pmu-ebb.txt
diff --git a/Documentation/powerpc/ptrace.txt b/Documentation/arch/powerpc/ptrace.txt
similarity index 100%
rename from Documentation/powerpc/ptrace.txt
rename to Documentation/arch/powerpc/ptrace.txt
diff --git a/Documentation/powerpc/qe_firmware.txt b/Documentation/arch/powerpc/qe_firmware.txt
similarity index 100%
rename from Documentation/powerpc/qe_firmware.txt
rename to Documentation/arch/powerpc/qe_firmware.txt
diff --git a/Documentation/powerpc/syscall64-abi.txt b/Documentation/arch/powerpc/syscall64-abi.txt
similarity index 100%
rename from Documentation/powerpc/syscall64-abi.txt
rename to Documentation/arch/powerpc/syscall64-abi.txt
diff --git a/Documentation/powerpc/transactional_memory.txt b/Documentation/arch/powerpc/transactional_memory.txt
similarity index 100%
rename from Documentation/powerpc/transactional_memory.txt
rename to Documentation/arch/powerpc/transactional_memory.txt
diff --git a/Documentation/riscv/index.rst b/Documentation/arch/riscv/index.rst
similarity index 100%
rename from Documentation/riscv/index.rst
rename to Documentation/arch/riscv/index.rst
diff --git a/Documentation/riscv/pmu.rst b/Documentation/arch/riscv/pmu.rst
similarity index 100%
rename from Documentation/riscv/pmu.rst
rename to Documentation/arch/riscv/pmu.rst
diff --git a/Documentation/s390/3270.ChangeLog b/Documentation/arch/s390/3270.ChangeLog
similarity index 100%
rename from Documentation/s390/3270.ChangeLog
rename to Documentation/arch/s390/3270.ChangeLog
diff --git a/Documentation/s390/3270.rst b/Documentation/arch/s390/3270.rst
similarity index 100%
rename from Documentation/s390/3270.rst
rename to Documentation/arch/s390/3270.rst
diff --git a/Documentation/s390/cds.rst b/Documentation/arch/s390/cds.rst
similarity index 100%
rename from Documentation/s390/cds.rst
rename to Documentation/arch/s390/cds.rst
diff --git a/Documentation/s390/common_io.rst b/Documentation/arch/s390/common_io.rst
similarity index 100%
rename from Documentation/s390/common_io.rst
rename to Documentation/arch/s390/common_io.rst
diff --git a/Documentation/s390/config3270.sh b/Documentation/arch/s390/config3270.sh
similarity index 100%
rename from Documentation/s390/config3270.sh
rename to Documentation/arch/s390/config3270.sh
diff --git a/Documentation/s390/dasd.rst b/Documentation/arch/s390/dasd.rst
similarity index 100%
rename from Documentation/s390/dasd.rst
rename to Documentation/arch/s390/dasd.rst
diff --git a/Documentation/s390/debugging390.rst b/Documentation/arch/s390/debugging390.rst
similarity index 100%
rename from Documentation/s390/debugging390.rst
rename to Documentation/arch/s390/debugging390.rst
diff --git a/Documentation/s390/driver-model.rst b/Documentation/arch/s390/driver-model.rst
similarity index 100%
rename from Documentation/s390/driver-model.rst
rename to Documentation/arch/s390/driver-model.rst
diff --git a/Documentation/s390/index.rst b/Documentation/arch/s390/index.rst
similarity index 100%
rename from Documentation/s390/index.rst
rename to Documentation/arch/s390/index.rst
diff --git a/Documentation/s390/monreader.rst b/Documentation/arch/s390/monreader.rst
similarity index 100%
rename from Documentation/s390/monreader.rst
rename to Documentation/arch/s390/monreader.rst
diff --git a/Documentation/s390/qeth.rst b/Documentation/arch/s390/qeth.rst
similarity index 100%
rename from Documentation/s390/qeth.rst
rename to Documentation/arch/s390/qeth.rst
diff --git a/Documentation/s390/s390dbf.rst b/Documentation/arch/s390/s390dbf.rst
similarity index 100%
rename from Documentation/s390/s390dbf.rst
rename to Documentation/arch/s390/s390dbf.rst
diff --git a/Documentation/s390/text_files.rst b/Documentation/arch/s390/text_files.rst
similarity index 100%
rename from Documentation/s390/text_files.rst
rename to Documentation/arch/s390/text_files.rst
diff --git a/Documentation/s390/vfio-ap.rst b/Documentation/arch/s390/vfio-ap.rst
similarity index 100%
rename from Documentation/s390/vfio-ap.rst
rename to Documentation/arch/s390/vfio-ap.rst
diff --git a/Documentation/s390/vfio-ccw.rst b/Documentation/arch/s390/vfio-ccw.rst
similarity index 100%
rename from Documentation/s390/vfio-ccw.rst
rename to Documentation/arch/s390/vfio-ccw.rst
diff --git a/Documentation/s390/zfcpdump.rst b/Documentation/arch/s390/zfcpdump.rst
similarity index 100%
rename from Documentation/s390/zfcpdump.rst
rename to Documentation/arch/s390/zfcpdump.rst
diff --git a/Documentation/sh/conf.py b/Documentation/arch/sh/conf.py
similarity index 100%
rename from Documentation/sh/conf.py
rename to Documentation/arch/sh/conf.py
diff --git a/Documentation/sh/index.rst b/Documentation/arch/sh/index.rst
similarity index 100%
rename from Documentation/sh/index.rst
rename to Documentation/arch/sh/index.rst
diff --git a/Documentation/sh/new-machine.txt b/Documentation/arch/sh/new-machine.txt
similarity index 100%
rename from Documentation/sh/new-machine.txt
rename to Documentation/arch/sh/new-machine.txt
diff --git a/Documentation/sh/register-banks.txt b/Documentation/arch/sh/register-banks.txt
similarity index 100%
rename from Documentation/sh/register-banks.txt
rename to Documentation/arch/sh/register-banks.txt
diff --git a/Documentation/sparc/adi.rst b/Documentation/arch/sparc/adi.rst
similarity index 100%
rename from Documentation/sparc/adi.rst
rename to Documentation/arch/sparc/adi.rst
diff --git a/Documentation/sparc/console.rst b/Documentation/arch/sparc/console.rst
similarity index 100%
rename from Documentation/sparc/console.rst
rename to Documentation/arch/sparc/console.rst
diff --git a/Documentation/sparc/index.rst b/Documentation/arch/sparc/index.rst
similarity index 100%
rename from Documentation/sparc/index.rst
rename to Documentation/arch/sparc/index.rst
diff --git a/Documentation/sparc/oradax/dax-hv-api.txt b/Documentation/arch/sparc/oradax/dax-hv-api.txt
similarity index 100%
rename from Documentation/sparc/oradax/dax-hv-api.txt
rename to Documentation/arch/sparc/oradax/dax-hv-api.txt
diff --git a/Documentation/sparc/oradax/oracle-dax.rst b/Documentation/arch/sparc/oradax/oracle-dax.rst
similarity index 100%
rename from Documentation/sparc/oradax/oracle-dax.rst
rename to Documentation/arch/sparc/oradax/oracle-dax.rst
diff --git a/Documentation/x86/amd-memory-encryption.rst b/Documentation/arch/x86/amd-memory-encryption.rst
similarity index 100%
rename from Documentation/x86/amd-memory-encryption.rst
rename to Documentation/arch/x86/amd-memory-encryption.rst
diff --git a/Documentation/x86/boot.rst b/Documentation/arch/x86/boot.rst
similarity index 100%
rename from Documentation/x86/boot.rst
rename to Documentation/arch/x86/boot.rst
diff --git a/Documentation/x86/conf.py b/Documentation/arch/x86/conf.py
similarity index 100%
rename from Documentation/x86/conf.py
rename to Documentation/arch/x86/conf.py
diff --git a/Documentation/x86/earlyprintk.rst b/Documentation/arch/x86/earlyprintk.rst
similarity index 100%
rename from Documentation/x86/earlyprintk.rst
rename to Documentation/arch/x86/earlyprintk.rst
diff --git a/Documentation/x86/entry_64.rst b/Documentation/arch/x86/entry_64.rst
similarity index 100%
rename from Documentation/x86/entry_64.rst
rename to Documentation/arch/x86/entry_64.rst
diff --git a/Documentation/x86/exception-tables.rst b/Documentation/arch/x86/exception-tables.rst
similarity index 100%
rename from Documentation/x86/exception-tables.rst
rename to Documentation/arch/x86/exception-tables.rst
diff --git a/Documentation/x86/i386/IO-APIC.rst b/Documentation/arch/x86/i386/IO-APIC.rst
similarity index 100%
rename from Documentation/x86/i386/IO-APIC.rst
rename to Documentation/arch/x86/i386/IO-APIC.rst
diff --git a/Documentation/x86/i386/index.rst b/Documentation/arch/x86/i386/index.rst
similarity index 100%
rename from Documentation/x86/i386/index.rst
rename to Documentation/arch/x86/i386/index.rst
diff --git a/Documentation/x86/index.rst b/Documentation/arch/x86/index.rst
similarity index 100%
rename from Documentation/x86/index.rst
rename to Documentation/arch/x86/index.rst
diff --git a/Documentation/x86/intel_mpx.rst b/Documentation/arch/x86/intel_mpx.rst
similarity index 100%
rename from Documentation/x86/intel_mpx.rst
rename to Documentation/arch/x86/intel_mpx.rst
diff --git a/Documentation/x86/kernel-stacks.rst b/Documentation/arch/x86/kernel-stacks.rst
similarity index 100%
rename from Documentation/x86/kernel-stacks.rst
rename to Documentation/arch/x86/kernel-stacks.rst
diff --git a/Documentation/x86/mds.rst b/Documentation/arch/x86/mds.rst
similarity index 100%
rename from Documentation/x86/mds.rst
rename to Documentation/arch/x86/mds.rst
diff --git a/Documentation/x86/microcode.rst b/Documentation/arch/x86/microcode.rst
similarity index 100%
rename from Documentation/x86/microcode.rst
rename to Documentation/arch/x86/microcode.rst
diff --git a/Documentation/x86/mtrr.rst b/Documentation/arch/x86/mtrr.rst
similarity index 100%
rename from Documentation/x86/mtrr.rst
rename to Documentation/arch/x86/mtrr.rst
diff --git a/Documentation/x86/orc-unwinder.rst b/Documentation/arch/x86/orc-unwinder.rst
similarity index 100%
rename from Documentation/x86/orc-unwinder.rst
rename to Documentation/arch/x86/orc-unwinder.rst
diff --git a/Documentation/x86/pat.rst b/Documentation/arch/x86/pat.rst
similarity index 100%
rename from Documentation/x86/pat.rst
rename to Documentation/arch/x86/pat.rst
diff --git a/Documentation/x86/pti.rst b/Documentation/arch/x86/pti.rst
similarity index 100%
rename from Documentation/x86/pti.rst
rename to Documentation/arch/x86/pti.rst
diff --git a/Documentation/x86/resctrl_ui.rst b/Documentation/arch/x86/resctrl_ui.rst
similarity index 100%
rename from Documentation/x86/resctrl_ui.rst
rename to Documentation/arch/x86/resctrl_ui.rst
diff --git a/Documentation/x86/tlb.rst b/Documentation/arch/x86/tlb.rst
similarity index 100%
rename from Documentation/x86/tlb.rst
rename to Documentation/arch/x86/tlb.rst
diff --git a/Documentation/x86/topology.rst b/Documentation/arch/x86/topology.rst
similarity index 100%
rename from Documentation/x86/topology.rst
rename to Documentation/arch/x86/topology.rst
diff --git a/Documentation/x86/usb-legacy-support.rst b/Documentation/arch/x86/usb-legacy-support.rst
similarity index 100%
rename from Documentation/x86/usb-legacy-support.rst
rename to Documentation/arch/x86/usb-legacy-support.rst
diff --git a/Documentation/x86/x86_64/5level-paging.rst b/Documentation/arch/x86/x86_64/5level-paging.rst
similarity index 100%
rename from Documentation/x86/x86_64/5level-paging.rst
rename to Documentation/arch/x86/x86_64/5level-paging.rst
diff --git a/Documentation/x86/x86_64/boot-options.rst b/Documentation/arch/x86/x86_64/boot-options.rst
similarity index 100%
rename from Documentation/x86/x86_64/boot-options.rst
rename to Documentation/arch/x86/x86_64/boot-options.rst
diff --git a/Documentation/x86/x86_64/cpu-hotplug-spec.rst b/Documentation/arch/x86/x86_64/cpu-hotplug-spec.rst
similarity index 100%
rename from Documentation/x86/x86_64/cpu-hotplug-spec.rst
rename to Documentation/arch/x86/x86_64/cpu-hotplug-spec.rst
diff --git a/Documentation/x86/x86_64/fake-numa-for-cpusets.rst b/Documentation/arch/x86/x86_64/fake-numa-for-cpusets.rst
similarity index 100%
rename from Documentation/x86/x86_64/fake-numa-for-cpusets.rst
rename to Documentation/arch/x86/x86_64/fake-numa-for-cpusets.rst
diff --git a/Documentation/x86/x86_64/index.rst b/Documentation/arch/x86/x86_64/index.rst
similarity index 100%
rename from Documentation/x86/x86_64/index.rst
rename to Documentation/arch/x86/x86_64/index.rst
diff --git a/Documentation/x86/x86_64/machinecheck.rst b/Documentation/arch/x86/x86_64/machinecheck.rst
similarity index 100%
rename from Documentation/x86/x86_64/machinecheck.rst
rename to Documentation/arch/x86/x86_64/machinecheck.rst
diff --git a/Documentation/x86/x86_64/mm.rst b/Documentation/arch/x86/x86_64/mm.rst
similarity index 100%
rename from Documentation/x86/x86_64/mm.rst
rename to Documentation/arch/x86/x86_64/mm.rst
diff --git a/Documentation/x86/x86_64/uefi.rst b/Documentation/arch/x86/x86_64/uefi.rst
similarity index 100%
rename from Documentation/x86/x86_64/uefi.rst
rename to Documentation/arch/x86/x86_64/uefi.rst
diff --git a/Documentation/x86/zero-page.rst b/Documentation/arch/x86/zero-page.rst
similarity index 100%
rename from Documentation/x86/zero-page.rst
rename to Documentation/arch/x86/zero-page.rst
diff --git a/Documentation/xtensa/atomctl.txt b/Documentation/arch/xtensa/atomctl.txt
similarity index 100%
rename from Documentation/xtensa/atomctl.txt
rename to Documentation/arch/xtensa/atomctl.txt
diff --git a/Documentation/xtensa/booting.txt b/Documentation/arch/xtensa/booting.txt
similarity index 100%
rename from Documentation/xtensa/booting.txt
rename to Documentation/arch/xtensa/booting.txt
diff --git a/Documentation/xtensa/mmu.txt b/Documentation/arch/xtensa/mmu.txt
similarity index 100%
rename from Documentation/xtensa/mmu.txt
rename to Documentation/arch/xtensa/mmu.txt
--
2.19.1.856.g8858448bb
^ permalink raw reply
* [PATCH 06/12] Documentation/mips: repointer docs to Documentation/arch/
From: Alex Shi @ 2019-07-12 2:20 UTC (permalink / raw)
To: linux-doc, Jonathan Corbet
Cc: linux-s390, linux-fbdev, linux-omap, linux-ia64, linux-scsi,
linux-parisc, linux-sh, David S. Miller, linux-kernel, linux-mips,
linux-samsung-soc, kvm, Mauro Carvalho Chehab, linux-riscv,
Alex Shi, linuxppc-dev, linux-stm32, linux-arm-kernel
In-Reply-To: <20190712022018.27989-1-alex.shi@linux.alibaba.com>
Since we move Documentation/mips docs to Documentation/arch/mips
dir, redirect the doc pointer to them.
Signed-off-by: Alex Shi <alex.shi@linux.alibaba.com>
Cc: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: linux-kernel@vger.kernel.org
---
MAINTAINERS | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/MAINTAINERS b/MAINTAINERS
index 2c1e65c236db..03a8c687f87f 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -10554,7 +10554,7 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux.git
Q: http://patchwork.linux-mips.org/project/linux-mips/list/
S: Supported
F: Documentation/devicetree/bindings/mips/
-F: Documentation/mips/
+F: Documentation/arch/mips/
F: arch/mips/
F: drivers/platform/mips/
--
2.19.1.856.g8858448bb
^ permalink raw reply related
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox