aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/kernel/entry/common.c
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab+huawei@kernel.org>2020-10-04 12:19:12 +0200
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>2020-10-04 12:19:12 +0200
commit463c43fcd97e493d8a17242f4f000c86fe642ed6 (patch)
tree95deff935b99d5ef6c87bd67b7f7be608a120951 /kernel/entry/common.c
parentmedia: add Zoran cardlist (diff)
parentLinux 5.9-rc7 (diff)
downloadwireguard-linux-463c43fcd97e493d8a17242f4f000c86fe642ed6.tar.xz
wireguard-linux-463c43fcd97e493d8a17242f4f000c86fe642ed6.zip
Merge tag 'v5.9-rc7' into patchwork
Linux 5.9-rc7 * tag 'v5.9-rc7': (683 commits) Linux 5.9-rc7 mm/thp: Split huge pmds/puds if they're pinned when fork() mm: Do early cow for pinned pages during fork() for ptes mm/fork: Pass new vma pointer into copy_page_range() mm: Introduce mm_struct.has_pinned mm: validate pmd after splitting mm: don't rely on system state to detect hot-plug operations mm: replace memmap_context by meminit_context arch/x86/lib/usercopy_64.c: fix __copy_user_flushcache() cache writeback lib/memregion.c: include memregion.h lib/string.c: implement stpcpy mm/migrate: correct thp migration stats mm/gup: fix gup_fast with dynamic page table folding mm: memcontrol: fix missing suffix of workingset_restore mm, THP, swap: fix allocating cluster for swapfile by mistake mm: slab: fix potential double free in ___cache_free Documentation/llvm: Fix clang target examples io_uring: ensure async buffered read-retry is setup properly KVM: SVM: Add a dedicated INVD intercept routine io_uring: don't unconditionally set plug->nowait = true ...
Diffstat (limited to 'kernel/entry/common.c')
-rw-r--r--kernel/entry/common.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/kernel/entry/common.c b/kernel/entry/common.c
index 18683598edbc..6fdb6105e6d6 100644
--- a/kernel/entry/common.c
+++ b/kernel/entry/common.c
@@ -60,13 +60,15 @@ static long syscall_trace_enter(struct pt_regs *regs, long syscall,
return ret;
}
+ /* Either of the above might have changed the syscall number */
+ syscall = syscall_get_nr(current, regs);
+
if (unlikely(ti_work & _TIF_SYSCALL_TRACEPOINT))
trace_sys_enter(regs, syscall);
syscall_enter_audit(regs, syscall);
- /* The above might have changed the syscall number */
- return ret ? : syscall_get_nr(current, regs);
+ return ret ? : syscall;
}
static __always_inline long