Benjamin Berg
1ca1443570
um: Rely on PTRACE_SETREGSET to set FS/GS base registers
...
These registers are saved/restored together with the other general
registers using ptrace. In arch_set_tls we then just need to set the
register and it will be synced back normally.
Most of this logic was introduced in commit f355559cf7 ("[PATCH] uml:
x86_64 thread fixes"). However, at least today we can rely on ptrace to
restore the base registers for us. As such, only the part of the patch
that tracks the FS register for use as thread local storage is actually
needed.
Signed-off-by: Benjamin Berg <benjamin@sipsolutions.net >
Signed-off-by: Richard Weinberger <richard@nod.at >
2024-01-05 16:28:56 +01:00
Yang Li
3bdd271bc8
um: Remove duplicated include in syscalls_64.c
...
Fix following includecheck warning:
./arch/x86/um/syscalls_64.c: registers.h is included more than once.
Reported-by: Abaci Robot <abaci@linux.alibaba.com >
Fixes: dbba7f704a ("um: stop polluting the namespace with registers.h contents")
Signed-off-by: Yang Li <yang.lee@linux.alibaba.com >
Signed-off-by: Richard Weinberger <richard@nod.at >
2022-03-11 10:41:08 +01:00
Al Viro
dbba7f704a
um: stop polluting the namespace with registers.h contents
...
Only one extern in there is needed in processor-generic.h, and it's
not needed anywhere else. So move it over there and get rid of
the include in processor-generic.h, adding includes of registers.h
to the few files that need the declarations in it.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
Signed-off-by: Richard Weinberger <richard@nod.at >
2021-12-21 21:31:35 +01:00
Al Viro
577ade59b9
um: move amd64 variant of mmap(2) to arch/x86/um/syscalls_64.c
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
Signed-off-by: Richard Weinberger <richard@nod.at >
2021-12-21 21:30:44 +01:00
Randy Dunlap
077b732094
um: registers: Rename function names to avoid conflicts and build problems
...
The function names init_registers() and restore_registers() are used
in several net/ethernet/ and gpu/drm/ drivers for other purposes (not
calls to UML functions), so rename them.
This fixes multiple build errors.
Signed-off-by: Randy Dunlap <rdunlap@infradead.org >
Cc: Jeff Dike <jdike@addtoit.com >
Cc: Richard Weinberger <richard@nod.at >
Cc: Anton Ivanov <anton.ivanov@cambridgegreys.com >
Cc: linux-um@lists.infradead.org
Signed-off-by: Richard Weinberger <richard@nod.at >
2021-12-21 21:22:19 +01:00
Kyle Huey
d582799fe5
um/arch_prctl: Fix fallout from x86 arch_prctl() rework
...
The recent arch_prctl rework added a bracket instead of a comma. Fix it.
Fixes: 17a6e1b8e8 ("x86/arch_prctl/64: Rename do_arch_prctl() to do_arch_prctl_64()")
Signed-off-by: Kyle Huey <khuey@kylehuey.com >
Cc: Andy Lutomirski <luto@kernel.org >
Cc: kbuild-all@01.org
Link: http://lkml.kernel.org/r/20170320230535.11281-1-khuey@kylehuey.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2017-03-21 10:08:29 +01:00
Kyle Huey
17a6e1b8e8
x86/arch_prctl/64: Rename do_arch_prctl() to do_arch_prctl_64()
...
In order to introduce new arch_prctls that are not 64 bit only, rename the
existing 64 bit implementation to do_arch_prctl_64(). Also rename the
second argument of that function from 'addr' to 'arg2', because it will no
longer always be an address.
Signed-off-by: Kyle Huey <khuey@kylehuey.com >
Reviewed-by: Andy Lutomirski <luto@kernel.org >
Cc: Grzegorz Andrejczuk <grzegorz.andrejczuk@intel.com >
Cc: kvm@vger.kernel.org
Cc: Radim Krčmář <rkrcmar@redhat.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Dave Hansen <dave.hansen@linux.intel.com >
Cc: Andi Kleen <andi@firstfloor.org >
Cc: linux-kselftest@vger.kernel.org
Cc: Nadav Amit <nadav.amit@gmail.com >
Cc: Robert O'Callahan <robert@ocallahan.org >
Cc: Richard Weinberger <richard@nod.at >
Cc: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com >
Cc: Borislav Petkov <bp@suse.de >
Cc: Len Brown <len.brown@intel.com >
Cc: Shuah Khan <shuah@kernel.org >
Cc: user-mode-linux-devel@lists.sourceforge.net
Cc: Jeff Dike <jdike@addtoit.com >
Cc: Alexander Viro <viro@zeniv.linux.org.uk >
Cc: user-mode-linux-user@lists.sourceforge.net
Cc: David Matlack <dmatlack@google.com >
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com >
Cc: Dmitry Safonov <dsafonov@virtuozzo.com >
Cc: linux-fsdevel@vger.kernel.org
Cc: Paolo Bonzini <pbonzini@redhat.com >
Link: http://lkml.kernel.org/r/20170320081628.18952-5-khuey@kylehuey.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2017-03-20 16:10:32 +01:00
Kyle Huey
ff3f097eef
x86/arch_prctl/64: Use SYSCALL_DEFINE2 to define sys_arch_prctl()
...
Use the SYSCALL_DEFINE2 macro instead of manually defining it.
Signed-off-by: Kyle Huey <khuey@kylehuey.com >
Cc: Grzegorz Andrejczuk <grzegorz.andrejczuk@intel.com >
Cc: kvm@vger.kernel.org
Cc: Radim Krčmář <rkrcmar@redhat.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Dave Hansen <dave.hansen@linux.intel.com >
Cc: Andi Kleen <andi@firstfloor.org >
Cc: linux-kselftest@vger.kernel.org
Cc: Nadav Amit <nadav.amit@gmail.com >
Cc: Robert O'Callahan <robert@ocallahan.org >
Cc: Richard Weinberger <richard@nod.at >
Cc: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com >
Cc: Borislav Petkov <bp@suse.de >
Cc: Andy Lutomirski <luto@kernel.org >
Cc: Len Brown <len.brown@intel.com >
Cc: Shuah Khan <shuah@kernel.org >
Cc: user-mode-linux-devel@lists.sourceforge.net
Cc: Jeff Dike <jdike@addtoit.com >
Cc: Alexander Viro <viro@zeniv.linux.org.uk >
Cc: user-mode-linux-user@lists.sourceforge.net
Cc: David Matlack <dmatlack@google.com >
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com >
Cc: Dmitry Safonov <dsafonov@virtuozzo.com >
Cc: linux-fsdevel@vger.kernel.org
Cc: Paolo Bonzini <pbonzini@redhat.com >
Link: http://lkml.kernel.org/r/20170320081628.18952-4-khuey@kylehuey.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2017-03-20 16:10:32 +01:00
Kyle Huey
dd93938a92
x86/arch_prctl: Rename 'code' argument to 'option'
...
The x86 specific arch_prctl() arbitrarily changed prctl's 'option' to
'code'. Before adding new options, rename it.
Signed-off-by: Kyle Huey <khuey@kylehuey.com >
Cc: Grzegorz Andrejczuk <grzegorz.andrejczuk@intel.com >
Cc: kvm@vger.kernel.org
Cc: Radim Krčmář <rkrcmar@redhat.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Dave Hansen <dave.hansen@linux.intel.com >
Cc: Andi Kleen <andi@firstfloor.org >
Cc: linux-kselftest@vger.kernel.org
Cc: Nadav Amit <nadav.amit@gmail.com >
Cc: Robert O'Callahan <robert@ocallahan.org >
Cc: Richard Weinberger <richard@nod.at >
Cc: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com >
Cc: Borislav Petkov <bp@suse.de >
Cc: Andy Lutomirski <luto@kernel.org >
Cc: Len Brown <len.brown@intel.com >
Cc: Shuah Khan <shuah@kernel.org >
Cc: user-mode-linux-devel@lists.sourceforge.net
Cc: Jeff Dike <jdike@addtoit.com >
Cc: Alexander Viro <viro@zeniv.linux.org.uk >
Cc: user-mode-linux-user@lists.sourceforge.net
Cc: David Matlack <dmatlack@google.com >
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com >
Cc: Dmitry Safonov <dsafonov@virtuozzo.com >
Cc: linux-fsdevel@vger.kernel.org
Cc: Paolo Bonzini <pbonzini@redhat.com >
Link: http://lkml.kernel.org/r/20170320081628.18952-3-khuey@kylehuey.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2017-03-20 16:10:32 +01:00
Ingo Molnar
589ee62844
sched/headers: Prepare to remove the <linux/mm_types.h> dependency from <linux/sched.h>
...
Update code that relied on sched.h including various MM types for them.
This will allow us to remove the <linux/mm_types.h> include from <linux/sched.h>.
Acked-by: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mike Galbraith <efault@gmx.de >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2017-03-02 08:42:37 +01:00
Richard Weinberger
7017f42f3a
um: Add uaccess.h to syscalls_64.c
...
It's using put_user() and needs this header.
Signed-off-by: Richard Weinberger <richard@nod.at >
2015-05-31 17:31:56 +02:00
Al Viro
d2ce4e92fa
um: kill thread->forking
...
we only use that to tell copy_thread() done by syscall from that
done by kernel_thread(). However, it's easier to do simply by
checking PF_KTHREAD in thread flags.
Merge sys_clone() guts for 32bit and 64bit, while we are at it...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2012-09-27 18:04:55 +02:00
Al Viro
5c48b108ec
um: take arch/um/sys-x86 to arch/x86/um
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
Signed-off-by: Richard Weinberger <richard@nod.at >
2011-11-02 14:15:05 +01:00