* [PATCH 04/13] Drop a bunch of metag references
2018-02-21 23:38 [PATCH 00/13] Remove metag architecture James Hogan
@ 2018-02-21 23:38 ` James Hogan
2018-02-22 1:52 ` Steven Rostedt
2018-02-23 10:53 ` [PATCH v2 " James Hogan
2018-02-22 9:26 ` [PATCH 00/13] Remove metag architecture Peter Zijlstra
` (2 subsequent siblings)
3 siblings, 2 replies; 13+ messages in thread
From: James Hogan @ 2018-02-21 23:38 UTC (permalink / raw)
To: linux-metag
Cc: linux-kernel, James Hogan, Steven Rostedt, Ingo Molnar,
Peter Zijlstra, Arnaldo Carvalho de Melo, Alexander Shishkin,
Jiri Olsa, Namhyung Kim, linux-mm
Now that arch/metag/ has been removed, drop a bunch of metag references
in various codes across the whole tree:
- VM_GROWSUP and __VM_ARCH_PECIFIC_1.
- MT_METAG_* ELF note types.
- METAG Kconfig dependencies (FRAME_POINTER) and ranges
(MAX_STACK_SIZE_MB).
- metag cases in tools (checkstack.pl, recordmcount.c, perf).
Signed-off-by: James Hogan <jhogan@kernel.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: linux-mm@kvack.org
Cc: linux-metag@vger.kernel.org
---
include/linux/mm.h | 2 --
include/trace/events/mmflags.h | 2 +-
include/uapi/linux/elf.h | 3 ---
lib/Kconfig.debug | 2 +-
mm/Kconfig | 7 +++----
scripts/checkstack.pl | 4 ----
scripts/recordmcount.c | 20 --------------------
tools/perf/perf-sys.h | 4 ----
8 files changed, 5 insertions(+), 39 deletions(-)
diff --git a/include/linux/mm.h b/include/linux/mm.h
index ad06d42adb1a..ccac10682ce5 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -241,8 +241,6 @@ extern unsigned int kobjsize(const void *objp);
# define VM_SAO VM_ARCH_1 /* Strong Access Ordering (powerpc) */
#elif defined(CONFIG_PARISC)
# define VM_GROWSUP VM_ARCH_1
-#elif defined(CONFIG_METAG)
-# define VM_GROWSUP VM_ARCH_1
#elif defined(CONFIG_IA64)
# define VM_GROWSUP VM_ARCH_1
#elif !defined(CONFIG_MMU)
diff --git a/include/trace/events/mmflags.h b/include/trace/events/mmflags.h
index dbe1bb058c09..a81cffb76d89 100644
--- a/include/trace/events/mmflags.h
+++ b/include/trace/events/mmflags.h
@@ -115,7 +115,7 @@ IF_HAVE_PG_IDLE(PG_idle, "idle" )
#define __VM_ARCH_SPECIFIC_1 {VM_PAT, "pat" }
#elif defined(CONFIG_PPC)
#define __VM_ARCH_SPECIFIC_1 {VM_SAO, "sao" }
-#elif defined(CONFIG_PARISC) || defined(CONFIG_METAG) || defined(CONFIG_IA64)
+#elif defined(CONFIG_PARISC) || defined(CONFIG_IA64)
#define __VM_ARCH_SPECIFIC_1 {VM_GROWSUP, "growsup" }
#elif !defined(CONFIG_MMU)
#define __VM_ARCH_SPECIFIC_1 {VM_MAPPED_COPY,"mappedcopy" }
diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h
index 3bf73fb58045..e2535d6dcec7 100644
--- a/include/uapi/linux/elf.h
+++ b/include/uapi/linux/elf.h
@@ -420,9 +420,6 @@ typedef struct elf64_shdr {
#define NT_ARM_HW_WATCH 0x403 /* ARM hardware watchpoint registers */
#define NT_ARM_SYSTEM_CALL 0x404 /* ARM system call number */
#define NT_ARM_SVE 0x405 /* ARM Scalable Vector Extension registers */
-#define NT_METAG_CBUF 0x500 /* Metag catch buffer registers */
-#define NT_METAG_RPIPE 0x501 /* Metag read pipeline state */
-#define NT_METAG_TLS 0x502 /* Metag TLS pointer */
#define NT_ARC_V2 0x600 /* ARCv2 accumulator/extra registers */
/* Note header in a PT_NOTE section */
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 6088408ef26c..d1c523e408e9 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -356,7 +356,7 @@ config FRAME_POINTER
bool "Compile the kernel with frame pointers"
depends on DEBUG_KERNEL && \
(CRIS || M68K || FRV || UML || \
- SUPERH || BLACKFIN || MN10300 || METAG) || \
+ SUPERH || BLACKFIN || MN10300) || \
ARCH_WANT_FRAME_POINTERS
default y if (DEBUG_INFO && UML) || ARCH_WANT_FRAME_POINTERS
help
diff --git a/mm/Kconfig b/mm/Kconfig
index c782e8fb7235..abefa573bcd8 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -627,15 +627,14 @@ config GENERIC_EARLY_IOREMAP
config MAX_STACK_SIZE_MB
int "Maximum user stack size for 32-bit processes (MB)"
default 80
- range 8 256 if METAG
range 8 2048
depends on STACK_GROWSUP && (!64BIT || COMPAT)
help
This is the maximum stack size in Megabytes in the VM layout of 32-bit
user processes when the stack grows upwards (currently only on parisc
- and metag arch). The stack will be located at the highest memory
- address minus the given value, unless the RLIMIT_STACK hard limit is
- changed to a smaller value in which case that is used.
+ arch). The stack will be located at the highest memory address minus
+ the given value, unless the RLIMIT_STACK hard limit is changed to a
+ smaller value in which case that is used.
A sane initial value is 80 MB.
diff --git a/scripts/checkstack.pl b/scripts/checkstack.pl
index cb993801e4b2..eeb9ac8dbcfb 100755
--- a/scripts/checkstack.pl
+++ b/scripts/checkstack.pl
@@ -64,10 +64,6 @@ my (@stack, $re, $dre, $x, $xs, $funcre);
# 2b6c: 4e56 fb70 linkw %fp,#-1168
# 1df770: defc ffe4 addaw #-28,%sp
$re = qr/.*(?:linkw %fp,|addaw )#-([0-9]{1,4})(?:,%sp)?$/o;
- } elsif ($arch eq 'metag') {
- #400026fc: 40 00 00 82 ADD A0StP,A0StP,#0x8
- $re = qr/.*ADD.*A0StP,A0StP,\#(0x$x{1,8})/o;
- $funcre = qr/^$x* <[^\$](.*)>:$/;
} elsif ($arch eq 'mips64') {
#8800402c: 67bdfff0 daddiu sp,sp,-16
$re = qr/.*daddiu.*sp,sp,-(([0-9]{2}|[3-9])[0-9]{2})/o;
diff --git a/scripts/recordmcount.c b/scripts/recordmcount.c
index 16e086dcc567..8c9691c3329e 100644
--- a/scripts/recordmcount.c
+++ b/scripts/recordmcount.c
@@ -33,20 +33,6 @@
#include <string.h>
#include <unistd.h>
-/*
- * glibc synced up and added the metag number but didn't add the relocations.
- * Work around this in a crude manner for now.
- */
-#ifndef EM_METAG
-#define EM_METAG 174
-#endif
-#ifndef R_METAG_ADDR32
-#define R_METAG_ADDR32 2
-#endif
-#ifndef R_METAG_NONE
-#define R_METAG_NONE 3
-#endif
-
#ifndef EM_AARCH64
#define EM_AARCH64 183
#define R_AARCH64_NONE 0
@@ -538,12 +524,6 @@ do_file(char const *const fname)
gpfx = '_';
break;
case EM_IA_64: reltype = R_IA64_IMM64; gpfx = '_'; break;
- case EM_METAG: reltype = R_METAG_ADDR32;
- altmcount = "_mcount_wrapper";
- rel_type_nop = R_METAG_NONE;
- /* We happen to have the same requirement as MIPS */
- is_fake_mcount32 = MIPS32_is_fake_mcount;
- break;
case EM_MIPS: /* reltype: e_class */ gpfx = '_'; break;
case EM_PPC: reltype = R_PPC_ADDR32; gpfx = '_'; break;
case EM_PPC64: reltype = R_PPC64_ADDR64; gpfx = '_'; break;
diff --git a/tools/perf/perf-sys.h b/tools/perf/perf-sys.h
index 36673f98d66b..3eb7a39169f6 100644
--- a/tools/perf/perf-sys.h
+++ b/tools/perf/perf-sys.h
@@ -46,10 +46,6 @@
#define CPUINFO_PROC {"Processor"}
#endif
-#ifdef __metag__
-#define CPUINFO_PROC {"CPU"}
-#endif
-
#ifdef __xtensa__
#define CPUINFO_PROC {"core ID"}
#endif
--
2.13.6
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply related [flat|nested] 13+ messages in thread* Re: [PATCH 04/13] Drop a bunch of metag references
2018-02-21 23:38 ` [PATCH 04/13] Drop a bunch of metag references James Hogan
@ 2018-02-22 1:52 ` Steven Rostedt
2018-02-23 10:53 ` [PATCH v2 " James Hogan
1 sibling, 0 replies; 13+ messages in thread
From: Steven Rostedt @ 2018-02-22 1:52 UTC (permalink / raw)
To: James Hogan
Cc: linux-metag, linux-kernel, Ingo Molnar, Peter Zijlstra,
Arnaldo Carvalho de Melo, Alexander Shishkin, Jiri Olsa,
Namhyung Kim, linux-mm
On Wed, 21 Feb 2018 23:38:16 +0000
James Hogan <jhogan@kernel.org> wrote:
> Now that arch/metag/ has been removed, drop a bunch of metag references
> in various codes across the whole tree:
> - VM_GROWSUP and __VM_ARCH_PECIFIC_1.
> - MT_METAG_* ELF note types.
> - METAG Kconfig dependencies (FRAME_POINTER) and ranges
> (MAX_STACK_SIZE_MB).
> - metag cases in tools (checkstack.pl, recordmcount.c, perf).
>
> Signed-off-by: James Hogan <jhogan@kernel.org>
> Cc: Steven Rostedt <rostedt@goodmis.org>
> Cc: Ingo Molnar <mingo@redhat.com>
> Cc: Peter Zijlstra <peterz@infradead.org>
> Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
> Cc: Jiri Olsa <jolsa@redhat.com>
> Cc: Namhyung Kim <namhyung@kernel.org>
> Cc: linux-mm@kvack.org
> Cc: linux-metag@vger.kernel.org
> ---
> include/linux/mm.h | 2 --
> include/trace/events/mmflags.h | 2 +-
> include/uapi/linux/elf.h | 3 ---
> lib/Kconfig.debug | 2 +-
> mm/Kconfig | 7 +++----
> scripts/checkstack.pl | 4 ----
> scripts/recordmcount.c | 20 --------------------
Acked-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
-- Steve
> tools/perf/perf-sys.h | 4 ----
> 8 files changed, 5 insertions(+), 39 deletions(-)
> diff --git a/include/trace/events/mmflags.h b/include/trace/events/mmflags.h
> index dbe1bb058c09..a81cffb76d89 100644
> --- a/include/trace/events/mmflags.h
> +++ b/include/trace/events/mmflags.h
> @@ -115,7 +115,7 @@ IF_HAVE_PG_IDLE(PG_idle, "idle" )
> #define __VM_ARCH_SPECIFIC_1 {VM_PAT, "pat" }
> #elif defined(CONFIG_PPC)
> #define __VM_ARCH_SPECIFIC_1 {VM_SAO, "sao" }
> -#elif defined(CONFIG_PARISC) || defined(CONFIG_METAG) || defined(CONFIG_IA64)
> +#elif defined(CONFIG_PARISC) || defined(CONFIG_IA64)
> #define __VM_ARCH_SPECIFIC_1 {VM_GROWSUP, "growsup" }
> #elif !defined(CONFIG_MMU)
> #define __VM_ARCH_SPECIFIC_1 {VM_MAPPED_COPY,"mappedcopy" }
> diff --git a/scripts/recordmcount.c b/scripts/recordmcount.c
> index 16e086dcc567..8c9691c3329e 100644
> --- a/scripts/recordmcount.c
> +++ b/scripts/recordmcount.c
> @@ -33,20 +33,6 @@
> #include <string.h>
> #include <unistd.h>
>
> -/*
> - * glibc synced up and added the metag number but didn't add the relocations.
> - * Work around this in a crude manner for now.
> - */
> -#ifndef EM_METAG
> -#define EM_METAG 174
> -#endif
> -#ifndef R_METAG_ADDR32
> -#define R_METAG_ADDR32 2
> -#endif
> -#ifndef R_METAG_NONE
> -#define R_METAG_NONE 3
> -#endif
> -
> #ifndef EM_AARCH64
> #define EM_AARCH64 183
> #define R_AARCH64_NONE 0
> @@ -538,12 +524,6 @@ do_file(char const *const fname)
> gpfx = '_';
> break;
> case EM_IA_64: reltype = R_IA64_IMM64; gpfx = '_'; break;
> - case EM_METAG: reltype = R_METAG_ADDR32;
> - altmcount = "_mcount_wrapper";
> - rel_type_nop = R_METAG_NONE;
> - /* We happen to have the same requirement as MIPS */
> - is_fake_mcount32 = MIPS32_is_fake_mcount;
> - break;
> case EM_MIPS: /* reltype: e_class */ gpfx = '_'; break;
> case EM_PPC: reltype = R_PPC_ADDR32; gpfx = '_'; break;
> case EM_PPC64: reltype = R_PPC64_ADDR64; gpfx = '_'; break;
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply [flat|nested] 13+ messages in thread* [PATCH v2 04/13] Drop a bunch of metag references
2018-02-21 23:38 ` [PATCH 04/13] Drop a bunch of metag references James Hogan
2018-02-22 1:52 ` Steven Rostedt
@ 2018-02-23 10:53 ` James Hogan
2018-02-23 14:28 ` Guenter Roeck
1 sibling, 1 reply; 13+ messages in thread
From: James Hogan @ 2018-02-23 10:53 UTC (permalink / raw)
To: linux-metag
Cc: linux-kernel, Arnd Bergmann, Steven Rostedt, Peter Zijlstra,
James Hogan, Ingo Molnar, Arnaldo Carvalho de Melo,
Alexander Shishkin, Jiri Olsa, Namhyung Kim, Guenter Roeck,
linux-mm
Now that arch/metag/ has been removed, drop a bunch of metag references
in various codes across the whole tree:
- VM_GROWSUP and __VM_ARCH_PECIFIC_1.
- MT_METAG_* ELF note types.
- METAG Kconfig dependencies (FRAME_POINTER) and ranges
(MAX_STACK_SIZE_MB).
- metag cases in tools (checkstack.pl, recordmcount.c, perf).
Signed-off-by: James Hogan <jhogan@kernel.org>
Acked-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Guenter Roeck <linux@roeck-us.net>
Cc: linux-mm@kvack.org
Cc: linux-metag@vger.kernel.org
---
Changes in v2:
- Drop CPUHP_AP_PERF_METAG_STARTING too (Guenter).
---
include/linux/cpuhotplug.h | 1 -
include/linux/mm.h | 2 --
include/trace/events/mmflags.h | 2 +-
include/uapi/linux/elf.h | 3 ---
lib/Kconfig.debug | 2 +-
mm/Kconfig | 7 +++----
scripts/checkstack.pl | 4 ----
scripts/recordmcount.c | 20 --------------------
tools/perf/perf-sys.h | 4 ----
9 files changed, 5 insertions(+), 40 deletions(-)
diff --git a/include/linux/cpuhotplug.h b/include/linux/cpuhotplug.h
index 5172ad0daa7c..c7a950681f3a 100644
--- a/include/linux/cpuhotplug.h
+++ b/include/linux/cpuhotplug.h
@@ -108,7 +108,6 @@ enum cpuhp_state {
CPUHP_AP_PERF_X86_CQM_STARTING,
CPUHP_AP_PERF_X86_CSTATE_STARTING,
CPUHP_AP_PERF_XTENSA_STARTING,
- CPUHP_AP_PERF_METAG_STARTING,
CPUHP_AP_MIPS_OP_LOONGSON3_STARTING,
CPUHP_AP_ARM_SDEI_STARTING,
CPUHP_AP_ARM_VFP_STARTING,
diff --git a/include/linux/mm.h b/include/linux/mm.h
index ad06d42adb1a..ccac10682ce5 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -241,8 +241,6 @@ extern unsigned int kobjsize(const void *objp);
# define VM_SAO VM_ARCH_1 /* Strong Access Ordering (powerpc) */
#elif defined(CONFIG_PARISC)
# define VM_GROWSUP VM_ARCH_1
-#elif defined(CONFIG_METAG)
-# define VM_GROWSUP VM_ARCH_1
#elif defined(CONFIG_IA64)
# define VM_GROWSUP VM_ARCH_1
#elif !defined(CONFIG_MMU)
diff --git a/include/trace/events/mmflags.h b/include/trace/events/mmflags.h
index dbe1bb058c09..a81cffb76d89 100644
--- a/include/trace/events/mmflags.h
+++ b/include/trace/events/mmflags.h
@@ -115,7 +115,7 @@ IF_HAVE_PG_IDLE(PG_idle, "idle" )
#define __VM_ARCH_SPECIFIC_1 {VM_PAT, "pat" }
#elif defined(CONFIG_PPC)
#define __VM_ARCH_SPECIFIC_1 {VM_SAO, "sao" }
-#elif defined(CONFIG_PARISC) || defined(CONFIG_METAG) || defined(CONFIG_IA64)
+#elif defined(CONFIG_PARISC) || defined(CONFIG_IA64)
#define __VM_ARCH_SPECIFIC_1 {VM_GROWSUP, "growsup" }
#elif !defined(CONFIG_MMU)
#define __VM_ARCH_SPECIFIC_1 {VM_MAPPED_COPY,"mappedcopy" }
diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h
index 3bf73fb58045..e2535d6dcec7 100644
--- a/include/uapi/linux/elf.h
+++ b/include/uapi/linux/elf.h
@@ -420,9 +420,6 @@ typedef struct elf64_shdr {
#define NT_ARM_HW_WATCH 0x403 /* ARM hardware watchpoint registers */
#define NT_ARM_SYSTEM_CALL 0x404 /* ARM system call number */
#define NT_ARM_SVE 0x405 /* ARM Scalable Vector Extension registers */
-#define NT_METAG_CBUF 0x500 /* Metag catch buffer registers */
-#define NT_METAG_RPIPE 0x501 /* Metag read pipeline state */
-#define NT_METAG_TLS 0x502 /* Metag TLS pointer */
#define NT_ARC_V2 0x600 /* ARCv2 accumulator/extra registers */
/* Note header in a PT_NOTE section */
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 6088408ef26c..d1c523e408e9 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -356,7 +356,7 @@ config FRAME_POINTER
bool "Compile the kernel with frame pointers"
depends on DEBUG_KERNEL && \
(CRIS || M68K || FRV || UML || \
- SUPERH || BLACKFIN || MN10300 || METAG) || \
+ SUPERH || BLACKFIN || MN10300) || \
ARCH_WANT_FRAME_POINTERS
default y if (DEBUG_INFO && UML) || ARCH_WANT_FRAME_POINTERS
help
diff --git a/mm/Kconfig b/mm/Kconfig
index c782e8fb7235..abefa573bcd8 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -627,15 +627,14 @@ config GENERIC_EARLY_IOREMAP
config MAX_STACK_SIZE_MB
int "Maximum user stack size for 32-bit processes (MB)"
default 80
- range 8 256 if METAG
range 8 2048
depends on STACK_GROWSUP && (!64BIT || COMPAT)
help
This is the maximum stack size in Megabytes in the VM layout of 32-bit
user processes when the stack grows upwards (currently only on parisc
- and metag arch). The stack will be located at the highest memory
- address minus the given value, unless the RLIMIT_STACK hard limit is
- changed to a smaller value in which case that is used.
+ arch). The stack will be located at the highest memory address minus
+ the given value, unless the RLIMIT_STACK hard limit is changed to a
+ smaller value in which case that is used.
A sane initial value is 80 MB.
diff --git a/scripts/checkstack.pl b/scripts/checkstack.pl
index cb993801e4b2..eeb9ac8dbcfb 100755
--- a/scripts/checkstack.pl
+++ b/scripts/checkstack.pl
@@ -64,10 +64,6 @@ my (@stack, $re, $dre, $x, $xs, $funcre);
# 2b6c: 4e56 fb70 linkw %fp,#-1168
# 1df770: defc ffe4 addaw #-28,%sp
$re = qr/.*(?:linkw %fp,|addaw )#-([0-9]{1,4})(?:,%sp)?$/o;
- } elsif ($arch eq 'metag') {
- #400026fc: 40 00 00 82 ADD A0StP,A0StP,#0x8
- $re = qr/.*ADD.*A0StP,A0StP,\#(0x$x{1,8})/o;
- $funcre = qr/^$x* <[^\$](.*)>:$/;
} elsif ($arch eq 'mips64') {
#8800402c: 67bdfff0 daddiu sp,sp,-16
$re = qr/.*daddiu.*sp,sp,-(([0-9]{2}|[3-9])[0-9]{2})/o;
diff --git a/scripts/recordmcount.c b/scripts/recordmcount.c
index 16e086dcc567..8c9691c3329e 100644
--- a/scripts/recordmcount.c
+++ b/scripts/recordmcount.c
@@ -33,20 +33,6 @@
#include <string.h>
#include <unistd.h>
-/*
- * glibc synced up and added the metag number but didn't add the relocations.
- * Work around this in a crude manner for now.
- */
-#ifndef EM_METAG
-#define EM_METAG 174
-#endif
-#ifndef R_METAG_ADDR32
-#define R_METAG_ADDR32 2
-#endif
-#ifndef R_METAG_NONE
-#define R_METAG_NONE 3
-#endif
-
#ifndef EM_AARCH64
#define EM_AARCH64 183
#define R_AARCH64_NONE 0
@@ -538,12 +524,6 @@ do_file(char const *const fname)
gpfx = '_';
break;
case EM_IA_64: reltype = R_IA64_IMM64; gpfx = '_'; break;
- case EM_METAG: reltype = R_METAG_ADDR32;
- altmcount = "_mcount_wrapper";
- rel_type_nop = R_METAG_NONE;
- /* We happen to have the same requirement as MIPS */
- is_fake_mcount32 = MIPS32_is_fake_mcount;
- break;
case EM_MIPS: /* reltype: e_class */ gpfx = '_'; break;
case EM_PPC: reltype = R_PPC_ADDR32; gpfx = '_'; break;
case EM_PPC64: reltype = R_PPC64_ADDR64; gpfx = '_'; break;
diff --git a/tools/perf/perf-sys.h b/tools/perf/perf-sys.h
index 36673f98d66b..3eb7a39169f6 100644
--- a/tools/perf/perf-sys.h
+++ b/tools/perf/perf-sys.h
@@ -46,10 +46,6 @@
#define CPUINFO_PROC {"Processor"}
#endif
-#ifdef __metag__
-#define CPUINFO_PROC {"CPU"}
-#endif
-
#ifdef __xtensa__
#define CPUINFO_PROC {"core ID"}
#endif
--
2.13.6
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply related [flat|nested] 13+ messages in thread* Re: [PATCH v2 04/13] Drop a bunch of metag references
2018-02-23 10:53 ` [PATCH v2 " James Hogan
@ 2018-02-23 14:28 ` Guenter Roeck
0 siblings, 0 replies; 13+ messages in thread
From: Guenter Roeck @ 2018-02-23 14:28 UTC (permalink / raw)
To: James Hogan, linux-metag
Cc: linux-kernel, Arnd Bergmann, Steven Rostedt, Peter Zijlstra,
Ingo Molnar, Arnaldo Carvalho de Melo, Alexander Shishkin,
Jiri Olsa, Namhyung Kim, linux-mm
On 02/23/2018 02:53 AM, James Hogan wrote:
> Now that arch/metag/ has been removed, drop a bunch of metag references
> in various codes across the whole tree:
> - VM_GROWSUP and __VM_ARCH_PECIFIC_1.
> - MT_METAG_* ELF note types.
> - METAG Kconfig dependencies (FRAME_POINTER) and ranges
> (MAX_STACK_SIZE_MB).
> - metag cases in tools (checkstack.pl, recordmcount.c, perf).
>
> Signed-off-by: James Hogan <jhogan@kernel.org>
> Acked-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
> Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
> Cc: Ingo Molnar <mingo@redhat.com>
> Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
> Cc: Jiri Olsa <jolsa@redhat.com>
> Cc: Namhyung Kim <namhyung@kernel.org>
> Cc: Guenter Roeck <linux@roeck-us.net>
> Cc: linux-mm@kvack.org
> Cc: linux-metag@vger.kernel.org
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
> ---
> Changes in v2:
> - Drop CPUHP_AP_PERF_METAG_STARTING too (Guenter).
> ---
> include/linux/cpuhotplug.h | 1 -
> include/linux/mm.h | 2 --
> include/trace/events/mmflags.h | 2 +-
> include/uapi/linux/elf.h | 3 ---
> lib/Kconfig.debug | 2 +-
> mm/Kconfig | 7 +++----
> scripts/checkstack.pl | 4 ----
> scripts/recordmcount.c | 20 --------------------
> tools/perf/perf-sys.h | 4 ----
> 9 files changed, 5 insertions(+), 40 deletions(-)
>
> diff --git a/include/linux/cpuhotplug.h b/include/linux/cpuhotplug.h
> index 5172ad0daa7c..c7a950681f3a 100644
> --- a/include/linux/cpuhotplug.h
> +++ b/include/linux/cpuhotplug.h
> @@ -108,7 +108,6 @@ enum cpuhp_state {
> CPUHP_AP_PERF_X86_CQM_STARTING,
> CPUHP_AP_PERF_X86_CSTATE_STARTING,
> CPUHP_AP_PERF_XTENSA_STARTING,
> - CPUHP_AP_PERF_METAG_STARTING,
> CPUHP_AP_MIPS_OP_LOONGSON3_STARTING,
> CPUHP_AP_ARM_SDEI_STARTING,
> CPUHP_AP_ARM_VFP_STARTING,
> diff --git a/include/linux/mm.h b/include/linux/mm.h
> index ad06d42adb1a..ccac10682ce5 100644
> --- a/include/linux/mm.h
> +++ b/include/linux/mm.h
> @@ -241,8 +241,6 @@ extern unsigned int kobjsize(const void *objp);
> # define VM_SAO VM_ARCH_1 /* Strong Access Ordering (powerpc) */
> #elif defined(CONFIG_PARISC)
> # define VM_GROWSUP VM_ARCH_1
> -#elif defined(CONFIG_METAG)
> -# define VM_GROWSUP VM_ARCH_1
> #elif defined(CONFIG_IA64)
> # define VM_GROWSUP VM_ARCH_1
> #elif !defined(CONFIG_MMU)
> diff --git a/include/trace/events/mmflags.h b/include/trace/events/mmflags.h
> index dbe1bb058c09..a81cffb76d89 100644
> --- a/include/trace/events/mmflags.h
> +++ b/include/trace/events/mmflags.h
> @@ -115,7 +115,7 @@ IF_HAVE_PG_IDLE(PG_idle, "idle" )
> #define __VM_ARCH_SPECIFIC_1 {VM_PAT, "pat" }
> #elif defined(CONFIG_PPC)
> #define __VM_ARCH_SPECIFIC_1 {VM_SAO, "sao" }
> -#elif defined(CONFIG_PARISC) || defined(CONFIG_METAG) || defined(CONFIG_IA64)
> +#elif defined(CONFIG_PARISC) || defined(CONFIG_IA64)
> #define __VM_ARCH_SPECIFIC_1 {VM_GROWSUP, "growsup" }
> #elif !defined(CONFIG_MMU)
> #define __VM_ARCH_SPECIFIC_1 {VM_MAPPED_COPY,"mappedcopy" }
> diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h
> index 3bf73fb58045..e2535d6dcec7 100644
> --- a/include/uapi/linux/elf.h
> +++ b/include/uapi/linux/elf.h
> @@ -420,9 +420,6 @@ typedef struct elf64_shdr {
> #define NT_ARM_HW_WATCH 0x403 /* ARM hardware watchpoint registers */
> #define NT_ARM_SYSTEM_CALL 0x404 /* ARM system call number */
> #define NT_ARM_SVE 0x405 /* ARM Scalable Vector Extension registers */
> -#define NT_METAG_CBUF 0x500 /* Metag catch buffer registers */
> -#define NT_METAG_RPIPE 0x501 /* Metag read pipeline state */
> -#define NT_METAG_TLS 0x502 /* Metag TLS pointer */
> #define NT_ARC_V2 0x600 /* ARCv2 accumulator/extra registers */
>
> /* Note header in a PT_NOTE section */
> diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
> index 6088408ef26c..d1c523e408e9 100644
> --- a/lib/Kconfig.debug
> +++ b/lib/Kconfig.debug
> @@ -356,7 +356,7 @@ config FRAME_POINTER
> bool "Compile the kernel with frame pointers"
> depends on DEBUG_KERNEL && \
> (CRIS || M68K || FRV || UML || \
> - SUPERH || BLACKFIN || MN10300 || METAG) || \
> + SUPERH || BLACKFIN || MN10300) || \
> ARCH_WANT_FRAME_POINTERS
> default y if (DEBUG_INFO && UML) || ARCH_WANT_FRAME_POINTERS
> help
> diff --git a/mm/Kconfig b/mm/Kconfig
> index c782e8fb7235..abefa573bcd8 100644
> --- a/mm/Kconfig
> +++ b/mm/Kconfig
> @@ -627,15 +627,14 @@ config GENERIC_EARLY_IOREMAP
> config MAX_STACK_SIZE_MB
> int "Maximum user stack size for 32-bit processes (MB)"
> default 80
> - range 8 256 if METAG
> range 8 2048
> depends on STACK_GROWSUP && (!64BIT || COMPAT)
> help
> This is the maximum stack size in Megabytes in the VM layout of 32-bit
> user processes when the stack grows upwards (currently only on parisc
> - and metag arch). The stack will be located at the highest memory
> - address minus the given value, unless the RLIMIT_STACK hard limit is
> - changed to a smaller value in which case that is used.
> + arch). The stack will be located at the highest memory address minus
> + the given value, unless the RLIMIT_STACK hard limit is changed to a
> + smaller value in which case that is used.
>
> A sane initial value is 80 MB.
>
> diff --git a/scripts/checkstack.pl b/scripts/checkstack.pl
> index cb993801e4b2..eeb9ac8dbcfb 100755
> --- a/scripts/checkstack.pl
> +++ b/scripts/checkstack.pl
> @@ -64,10 +64,6 @@ my (@stack, $re, $dre, $x, $xs, $funcre);
> # 2b6c: 4e56 fb70 linkw %fp,#-1168
> # 1df770: defc ffe4 addaw #-28,%sp
> $re = qr/.*(?:linkw %fp,|addaw )#-([0-9]{1,4})(?:,%sp)?$/o;
> - } elsif ($arch eq 'metag') {
> - #400026fc: 40 00 00 82 ADD A0StP,A0StP,#0x8
> - $re = qr/.*ADD.*A0StP,A0StP,\#(0x$x{1,8})/o;
> - $funcre = qr/^$x* <[^\$](.*)>:$/;
> } elsif ($arch eq 'mips64') {
> #8800402c: 67bdfff0 daddiu sp,sp,-16
> $re = qr/.*daddiu.*sp,sp,-(([0-9]{2}|[3-9])[0-9]{2})/o;
> diff --git a/scripts/recordmcount.c b/scripts/recordmcount.c
> index 16e086dcc567..8c9691c3329e 100644
> --- a/scripts/recordmcount.c
> +++ b/scripts/recordmcount.c
> @@ -33,20 +33,6 @@
> #include <string.h>
> #include <unistd.h>
>
> -/*
> - * glibc synced up and added the metag number but didn't add the relocations.
> - * Work around this in a crude manner for now.
> - */
> -#ifndef EM_METAG
> -#define EM_METAG 174
> -#endif
> -#ifndef R_METAG_ADDR32
> -#define R_METAG_ADDR32 2
> -#endif
> -#ifndef R_METAG_NONE
> -#define R_METAG_NONE 3
> -#endif
> -
> #ifndef EM_AARCH64
> #define EM_AARCH64 183
> #define R_AARCH64_NONE 0
> @@ -538,12 +524,6 @@ do_file(char const *const fname)
> gpfx = '_';
> break;
> case EM_IA_64: reltype = R_IA64_IMM64; gpfx = '_'; break;
> - case EM_METAG: reltype = R_METAG_ADDR32;
> - altmcount = "_mcount_wrapper";
> - rel_type_nop = R_METAG_NONE;
> - /* We happen to have the same requirement as MIPS */
> - is_fake_mcount32 = MIPS32_is_fake_mcount;
> - break;
> case EM_MIPS: /* reltype: e_class */ gpfx = '_'; break;
> case EM_PPC: reltype = R_PPC_ADDR32; gpfx = '_'; break;
> case EM_PPC64: reltype = R_PPC64_ADDR64; gpfx = '_'; break;
> diff --git a/tools/perf/perf-sys.h b/tools/perf/perf-sys.h
> index 36673f98d66b..3eb7a39169f6 100644
> --- a/tools/perf/perf-sys.h
> +++ b/tools/perf/perf-sys.h
> @@ -46,10 +46,6 @@
> #define CPUINFO_PROC {"Processor"}
> #endif
>
> -#ifdef __metag__
> -#define CPUINFO_PROC {"CPU"}
> -#endif
> -
> #ifdef __xtensa__
> #define CPUINFO_PROC {"core ID"}
> #endif
>
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 00/13] Remove metag architecture
2018-02-21 23:38 [PATCH 00/13] Remove metag architecture James Hogan
2018-02-21 23:38 ` [PATCH 04/13] Drop a bunch of metag references James Hogan
@ 2018-02-22 9:26 ` Peter Zijlstra
2018-02-22 9:48 ` James Hogan
2018-02-23 10:26 ` Arnd Bergmann
2018-03-07 21:24 ` [PATCH 00/13] " Arnd Bergmann
3 siblings, 1 reply; 13+ messages in thread
From: Peter Zijlstra @ 2018-02-22 9:26 UTC (permalink / raw)
To: James Hogan
Cc: linux-metag, linux-kernel, Guenter Roeck, Jonathan Corbet,
Steven Rostedt, Ingo Molnar, Arnaldo Carvalho de Melo,
Alexander Shishkin, Jiri Olsa, Namhyung Kim, Thomas Gleixner,
Jason Cooper, Marc Zyngier, Daniel Lezcano, Greg Kroah-Hartman,
Jiri Slaby, Linus Walleij, Wim Van Sebroeck,
Mauro Carvalho Chehab, Mauro Carvalho Chehab, Wolfram Sang,
linux-doc, linux-mm, linux-gpio, linux-watchdog, linux-media,
linux-i2c
On Wed, Feb 21, 2018 at 11:38:12PM +0000, James Hogan wrote:
> So lets call it a day and drop the Meta architecture port from the
> kernel. RIP Meta.
So long, and thanks for all the fish!
Nice cleanup though, most welcome :-)
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 00/13] Remove metag architecture
2018-02-22 9:26 ` [PATCH 00/13] Remove metag architecture Peter Zijlstra
@ 2018-02-22 9:48 ` James Hogan
2018-02-22 10:42 ` Graham Whaley
0 siblings, 1 reply; 13+ messages in thread
From: James Hogan @ 2018-02-22 9:48 UTC (permalink / raw)
To: Peter Zijlstra
Cc: linux-metag, linux-kernel, Guenter Roeck, Jonathan Corbet,
Steven Rostedt, Ingo Molnar, Arnaldo Carvalho de Melo,
Alexander Shishkin, Jiri Olsa, Namhyung Kim, Thomas Gleixner,
Jason Cooper, Marc Zyngier, Daniel Lezcano, Greg Kroah-Hartman,
Jiri Slaby, Linus Walleij, Wim Van Sebroeck,
Mauro Carvalho Chehab, Mauro Carvalho Chehab, Wolfram Sang,
linux-doc, linux-mm, linux-gpio, linux-watchdog, linux-media,
linux-i2c
[-- Attachment #1: Type: text/plain, Size: 427 bytes --]
On Thu, Feb 22, 2018 at 10:26:54AM +0100, Peter Zijlstra wrote:
> On Wed, Feb 21, 2018 at 11:38:12PM +0000, James Hogan wrote:
> > So lets call it a day and drop the Meta architecture port from the
> > kernel. RIP Meta.
>
> So long, and thanks for all the fish!
>
> Nice cleanup though, most welcome :-)
I thought you might like it ;-)
> Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Thanks
James
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 00/13] Remove metag architecture
2018-02-22 9:48 ` James Hogan
@ 2018-02-22 10:42 ` Graham Whaley
0 siblings, 0 replies; 13+ messages in thread
From: Graham Whaley @ 2018-02-22 10:42 UTC (permalink / raw)
To: James Hogan
Cc: Peter Zijlstra, linux-metag, linux-kernel, Guenter Roeck,
Jonathan Corbet, Steven Rostedt, Ingo Molnar,
Arnaldo Carvalho de Melo, Alexander Shishkin, Jiri Olsa,
Namhyung Kim, Thomas Gleixner, Jason Cooper, Marc Zyngier,
Daniel Lezcano, Greg Kroah-Hartman, Jiri Slaby, Linus Walleij,
Wim Van Sebroeck, Mauro Carvalho Chehab, Mauro Carvalho Chehab,
Wolfram Sang, linux-doc, linux-mm, linux-gpio, linux-watchdog,
linux-media, linux-i2c
On 22 February 2018 at 09:48, James Hogan <jhogan@kernel.org> wrote:
> On Thu, Feb 22, 2018 at 10:26:54AM +0100, Peter Zijlstra wrote:
>> On Wed, Feb 21, 2018 at 11:38:12PM +0000, James Hogan wrote:
>> > So lets call it a day and drop the Meta architecture port from the
>> > kernel. RIP Meta.
>>
>> So long, and thanks for all the fish!
>>
>> Nice cleanup though, most welcome :-)
>
> I thought you might like it ;-)
>
>> Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
>
> Thanks
> James
RIP indeed. As I sit here listening to my META powered radio.... for
the series in general:
Acked-by: Graham Whaley <graham.whaley@gmail.com>
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 00/13] Remove metag architecture
2018-02-21 23:38 [PATCH 00/13] Remove metag architecture James Hogan
2018-02-21 23:38 ` [PATCH 04/13] Drop a bunch of metag references James Hogan
2018-02-22 9:26 ` [PATCH 00/13] Remove metag architecture Peter Zijlstra
@ 2018-02-23 10:26 ` Arnd Bergmann
2018-02-23 11:02 ` James Hogan
2018-03-07 21:24 ` [PATCH 00/13] " Arnd Bergmann
3 siblings, 1 reply; 13+ messages in thread
From: Arnd Bergmann @ 2018-02-23 10:26 UTC (permalink / raw)
To: James Hogan
Cc: linux-metag, Linux Kernel Mailing List, Guenter Roeck,
Jonathan Corbet, Steven Rostedt, Ingo Molnar, Peter Zijlstra,
Arnaldo Carvalho de Melo, Alexander Shishkin, Jiri Olsa,
Namhyung Kim, Thomas Gleixner, Jason Cooper, Marc Zyngier,
Daniel Lezcano, Greg Kroah-Hartman, Jiri Slaby, Linus Walleij,
Wim Van Sebroeck, Mauro Carvalho Chehab, Mauro Carvalho Chehab,
Wolfram Sang, open list:DOCUMENTATION, Linux-MM, linux-gpio,
linux-watchdog, Linux Media Mailing List, linux-i2c
On Thu, Feb 22, 2018 at 12:38 AM, James Hogan <jhogan@kernel.org> wrote:
> These patches remove the metag architecture and tightly dependent
> drivers from the kernel. With the 4.16 kernel the ancient gcc 4.2.4
> based metag toolchain we have been using is hitting compiler bugs, so
> now seems a good time to drop it altogether.
>
> Quoting from patch 1:
>
> The earliest Meta architecture port of Linux I have a record of was an
> import of a Meta port of Linux v2.4.1 in February 2004, which was worked
> on significantly over the next few years by Graham Whaley, Will Newton,
> Matt Fleming, myself and others.
>
> Eventually the port was merged into mainline in v3.9 in March 2013, not
> long after Imagination Technologies bought MIPS Technologies and shifted
> its CPU focus over to the MIPS architecture.
>
> As a result, though the port was maintained for a while, kept on life
> support for a while longer, and useful for testing a few specific
> drivers for which I don't have ready access to the equivalent MIPS
> hardware, it is now essentially dead with no users.
>
> It is also stuck using an out-of-tree toolchain based on GCC 4.2.4 which
> is no longer maintained, now struggles to build modern kernels due to
> toolchain bugs, and doesn't itself build with a modern GCC. The latest
> buildroot port is still using an old uClibc snapshot which is no longer
> served, and the latest uClibc doesn't build with GCC 4.2.4.
>
> So lets call it a day and drop the Meta architecture port from the
> kernel. RIP Meta.
Since I brought up the architecture removal independently, I could
pick this up into a git tree that also has the removal of some of the
other architectures.
I see your tree is part of linux-next, so you could also just put it
in there and send a pull request at the merge window if you prefer.
The only real reason I see for a shared git tree would be to avoid
conflicts when we touch the same Kconfig files or #ifdefs in driver,
but Meta only appears in
config FRAME_POINTER
bool "Compile the kernel with frame pointers"
depends on DEBUG_KERNEL && \
(CRIS || M68K || FRV || UML || \
SUPERH || BLACKFIN || MN10300 || METAG) || \
ARCH_WANT_FRAME_POINTERS
and
include/trace/events/mmflags.h:#elif defined(CONFIG_PARISC) ||
defined(CONFIG_METAG) || defined(CONFIG_IA64)
so there is little risk.
Arnd
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply [flat|nested] 13+ messages in thread* Re: [PATCH 00/13] Remove metag architecture
2018-02-23 10:26 ` Arnd Bergmann
@ 2018-02-23 11:02 ` James Hogan
2018-02-23 12:26 ` Arnd Bergmann
0 siblings, 1 reply; 13+ messages in thread
From: James Hogan @ 2018-02-23 11:02 UTC (permalink / raw)
To: Arnd Bergmann
Cc: linux-metag, Linux Kernel Mailing List, Guenter Roeck,
Jonathan Corbet, Steven Rostedt, Ingo Molnar, Peter Zijlstra,
Arnaldo Carvalho de Melo, Alexander Shishkin, Jiri Olsa,
Namhyung Kim, Thomas Gleixner, Jason Cooper, Marc Zyngier,
Daniel Lezcano, Greg Kroah-Hartman, Jiri Slaby, Linus Walleij,
Wim Van Sebroeck, Mauro Carvalho Chehab, Mauro Carvalho Chehab,
Wolfram Sang, open list:DOCUMENTATION, Linux-MM, linux-gpio,
linux-watchdog, Linux Media Mailing List, linux-i2c
[-- Attachment #1: Type: text/plain, Size: 1494 bytes --]
On Fri, Feb 23, 2018 at 11:26:58AM +0100, Arnd Bergmann wrote:
> On Thu, Feb 22, 2018 at 12:38 AM, James Hogan <jhogan@kernel.org> wrote:
> > So lets call it a day and drop the Meta architecture port from the
> > kernel. RIP Meta.
>
> Since I brought up the architecture removal independently, I could
> pick this up into a git tree that also has the removal of some of the
> other architectures.
>
> I see your tree is part of linux-next, so you could also just put it
> in there and send a pull request at the merge window if you prefer.
>
> The only real reason I see for a shared git tree would be to avoid
> conflicts when we touch the same Kconfig files or #ifdefs in driver,
> but Meta only appears in
>
> config FRAME_POINTER
> bool "Compile the kernel with frame pointers"
> depends on DEBUG_KERNEL && \
> (CRIS || M68K || FRV || UML || \
> SUPERH || BLACKFIN || MN10300 || METAG) || \
> ARCH_WANT_FRAME_POINTERS
>
> and
>
> include/trace/events/mmflags.h:#elif defined(CONFIG_PARISC) ||
> defined(CONFIG_METAG) || defined(CONFIG_IA64)
>
> so there is little risk.
I'm happy to put v2 in linux-next now (only patch 4 has changed, I just
sent an updated version), and send you a pull request early next week so
you can take it from there. The patches can't be directly applied with
git-am anyway thanks to the -D option to make them more concise.
Sound okay?
Thanks
James
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 00/13] Remove metag architecture
2018-02-23 11:02 ` James Hogan
@ 2018-02-23 12:26 ` Arnd Bergmann
2018-02-27 13:36 ` [GIT PULL] " James Hogan
0 siblings, 1 reply; 13+ messages in thread
From: Arnd Bergmann @ 2018-02-23 12:26 UTC (permalink / raw)
To: James Hogan
Cc: open list:METAG ARCHITECTURE, Linux Kernel Mailing List,
Guenter Roeck, Jonathan Corbet, Steven Rostedt, Ingo Molnar,
Peter Zijlstra, Arnaldo Carvalho de Melo, Alexander Shishkin,
Jiri Olsa, Namhyung Kim, Thomas Gleixner, Jason Cooper,
Marc Zyngier, Daniel Lezcano, Greg Kroah-Hartman, Jiri Slaby,
Linus Walleij, Wim Van Sebroeck, Mauro Carvalho Chehab,
Mauro Carvalho Chehab, Wolfram Sang, open list:DOCUMENTATION,
Linux-MM, linux-gpio, linux-watchdog, Linux Media Mailing List,
linux-i2c
On Fri, Feb 23, 2018 at 12:02 PM, James Hogan <jhogan@kernel.org> wrote:
> On Fri, Feb 23, 2018 at 11:26:58AM +0100, Arnd Bergmann wrote:
>> On Thu, Feb 22, 2018 at 12:38 AM, James Hogan <jhogan@kernel.org> wrote:
>> > So lets call it a day and drop the Meta architecture port from the
>> > kernel. RIP Meta.
>>
>> Since I brought up the architecture removal independently, I could
>> pick this up into a git tree that also has the removal of some of the
>> other architectures.
>>
>> I see your tree is part of linux-next, so you could also just put it
>> in there and send a pull request at the merge window if you prefer.
>>
>> The only real reason I see for a shared git tree would be to avoid
>> conflicts when we touch the same Kconfig files or #ifdefs in driver,
>> but Meta only appears in
>>
>> config FRAME_POINTER
>> bool "Compile the kernel with frame pointers"
>> depends on DEBUG_KERNEL && \
>> (CRIS || M68K || FRV || UML || \
>> SUPERH || BLACKFIN || MN10300 || METAG) || \
>> ARCH_WANT_FRAME_POINTERS
>>
>> and
>>
>> include/trace/events/mmflags.h:#elif defined(CONFIG_PARISC) ||
>> defined(CONFIG_METAG) || defined(CONFIG_IA64)
>>
>> so there is little risk.
>
> I'm happy to put v2 in linux-next now (only patch 4 has changed, I just
> sent an updated version), and send you a pull request early next week so
> you can take it from there. The patches can't be directly applied with
> git-am anyway thanks to the -D option to make them more concise.
>
> Sound okay?
Yes, sounds good, thanks!
Arnd
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply [flat|nested] 13+ messages in thread* [GIT PULL] Remove metag architecture
2018-02-23 12:26 ` Arnd Bergmann
@ 2018-02-27 13:36 ` James Hogan
0 siblings, 0 replies; 13+ messages in thread
From: James Hogan @ 2018-02-27 13:36 UTC (permalink / raw)
To: Arnd Bergmann
Cc: open list:METAG ARCHITECTURE, Linux Kernel Mailing List,
Guenter Roeck, Jonathan Corbet, Steven Rostedt, Ingo Molnar,
Peter Zijlstra, Arnaldo Carvalho de Melo, Alexander Shishkin,
Jiri Olsa, Namhyung Kim, Thomas Gleixner, Jason Cooper,
Marc Zyngier, Daniel Lezcano, Greg Kroah-Hartman, Jiri Slaby,
Linus Walleij, Wim Van Sebroeck, Mauro Carvalho Chehab,
Mauro Carvalho Chehab, Wolfram Sang, open list:DOCUMENTATION,
Linux-MM, linux-gpio, linux-watchdog, Linux Media Mailing List,
linux-i2c
[-- Attachment #1: Type: text/plain, Size: 29060 bytes --]
Hi Arnd,
On Fri, Feb 23, 2018 at 01:26:09PM +0100, Arnd Bergmann wrote:
> On Fri, Feb 23, 2018 at 12:02 PM, James Hogan <jhogan@kernel.org> wrote:
> > I'm happy to put v2 in linux-next now (only patch 4 has changed, I just
> > sent an updated version), and send you a pull request early next week so
> > you can take it from there. The patches can't be directly applied with
> > git-am anyway thanks to the -D option to make them more concise.
> >
> > Sound okay?
>
> Yes, sounds good, thanks!
As discussed, here is a tagged branch to remove arch/metag and dependent
drivers. Its basically v2 with some acks added.
Cheers
James
The following changes since commit 91ab883eb21325ad80f3473633f794c78ac87f51:
Linux 4.16-rc2 (2018-02-18 17:29:42 -0800)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag.git tags/metag_remove
for you to fetch changes up to ef9fb83815db7d7e03da9a0904b4ef352e633922:
i2c: img-scb: Drop METAG dependency (2018-02-26 14:58:09 +0000)
----------------------------------------------------------------
Remove metag architecture
These patches remove the metag architecture and tightly dependent
drivers from the kernel. With the 4.16 kernel the ancient gcc 4.2.4
based metag toolchain we have been using is hitting compiler bugs, so
now seems a good time to drop it altogether.
----------------------------------------------------------------
James Hogan (13):
metag: Remove arch/metag/
docs: Remove metag docs
docs: Remove remaining references to metag
Drop a bunch of metag references
irqchip: Remove metag irqchip drivers
clocksource: Remove metag generic timer driver
tty: Remove metag DA TTY and console driver
MAINTAINERS/CREDITS: Drop METAG ARCHITECTURE
pinctrl: Drop TZ1090 drivers
gpio: Drop TZ1090 drivers
watchdog: imgpdc: Drop METAG dependency
media: img-ir: Drop METAG dependency
i2c: img-scb: Drop METAG dependency
CREDITS | 5 +
Documentation/00-INDEX | 2 -
Documentation/admin-guide/kernel-parameters.txt | 4 -
Documentation/dev-tools/kmemleak.rst | 2 +-
.../devicetree/bindings/gpio/gpio-tz1090-pdc.txt | 45 -
.../devicetree/bindings/gpio/gpio-tz1090.txt | 88 -
Documentation/devicetree/bindings/metag/meta.txt | 30 -
.../bindings/pinctrl/img,tz1090-pdc-pinctrl.txt | 127 --
.../bindings/pinctrl/img,tz1090-pinctrl.txt | 227 ---
.../features/core/BPF-JIT/arch-support.txt | 1 -
.../core/generic-idle-thread/arch-support.txt | 1 -
.../features/core/jump-labels/arch-support.txt | 1 -
.../features/core/tracehook/arch-support.txt | 1 -
.../features/debug/KASAN/arch-support.txt | 1 -
.../debug/gcov-profile-all/arch-support.txt | 1 -
Documentation/features/debug/kgdb/arch-support.txt | 1 -
.../debug/kprobes-on-ftrace/arch-support.txt | 1 -
.../features/debug/kprobes/arch-support.txt | 1 -
.../features/debug/kretprobes/arch-support.txt | 1 -
.../features/debug/optprobes/arch-support.txt | 1 -
.../features/debug/stackprotector/arch-support.txt | 1 -
.../features/debug/uprobes/arch-support.txt | 1 -
.../debug/user-ret-profiler/arch-support.txt | 1 -
.../features/io/dma-api-debug/arch-support.txt | 1 -
.../features/io/dma-contiguous/arch-support.txt | 1 -
.../features/io/sg-chain/arch-support.txt | 1 -
.../features/lib/strncasecmp/arch-support.txt | 1 -
.../locking/cmpxchg-local/arch-support.txt | 1 -
.../features/locking/lockdep/arch-support.txt | 1 -
.../locking/queued-rwlocks/arch-support.txt | 1 -
.../locking/queued-spinlocks/arch-support.txt | 1 -
.../locking/rwsem-optimized/arch-support.txt | 1 -
.../features/perf/kprobes-event/arch-support.txt | 1 -
.../features/perf/perf-regs/arch-support.txt | 1 -
.../features/perf/perf-stackdump/arch-support.txt | 1 -
.../sched/membarrier-sync-core/arch-support.txt | 1 -
.../features/sched/numa-balancing/arch-support.txt | 1 -
.../seccomp/seccomp-filter/arch-support.txt | 1 -
.../time/arch-tick-broadcast/arch-support.txt | 1 -
.../features/time/clockevents/arch-support.txt | 1 -
.../time/context-tracking/arch-support.txt | 1 -
.../features/time/irq-time-acct/arch-support.txt | 1 -
.../time/modern-timekeeping/arch-support.txt | 1 -
.../features/time/virt-cpuacct/arch-support.txt | 1 -
.../features/vm/ELF-ASLR/arch-support.txt | 1 -
.../features/vm/PG_uncached/arch-support.txt | 1 -
Documentation/features/vm/THP/arch-support.txt | 1 -
Documentation/features/vm/TLB/arch-support.txt | 1 -
.../features/vm/huge-vmap/arch-support.txt | 1 -
.../features/vm/ioremap_prot/arch-support.txt | 1 -
.../features/vm/numa-memblock/arch-support.txt | 1 -
.../features/vm/pte_special/arch-support.txt | 1 -
Documentation/metag/00-INDEX | 4 -
Documentation/metag/kernel-ABI.txt | 256 ---
MAINTAINERS | 14 -
arch/metag/Kconfig | 287 ---
arch/metag/Kconfig.debug | 34 -
arch/metag/Kconfig.soc | 69 -
arch/metag/Makefile | 89 -
arch/metag/boot/.gitignore | 3 -
arch/metag/boot/Makefile | 68 -
arch/metag/boot/dts/Makefile | 16 -
arch/metag/boot/dts/skeleton.dts | 10 -
arch/metag/boot/dts/skeleton.dtsi | 15 -
arch/metag/boot/dts/tz1090.dtsi | 108 --
arch/metag/boot/dts/tz1090_generic.dts | 10 -
arch/metag/configs/meta1_defconfig | 39 -
arch/metag/configs/meta2_defconfig | 40 -
arch/metag/configs/meta2_smp_defconfig | 41 -
arch/metag/configs/tz1090_defconfig | 42 -
arch/metag/include/asm/Kbuild | 33 -
arch/metag/include/asm/atomic.h | 49 -
arch/metag/include/asm/atomic_lnkget.h | 204 --
arch/metag/include/asm/atomic_lock1.h | 157 --
arch/metag/include/asm/barrier.h | 85 -
arch/metag/include/asm/bitops.h | 127 --
arch/metag/include/asm/bug.h | 13 -
arch/metag/include/asm/cache.h | 24 -
arch/metag/include/asm/cacheflush.h | 251 ---
arch/metag/include/asm/cachepart.h | 43 -
arch/metag/include/asm/checksum.h | 93 -
arch/metag/include/asm/clock.h | 59 -
arch/metag/include/asm/cmpxchg.h | 64 -
arch/metag/include/asm/cmpxchg_irq.h | 43 -
arch/metag/include/asm/cmpxchg_lnkget.h | 87 -
arch/metag/include/asm/cmpxchg_lock1.h | 49 -
arch/metag/include/asm/core_reg.h | 36 -
arch/metag/include/asm/cpu.h | 15 -
arch/metag/include/asm/da.h | 44 -
arch/metag/include/asm/delay.h | 30 -
arch/metag/include/asm/div64.h | 13 -
arch/metag/include/asm/dma-mapping.h | 12 -
arch/metag/include/asm/elf.h | 126 --
arch/metag/include/asm/fixmap.h | 69 -
arch/metag/include/asm/ftrace.h | 24 -
arch/metag/include/asm/global_lock.h | 101 -
arch/metag/include/asm/highmem.h | 62 -
arch/metag/include/asm/hugetlb.h | 75 -
arch/metag/include/asm/hwthread.h | 41 -
arch/metag/include/asm/io.h | 170 --
arch/metag/include/asm/irq.h | 38 -
arch/metag/include/asm/irqflags.h | 94 -
arch/metag/include/asm/l2cache.h | 259 ---
arch/metag/include/asm/linkage.h | 8 -
arch/metag/include/asm/mach/arch.h | 86 -
arch/metag/include/asm/metag_isa.h | 81 -
arch/metag/include/asm/metag_mem.h | 1109 -----------
arch/metag/include/asm/metag_regs.h | 1184 ------------
arch/metag/include/asm/mman.h | 12 -
arch/metag/include/asm/mmu.h | 78 -
arch/metag/include/asm/mmu_context.h | 115 --
arch/metag/include/asm/mmzone.h | 43 -
arch/metag/include/asm/module.h | 38 -
arch/metag/include/asm/page.h | 129 --
arch/metag/include/asm/perf_event.h | 4 -
arch/metag/include/asm/pgalloc.h | 83 -
arch/metag/include/asm/pgtable-bits.h | 105 -
arch/metag/include/asm/pgtable.h | 270 ---
arch/metag/include/asm/processor.h | 201 --
arch/metag/include/asm/ptrace.h | 61 -
arch/metag/include/asm/setup.h | 10 -
arch/metag/include/asm/smp.h | 28 -
arch/metag/include/asm/sparsemem.h | 14 -
arch/metag/include/asm/spinlock.h | 19 -
arch/metag/include/asm/spinlock_lnkget.h | 213 ---
arch/metag/include/asm/spinlock_lock1.h | 165 --
arch/metag/include/asm/spinlock_types.h | 21 -
arch/metag/include/asm/stacktrace.h | 21 -
arch/metag/include/asm/string.h | 14 -
arch/metag/include/asm/switch.h | 21 -
arch/metag/include/asm/syscall.h | 104 -
arch/metag/include/asm/syscalls.h | 40 -
arch/metag/include/asm/tbx.h | 1420 --------------
arch/metag/include/asm/tcm.h | 31 -
arch/metag/include/asm/thread_info.h | 141 --
arch/metag/include/asm/tlb.h | 37 -
arch/metag/include/asm/tlbflush.h | 78 -
arch/metag/include/asm/topology.h | 28 -
arch/metag/include/asm/traps.h | 48 -
arch/metag/include/asm/uaccess.h | 213 ---
arch/metag/include/asm/unistd.h | 12 -
arch/metag/include/asm/user_gateway.h | 45 -
arch/metag/include/uapi/asm/Kbuild | 31 -
arch/metag/include/uapi/asm/byteorder.h | 2 -
arch/metag/include/uapi/asm/ech.h | 16 -
arch/metag/include/uapi/asm/ptrace.h | 114 --
arch/metag/include/uapi/asm/sigcontext.h | 32 -
arch/metag/include/uapi/asm/siginfo.h | 16 -
arch/metag/include/uapi/asm/swab.h | 27 -
arch/metag/include/uapi/asm/unistd.h | 24 -
arch/metag/kernel/.gitignore | 1 -
arch/metag/kernel/Makefile | 40 -
arch/metag/kernel/asm-offsets.c | 15 -
arch/metag/kernel/cachepart.c | 132 --
arch/metag/kernel/clock.c | 110 --
arch/metag/kernel/core_reg.c | 118 --
arch/metag/kernel/da.c | 25 -
arch/metag/kernel/devtree.c | 57 -
arch/metag/kernel/dma.c | 588 ------
arch/metag/kernel/ftrace.c | 121 --
arch/metag/kernel/ftrace_stub.S | 62 -
arch/metag/kernel/head.S | 66 -
arch/metag/kernel/irq.c | 293 ---
arch/metag/kernel/kick.c | 110 --
arch/metag/kernel/machines.c | 21 -
arch/metag/kernel/metag_ksyms.c | 55 -
arch/metag/kernel/module.c | 284 ---
arch/metag/kernel/perf/Makefile | 3 -
arch/metag/kernel/perf/perf_event.c | 879 ---------
arch/metag/kernel/perf/perf_event.h | 106 --
arch/metag/kernel/perf_callchain.c | 97 -
arch/metag/kernel/process.c | 448 -----
arch/metag/kernel/ptrace.c | 427 -----
arch/metag/kernel/setup.c | 622 ------
arch/metag/kernel/signal.c | 336 ----
arch/metag/kernel/smp.c | 668 -------
arch/metag/kernel/stacktrace.c | 187 --
arch/metag/kernel/sys_metag.c | 181 --
arch/metag/kernel/tbiunexp.S | 23 -
arch/metag/kernel/tcm.c | 152 --
arch/metag/kernel/time.c | 26 -
arch/metag/kernel/topology.c | 78 -
arch/metag/kernel/traps.c | 992 ----------
arch/metag/kernel/user_gateway.S | 98 -
arch/metag/kernel/vmlinux.lds.S | 74 -
arch/metag/lib/Makefile | 23 -
arch/metag/lib/ashldi3.S | 34 -
arch/metag/lib/ashrdi3.S | 34 -
arch/metag/lib/checksum.c | 167 --
arch/metag/lib/clear_page.S | 18 -
arch/metag/lib/cmpdi2.S | 33 -
arch/metag/lib/copy_page.S | 21 -
arch/metag/lib/delay.c | 57 -
arch/metag/lib/div64.S | 109 --
arch/metag/lib/divsi3.S | 101 -
arch/metag/lib/ip_fast_csum.S | 33 -
arch/metag/lib/lshrdi3.S | 34 -
arch/metag/lib/memcpy.S | 186 --
arch/metag/lib/memmove.S | 346 ----
arch/metag/lib/memset.S | 87 -
arch/metag/lib/modsi3.S | 39 -
arch/metag/lib/muldi3.S | 45 -
arch/metag/lib/ucmpdi2.S | 28 -
arch/metag/lib/usercopy.c | 1257 ------------
arch/metag/mm/Kconfig | 147 --
arch/metag/mm/Makefile | 20 -
arch/metag/mm/cache.c | 521 -----
arch/metag/mm/extable.c | 15 -
arch/metag/mm/fault.c | 247 ---
arch/metag/mm/highmem.c | 122 --
arch/metag/mm/hugetlbpage.c | 251 ---
arch/metag/mm/init.c | 408 ----
arch/metag/mm/ioremap.c | 90 -
arch/metag/mm/l2cache.c | 193 --
arch/metag/mm/maccess.c | 69 -
arch/metag/mm/mmu-meta1.c | 157 --
arch/metag/mm/mmu-meta2.c | 208 --
arch/metag/mm/numa.c | 82 -
arch/metag/oprofile/Makefile | 18 -
arch/metag/oprofile/backtrace.c | 63 -
arch/metag/oprofile/backtrace.h | 7 -
arch/metag/oprofile/common.c | 66 -
arch/metag/tbx/Makefile | 22 -
arch/metag/tbx/tbicore.S | 136 --
arch/metag/tbx/tbictx.S | 366 ----
arch/metag/tbx/tbictxfpu.S | 190 --
arch/metag/tbx/tbidefr.S | 175 --
arch/metag/tbx/tbidspram.S | 161 --
arch/metag/tbx/tbilogf.S | 48 -
arch/metag/tbx/tbipcx.S | 451 -----
arch/metag/tbx/tbiroot.S | 87 -
arch/metag/tbx/tbisoft.S | 237 ---
arch/metag/tbx/tbistring.c | 114 --
arch/metag/tbx/tbitimer.S | 207 --
drivers/clocksource/Kconfig | 5 -
drivers/clocksource/Makefile | 1 -
drivers/clocksource/metag_generic.c | 161 --
drivers/gpio/Kconfig | 15 -
drivers/gpio/Makefile | 2 -
drivers/gpio/gpio-tz1090-pdc.c | 231 ---
drivers/gpio/gpio-tz1090.c | 602 ------
drivers/i2c/busses/Kconfig | 2 +-
drivers/irqchip/Makefile | 2 -
drivers/irqchip/irq-metag-ext.c | 871 ---------
drivers/irqchip/irq-metag.c | 343 ----
drivers/media/rc/img-ir/Kconfig | 2 +-
drivers/pinctrl/Kconfig | 12 -
drivers/pinctrl/Makefile | 2 -
drivers/pinctrl/pinctrl-tz1090-pdc.c | 989 ----------
drivers/pinctrl/pinctrl-tz1090.c | 2005 --------------------
drivers/tty/Kconfig | 13 -
drivers/tty/Makefile | 1 -
drivers/tty/metag_da.c | 665 -------
drivers/watchdog/Kconfig | 2 +-
include/clocksource/metag_generic.h | 21 -
include/linux/cpuhotplug.h | 2 -
include/linux/irqchip/metag-ext.h | 34 -
include/linux/irqchip/metag.h | 25 -
include/linux/mm.h | 2 -
include/trace/events/mmflags.h | 2 +-
include/uapi/linux/elf.h | 3 -
lib/Kconfig.debug | 2 +-
mm/Kconfig | 7 +-
scripts/checkstack.pl | 4 -
scripts/recordmcount.c | 20 -
tools/perf/perf-sys.h | 4 -
266 files changed, 14 insertions(+), 31963 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/gpio/gpio-tz1090-pdc.txt
delete mode 100644 Documentation/devicetree/bindings/gpio/gpio-tz1090.txt
delete mode 100644 Documentation/devicetree/bindings/metag/meta.txt
delete mode 100644 Documentation/devicetree/bindings/pinctrl/img,tz1090-pdc-pinctrl.txt
delete mode 100644 Documentation/devicetree/bindings/pinctrl/img,tz1090-pinctrl.txt
delete mode 100644 Documentation/metag/00-INDEX
delete mode 100644 Documentation/metag/kernel-ABI.txt
delete mode 100644 arch/metag/Kconfig
delete mode 100644 arch/metag/Kconfig.debug
delete mode 100644 arch/metag/Kconfig.soc
delete mode 100644 arch/metag/Makefile
delete mode 100644 arch/metag/boot/.gitignore
delete mode 100644 arch/metag/boot/Makefile
delete mode 100644 arch/metag/boot/dts/Makefile
delete mode 100644 arch/metag/boot/dts/skeleton.dts
delete mode 100644 arch/metag/boot/dts/skeleton.dtsi
delete mode 100644 arch/metag/boot/dts/tz1090.dtsi
delete mode 100644 arch/metag/boot/dts/tz1090_generic.dts
delete mode 100644 arch/metag/configs/meta1_defconfig
delete mode 100644 arch/metag/configs/meta2_defconfig
delete mode 100644 arch/metag/configs/meta2_smp_defconfig
delete mode 100644 arch/metag/configs/tz1090_defconfig
delete mode 100644 arch/metag/include/asm/Kbuild
delete mode 100644 arch/metag/include/asm/atomic.h
delete mode 100644 arch/metag/include/asm/atomic_lnkget.h
delete mode 100644 arch/metag/include/asm/atomic_lock1.h
delete mode 100644 arch/metag/include/asm/barrier.h
delete mode 100644 arch/metag/include/asm/bitops.h
delete mode 100644 arch/metag/include/asm/bug.h
delete mode 100644 arch/metag/include/asm/cache.h
delete mode 100644 arch/metag/include/asm/cacheflush.h
delete mode 100644 arch/metag/include/asm/cachepart.h
delete mode 100644 arch/metag/include/asm/checksum.h
delete mode 100644 arch/metag/include/asm/clock.h
delete mode 100644 arch/metag/include/asm/cmpxchg.h
delete mode 100644 arch/metag/include/asm/cmpxchg_irq.h
delete mode 100644 arch/metag/include/asm/cmpxchg_lnkget.h
delete mode 100644 arch/metag/include/asm/cmpxchg_lock1.h
delete mode 100644 arch/metag/include/asm/core_reg.h
delete mode 100644 arch/metag/include/asm/cpu.h
delete mode 100644 arch/metag/include/asm/da.h
delete mode 100644 arch/metag/include/asm/delay.h
delete mode 100644 arch/metag/include/asm/div64.h
delete mode 100644 arch/metag/include/asm/dma-mapping.h
delete mode 100644 arch/metag/include/asm/elf.h
delete mode 100644 arch/metag/include/asm/fixmap.h
delete mode 100644 arch/metag/include/asm/ftrace.h
delete mode 100644 arch/metag/include/asm/global_lock.h
delete mode 100644 arch/metag/include/asm/highmem.h
delete mode 100644 arch/metag/include/asm/hugetlb.h
delete mode 100644 arch/metag/include/asm/hwthread.h
delete mode 100644 arch/metag/include/asm/io.h
delete mode 100644 arch/metag/include/asm/irq.h
delete mode 100644 arch/metag/include/asm/irqflags.h
delete mode 100644 arch/metag/include/asm/l2cache.h
delete mode 100644 arch/metag/include/asm/linkage.h
delete mode 100644 arch/metag/include/asm/mach/arch.h
delete mode 100644 arch/metag/include/asm/metag_isa.h
delete mode 100644 arch/metag/include/asm/metag_mem.h
delete mode 100644 arch/metag/include/asm/metag_regs.h
delete mode 100644 arch/metag/include/asm/mman.h
delete mode 100644 arch/metag/include/asm/mmu.h
delete mode 100644 arch/metag/include/asm/mmu_context.h
delete mode 100644 arch/metag/include/asm/mmzone.h
delete mode 100644 arch/metag/include/asm/module.h
delete mode 100644 arch/metag/include/asm/page.h
delete mode 100644 arch/metag/include/asm/perf_event.h
delete mode 100644 arch/metag/include/asm/pgalloc.h
delete mode 100644 arch/metag/include/asm/pgtable-bits.h
delete mode 100644 arch/metag/include/asm/pgtable.h
delete mode 100644 arch/metag/include/asm/processor.h
delete mode 100644 arch/metag/include/asm/ptrace.h
delete mode 100644 arch/metag/include/asm/setup.h
delete mode 100644 arch/metag/include/asm/smp.h
delete mode 100644 arch/metag/include/asm/sparsemem.h
delete mode 100644 arch/metag/include/asm/spinlock.h
delete mode 100644 arch/metag/include/asm/spinlock_lnkget.h
delete mode 100644 arch/metag/include/asm/spinlock_lock1.h
delete mode 100644 arch/metag/include/asm/spinlock_types.h
delete mode 100644 arch/metag/include/asm/stacktrace.h
delete mode 100644 arch/metag/include/asm/string.h
delete mode 100644 arch/metag/include/asm/switch.h
delete mode 100644 arch/metag/include/asm/syscall.h
delete mode 100644 arch/metag/include/asm/syscalls.h
delete mode 100644 arch/metag/include/asm/tbx.h
delete mode 100644 arch/metag/include/asm/tcm.h
delete mode 100644 arch/metag/include/asm/thread_info.h
delete mode 100644 arch/metag/include/asm/tlb.h
delete mode 100644 arch/metag/include/asm/tlbflush.h
delete mode 100644 arch/metag/include/asm/topology.h
delete mode 100644 arch/metag/include/asm/traps.h
delete mode 100644 arch/metag/include/asm/uaccess.h
delete mode 100644 arch/metag/include/asm/unistd.h
delete mode 100644 arch/metag/include/asm/user_gateway.h
delete mode 100644 arch/metag/include/uapi/asm/Kbuild
delete mode 100644 arch/metag/include/uapi/asm/byteorder.h
delete mode 100644 arch/metag/include/uapi/asm/ech.h
delete mode 100644 arch/metag/include/uapi/asm/ptrace.h
delete mode 100644 arch/metag/include/uapi/asm/sigcontext.h
delete mode 100644 arch/metag/include/uapi/asm/siginfo.h
delete mode 100644 arch/metag/include/uapi/asm/swab.h
delete mode 100644 arch/metag/include/uapi/asm/unistd.h
delete mode 100644 arch/metag/kernel/.gitignore
delete mode 100644 arch/metag/kernel/Makefile
delete mode 100644 arch/metag/kernel/asm-offsets.c
delete mode 100644 arch/metag/kernel/cachepart.c
delete mode 100644 arch/metag/kernel/clock.c
delete mode 100644 arch/metag/kernel/core_reg.c
delete mode 100644 arch/metag/kernel/da.c
delete mode 100644 arch/metag/kernel/devtree.c
delete mode 100644 arch/metag/kernel/dma.c
delete mode 100644 arch/metag/kernel/ftrace.c
delete mode 100644 arch/metag/kernel/ftrace_stub.S
delete mode 100644 arch/metag/kernel/head.S
delete mode 100644 arch/metag/kernel/irq.c
delete mode 100644 arch/metag/kernel/kick.c
delete mode 100644 arch/metag/kernel/machines.c
delete mode 100644 arch/metag/kernel/metag_ksyms.c
delete mode 100644 arch/metag/kernel/module.c
delete mode 100644 arch/metag/kernel/perf/Makefile
delete mode 100644 arch/metag/kernel/perf/perf_event.c
delete mode 100644 arch/metag/kernel/perf/perf_event.h
delete mode 100644 arch/metag/kernel/perf_callchain.c
delete mode 100644 arch/metag/kernel/process.c
delete mode 100644 arch/metag/kernel/ptrace.c
delete mode 100644 arch/metag/kernel/setup.c
delete mode 100644 arch/metag/kernel/signal.c
delete mode 100644 arch/metag/kernel/smp.c
delete mode 100644 arch/metag/kernel/stacktrace.c
delete mode 100644 arch/metag/kernel/sys_metag.c
delete mode 100644 arch/metag/kernel/tbiunexp.S
delete mode 100644 arch/metag/kernel/tcm.c
delete mode 100644 arch/metag/kernel/time.c
delete mode 100644 arch/metag/kernel/topology.c
delete mode 100644 arch/metag/kernel/traps.c
delete mode 100644 arch/metag/kernel/user_gateway.S
delete mode 100644 arch/metag/kernel/vmlinux.lds.S
delete mode 100644 arch/metag/lib/Makefile
delete mode 100644 arch/metag/lib/ashldi3.S
delete mode 100644 arch/metag/lib/ashrdi3.S
delete mode 100644 arch/metag/lib/checksum.c
delete mode 100644 arch/metag/lib/clear_page.S
delete mode 100644 arch/metag/lib/cmpdi2.S
delete mode 100644 arch/metag/lib/copy_page.S
delete mode 100644 arch/metag/lib/delay.c
delete mode 100644 arch/metag/lib/div64.S
delete mode 100644 arch/metag/lib/divsi3.S
delete mode 100644 arch/metag/lib/ip_fast_csum.S
delete mode 100644 arch/metag/lib/lshrdi3.S
delete mode 100644 arch/metag/lib/memcpy.S
delete mode 100644 arch/metag/lib/memmove.S
delete mode 100644 arch/metag/lib/memset.S
delete mode 100644 arch/metag/lib/modsi3.S
delete mode 100644 arch/metag/lib/muldi3.S
delete mode 100644 arch/metag/lib/ucmpdi2.S
delete mode 100644 arch/metag/lib/usercopy.c
delete mode 100644 arch/metag/mm/Kconfig
delete mode 100644 arch/metag/mm/Makefile
delete mode 100644 arch/metag/mm/cache.c
delete mode 100644 arch/metag/mm/extable.c
delete mode 100644 arch/metag/mm/fault.c
delete mode 100644 arch/metag/mm/highmem.c
delete mode 100644 arch/metag/mm/hugetlbpage.c
delete mode 100644 arch/metag/mm/init.c
delete mode 100644 arch/metag/mm/ioremap.c
delete mode 100644 arch/metag/mm/l2cache.c
delete mode 100644 arch/metag/mm/maccess.c
delete mode 100644 arch/metag/mm/mmu-meta1.c
delete mode 100644 arch/metag/mm/mmu-meta2.c
delete mode 100644 arch/metag/mm/numa.c
delete mode 100644 arch/metag/oprofile/Makefile
delete mode 100644 arch/metag/oprofile/backtrace.c
delete mode 100644 arch/metag/oprofile/backtrace.h
delete mode 100644 arch/metag/oprofile/common.c
delete mode 100644 arch/metag/tbx/Makefile
delete mode 100644 arch/metag/tbx/tbicore.S
delete mode 100644 arch/metag/tbx/tbictx.S
delete mode 100644 arch/metag/tbx/tbictxfpu.S
delete mode 100644 arch/metag/tbx/tbidefr.S
delete mode 100644 arch/metag/tbx/tbidspram.S
delete mode 100644 arch/metag/tbx/tbilogf.S
delete mode 100644 arch/metag/tbx/tbipcx.S
delete mode 100644 arch/metag/tbx/tbiroot.S
delete mode 100644 arch/metag/tbx/tbisoft.S
delete mode 100644 arch/metag/tbx/tbistring.c
delete mode 100644 arch/metag/tbx/tbitimer.S
delete mode 100644 drivers/clocksource/metag_generic.c
delete mode 100644 drivers/gpio/gpio-tz1090-pdc.c
delete mode 100644 drivers/gpio/gpio-tz1090.c
delete mode 100644 drivers/irqchip/irq-metag-ext.c
delete mode 100644 drivers/irqchip/irq-metag.c
delete mode 100644 drivers/pinctrl/pinctrl-tz1090-pdc.c
delete mode 100644 drivers/pinctrl/pinctrl-tz1090.c
delete mode 100644 drivers/tty/metag_da.c
delete mode 100644 include/clocksource/metag_generic.h
delete mode 100644 include/linux/irqchip/metag-ext.h
delete mode 100644 include/linux/irqchip/metag.h
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 00/13] Remove metag architecture
2018-02-21 23:38 [PATCH 00/13] Remove metag architecture James Hogan
` (2 preceding siblings ...)
2018-02-23 10:26 ` Arnd Bergmann
@ 2018-03-07 21:24 ` Arnd Bergmann
3 siblings, 0 replies; 13+ messages in thread
From: Arnd Bergmann @ 2018-03-07 21:24 UTC (permalink / raw)
To: James Hogan
Cc: open list:METAG ARCHITECTURE, Linux Kernel Mailing List,
Guenter Roeck, Jonathan Corbet, Steven Rostedt, Ingo Molnar,
Peter Zijlstra, Arnaldo Carvalho de Melo, Alexander Shishkin,
Jiri Olsa, Namhyung Kim, Thomas Gleixner, Jason Cooper,
Marc Zyngier, Daniel Lezcano, Greg Kroah-Hartman, Jiri Slaby,
Linus Walleij, Wim Van Sebroeck, Mauro Carvalho Chehab,
Mauro Carvalho Chehab, Wolfram Sang, open list:DOCUMENTATION,
Linux-MM, linux-gpio, linux-watchdog, Linux Media Mailing List,
linux-i2c
On Thu, Feb 22, 2018 at 12:38 AM, James Hogan <jhogan@kernel.org> wrote:
> These patches remove the metag architecture and tightly dependent
> drivers from the kernel. With the 4.16 kernel the ancient gcc 4.2.4
> based metag toolchain we have been using is hitting compiler bugs, so
> now seems a good time to drop it altogether.
>
> Quoting from patch 1:
>
> The earliest Meta architecture port of Linux I have a record of was an
> import of a Meta port of Linux v2.4.1 in February 2004, which was worked
> on significantly over the next few years by Graham Whaley, Will Newton,
> Matt Fleming, myself and others.
>
> Eventually the port was merged into mainline in v3.9 in March 2013, not
> long after Imagination Technologies bought MIPS Technologies and shifted
> its CPU focus over to the MIPS architecture.
>
> As a result, though the port was maintained for a while, kept on life
> support for a while longer, and useful for testing a few specific
> drivers for which I don't have ready access to the equivalent MIPS
> hardware, it is now essentially dead with no users.
>
> It is also stuck using an out-of-tree toolchain based on GCC 4.2.4 which
> is no longer maintained, now struggles to build modern kernels due to
> toolchain bugs, and doesn't itself build with a modern GCC. The latest
> buildroot port is still using an old uClibc snapshot which is no longer
> served, and the latest uClibc doesn't build with GCC 4.2.4.
>
> So lets call it a day and drop the Meta architecture port from the
> kernel. RIP Meta.
I've pulled it into my asm-generic tree now, which is also part of linux-next,
and followed up with patches removing frv, m32r, score, unicore32
and blackfin. I have not removed the device drivers yet, but I'm working
on that.
Arnd
^ permalink raw reply [flat|nested] 13+ messages in thread