Displaying 20 results from an estimated 3000 matches similar to: "[RFC PATCH 09/26] x86/paravirt: Add runtime_patch()"
2020 Apr 08
0
[RFC PATCH 00/26] Runtime paravirt patching
On 08.04.20 07:02, Ankur Arora wrote:
> A KVM host (or another hypervisor) might advertise paravirtualized
> features and optimization hints (ex KVM_HINTS_REALTIME) which might
> become stale over the lifetime of the guest. For instance, the
Then this hint is wrong if it can't be guaranteed.
> host might go from being undersubscribed to being oversubscribed
> (or the other way
2020 Apr 08
2
[RFC PATCH 00/26] Runtime paravirt patching
On Tue, Apr 07, 2020 at 10:02:57PM -0700, Ankur Arora wrote:
> A KVM host (or another hypervisor) might advertise paravirtualized
> features and optimization hints (ex KVM_HINTS_REALTIME) which might
> become stale over the lifetime of the guest. For instance, the
> host might go from being undersubscribed to being oversubscribed
> (or the other way round) and it would make sense
2020 Apr 08
2
[RFC PATCH 00/26] Runtime paravirt patching
On Tue, Apr 07, 2020 at 10:02:57PM -0700, Ankur Arora wrote:
> A KVM host (or another hypervisor) might advertise paravirtualized
> features and optimization hints (ex KVM_HINTS_REALTIME) which might
> become stale over the lifetime of the guest. For instance, the
> host might go from being undersubscribed to being oversubscribed
> (or the other way round) and it would make sense
2020 Apr 08
0
[RFC PATCH 00/26] Runtime paravirt patching
Ankur Arora <ankur.a.arora at oracle.com> writes:
> A KVM host (or another hypervisor) might advertise paravirtualized
> features and optimization hints (ex KVM_HINTS_REALTIME) which might
> become stale over the lifetime of the guest. For instance, the
> host might go from being undersubscribed to being oversubscribed
> (or the other way round) and it would make sense for the
2020 Apr 08
0
[RFC PATCH 14/26] x86/alternatives: Handle native insns in text_poke_loc*()
On Tue, Apr 07, 2020 at 10:03:11PM -0700, Ankur Arora wrote:
> struct text_poke_loc {
> s32 rel_addr; /* addr := _stext + rel_addr */
> - s32 rel32;
> - u8 opcode;
> + union {
> + struct {
> + s32 rel32;
> + u8 opcode;
> + } emulated;
> + struct {
> + u8 len;
> + } native;
> + };
> const u8 text[POKE_MAX_OPCODE_SIZE];
> };
NAK, this
2020 Apr 08
0
[RFC PATCH 15/26] x86/alternatives: Non-emulated text poking
On Tue, Apr 07, 2020 at 10:03:12PM -0700, Ankur Arora wrote:
> +static int __maybe_unused text_poke_late(patch_worker_t worker, void *stage)
> +{
> + int ret;
> +
> + lockdep_assert_held(&text_mutex);
> +
> + if (system_state != SYSTEM_RUNNING)
> + return -EINVAL;
> +
> + text_poke_state.stage = stage;
> + text_poke_state.num_acks =
2020 Apr 08
0
[RFC PATCH 00/26] Runtime paravirt patching
On 08.04.20 14:08, Peter Zijlstra wrote:
> On Tue, Apr 07, 2020 at 10:02:57PM -0700, Ankur Arora wrote:
>> Mechanism: the patching itself is done using stop_machine(). That is
>> not ideal -- text_poke_stop_machine() was replaced with INT3+emulation
>> via text_poke_bp(), but I'm using this to address two issues:
>> 1) emulation in text_poke() can only easily
2020 Apr 08
0
[RFC PATCH 15/26] x86/alternatives: Non-emulated text poking
On Tue, Apr 07, 2020 at 10:03:12PM -0700, Ankur Arora wrote:
> +static void __maybe_unused sync_one(void)
> +{
> + /*
> + * We might be executing in NMI context, and so cannot use
> + * IRET as a synchronizing instruction.
> + *
> + * We could use native_write_cr2() but that is not guaranteed
> + * to work on Xen-PV -- it is emulated by Xen and might not
> + *
2020 Apr 08
0
[RFC PATCH 14/26] x86/alternatives: Handle native insns in text_poke_loc*()
On Tue, Apr 07, 2020 at 10:03:11PM -0700, Ankur Arora wrote:
> @@ -1071,10 +1079,13 @@ int notrace poke_int3_handler(struct pt_regs *regs)
> goto out_put;
> }
>
> - len = text_opcode_size(tp->opcode);
> + if (desc->native)
> + BUG();
> +
Subject: x86/alternatives: Handle native insns in text_poke_loc*()
That's not really handling, is it..
2020 Apr 08
0
[RFC PATCH 19/26] x86/alternatives: NMI safe runtime patching
On Tue, Apr 07, 2020 at 10:03:16PM -0700, Ankur Arora wrote:
> @@ -1807,12 +1911,20 @@ static int __maybe_unused text_poke_late(patch_worker_t worker, void *stage)
> text_poke_state.state = PATCH_SYNC_DONE; /* Start state */
> text_poke_state.primary_cpu = smp_processor_id();
>
> + text_poke_state.nmi_context = nmi;
> +
> + if (nmi)
> +
2020 Feb 05
0
[PATCH] x86/mm/kmmio: Use this_cpu_ptr() instead get_cpu_var() for kmmio_ctx
Both call sites, that access kmmio_ctx, access kmmio_ctx with interrupts
disabled. There is no need to use get_cpu_var() which additionally
disables preemption.
Use this_cpu_ptr() to access the kmmio_ctx variable of the current CPU.
Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
---
arch/x86/mm/kmmio.c | 10 +++-------
1 file changed, 3 insertions(+), 7 deletions(-)
2013 Feb 22
1
[LLVMdev] llvm-ar llvm-link
Hi Ahmad,
Yes, merging works good.
However, my problem is like this - I have a C library which consists of
1000's of functions spread through various files. The functions do not have
dependency amoung each other. I want to link only relavant files( files
which have functions called from my application). Since ar has a global
symbol table, I believe it should be faster to look for a symol in
2013 Jan 23
0
[LLVMdev] OpenCL SPIR/NVPTX code generation
Hi Ankur,
Since you use -Xclang, the clang executable passes multiple triples to "clang -cc1". You can see that if you add the -v option. I'm sure there is someone here who can explain it better than I...
Anyhow, I think you better use clang -cc1. Make sure -cc1 is the first command line option you use.
$ clang -cc1 -fno-builtin -emit-llvm-bc -triple spir-unknown-unknown
2013 Feb 21
0
[LLVMdev] llvm-ar llvm-link
Hi Ankur,
Why do you need archive in this case? The other way of doing this is to merge all bitcode files into single file:
$ clang -c -emit-llvm abc.c -o abc.bc
$ clang -c -emit-llvm bcd.c -o bcd.bc
llvm-link bcd.bc abc.bc -o merged.bc
Cheers,
Ahmad
From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of ankur deshwal
Sent: 21 February 2013 17:54
To:
2011 Jul 01
0
[LLVMdev] LLVM Instr from MachineInstr
Hi Ankur,
For a MachineBasicBlock you can call getBasicBlock() to find the IR level BasicBlock from which it was generated (if there isn't a one, it will return NULL). I don't know of a way to get a finer granularity than that, though.
-Jim
On Jul 1, 2011, at 1:06 AM, ankur deshwal wrote:
> Hi,
>
> Is there any way to get a pointer to the LLVM Instr from which a
>
2012 May 24
0
[LLVMdev] LTO for smaller memory footprint for Clang
I guess I miss-interpreted the text in [2]. It talks about the
optimizations are hindered if the compiler driver invokes link time
optimizer "separately".
I found that all files compiled are in bc format. Also in library
archives, the embedded files were in bitcode format. So the gold
linker and LLVMgold plugin are indeed working fine.
However, there is still question over only 6% gain
2005 Feb 07
0
[LLVMdev] Segmentation Fault(Modifying BasicBlockPlacement.cpp)
Thanks a lot for replying Chris,
I m trying to randomize the blocks in a program.I generate a random number( between the
current "InsertPos" and the last block), and then iterate through the list of basicblocks , picking up block with position equal to that of the random number and place it into the current InsertPos and increment InsertPos.
Running it like this:
2013 Jan 23
3
[LLVMdev] OpenCL SPIR/NVPTX code generation
Hi Guy,
Thanks a lot for the clarification.
I tried using the triple for SPIR as
$ clang -x cl -fno-builtin -emit-llvm -c -Xclang -triple -Xclang
spir-unknown-unknown Simple_Kernel.cl
However I get the following error.
error: unknown target triple 'spir-unknown-unknown', please use -triple or
-arch
I also tried with triple nvptx-unknown-unknown
clang -x cl -fno-builtin -emit-llvm -S
2013 Jan 24
1
[LLVMdev] [cfe-dev] OpenCL SPIR/NVPTX code generation
Hello everyone,
Thanks a lot for the help.
-target nvptx worked great with llvm-3.2. However it gives error with
-target spir.
LLVM/Clang trunk although works good for both options ( probably because
spir is still work in progress ).
Thanks again.
- Ankur
On Thu, Jan 24, 2013 at 12:43 PM, Benyei, Guy <guy.benyei at intel.com> wrote:
> Hi Jordan,****
>
> You’re right, and
2014 Oct 09
0
help!!
Yes. You need a server and a programming to the list that users might be
able to pick songs. Like this...
<link rel="stylesheet" type="text/css" href="
http://server6.reliastream.com/theme/widget_ondemand.css" />
<div id="cc_on_demand_content">Loading...</div>
Mit freundlichen Gr??en
Scott Winterstein
EMAIL: 0turn1 at gmail dot com
On