Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1404859
| Path | csiph.com!news.mixmin.net!aioe.org!bofh.it!news.nic.it!robomod |
|---|---|
| From | Brian Gerst <brgerst@gmail.com> |
| Newsgroups | linux.kernel |
| Subject | [PATCH 0/4] x86: Rewrite switch_to() |
| Date | Sat, 21 May 2016 18:10:02 +0200 |
| Message-ID | <rBhDs-5HD-5@gated-at.bofh.it> (permalink) |
| X-Original-To | x86@kernel.org, linux-kernel@vger.kernel.org |
| Dkim-Signature | v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id; bh=6RakaSnpsM2s4X3Sosovz/4OMS/yo+CR2cmxhAjkesk=; b=U8TmOl6Ds57K2JacLDCYaubn5XpmIGY3iblzh6LRd8aJWqOFek8Br6OLralw93eM/a Hu3RGGopG9ODhmp/s3ZVXdZlJncAqldskOEDj+a6DQVoOms10rqPZ/sQYk9n/yegv3x8 /vwiB4ZAdHsauFwMFEwop6T1fs7uUinmQaZ06gsSGscefP7BKdth7RH5W5e9HvePA6t5 U9IDCOVkCugV0jDx6of2azg6KBVQlqNCc5Z/EkVfOAN5dZ6Q6oZIwHug9js7JoSzxDBS 5TxlC6JysAaw2yuqtc4zOZzE1YpnjLig1IGM6BIpfk7d0QRdkN+K1V+v/uKjortZrYoa kRSg== |
| X-Google-Dkim-Signature | v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=6RakaSnpsM2s4X3Sosovz/4OMS/yo+CR2cmxhAjkesk=; b=S5mjtz12DiRBeSujaBZwrL4csv5g4CbRAf473tPcMWDN2E9aglEPmaLRuF+r6LjjSS xtfBIeX+AlfdY9TLXCMrgYtq9V2VZrkO8fP6w9kltsMyHkBNkGRvYk5VhGxmWD1A/EON ui+E+Ur9vBGBsw+cSrgvSaY6PoSsLvl2L5SlC7ybRReRW9BAUhkoBae8UMpS4+VxYPmD dgojyrXY7Xb2HhdLaiP5MGBv0PGSFdgtSGE+qvje0r0DMz6dsbV1NIwuKkrGRUlB7kma 34TpTw5v4aoyJE0U/9r/P4Z1WlyEJaQMgUaX6Rpa4cCU0xMkmgm/DFcRZkslojQzP32L 70nw== |
| X-Gm-Message-State | AOPr4FVHmT7EbFxsJw750K/8QI3cL+wtfDizsypWUJFmAj4batvynE7LDIWgSzLoRFdXiQ== |
| X-Received | by 10.129.99.86 with SMTP id x83mr4967495ywb.220.1463846697413; Sat, 21 May 2016 09:04:57 -0700 (PDT) |
| X-Mailer | git-send-email 2.5.5 |
| Sender | robomod@news.nic.it |
| List-ID | <linux-kernel.vger.kernel.org> |
| X-Mailing-List | linux-kernel@vger.kernel.org |
| Approved | robomod@news.nic.it |
| Lines | 26 |
| Organization | linux.* mail to news gateway |
| X-Original-Cc | Ingo Molnar <mingo@kernel.org>, "H. Peter Anvin" <hpa@zytor.com>, Denys Vlasenko <dvlasenk@redhat.com>, Andy Lutomirski <luto@amacapital.net>, Borislav Petkov <bp@suse.de>, Thomas Gleixner <tglx@linutronix.de> |
| X-Original-Date | Sat, 21 May 2016 12:04:47 -0400 |
| X-Original-Message-ID | <1463846691-18498-1-git-send-email-brgerst@gmail.com> |
| X-Original-Sender | linux-kernel-owner@vger.kernel.org |
| Xref | csiph.com linux.kernel:1404859 |
Show key headers only | View raw
This patch set simplifies the switch_to() code, by moving the stack switch code out of line into an asm stub before calling __switch_to(). This ends up being more readable, and using the C calling convention instead of clobbering all registers improves code generation. It also allows newly forked processes to construct a special stack frame to seamlessly flow to ret_from_fork, instead of using a test and branch, or an unbalanced call/ret. [PATCH 1/4] x86: Save return value from kernel_thread [PATCH 2/4] x86-32, kgdb: Don't use thread.ip in [PATCH 3/4] x86: Rewrite switch_to() code [PATCH 4/4] x86: Pass kernel thread parameters in fork_frame arch/x86/entry/entry_32.S | 68 +++++++++++++----- arch/x86/entry/entry_64.S | 72 +++++++++++++------ arch/x86/include/asm/processor.h | 3 - arch/x86/include/asm/switch_to.h | 137 ++++++------------------------------- arch/x86/include/asm/thread_info.h | 2 - arch/x86/kernel/asm-offsets.c | 6 ++ arch/x86/kernel/asm-offsets_32.c | 5 ++ arch/x86/kernel/asm-offsets_64.c | 5 ++ arch/x86/kernel/kgdb.c | 3 +- arch/x86/kernel/process_32.c | 19 ++--- arch/x86/kernel/process_64.c | 17 +++-- arch/x86/kernel/smpboot.c | 1 - 12 files changed, 153 insertions(+), 185 deletions(-)
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
[PATCH 0/4] x86: Rewrite switch_to() Brian Gerst <brgerst@gmail.com> - 2016-05-21 18:10 +0200
[PATCH 4/4] x86: Pass kernel thread parameters in fork_frame Brian Gerst <brgerst@gmail.com> - 2016-05-21 18:10 +0200
Re: [PATCH 4/4] x86: Pass kernel thread parameters in fork_frame Andy Lutomirski <luto@amacapital.net> - 2016-05-22 20:10 +0200
Re: [PATCH 4/4] x86: Pass kernel thread parameters in fork_frame Brian Gerst <brgerst@gmail.com> - 2016-05-22 21:30 +0200
Re: [PATCH 4/4] x86: Pass kernel thread parameters in fork_frame Josh Poimboeuf <jpoimboe@redhat.com> - 2016-05-23 17:30 +0200
Re: [PATCH 4/4] x86: Pass kernel thread parameters in fork_frame Andy Lutomirski <luto@amacapital.net> - 2016-05-23 17:40 +0200
Re: [PATCH 4/4] x86: Pass kernel thread parameters in fork_frame Brian Gerst <brgerst@gmail.com> - 2016-05-23 23:10 +0200
[PATCH 1/4] x86: Save return value from kernel_thread Brian Gerst <brgerst@gmail.com> - 2016-05-21 18:10 +0200
Re: [PATCH 1/4] x86: Save return value from kernel_thread Andy Lutomirski <luto@amacapital.net> - 2016-05-22 03:50 +0200
Re: [PATCH 1/4] x86: Save return value from kernel_thread Brian Gerst <brgerst@gmail.com> - 2016-05-22 04:20 +0200
csiph-web