Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1261064

[PATCH v6 07/17] arm64:ilp32: add is_ilp32_compat_{task,thread} and TIF_32BIT_AARCH64

From Yury Norov <ynorov@caviumnetworks.com>
Newsgroups linux.kernel
Subject [PATCH v6 07/17] arm64:ilp32: add is_ilp32_compat_{task,thread} and TIF_32BIT_AARCH64
Date 2015-11-03 00:40 +0100
Message-ID <qqwRI-3eC-31@gated-at.bofh.it> (permalink)
References <qqwRH-3eC-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


From: Andrew Pinski <apinski@cavium.com>

Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Signed-off-by: Christoph Muellner <christoph.muellner@theobroma-systems.com>
Signed-off-by: Yury Norov <ynorov@caviumnetworks.com>
Signed-off-by: Andrew Pinski <Andrew.Pinski@caviumnetworks.com>
Reviewed-by: David Daney <david.daney@cavium.com>
---
 arch/arm64/include/asm/compat.h      | 38 +++++++++++++++++++++++++++++++++++-
 arch/arm64/include/asm/thread_info.h |  1 +
 2 files changed, 38 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/include/asm/compat.h b/arch/arm64/include/asm/compat.h
index 9700e5e..95d2d72 100644
--- a/arch/arm64/include/asm/compat.h
+++ b/arch/arm64/include/asm/compat.h
@@ -324,9 +324,35 @@ static inline int is_a32_compat_thread(struct thread_info *thread)
 }
 #endif
 
+#ifdef CONFIG_ARM64_ILP32
+
+static inline int is_ilp32_compat_task(void)
+{
+	return test_thread_flag(TIF_32BIT_AARCH64);
+}
+
+static inline int is_ilp32_compat_thread(struct thread_info *thread)
+{
+	return test_ti_thread_flag(thread, TIF_32BIT_AARCH64);
+}
+
+#else
+
+static inline int is_ilp32_compat_task(void)
+{
+	return 0;
+}
+
+static inline int is_ilp32_compat_thread(struct thread_info *thread)
+{
+	return 0;
+}
+
+#endif
+
 static inline int is_compat_task(void)
 {
-	return is_a32_compat_task();
+	return is_a32_compat_task() || is_ilp32_compat_task();
 }
 
 #else /* !CONFIG_COMPAT */
@@ -341,6 +367,16 @@ static inline int is_a32_compat_task(void)
 	return 0;
 }
 
+static inline int is_ilp32_compat_thread(struct thread_info *thread)
+{
+	return 0;
+}
+
+static inline int is_ilp32_compat_task(void)
+{
+	return 0;
+}
+
 #endif /* CONFIG_COMPAT */
 #endif /* __KERNEL__ */
 #endif /* __ASM_COMPAT_H */
diff --git a/arch/arm64/include/asm/thread_info.h b/arch/arm64/include/asm/thread_info.h
index 7d03565..e72de74 100644
--- a/arch/arm64/include/asm/thread_info.h
+++ b/arch/arm64/include/asm/thread_info.h
@@ -112,6 +112,7 @@ static inline struct thread_info *current_thread_info(void)
 #define TIF_SINGLESTEP		21
 #define TIF_32BIT		22	/* AARCH32 process */
 #define TIF_SWITCH_MM		23	/* deferred switch_mm */
+#define TIF_32BIT_AARCH64	24	/* 32 bit process on AArch64(ILP32) */
 
 #define _TIF_SIGPENDING		(1 << TIF_SIGPENDING)
 #define _TIF_NEED_RESCHED	(1 << TIF_NEED_RESCHED)
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[RFC PATCH v6 00/17] ILP32 for ARM64 Yury Norov <ynorov@caviumnetworks.com> - 2015-11-03 00:40 +0100
  [PATCH v6 03/17] arm64: rename COMPAT to AARCH32_EL0 in Kconfig Yury Norov <ynorov@caviumnetworks.com> - 2015-11-03 00:40 +0100
  [PATCH v6 04/17] arm64: change some CONFIG_COMPAT over to use CONFIG_AARCH32_EL0 instead Yury Norov <ynorov@caviumnetworks.com> - 2015-11-03 00:40 +0100
  [PATCH v6 10/17] arm64:ilp32: support core dump generation for ILP32 Yury Norov <ynorov@caviumnetworks.com> - 2015-11-03 00:40 +0100
  [PATCH v6 08/17] arm64:ilp32: share HWCAP between LP64 and ILP32 Yury Norov <ynorov@caviumnetworks.com> - 2015-11-03 00:40 +0100
  [PATCH v6 14/17] aarch64: ilp32: use generic stat64 structure Yury Norov <ynorov@caviumnetworks.com> - 2015-11-03 00:40 +0100
    Re: [PATCH v6 14/17] aarch64: ilp32: use generic stat64 structure Arnd Bergmann <arnd@arndb.de> - 2015-11-05 15:20 +0100
  [PATCH v6 01/17] arm64:ilp32: add documentation on the ILP32 ABI for ARM64 Yury Norov <ynorov@caviumnetworks.com> - 2015-11-03 00:40 +0100
    Re: [PATCH v6 01/17] arm64:ilp32: add documentation on the ILP32 ABI for ARM64 Arnd Bergmann <arnd@arndb.de> - 2015-11-05 15:40 +0100
  [PATCH v6 11/17] ptrace: Allow compat to use the native siginfo Yury Norov <ynorov@caviumnetworks.com> - 2015-11-03 00:40 +0100
    Re: [PATCH v6 11/17] ptrace: Allow compat to use the native siginfo Arnd Bergmann <arnd@arndb.de> - 2015-11-05 15:00 +0100
  [PATCH v6 15/17] arm64:ilp32: use the native siginfo instead of the compat siginfo Yury Norov <ynorov@caviumnetworks.com> - 2015-11-03 00:40 +0100
  [PATCH v6 07/17] arm64:ilp32: add is_ilp32_compat_{task,thread} and TIF_32BIT_AARCH64 Yury Norov <ynorov@caviumnetworks.com> - 2015-11-03 00:40 +0100
  [PATCH v6 13/17] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it Yury Norov <ynorov@caviumnetworks.com> - 2015-11-03 00:40 +0100
    Re: [PATCH v6 13/17] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it Arnd Bergmann <arnd@arndb.de> - 2015-11-05 15:00 +0100
    Re: [PATCH v6 13/17] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it Andreas Schwab <schwab@suse.de> - 2015-11-11 19:00 +0100
      Re: [PATCH v6 13/17] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it Arnd Bergmann <arnd@arndb.de> - 2015-11-11 21:50 +0100
        Re: [PATCH v6 13/17] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it Andreas Schwab <schwab@suse.de> - 2015-11-12 00:10 +0100
          Re: [PATCH v6 13/17] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it Arnd Bergmann <arnd@arndb.de> - 2015-11-12 00:30 +0100
            Re: [PATCH v6 13/17] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it Andreas Schwab <schwab@suse.de> - 2015-11-12 10:00 +0100
              Re: [PATCH v6 13/17] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it Arnd Bergmann <arnd@arndb.de> - 2015-11-12 10:30 +0100
                Re: [PATCH v6 13/17] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it Andreas Schwab <schwab@suse.de> - 2015-11-12 10:50 +0100
                Re: [PATCH v6 13/17] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it Arnd Bergmann <arnd@arndb.de> - 2015-11-12 14:30 +0100
                Re: [PATCH v6 13/17] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it Andreas Schwab <schwab@suse.de> - 2015-11-12 14:50 +0100
                Re: [PATCH v6 13/17] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it Arnd Bergmann <arnd@arndb.de> - 2015-11-13 16:40 +0100
                Re: [PATCH v6 13/17] arm64:ilp32: add sys_ilp32.c and a separate  table (in entry.S) to use it Andrew Pinski <pinskia@gmail.com> - 2015-11-13 16:40 +0100
                Re: [PATCH v6 13/17] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it Arnd Bergmann <arnd@arndb.de> - 2015-11-13 17:20 +0100
                Re: [PATCH v6 13/17] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it Arnd Bergmann <arnd@arndb.de> - 2015-11-15 16:20 +0100
                Re: [PATCH v6 13/17] arm64:ilp32: add sys_ilp32.c and a separate  table (in entry.S) to use it Joseph Myers <joseph@codesourcery.com> - 2015-11-16 11:20 +0100
  [PATCH v6 17/17] arm64:ilp32: add ARM64_ILP32 to Kconfig Yury Norov <ynorov@caviumnetworks.com> - 2015-11-03 00:40 +0100
  Re: [RFC PATCH v6 00/17] ILP32 for ARM64 Andreas Schwab <schwab@suse.de> - 2015-11-05 12:40 +0100
    Re: [RFC PATCH v6 00/17] ILP32 for ARM64 Andrew Pinski <pinskia@gmail.com> - 2015-11-05 14:50 +0100
      Re: [RFC PATCH v6 00/17] ILP32 for ARM64 Andreas Schwab <schwab@suse.de> - 2015-11-09 11:10 +0100
        Re: [RFC PATCH v6 00/17] ILP32 for ARM64 "Zhangjian (Bamvor)" <bamvor.zhangjian@huawei.com> - 2015-11-11 08:30 +0100
          Re: [RFC PATCH v6 00/17] ILP32 for ARM64 Andreas Schwab <schwab@suse.de> - 2015-11-11 09:50 +0100
      Re: [RFC PATCH v6 00/17] ILP32 for ARM64 Andreas Schwab <schwab@suse.de> - 2015-11-09 14:30 +0100
        Re: [RFC PATCH v6 00/17] ILP32 for ARM64 Arnd Bergmann <arnd@arndb.de> - 2015-11-09 15:30 +0100
          Re: [RFC PATCH v6 00/17] ILP32 for ARM64 Andreas Schwab <schwab@suse.de> - 2015-11-09 15:40 +0100
            Re: [RFC PATCH v6 00/17] ILP32 for ARM64 Arnd Bergmann <arnd@arndb.de> - 2015-11-09 15:40 +0100
              Re: [RFC PATCH v6 00/17] ILP32 for ARM64 pinskia@gmail.com - 2015-11-09 16:10 +0100

csiph-web