reconfigure the
branches whenever a new target is found. However, I do not know at
this time how to do learning efficiently, without making learning much
more expensive.
[1] https://lore.kernel.org/patchwork/cover/1001332/
Nadav Amit (6):
x86: introduce kernel restartable sequence
To perform indirect branch promotion, we need to find all the locations
and patch them, while ignore various code sections (e.g., init,
alternatives). Using a GCC plugin allows us to do so. It is also
possible to add on top of this plugin and opt-in/out mechanism.
Signed-off-by: Nadav Amit
continue execution from there.
The current version does not reclaim memory if an entire page of
outline optpoline blocks is released (e.g., due to module removal).
There are various additional optimizations that are possible to reduce
the memory consumption of each optpoline.
Signed-off-by: Nadav
Adding a C interface to access the locations of indirect branches. To be
used for dynamic patching.
Signed-off-by: Nadav Amit
---
arch/x86/include/asm/sections.h | 2 ++
include/linux/module.h | 9 +
kernel/module.c | 8
3 files changed, 19 insertions
branches are set back into learning mode to
see whether the targets have changed. The current policy might be too
aggressive.
Signed-off-by: Nadav Amit
---
arch/x86/kernel/nospec-branch.c | 992
include/linux/cpuhotplug.h | 1 +
2 files changed, 993 insertions
> On Dec 19, 2018, at 1:33 PM, Igor Stoppa wrote:
>
> +static inline void *wr_memset(void *p, int c, __kernel_size_t len)
> +{
> + return __wr_op((unsigned long)p, (unsigned long)c, len, WR_MEMSET);
> +}
What do you think about doing something like:
#define __wr __attribute__((addr
> On Dec 17, 2018, at 8:03 AM, Masahiro Yamada
> wrote:
>
> This series reverts the in-kernel workarounds for inlining issues.
>
> The commit description of 77b0bf55bc67 mentioned
> "We also hope that GCC will eventually get fixed,..."
>
> Now, GCC provides a solution.
>
> https://na01.safeli
> On Dec 17, 2018, at 1:16 AM, Sedat Dilek wrote:
>
> On Thu, Dec 13, 2018 at 10:19 AM Masahiro Yamada
> wrote:
>> Revert the following commits:
>>
>> - 5bdcd510c2ac9efaf55c4cbd8d46421d8e2320cd
>> ("x86/jump-labels: Macrofy inline assembly code to work around GCC inlining
>> bugs")
>>
>> - d
> On Dec 16, 2018, at 2:00 AM, Borislav Petkov wrote:
>
> On Sun, Dec 16, 2018 at 02:33:39AM +0000, Nadav Amit wrote:
>> In general, I think that from the start it was clear that the motivation for
>> the patch-set is not just performance and also better code. For example,
> On Dec 15, 2018, at 6:50 PM, Masahiro Yamada
> wrote:
>
> Revert the following 9 commits:
>
> [1] 5bdcd510c2ac ("x86/jump-labels: Macrofy inline assembly code to
>work around GCC inlining bugs")
>
>This was partially reverted because it made good cleanups
>irrespective of the inl
> On Dec 14, 2018, at 4:51 PM, Masahiro Yamada
> wrote:
>
> Hi Peter,
>
> On Thu, Dec 13, 2018 at 7:53 PM Peter Zijlstra wrote:
>> On Thu, Dec 13, 2018 at 06:17:41PM +0900, Masahiro Yamada wrote:
>>> Revert the following commits:
>>>
>>> - 5bdcd510c2ac9efaf55c4cbd8d46421d8e2320cd
>>> ("x86/j
> On Dec 13, 2018, at 11:02 AM, Edgecombe, Rick P
> wrote:
>
> On Wed, 2018-12-12 at 23:40 +, Nadav Amit wrote:
>>> On Dec 11, 2018, at 4:03 PM, Rick Edgecombe
>>> wrote:
>>>
>>> Add new flags for handling freeing of special permissioned me
> On Dec 13, 2018, at 6:10 AM, Jessica Yu wrote:
>
> +++ Nadav Amit [04/12/18 17:34 -0800]:
>> When module memory is about to be freed, there is no apparent reason to
>> make it (and its data) executable, but that's exactly what is done
>> today. This
> On Dec 11, 2018, at 4:03 PM, Rick Edgecombe
> wrote:
>
> Add new flags for handling freeing of special permissioned memory in vmalloc,
> and remove places where the handling was done in module.c.
>
> This will enable this flag for all architectures.
>
> Signed-off-by: Rick Edgecombe
> ---
>
> On Dec 12, 2018, at 1:36 PM, Edward Cree wrote:
>
> On 12/12/18 21:15, Nadav Amit wrote:
>>> On Dec 12, 2018, at 10:33 AM, Edward Cree wrote:
>>>
>>> AIUI the outline version uses a tail-call (i.e. jmpq *target) rather than an
>>> additional cal
> On Dec 12, 2018, at 1:05 PM, Edgecombe, Rick P
> wrote:
>
> On Wed, 2018-12-12 at 06:30 +, Nadav Amit wrote:
>>> On Dec 11, 2018, at 4:03 PM, Rick Edgecombe
>>> wrote:
>>>
>>> This adds a more efficient x86 architecture specific implement
> On Dec 12, 2018, at 10:33 AM, Edward Cree wrote:
>
> On 12/12/18 18:14, Nadav Amit wrote:
>> Second, (2i) is not very intuitive for me. Using the out-of-line static
>> calls seems to me as less performant than the inline (potentially, I didn’t
>> check).
>>
> On Dec 12, 2018, at 9:11 AM, Edward Cree wrote:
>
> On 12/12/18 05:59, Nadav Amit wrote:
>> Thanks for cc’ing me. (I didn’t know about the other patch-sets.)
> Well in my case, that's because I haven't posted any yet. (Will follow up
> shortly with what I
> On Dec 11, 2018, at 4:03 PM, Rick Edgecombe
> wrote:
>
> This adds a more efficient x86 architecture specific implementation of
> arch_vunmap, that can free any type of special permission memory with only 1
> TLB
> flush.
>
> In order to enable this, _set_pages_p and _set_pages_np are made n
> On Dec 11, 2018, at 10:05 AM, Josh Poimboeuf wrote:
>
> On Fri, Dec 07, 2018 at 04:06:32PM +, Edward Cree wrote:
>> Sorry if this has been pointed out before (it's a very long thread), but
>> in the out-of-line implementation, it appears that static_call_update()
>> never alters key->func.
> On Dec 10, 2018, at 12:55 AM, Peter Zijlstra wrote:
>
> On Sun, Dec 09, 2018 at 04:57:43PM -0800, Nadav Amit wrote:
>>> On Dec 8, 2018, at 2:52 AM, Peter Zijlstra wrote:
>
>>> My patch proposed here:
>>>
>>> https://marc.info/?l=linux-mm&am
> On Dec 6, 2018, at 2:03 AM, Peter Zijlstra wrote:
>
> On Tue, Dec 04, 2018 at 05:33:54PM -0800, Nadav Amit wrote:
>> Which leads me to (b) - the patch-set is big "enough" IMHO. Indeed,
>> there are open security issues in the kernel when it comes to W^X. But
&
> On Dec 8, 2018, at 2:52 AM, Peter Zijlstra wrote:
>
> On Fri, Dec 07, 2018 at 04:40:52PM -0800, Nadav Amit wrote:
>
>>> I'm actually having difficulty finding the this_cpu_read() in any of the
>>> functions you mention, so I cannot make any concrete suggest
t me know.
>
> ------
>
> From: Nadav Amit
>
> commit 9bc4f28af75a91aea0ae383f50b0a430c4509303 upstream.
>
> When page-table entries are set, the compiler might optimize their
> assignment by using multiple instructions to set the PTE. This might
> turn into a security hazard if the us
[Resend, changing title & adding lkml and some others ]
On Dec 7, 2018, at 3:12 PM, Nadav Amit wrote:
[ We can start a new thread, since I have the tendency to hijack threads. ]
> On Dec 7, 2018, at 12:45 AM, Peter Zijlstra wrote:
>
> On Thu, Dec 06, 2018 at 09:26:24AM -080
> On Dec 6, 2018, at 12:17 PM, Andy Lutomirski wrote:
>
> On Thu, Dec 6, 2018 at 11:39 AM Nadav Amit wrote:
>>> On Dec 6, 2018, at 11:19 AM, Andy Lutomirski wrote:
>>>
>>> On Thu, Dec 6, 2018 at 11:01 AM Tycho Andersen wrote:
>>>> On Thu, D
> On Dec 6, 2018, at 12:21 PM, Edgecombe, Rick P
> wrote:
>
> On Thu, 2018-12-06 at 10:52 -0800, Andy Lutomirski wrote:
>> On Wed, Dec 5, 2018 at 12:52 AM Nadav Amit wrote:
>>> When module memory is about to be freed, there is no apparent reason to
>>> ma
> On Dec 6, 2018, at 11:19 AM, Andy Lutomirski wrote:
>
> On Thu, Dec 6, 2018 at 11:01 AM Tycho Andersen wrote:
>> On Thu, Dec 06, 2018 at 10:53:50AM -0800, Andy Lutomirski wrote:
If we are going to unmap the linear alias, why not do it at vmalloc()
time rather than vfree() time?
>>>
> On Dec 6, 2018, at 10:52 AM, Andy Lutomirski wrote:
>
> On Wed, Dec 5, 2018 at 12:52 AM Nadav Amit wrote:
>> When module memory is about to be freed, there is no apparent reason to
>> make it (and its data) executable, but that's exactly what is done
>> toda
> On Dec 6, 2018, at 9:43 AM, Jesper Dangaard Brouer wrote:
>
> On Thu, 6 Dec 2018 07:37:19 -0800
> Christoph Hellwig wrote:
>
>> Hi all,
>>
>> a while ago Jesper reported major performance regressions due to the
>> spectre v2 mitigations in his XDP forwarding workloads. A large part
>> of t
> On Dec 6, 2018, at 1:57 AM, Peter Zijlstra wrote:
>
> On Tue, Dec 04, 2018 at 05:34:07PM -0800, Nadav Amit wrote:
>
>> So let's remove it. Andy suggested that the changes of the PTEs can be
>> avoided (excluding the direct-mapping alias), which is true. Howeve
> On Dec 4, 2018, at 5:34 PM, Nadav Amit wrote:
>
> A following patch is going to make module allocated memory
> non-executable. This requires to modify ftrace and make the memory
> executable again after it is configured.
>
> In addition, this patch makes ftrace use th
error handling in poking_init [masami]
Andy Lutomirski (1):
x86/mm: temporary mm struct
Nadav Amit (13):
Fix "x86/alternatives: Lockdep-enforce text_mutex in text_poke*()"
x86/jump_label: Use text_poke_early() during early init
fork: provide a function for copying init_
text_poke() already ensures that the written value is the correct one
and fails if that is not the case. There is no need for an additional
comparison. Remove it.
Signed-off-by: Nadav Amit
---
arch/x86/kernel/kgdb.c | 14 +-
1 file changed, 1 insertion(+), 13 deletions(-)
diff
that would set a temporary mm for
patching, which is initialized after some static-keys are
enabled/disabled.
Cc: Andy Lutomirski
Cc: Kees Cook
Cc: Dave Hansen
Cc: Masami Hiramatsu
Cc: Peter Zijlstra
Signed-off-by: Nadav Amit
---
arch/x86/kernel/jump_label.c | 7 ++-
1 file changed, 6 inser
This provides
the advantages of having slightly "safer" code patching and avoiding
races with module removal or other mechanisms that patch the kernel
code.
Cc: Steven Rostedt
Signed-off-by: Nadav Amit
---
arch/x86/kernel/ftrace.c | 74 +---
1 f
: Peter Zijlstra
Cc: Dave Hansen
Reviewed-by: Masami Hiramatsu
Tested-by: Masami Hiramatsu
Signed-off-by: Andy Lutomirski
Signed-off-by: Nadav Amit
---
arch/x86/include/asm/mmu_context.h | 32 ++
1 file changed, 32 insertions(+)
diff --git a/arch/x86/include/asm
Hiramatsu
Tested-by: Masami Hiramatsu
Suggested-by: Andy Lutomirski
Signed-off-by: Nadav Amit
---
arch/x86/include/asm/pgtable.h | 3 +++
arch/x86/include/asm/text-patching.h | 2 ++
arch/x86/kernel/alternative.c| 3 +++
arch/x86/mm/init_64.c| 35
executable
pages from modifications using nested page-tables. This would allow
us to ensure the executable has not changed between allocation and
its write-protection.
While at it, do some small cleanup of what appears to be unnecessary
masking.
Cc: Masami Hiramatsu
Signed-off-by: Nadav Amit
e text_mutex in
text_poke*()")
Suggested-by: Peter Zijlstra
Acked-by: Jiri Kosina
Signed-off-by: Nadav Amit
---
arch/x86/include/asm/text-patching.h | 1 +
arch/x86/kernel/alternative.c| 52
arch/x86/kernel/kgdb.c | 11 +++---
3 files changed,
Provide a function for copying init_mm. This function will be later used
for setting a temporary mm.
Cc: Andy Lutomirski
Cc: Kees Cook
Cc: Peter Zijlstra
Cc: Dave Hansen
Reviewed-by: Masami Hiramatsu
Tested-by: Masami Hiramatsu
Signed-off-by: Nadav Amit
---
include/linux/sched/task.h | 1
conservative enough when mapping pages,
as it always tries to map 2 pages, even when a single one is sufficient.
So try to be more conservative, and do not map more than needed.
Cc: Andy Lutomirski
Cc: Kees Cook
Cc: Peter Zijlstra
Cc: Dave Hansen
Cc: Masami Hiramatsu
Signed-off-by: Nadav Amit
Signed-off-by: Nadav Amit
---
arch/x86/kernel/jump_label.c | 24
1 file changed, 8 insertions(+), 16 deletions(-)
diff --git a/arch/x86/kernel/jump_label.c b/arch/x86/kernel/jump_label.c
index ed5fe274a7d8..994c13e2867d 100644
--- a/arch/x86/kernel/jump_label.c
+++ b/arch/x86
The return value of text_poke_early() and text_poke_bp() is useless.
Remove it.
Cc: Andy Lutomirski
Cc: Kees Cook
Cc: Peter Zijlstra
Cc: Dave Hansen
Cc: Masami Hiramatsu
Signed-off-by: Nadav Amit
---
arch/x86/include/asm/text-patching.h | 4 ++--
arch/x86/kernel/alternative.c| 11
It seems dangerous to allow code modifications to take place
concurrently with module unloading. So take the text_mutex while the
memory of the module is freed.
Signed-off-by: Nadav Amit
---
kernel/module.c | 5 +
1 file changed, 5 insertions(+)
diff --git a/kernel/module.c b/kernel
the PTEs can be
avoided (excluding the direct-mapping alias), which is true. However,
in x86 it requires some cleanup of the contiguous page allocator, which
is outside of the scope of this patch-set.
Cc: Rick P Edgecombe
Cc: Will Deacon
Cc: Andy Lutomirski
Signed-off-by: Nadav Amit
---
kerne
protection.
Cc: Kees Cook
Cc: Peter Zijlstra
Cc: Dave Hansen
Cc: Masami Hiramatsu
Suggested-by: Thomas Gleixner
Suggested-by: Andy Lutomirski
Signed-off-by: Nadav Amit
---
arch/x86/kernel/alternative.c | 28 +---
arch/x86/kernel/module.c | 2 +-
include/linux
> On Nov 29, 2018, at 7:19 AM, Josh Poimboeuf wrote:
>
> On Wed, Nov 28, 2018 at 10:06:52PM -0800, Andy Lutomirski wrote:
>> On Wed, Nov 28, 2018 at 7:24 PM Andy Lutomirski wrote:
>>> On Nov 28, 2018, at 6:06 PM, Nadav Amit wrote:
>>>
>>>>> On
> On Nov 29, 2018, at 8:43 AM, Logan Gunthorpe wrote:
>
>
>
> On 2018-11-28 6:31 p.m., Nadav Amit wrote:
>>> On Nov 28, 2018, at 4:49 PM, Logan Gunthorpe wrote:
>>>
>>>
>>>
>>> On 2018-11-28 5:38 p.m., Nadav Amit wrote:
>>
mization, which would break the hypervisor ABI.
>
> Mark the structures as packed to prevent this.
Seems good to me (I made sure you remembered to set __packed for the nested
structs ;-) )
If needed:
Acked-by: Nadav Amit
Having said that, something else is sort of strange in the T
> On Nov 28, 2018, at 5:40 PM, Andy Lutomirski wrote:
>
> On Wed, Nov 28, 2018 at 4:38 PM Josh Poimboeuf wrote:
>> On Wed, Nov 28, 2018 at 07:34:52PM +0000, Nadav Amit wrote:
>>>> On Nov 28, 2018, at 8:08 AM, Josh Poimboeuf wrote:
>>>>
>>>> O
> On Nov 28, 2018, at 4:49 PM, Logan Gunthorpe wrote:
>
>
>
> On 2018-11-28 5:38 p.m., Nadav Amit wrote:
>> So what’s your take? Would you think this patch is still needed? Should it
>> only be enabled automatically for distcc and not for distcc-pump?
>
>
> On Nov 28, 2018, at 3:09 PM, Logan Gunthorpe wrote:
>
>
>
> On 2018-11-14 6:57 p.m., Nadav Amit wrote:
>> Eventually, if you get a fix into icecc, we will need to change the
>> Makefile, consider the version number and act accordingly.
>
> I got a fix pulled
> On Nov 28, 2018, at 8:08 AM, Josh Poimboeuf wrote:
>
> On Wed, Oct 17, 2018 at 05:54:15PM -0700, Nadav Amit wrote:
>> This RFC introduces indirect call promotion in runtime, which for the
>> matter of simplification (and branding) will be called here "relpolines"
> On Nov 20, 2018, at 12:35 PM, Nadav Amit wrote:
>
> When modules and BPF filters are loaded, there is a time window in
> which some memory is both writable and executable. An attacker that has
> already found another vulnerability (e.g., a dangling pointer) might be
> ab
> On Nov 28, 2018, at 5:07 AM, Thomas Gleixner wrote:
>
> On Wed, 28 Nov 2018, Vitaly Kuznetsov wrote:
>
>> Nadav Amit writes:
>>
>>> On a different note: how come all of the hyper-v structs are not marked
>>> with the “packed" attribute?
&
> On Nov 27, 2018, at 10:48 AM, Roman Kagan wrote:
>
> On Tue, Nov 27, 2018 at 02:10:49PM +0100, Vitaly Kuznetsov wrote:
>> Roman Kagan writes:
>>> On Mon, Nov 26, 2018 at 04:47:29PM +0100, Vitaly Kuznetsov wrote:
>>> I personally tend to prefer masks over bitfields, so I'd rather do the
>>> con
> On Nov 26, 2018, at 2:32 AM, Peter Zijlstra wrote:
>
> On Tue, Nov 20, 2018 at 12:35:35PM -0800, Nadav Amit wrote:
>
>> Nadav Amit (9):
>> Fix "x86/alternatives: Lockdep-enforce text_mutex in text_poke*()"
>> x86/jump_label: Use text_poke_early
> On Nov 21, 2018, at 12:56 PM, Liam R. Howlett wrote:
>
>
> My out of tree driver build is now reporting issues with the jump table:
>
> ./include/linux/jump_label.h: In function ‘jump_entry_code’:
> ./include/linux/jump_label.h:153:14: error: dereferencing pointer to
> incomplete type ‘const
e text_mutex in
text_poke*()")
Suggested-by: Peter Zijlstra
Acked-by: Jiri Kosina
Signed-off-by: Nadav Amit
---
arch/x86/include/asm/text-patching.h | 1 +
arch/x86/kernel/alternative.c| 52
arch/x86/kernel/kgdb.c | 11 +++---
3 files changed,
The return value of text_poke_early() and text_poke_bp() is useless.
Remove it.
Cc: Andy Lutomirski
Cc: Kees Cook
Cc: Peter Zijlstra
Cc: Dave Hansen
Cc: Masami Hiramatsu
Signed-off-by: Nadav Amit
---
arch/x86/include/asm/text-patching.h | 4 ++--
arch/x86/kernel/alternative.c| 11
: Peter Zijlstra
Cc: Dave Hansen
Reviewed-by: Masami Hiramatsu
Tested-by: Masami Hiramatsu
Signed-off-by: Andy Lutomirski
Signed-off-by: Nadav Amit
---
arch/x86/include/asm/mmu_context.h | 32 ++
1 file changed, 32 insertions(+)
diff --git a/arch/x86/include/asm
fix [peterz]
- Removed remainders of text_poke return value [masami]
- Use __weak for poking_init instead of macros [masami]
- Simplify error handling in poking_init [masami]
andy Lutomirski (1):
x86/mm: temporary mm struct
Nadav Amit (9):
Fix "x86/alternatives: Lockdep-enforce text_mu
Provide a function for copying init_mm. This function will be later used
for setting a temporary mm.
Cc: Andy Lutomirski
Cc: Kees Cook
Cc: Peter Zijlstra
Cc: Dave Hansen
Reviewed-by: Masami Hiramatsu
Tested-by: Masami Hiramatsu
Signed-off-by: Nadav Amit
---
include/linux/sched/task.h | 1
that would set a temporary mm for
patching, which is initialized after some static-keys are
enabled/disabled.
Cc: Andy Lutomirski
Cc: Kees Cook
Cc: Dave Hansen
Cc: Masami Hiramatsu
Co-Developed-by: Peter Zijlstra
Signed-off-by: Nadav Amit
---
arch/x86/kernel/jump_label.c | 7 ++-
1 file ch
text_poke() already ensures that the written value is the correct one
and fails if that is not the case. There is no need for an additional
comparison. Remove it.
Signed-off-by: Nadav Amit
---
arch/x86/kernel/kgdb.c | 14 +-
1 file changed, 1 insertion(+), 13 deletions(-)
diff
conservative enough when mapping pages,
as it always tries to map 2 pages, even when a single one is sufficient.
So try to be more conservative, and do not map more than needed.
Cc: Andy Lutomirski
Cc: Kees Cook
Cc: Peter Zijlstra
Cc: Dave Hansen
Cc: Masami Hiramatsu
Signed-off-by: Nadav Amit
Zijlstra
Cc: Dave Hansen
Cc: Masami Hiramatsu
Suggested-by: Thomas Gleixner
Suggested-by: Andy Lutomirski
Signed-off-by: Nadav Amit
---
arch/x86/kernel/alternative.c | 28 +---
arch/x86/kernel/module.c | 2 +-
include/linux/filter.h| 6 ++
kernel
Signed-off-by: Nadav Amit
---
arch/x86/kernel/jump_label.c | 24
1 file changed, 8 insertions(+), 16 deletions(-)
diff --git a/arch/x86/kernel/jump_label.c b/arch/x86/kernel/jump_label.c
index ed5fe274a7d8..994c13e2867d 100644
--- a/arch/x86/kernel/jump_label.c
+++ b/arch/x86
Hiramatsu
Tested-by: Masami Hiramatsu
Suggested-by: Andy Lutomirski
Signed-off-by: Nadav Amit
---
arch/x86/include/asm/pgtable.h | 3 +++
arch/x86/include/asm/text-patching.h | 2 ++
arch/x86/kernel/alternative.c| 3 +++
arch/x86/mm/init_64.c| 35
> On Nov 20, 2018, at 4:42 AM, Peter Zijlstra wrote:
>
> On Tue, Nov 13, 2018 at 05:07:20AM -0800, Nadav Amit wrote:
>> v4->v5:
>> - Fix Xen breakage [Damian Tometzki]
>> - BUG_ON() when poking_mm initialization fails [PeterZ]
>> - Better comments on "
> On Nov 20, 2018, at 10:23 AM, H. Peter Anvin wrote:
>
> On 11/20/18 10:18 AM, Peter Zijlstra wrote:
>>> Can't we make this test in text_poke() directly, please?
>>
>> He does that in 9/10 iirc.
>
> No, in 9/10 he does that change locally for the jump_label, but there is
> absolutely no reason
at 8:20 PM, Masahiro Yamada wrote:
> On Sat, Nov 17, 2018 at 6:02 AM Nadav Amit wrote:
>> From: Masahiro Yamada
>> Sent: November 16, 2018 at 7:45:45 AM GMT
>>> To: Nadav Amit
>>> Cc: Ingo Molnar , Michal Marek ,
>>> Thomas Gleixner , Borislav Pet
From: Masahiro Yamada
Sent: November 16, 2018 at 7:45:45 AM GMT
> To: Nadav Amit
> Cc: Ingo Molnar , Michal Marek ,
> Thomas Gleixner , Borislav Petkov , H.
> Peter Anvin , X86 ML , Linux Kbuild mailing
> list , Linux Kernel Mailing List
>
> Subject: Re: [PATCH v2 1/2]
From: Masahiro Yamada
Sent: November 16, 2018 at 7:37:46 AM GMT
> To: Nadav Amit
> Cc: Ingo Molnar , Michal Marek ,
> Thomas Gleixner , Borislav Petkov , H.
> Peter Anvin , X86 ML , Linux Kbuild mailing
> list , Linux Kernel Mailing List
>
> Subject: Re: [PATCH v2 2/2]
file. Since this is less efficient, this
compilation mode is only used when distcc or icecc are used.
Note that the assembly stage should also be distributed, if distcc is
configured using "CFLAGS=-DENABLE_REMOTE_ASSEMBLE".
Reported-by: Logan Gunthorpe
Signed-off-by: Nadav Amit
---
Changes in macros.S should trigger the recompilation of all C files, as
the macros might need to affect their compilation.
Acked-by: Ingo Molnar
Signed-off-by: Nadav Amit
---
scripts/Makefile.build | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/scripts/Makefile.build b
patches through tip. Please advise
if you disagree.
v1->v2:
* Remove whitespaces [Ingo]
* Automatically enable split compilation when distcc or icecc are used
Nadav Amit (2):
Makefile: Fix distcc compilation with x86 macros
x86: set a dependency on macros.S
Makefile | 4 +++-
a
From: Xavier Deguillard
Julien will be replacing me as the vmw_balloon maintainer.
Cc: Julien Freche
Signed-off-by: Xavier Deguillard
Signed-off-by: Nadav Amit
---
MAINTAINERS | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/MAINTAINERS b/MAINTAINERS
index a78d45755881
From: Logan Gunthorpe
Sent: November 15, 2018 at 1:19:45 AM GMT
> To: Nadav Amit , Ingo Molnar
> Cc: Ingo Molnar , Masahiro Yamada
> , Michal Marek ,
> Thomas Gleixner , Borislav Petkov , H.
> Peter Anvin , X86 ML , Linux Kbuild mailing
> list , LKML
> Subject: Re: [PAT
From: Logan Gunthorpe
Sent: November 14, 2018 at 7:29:38 AM GMT
> To: Nadav Amit , Ingo Molnar
> Cc: Ingo Molnar , Masahiro Yamada
> , Michal Marek ,
> Thomas Gleixner , Borislav Petkov , H.
> Peter Anvin , X86 ML , Linux Kbuild mailing
> list , LKML
> Subject: Re: [PAT
text_poke() already ensures that the written value is the correct one
and fails if that is not the case. There is no need for an additional
comparison. Remove it.
Signed-off-by: Nadav Amit
---
arch/x86/kernel/kgdb.c | 10 --
1 file changed, 10 deletions(-)
diff --git a/arch/x86/kernel
ify text_mutex use instead [masami]
- Comment fix [peterz]
- Removed remainders of text_poke return value [masami]
- Use __weak for poking_init instead of macros [masami]
- Simplify error handling in poking_init [masami]
Andy Lutomirski (1):
x86/mm: temporary mm struct
Nadav Amit (9):
Fix
Hiramatsu
Tested-by: Masami Hiramatsu
Suggested-by: Andy Lutomirski
Signed-off-by: Nadav Amit
---
arch/x86/include/asm/pgtable.h | 3 +++
arch/x86/include/asm/text-patching.h | 2 ++
arch/x86/kernel/alternative.c| 3 +++
arch/x86/mm/init_64.c| 35
e text_mutex in
text_poke*()")
Suggested-by: Peter Zijlstra
Acked-by: Jiri Kosina
Signed-off-by: Nadav Amit
---
arch/x86/include/asm/text-patching.h | 3 +-
arch/x86/kernel/alternative.c| 72 +---
arch/x86/kernel/kgdb.c | 15 --
3 files changed,
conservative enough when mapping pages,
as it always tries to map 2 pages, even when a single one is sufficient.
So try to be more conservative, and do not map more than needed.
Cc: Andy Lutomirski
Cc: Kees Cook
Cc: Peter Zijlstra
Cc: Dave Hansen
Cc: Masami Hiramatsu
Signed-off-by: Nadav Amit
Provide a function for copying init_mm. This function will be later used
for setting a temporary mm.
Cc: Andy Lutomirski
Cc: Kees Cook
Cc: Peter Zijlstra
Cc: Dave Hansen
Reviewed-by: Masami Hiramatsu
Tested-by: Masami Hiramatsu
Signed-off-by: Nadav Amit
---
include/linux/sched/task.h | 1
: Peter Zijlstra
Cc: Dave Hansen
Reviewed-by: Masami Hiramatsu
Tested-by: Masami Hiramatsu
Signed-off-by: Andy Lutomirski
Signed-off-by: Nadav Amit
---
arch/x86/include/asm/mmu_context.h | 32 ++
1 file changed, 32 insertions(+)
diff --git a/arch/x86/include/asm
Zijlstra
Cc: Dave Hansen
Cc: Masami Hiramatsu
Suggested-by: Thomas Gleixner
Suggested-by: Andy Lutomirski
Signed-off-by: Nadav Amit
---
arch/x86/kernel/alternative.c | 28 +---
arch/x86/kernel/module.c | 2 +-
include/linux/filter.h| 6 ++
kernel
Signed-off-by: Nadav Amit
---
arch/x86/kernel/jump_label.c | 24
1 file changed, 8 insertions(+), 16 deletions(-)
diff --git a/arch/x86/kernel/jump_label.c b/arch/x86/kernel/jump_label.c
index ed5fe274a7d8..994c13e2867d 100644
--- a/arch/x86/kernel/jump_label.c
+++ b/arch/x86
that would set a temporary mm for
patching, which is initialized after some static-keys are
enabled/disabled.
Cc: Andy Lutomirski
Cc: Kees Cook
Cc: Dave Hansen
Cc: Masami Hiramatsu
Co-Developed-by: Peter Zijlstra
Signed-off-by: Nadav Amit
---
arch/x86/kernel/jump_label.c | 7 ++-
1 file ch
The return value of text_poke_early() and text_poke_bp() is useless.
Remove it.
Cc: Andy Lutomirski
Cc: Kees Cook
Cc: Peter Zijlstra
Cc: Dave Hansen
Cc: Masami Hiramatsu
Signed-off-by: Nadav Amit
---
arch/x86/include/asm/text-patching.h | 4 ++--
arch/x86/kernel/alternative.c| 11
From: Nadav Amit
Sent: November 13, 2018 at 5:55:34 PM GMT
> To: Ingo Molnar
> Cc: Ingo Molnar , Masahiro Yamada
> , Michal Marek ,
> Thomas Gleixner , Borislav Petkov , H.
> Peter Anvin , X86 ML , Linux Kbuild mailing
> list , LKML ,
> Logan Gunthorpe
> Subject:
From: Andy Lutomirski
Sent: November 13, 2018 at 5:47:16 PM GMT
> To: Nadav Amit
> Cc: Igor Stoppa , Kees Cook ,
> Peter Zijlstra , Mimi Zohar ,
> Matthew Wilcox , Dave Chinner ,
> James Morris , Michal Hocko , Kernel
> Hardening , linux-integrity
> , LSM List
>
From: Ingo Molnar
Sent: November 13, 2018 at 11:30:00 AM GMT
> To: Nadav Amit
> Cc: Ingo Molnar , Masahiro Yamada
> , Michal Marek ,
> Thomas Gleixner , Borislav Petkov , H.
> Peter Anvin , x...@kernel.org, linux-kbu...@vger.kernel.org,
> linux-kernel@vger.kernel.org
> Su
file. Since this is less efficient, this
compilation mode is only used when make is called with the "DISTCC=y"
parameter.
Note that the assembly stage should also be distributed, if distcc is
configured using "CFLAGS=-DENABLE_REMOTE_ASSEMBLE".
Reported-by: Logan Gunthorpe
Changes in macros.S should trigger the recompilation of all C files, as
the macros might need to affect their compilation.
Signed-off-by: Nadav Amit
---
scripts/Makefile.build | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/scripts/Makefile.build b/scripts/Makefile.build
There has been a complaint that the recent use of assembly macros in C
files broke distcc. The first patch fixes this issue.
The second patch adds a dependency for all C files on macros.S, to
trigger their recompilation when the relevant macros change.
Nadav Amit (2):
Makefile: Fix distcc
Peter,
I have put you as a “Co-Developed-by”, since the patch ended up as being the
single line that you wrote in the correspondence of the previous version.
I would therefore need to ask for your signed-off-by.
Regards,
Nadav
From: Nadav Amit
Sent: November 10, 2018 at 11:17:24 PM GMT
>
From: Peter Zijlstra
Sent: November 11, 2018 at 11:52:20 PM GMT
> To: Nadav Amit
> Cc: Ingo Molnar , LKML , X86
> ML , H. Peter Anvin , Thomas Gleixner
> , Borislav Petkov , Dave Hansen
> , Andy Lutomirski , Kees Cook
> , Dave Hansen , Masami
> Hiramatsu
> Subject:
601 - 700 of 1189 matches
Mail list logo