All of lore.kernel.org
 help / color / mirror / Atom feed
From: guoren@kernel.org
To: guoren@kernel.org, palmer@dabbelt.com, arnd@arndb.de,
	anup@brainfault.org, gregkh@linuxfoundation.org,
	liush@allwinnertech.com, wefu@redhat.com, drew@beagleboard.org,
	wangjunqiang@iscas.ac.cn, hch@lst.de, hch@infradead.org
Cc: linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-riscv@lists.infradead.org, linux-csky@vger.kernel.org,
	linux-s390@vger.kernel.org, sparclinux@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org, linux-parisc@vger.kernel.org,
	linux-mips@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	x86@kernel.org, Guo Ren <guoren@linux.alibaba.com>
Subject: [PATCH V4 10/17] riscv: compat: process: Add UXL_32 support in start_thread
Date: Sat, 29 Jan 2022 20:17:21 +0800	[thread overview]
Message-ID: <20220129121728.1079364-11-guoren@kernel.org> (raw)
In-Reply-To: <20220129121728.1079364-1-guoren@kernel.org>

From: Guo Ren <guoren@linux.alibaba.com>

If the current task is in COMPAT mode, set SR_UXL_32 in status for
returning userspace. We need CONFIG _COMPAT to prevent compiling
errors with rv32 defconfig.

Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
Signed-off-by: Guo Ren <guoren@kernel.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
---
 arch/riscv/kernel/process.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/riscv/kernel/process.c b/arch/riscv/kernel/process.c
index 03ac3aa611f5..1a666ad299b4 100644
--- a/arch/riscv/kernel/process.c
+++ b/arch/riscv/kernel/process.c
@@ -97,6 +97,11 @@ void start_thread(struct pt_regs *regs, unsigned long pc,
 	}
 	regs->epc = pc;
 	regs->sp = sp;
+
+#ifdef CONFIG_COMPAT
+	if (is_compat_task())
+		regs->status |= SR_UXL_32;
+#endif
 }
 
 void flush_thread(void)
-- 
2.25.1


WARNING: multiple messages have this Message-ID (diff)
From: guoren@kernel.org
To: guoren@kernel.org, palmer@dabbelt.com, arnd@arndb.de,
	anup@brainfault.org, gregkh@linuxfoundation.org,
	liush@allwinnertech.com, wefu@redhat.com, drew@beagleboard.org,
	wangjunqiang@iscas.ac.cn, hch@lst.de, hch@infradead.org
Cc: linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-riscv@lists.infradead.org, linux-csky@vger.kernel.org,
	linux-s390@vger.kernel.org, sparclinux@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org, linux-parisc@vger.kernel.org,
	linux-mips@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	x86@kernel.org, Guo Ren <guoren@linux.alibaba.com>
Subject: [PATCH V4 10/17] riscv: compat: process: Add UXL_32 support in start_thread
Date: Sat, 29 Jan 2022 20:17:21 +0800	[thread overview]
Message-ID: <20220129121728.1079364-11-guoren@kernel.org> (raw)
In-Reply-To: <20220129121728.1079364-1-guoren@kernel.org>

From: Guo Ren <guoren@linux.alibaba.com>

If the current task is in COMPAT mode, set SR_UXL_32 in status for
returning userspace. We need CONFIG _COMPAT to prevent compiling
errors with rv32 defconfig.

Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
Signed-off-by: Guo Ren <guoren@kernel.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
---
 arch/riscv/kernel/process.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/riscv/kernel/process.c b/arch/riscv/kernel/process.c
index 03ac3aa611f5..1a666ad299b4 100644
--- a/arch/riscv/kernel/process.c
+++ b/arch/riscv/kernel/process.c
@@ -97,6 +97,11 @@ void start_thread(struct pt_regs *regs, unsigned long pc,
 	}
 	regs->epc = pc;
 	regs->sp = sp;
+
+#ifdef CONFIG_COMPAT
+	if (is_compat_task())
+		regs->status |= SR_UXL_32;
+#endif
 }
 
 void flush_thread(void)
-- 
2.25.1


_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

WARNING: multiple messages have this Message-ID (diff)
From: guoren@kernel.org
To: guoren@kernel.org, palmer@dabbelt.com, arnd@arndb.de,
	anup@brainfault.org, gregkh@linuxfoundation.org,
	liush@allwinnertech.com, wefu@redhat.com, drew@beagleboard.org,
	wangjunqiang@iscas.ac.cn, hch@lst.de, hch@infradead.org
Cc: linux-arch@vger.kernel.org, linux-s390@vger.kernel.org,
	Guo Ren <guoren@linux.alibaba.com>,
	linux-parisc@vger.kernel.org, x86@kernel.org,
	linux-kernel@vger.kernel.org, linux-csky@vger.kernel.org,
	linux-mips@vger.kernel.org, sparclinux@vger.kernel.org,
	linux-riscv@lists.infradead.org, linuxppc-dev@lists.ozlabs.org,
	linux-arm-kernel@lists.infradead.org
Subject: [PATCH V4 10/17] riscv: compat: process: Add UXL_32 support in start_thread
Date: Sat, 29 Jan 2022 20:17:21 +0800	[thread overview]
Message-ID: <20220129121728.1079364-11-guoren@kernel.org> (raw)
In-Reply-To: <20220129121728.1079364-1-guoren@kernel.org>

From: Guo Ren <guoren@linux.alibaba.com>

If the current task is in COMPAT mode, set SR_UXL_32 in status for
returning userspace. We need CONFIG _COMPAT to prevent compiling
errors with rv32 defconfig.

Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
Signed-off-by: Guo Ren <guoren@kernel.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
---
 arch/riscv/kernel/process.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/riscv/kernel/process.c b/arch/riscv/kernel/process.c
index 03ac3aa611f5..1a666ad299b4 100644
--- a/arch/riscv/kernel/process.c
+++ b/arch/riscv/kernel/process.c
@@ -97,6 +97,11 @@ void start_thread(struct pt_regs *regs, unsigned long pc,
 	}
 	regs->epc = pc;
 	regs->sp = sp;
+
+#ifdef CONFIG_COMPAT
+	if (is_compat_task())
+		regs->status |= SR_UXL_32;
+#endif
 }
 
 void flush_thread(void)
-- 
2.25.1


WARNING: multiple messages have this Message-ID (diff)
From: guoren@kernel.org
To: guoren@kernel.org, palmer@dabbelt.com, arnd@arndb.de,
	anup@brainfault.org, gregkh@linuxfoundation.org,
	liush@allwinnertech.com, wefu@redhat.com, drew@beagleboard.org,
	wangjunqiang@iscas.ac.cn, hch@lst.de, hch@infradead.org
Cc: linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-riscv@lists.infradead.org, linux-csky@vger.kernel.org,
	linux-s390@vger.kernel.org, sparclinux@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org, linux-parisc@vger.kernel.org,
	linux-mips@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	x86@kernel.org, Guo Ren <guoren@linux.alibaba.com>
Subject: [PATCH V4 10/17] riscv: compat: process: Add UXL_32 support in start_thread
Date: Sat, 29 Jan 2022 20:17:21 +0800	[thread overview]
Message-ID: <20220129121728.1079364-11-guoren@kernel.org> (raw)
In-Reply-To: <20220129121728.1079364-1-guoren@kernel.org>

From: Guo Ren <guoren@linux.alibaba.com>

If the current task is in COMPAT mode, set SR_UXL_32 in status for
returning userspace. We need CONFIG _COMPAT to prevent compiling
errors with rv32 defconfig.

Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
Signed-off-by: Guo Ren <guoren@kernel.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
---
 arch/riscv/kernel/process.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/riscv/kernel/process.c b/arch/riscv/kernel/process.c
index 03ac3aa611f5..1a666ad299b4 100644
--- a/arch/riscv/kernel/process.c
+++ b/arch/riscv/kernel/process.c
@@ -97,6 +97,11 @@ void start_thread(struct pt_regs *regs, unsigned long pc,
 	}
 	regs->epc = pc;
 	regs->sp = sp;
+
+#ifdef CONFIG_COMPAT
+	if (is_compat_task())
+		regs->status |= SR_UXL_32;
+#endif
 }
 
 void flush_thread(void)
-- 
2.25.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  parent reply	other threads:[~2022-01-29 12:19 UTC|newest]

Thread overview: 172+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-29 12:17 [PATCH V4 00/17] riscv: compat: Add COMPAT mode support for rv64 guoren
2022-01-29 12:17 ` guoren
2022-01-29 12:17 ` guoren
2022-01-29 12:17 ` guoren
2022-01-29 12:17 ` [PATCH V4 01/17] kconfig: Add SYSVIPC_COMPAT for all architectures guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-31 12:19   ` Christoph Hellwig
2022-01-31 12:19     ` Christoph Hellwig
2022-01-31 12:19     ` Christoph Hellwig
2022-01-31 12:19     ` Christoph Hellwig
2022-01-29 12:17 ` [PATCH V4 02/17] fs: stat: compat: Add __ARCH_WANT_COMPAT_STAT guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-31 12:19   ` Christoph Hellwig
2022-01-31 12:19     ` Christoph Hellwig
2022-01-31 12:19     ` Christoph Hellwig
2022-01-31 12:19     ` Christoph Hellwig
2022-01-29 12:17 ` [PATCH V4 03/17] asm-generic: compat: Cleanup duplicate definitions guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 21:40   ` Arnd Bergmann
2022-01-29 21:40     ` Arnd Bergmann
2022-01-29 21:40     ` Arnd Bergmann
2022-01-29 21:40     ` Arnd Bergmann
2022-01-31 12:21   ` Christoph Hellwig
2022-01-31 12:21     ` Christoph Hellwig
2022-01-31 12:21     ` Christoph Hellwig
2022-01-31 12:21     ` Christoph Hellwig
2022-01-31 13:52     ` Guo Ren
2022-01-31 13:52       ` Guo Ren
2022-01-31 13:52       ` Guo Ren
2022-01-31 13:52       ` Guo Ren
2022-01-29 12:17 ` [PATCH V4 04/17] syscalls: compat: Fix the missing part for __SYSCALL_COMPAT guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-31 12:21   ` Christoph Hellwig
2022-01-31 12:21     ` Christoph Hellwig
2022-01-31 12:21     ` Christoph Hellwig
2022-01-31 12:21     ` Christoph Hellwig
2022-01-29 12:17 ` [PATCH V4 05/17] riscv: Fixup difference with defconfig guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-31 12:23   ` Christoph Hellwig
2022-01-31 12:23     ` Christoph Hellwig
2022-01-31 12:23     ` Christoph Hellwig
2022-01-31 12:23     ` Christoph Hellwig
2022-01-31 12:48     ` Arnd Bergmann
2022-01-31 12:48       ` Arnd Bergmann
2022-01-31 12:48       ` Arnd Bergmann
2022-01-31 12:48       ` Arnd Bergmann
2022-01-31 13:00       ` Christoph Hellwig
2022-01-31 13:00         ` Christoph Hellwig
2022-01-31 13:00         ` Christoph Hellwig
2022-01-31 13:00         ` Christoph Hellwig
2022-01-31 13:19         ` Arnd Bergmann
2022-01-31 13:19           ` Arnd Bergmann
2022-01-31 13:19           ` Arnd Bergmann
2022-01-31 13:19           ` Arnd Bergmann
2022-01-29 12:17 ` [PATCH V4 06/17] riscv: compat: Add basic compat date type implementation guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 21:56   ` Arnd Bergmann
2022-01-29 21:56     ` Arnd Bergmann
2022-01-29 21:56     ` Arnd Bergmann
2022-01-29 21:56     ` Arnd Bergmann
2022-01-30  5:47     ` Guo Ren
2022-01-30  5:47       ` Guo Ren
2022-01-30  5:47       ` Guo Ren
2022-01-30  5:47       ` Guo Ren
2022-01-30 11:36       ` Arnd Bergmann
2022-01-30 11:36         ` Arnd Bergmann
2022-01-30 11:36         ` Arnd Bergmann
2022-01-30 11:36         ` Arnd Bergmann
2022-01-29 12:17 ` [PATCH V4 07/17] riscv: compat: Re-implement TASK_SIZE for COMPAT_32BIT guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17 ` [PATCH V4 08/17] riscv: compat: syscall: Add compat_sys_call_table implementation guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 22:12   ` Arnd Bergmann
2022-01-29 22:12     ` Arnd Bergmann
2022-01-29 22:12     ` Arnd Bergmann
2022-01-29 22:12     ` Arnd Bergmann
2022-01-30  5:54     ` Guo Ren
2022-01-30  5:54       ` Guo Ren
2022-01-30  5:54       ` Guo Ren
2022-01-30  5:54       ` Guo Ren
2022-01-30 11:32       ` Arnd Bergmann
2022-01-30 11:32         ` Arnd Bergmann
2022-01-30 11:32         ` Arnd Bergmann
2022-01-30 11:32         ` Arnd Bergmann
2022-01-30 14:57         ` Guo Ren
2022-01-30 14:57           ` Guo Ren
2022-01-30 14:57           ` Guo Ren
2022-01-30 14:57           ` Guo Ren
2022-01-29 12:17 ` [PATCH V4 09/17] riscv: compat: syscall: Add entry.S implementation guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17 ` guoren [this message]
2022-01-29 12:17   ` [PATCH V4 10/17] riscv: compat: process: Add UXL_32 support in start_thread guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17 ` [PATCH V4 11/17] riscv: compat: Add elf.h implementation guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17 ` [PATCH V4 12/17] riscv: compat: vdso: Add rv32 VDSO base code implementation guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17 ` [PATCH V4 13/17] riscv: compat: vdso: Add setup additional pages implementation guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17 ` [PATCH V4 14/17] riscv: compat: signal: Add rt_frame implementation guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17 ` [PATCH V4 15/17] riscv: compat: ptrace: Add compat_arch_ptrace implement guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17 ` [PATCH V4 16/17] riscv: compat: Add COMPAT Kbuild skeletal support guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-31 12:26   ` Christoph Hellwig
2022-01-31 12:26     ` Christoph Hellwig
2022-01-31 12:26     ` Christoph Hellwig
2022-01-31 12:26     ` Christoph Hellwig
2022-01-31 13:50     ` Guo Ren
2022-01-31 13:50       ` Guo Ren
2022-01-31 13:50       ` Guo Ren
2022-01-31 13:50       ` Guo Ren
2022-02-01  7:44       ` Christoph Hellwig
2022-02-01  7:44         ` Christoph Hellwig
2022-02-01  7:44         ` Christoph Hellwig
2022-02-01  7:44         ` Christoph Hellwig
2022-02-01  9:13         ` Guo Ren
2022-02-01  9:13           ` Guo Ren
2022-02-01  9:13           ` Guo Ren
2022-02-01  9:13           ` Guo Ren
2022-02-01  9:36           ` Arnd Bergmann
2022-02-01  9:36             ` Arnd Bergmann
2022-02-01  9:36             ` Arnd Bergmann
2022-02-01  9:36             ` Arnd Bergmann
2022-02-01 10:26             ` Guo Ren
2022-02-01 10:26               ` Guo Ren
2022-02-01 10:26               ` Guo Ren
2022-02-01 10:26               ` Guo Ren
2022-02-01 11:48               ` Arnd Bergmann
2022-02-01 11:48                 ` Arnd Bergmann
2022-02-01 11:48                 ` Arnd Bergmann
2022-02-01 11:48                 ` Arnd Bergmann
2022-02-01 13:56                 ` Guo Ren
2022-02-01 13:56                   ` Guo Ren
2022-02-01 13:56                   ` Guo Ren
2022-02-01 13:56                   ` Guo Ren
2022-01-29 12:17 ` [PATCH V4 17/17] KVM: compat: riscv: Prevent KVM_COMPAT from being selected guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren
2022-01-29 12:17   ` guoren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220129121728.1079364-11-guoren@kernel.org \
    --to=guoren@kernel.org \
    --cc=anup@brainfault.org \
    --cc=arnd@arndb.de \
    --cc=drew@beagleboard.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=guoren@linux.alibaba.com \
    --cc=hch@infradead.org \
    --cc=hch@lst.de \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-csky@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@vger.kernel.org \
    --cc=linux-parisc@vger.kernel.org \
    --cc=linux-riscv@lists.infradead.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=liush@allwinnertech.com \
    --cc=palmer@dabbelt.com \
    --cc=sparclinux@vger.kernel.org \
    --cc=wangjunqiang@iscas.ac.cn \
    --cc=wefu@redhat.com \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.