; 32-bit or 64-bit guest kernel?
> >
> > 32-bit.
> >
> > Yep, this fixed the problem.
>
> great! I've added:
>
>Tested-by: Jeff Chua <[EMAIL PROTECTED]>
>
> to the commit message as well, if you dont mind. Full patch is below.
Acke
On Tue, 2008-02-05 at 13:44 +0700, Igor M Podlesny wrote:
> On 2008-02-05 13:34, Arjan van de Ven wrote:
> [...]
> >>1) To have compiled it I had to replace global_flush_tlb()
> >> call with __flush_tlb_all() and still guessing was it(?) a correct
> >> replacment at all :-)
> >
> > it is not;
are kernel.
Although I did as much as possible to make the vsyscall relocation
appear clean to userspace, I can't guarantee this patch won't set fire
to your chair and electrocute your cat. Please move all pets to a safe
location before attempting to use this.
Zachary Amsden <[EMAIL PRO
Chris Wright wrote:
* Zachary Amsden ([EMAIL PROTECTED]) wrote:
This most curious patch allows the fixmap on i386 to be unfixed. The
result is that we can create a dynamically sizable hole at the top of
kernel linear address space. I know at least some virtualization
developers are
Chris Wright wrote:
* [EMAIL PROTECTED] ([EMAIL PROTECTED]) wrote:
+ memset(pgd, 0, USER_PTRS_PER_PGD*sizeof(pgd_t));
if (PTRS_PER_PMD == 1)
spin_lock_irqsave(&pgd_lock, flags);
- memcpy((pgd_t *)pgd + USER_PTRS_PER_PGD,
+ clone_pgd_range((pgd_t *)p
Zachary Amsden wrote:
Chris Wright wrote:
Why memset was never done on PAE?
That's a good point. The memset() is redundant on PAE, since it
allocates all 4 PMDs immediately after that (in pgd_alloc). There are
two reasons for moving the memset() - one is that it can potent
: Zachary Amsden <[EMAIL PROTECTED]>
Index: linux-2.6.13/include/asm-i386/msr.h
===
--- linux-2.6.13.orig/include/asm-i386/msr.h2005-08-02 17:08:58.0
-0700
+++ linux-2.6.13/include/asm-i386/msr.h 2005-08-02
i386 Transparent Paravirtualization Subarch Patch #2
This change encapsulates CPUID and debug register accessors and moves
them into the sub-architecture layer.
Diffs against: linux-2.6.13-rc4-mm1
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
Index: linux-2.6.13/include/as
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
Index: linux-2.6.13/include/asm-i386/system.h
===
--- linux-2.6.13.orig/include/asm-i386/system.h 2005-08-03 16:24:16.0
-0700
+++ linux-2.6.13/include/asm-i386/system.h
i386 Transparent Paravirtualization Patch #4
This change encapsulates TLB flush accessors into the sub-architecture layer.
Diffs against: linux-2.6.13-rc4-mm1
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
Index: linux-2.6.13/include/asm-i386/tlbf
i386 Transparent paravirtualization subarch patch #5
This change encapsulates descriptor and task register management.
Diffs against: 2.6.13-rc4-mm1
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
Index: linux-2.6.13/include/asm-i386/
value, and the tests user_mode() and user_mode_vm()
may be similarly overridden.
Changes to the assembly code are required to fully support this, and
provided in a separate patch.
Diffs against: 2.6.13-rc4-mm1
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
Index: linux-2.6.13/arch/i386/
i386 Transparent paravirtualization subarch patch #6
Move I/O instructions into the sub-arch layer where they can be overridden.
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
Index: linux-2.6.13/include/asm-i38
files, but this avoids the ugliness of having to use
#ifdef's all of the code.
This is pure code motion. Anything else would be a bug.
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
Index: linux-2.6.13/include/asm-i386/pgtab
Thanks to Chris Wright for noticing that this could be more optimal in
PAE compiles by eliminating the memset.
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
Index: linux-2.6.13/arch/i386/mm/pgtable.c
===
--- linux-2.6.13.orig/a
Christoph Hellwig wrote:
On Sat, Aug 06, 2005 at 01:58:36PM +0200, Andi Kleen wrote:
I think that patch is really ugly - it makes hacking VM on i386
even more painful than it already is because the convolutes the file
structure even more. Hope it is not applied.
Especially as there
Chris Wright wrote:
* Zachary Amsden ([EMAIL PROTECTED]) wrote:
i386 Transparent Paravirtualization Subarch Patch #2
This change encapsulates CPUID and debug register accessors and moves
them into the sub-architecture layer.
This one looks to be a superset of Xen version
Andrew Morton wrote:
Zachary Amsden <[EMAIL PROTECTED]> wrote:
Yeah, I said ugly ones specificly. There's been some nice previous ones,
>but most in this series (all the move of stuff to subarches) are rather
>horrible and lack lots of explanation.
>
&g
Chris Wright wrote:
* Zachary Amsden ([EMAIL PROTECTED]) wrote:
This change encapsulates descriptor and task register management.
These will need some merging together, will take a stab tomorrow.
--- linux-2.6.12-xen0-arch.orig/include/asm-i386/desc.h
+++ linux-2.6.12-xen0-arch
hg() operation saves the
implicit lock, which turns out to be a big win on 32-bit (esp w PAE).
Diffs-against: 2.6.13-rc5-mm1
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
Index: linux-2.6.13-rc5-mm1/include/asm-x86_64/pgtable.h
==
Pavel Machek wrote:
Hi!
This helps complete the encapsulation of updates to page tables (or pages
about to become page tables) into accessor functions rather than using
memcpy() to duplicate them. This is both generally good for consistency
and also necessary for running in a hypervisor wh
Chris Wright wrote:
* Andrew Morton ([EMAIL PROTECTED]) wrote:
"Martin J. Bligh" <[EMAIL PROTECTED]> wrote:
xen_make_pages_readonly / xen_make_pages_writable ?
Well we don't want to assume "xen" at this stage. We're faced with a
choice at present: to make the linux->hypervisor
Chris Wright wrote:
* Zachary Amsden ([EMAIL PROTECTED]) wrote:
Does Xen assume page aligned descriptor tables? I assume from this
Yes.
patch and snippets I have gathered from others, that is a yes, and other
things here imply that DT pages are not shadowed. If so, Xen itself
Fawad Lateef wrote:
Hello,
I m facing a problem in RHEL3 (2.4.21-5.ELsmp) kernel while using
kmap_atomic on the pages reserved at the boot time
At the boot time I reserved pages above 2GB for later use by my module
. And when I was using those reserved pages through kmap_atomic
system
Fawad Lateef wrote:
if ((unsigned long)(page - mem_map) > 0x8) {
SetPageReserved(page);
set_bit(PG_highmem, &page->flags);
atomic_set(&page->count, 0xC4);
That seems like a hackish thing to do. Could you mistake other pages
with
Karsten Wiese wrote:
Am Montag, 8. August 2005 13:19 schrieb Alexander Nyberg:
There are many places where one could replace run-time tests with
#ifdef's but it makes reading more difficult (and in longer terms
maintainence). Have you benchmarked any workload that benefits
from this?
Zwane Mwaikambo wrote:
On Wed, 10 Aug 2005 [EMAIL PROTECTED] wrote:
Add an accessor function for getting the per-CPU gdt. Callee must already
have the CPU.
This one seems superfluous to me, does accessing it indirectly generate
better code too?
Thanks for the feedback. I beli
n l wrote:
I see, if a function in a module is not marked by static ,it can be
accessed by any other function in kernel, while , using a static can
avoid it .
thanks a lot !!
2005/8/11, Giuliano Pochini <[EMAIL PROTECTED]>:
On Thu, 11 Aug 2005, n l wrote:
could you explain its reas
Ukil a wrote:
I had this question. As per my understanding, in the
Linux system call implementation on x86 architecture
the call flows like this int 0x80 -> syscall ->
sys_call_vector(taken from the table)-> return from
interrupt service routine.
Almost. There are two entry points, the one
Steven Rostedt wrote:
I expect that if I had a Gentoo system that I compiled for my machine,
this would be different. But I suspect that Debian still wants to run on
my old Pentium 75MHz laptop. How would libc know to use sysenter
instead of int 0x80. It could do a test of the system, but woul
Steven Rostedt wrote:
OK, I get the same on my machine.
On a machine that does not support sysenter, this will give you:
int $0x80
ret
The int $0x80 system calls are still fully supported by a sysenter
capable kernel, since it must run older binaries and potentially support
syscalls dur
George Anzinger wrote:
Nick Piggin wrote:
George Anzinger wrote:
The NMI entry and exit code fiddles with bits in the preempt count.
If an NMI happens while some other code is doing the same, bits will
be lost. This patch removes this modify code from the NMI path till
we can come up wit
Adrian Bunk wrote:
On Mon, Aug 15, 2005 at 04:00:39PM -0700, [EMAIL PROTECTED] wrote:
Make the generic version of ptep_set_wrprotect a macro. This is good for
code uniformity, and fixes the build for architectures which include pgtable.h
through headers into assembly code, but do not defin
Brian Gerst wrote:
If you really want to test the math emu code, you can hack check_x87
in head.S to always leave the fpu disabled. Then you can test it on
any cpu, not just a 386.
That is a good idea, and while a valid point, it actually still requires
writing the code to actually test t
Chris Wright wrote:
* [EMAIL PROTECTED] ([EMAIL PROTECTED]) wrote:
Attempt to fix the UML build by assuming the default i386 subarchitecture
(mach-default).
I can't fully test this because spinlock breakage is still happening in
my tree, but it gets rid of the mach_xxx.h missing file warnin
Chris Wright wrote:
* [EMAIL PROTECTED] ([EMAIL PROTECTED]) wrote:
This code is quite dead. Release_thread is always guaranteed that the mm has
already been released, thus dead_task->mm will always be NULL.
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
Index: linux-2.6.13/
Chris Wright wrote:
Thanks for the feedback. Comments inline.
@@ -30,7 +33,7 @@
static inline unsigned long get_desc_base(struct desc_struct *desc)
{
unsigned long base;
- base = ((desc->a >> 16) & 0x) |
+ base = (desc->a >> 16) |
Seemingly unrelated.
Y
Jeff Dike wrote:
The patch below fixes the recent UML compilation failure in -rc5-mm1
without making the UML build reach further into the i386 headers. It
splits the i386 ptrace.h and system.h into UML-usable and UML-unusable
pieces.
The string "abi" is in there because I did ptrace.h first
Chuck Ebbert wrote:
On Wed, 10 Aug 2005 at 21:56:20 -0700, [EMAIL PROTECTED] wrote:
Patch-base: 2.6.13-rc5-mm1
Patch-keys: i386 desc cleanup
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
Index: linux-2.6.13/include/asm-i386/
, since the entire MM struct is zeroed on
allocation anyways.
Verified with BUG_ON(mm->context.ldt || mm->context.ldt_pages);
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
Index: linux-2.6.13/include/asm-i386/mmu_context.h
Chris Wright wrote:
* Zachary Amsden ([EMAIL PROTECTED]) wrote:
Several reviewers noticed that initialization and destruction of the
mm->context is unnecessary, since the entire MM struct is zeroed on
allocation anyways.
well, on fork it should be just shallow copied rather t
Kumar Gala wrote:
Looking at some architectures it appears that asm/uaccess.h should be
used instead of asm/segment.h. Is this generally true that code in
segment.h should be moved into uaccess.h or is it still valid for an
architecture to have segment.h?
At least in i386, segment.h can
Andi Kleen wrote:
On Wed, Aug 10, 2005 at 09:54:11PM -0700, [EMAIL PROTECTED] wrote:
Use an early clobber on addr to avoid the extra rorl instruction at the
end of _set_tssldt_desc.
I would suggest to just use C for this. I do this on x86-64 and
I don't think there is any reason to u
e original microcode update source.
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
Index: linux-2.6.13/arch/i386/kernel/microcode.c
===
--- linux-2.6.13.orig/arch/i386/kernel/microcode.c 2005-07-29
15:26:04.0
ializing instruction, but it is a microcode update, so I will keep the
semantic the same, since this could be a timing workaround. As far as I can
tell, this has always been there since the original microcode update source.
Signed-off-by: Zachary Amsde
[EMAIL PROTECTED] wrote:
The patch titled
i386-arch-cleanup-seralize-msr fix
diff -puN arch/i386/kernel/microcode.c~i386-arch-cleanup-seralize-msr-fix
arch/i386/kernel/microcode.c
--- 25/arch/i386/kernel/microcode.c~i386-arch-cleanup-seralize-msr-fix
2005-07-30 23:40:17.0 -0700
Please explain why this is a reject after looking at the cpuid macro.
It changed recently. Note 0 -> %ecx.
Would you prefer that I call cpuid_count and pass an explicit zero
parameter for ecx?
/*
* Generic CPUID function
* clear %ecx since some cpus (Cyrix MII) do not set or clear %ecx
* r
ro.
Some more assembler cleanups I noticed along the way.
Diffs against: 2.6.13-rc4-mm1
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED])
Index: linux-2.6.13/arch/i386/kernel/crash.c
===
--- linux-2.6.13.orig/arch/i386/kernel/cras
Andi Kleen wrote:
[EMAIL PROTECTED] writes:
Unfortunately, this added one field to the thread_struct. But as a bonus, on
P4, the fastest time measured for switch_to() went from 312 to 260 cycles, a
win of about 17% in the fast case through this performance critical path.
Cool! Defini
; I've tested i386 PAE and non-PAE
as well as um-i386. Although these are mostly i386 specific, some of
the concepts are starting to apply to virtualization of other
architectures as well.
Zachary Amsden <[EMAIL PROTECTED]>
-
To unsubscribe from this list: send the line "unsubscr
in shadow mode.
There is only one case where an extra flush is needed, in the i386 specific
page fault handler. Flushes for NP->P transitions must already be maintained
in the arch independent code because of the external TLB on Sparc.
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
physical page is now done being
used as a certain type of page.
These hooks can be used in two ways; for shadow mode, they serve as
requests to pre-allocate and deallocate shadow page tables, and for
direct page table mode, they serve as write protect/unprotect requests.
Signed-off-by: Zachary Amsden
The macro set_wrprotect() should not be defined to have a value. Make it
a do {} while(0) instead of ({}).
Noticed by Chris Wright.
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
Patch-subject: Make set_wrprotect() value safe
Index: linux-2.6.13/include/asm-generic/pgt
seemed more
complicated than a macroized implementation.
A more proper location would be in asm/page.h, but that gets confounded
by the use of pgd_offset_k() again.
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
Index: linux-2.6.13/include/asm-i386/pgt
a later
patch that developes this potential, but it becomes much more useful once
the exact negotiation of linear address space with the hypervisor is defined.
The fixed compile time solution is sufficient for now.
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
Index: linux-2.6.13/arc
Chris Wright wrote:
* Zachary Amsden ([EMAIL PROTECTED]) wrote:
--- linux-2.6.13.orig/arch/i386/mm/init.c 2005-08-24 09:31:05.0
-0700
+++ linux-2.6.13/arch/i386/mm/init.c2005-08-24 09:31:31.0 -0700
@@ -79,6 +79,7 @@ static pte_t * __init one_page_table_ini
Chris Wright wrote:
* Zachary Amsden ([EMAIL PROTECTED]) wrote:
Allow compile time creation of a hole at the high end of linear address space.
This makes accomodating a hypervisor a much more tractable problem by giving
it ample playground to live in. Currently, the hole size is fixed at
Chris Wright wrote:
* Zachary Amsden ([EMAIL PROTECTED]) wrote:
Chris Wright wrote:
* Zachary Amsden ([EMAIL PROTECTED]) wrote:
--- linux-2.6.13.orig/arch/i386/mm/init.c 2005-08-24
09:31:05.0 -0700
+++ linux-2.6.13/arch/i386/mm/init.c2005-08-24 09:31
Chris Wright wrote:
* Zachary Amsden ([EMAIL PROTECTED]) wrote:
--- linux-2.6.13.orig/arch/i386/mm/init.c 2005-08-24 09:31:05.0
-0700
+++ linux-2.6.13/arch/i386/mm/init.c2005-08-24 09:31:31.0 -0700
@@ -79,6 +79,7 @@ static pte_t * __init one_page_table_ini
Alan Cox wrote:
On Mer, 2005-08-24 at 11:43 -0500, Kumar Gala wrote:
The following set of patches removes the use and existence of
asm/segment.h from the architecture ports
You've broken various things by doing this because some driver code
rightly or wrongly uses segment.h. That is
Andi Kleen wrote:
On Sunday 07 August 2005 14:16, Zachary Amsden wrote:
FYI I have queued it, but cannot apply it because the necessary generic
code support is still not in mainline.
Here's the patch for generic / i386 support; it's already in the -mm tree.
Do you have
Not very much of importance here, but the idea for these cleanups
came along during discussion of my last set of patches with Chris
Wright.
One cleans up whitespace, another improves understandability of
the mysterious +/- 1's in the page table init code.
Zachary Amsden <[EMAIL PROTECTE
Ok, the use of "1 + " and subtraction of one for PAE PDPEs has confused
many people now. Make it explicit what is going on and why anding with
PAGE_MASK is a better idea to strip these bits.
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
Depends-on: add-pgtable-allocation
This highly technical change allows the kernel to jump atop the Eiffel Tower,
fly with acceleration fifty times that of a space shuttle, and ingest 15 times
its own weight.
Patch-subject: Whitespace cleanup in pageattr.c
Depends-on: add-pgtable-allocation-notifiers
Signed-off-by: Zachary Amsden
Srivatsa Vaddagiri wrote:
On Wed, Aug 31, 2005 at 10:28:43PM +0530, Srivatsa Vaddagiri wrote:
Following patches related to dynamic tick are posted in separate mails,
for convenience of review. The first patch probably applies w/o dynamic
tick consideration also.
Patch 1/3 -> Fixup lost tic
On Tue, 2008-01-08 at 14:15 -0500, David P. Reed wrote:
> Alan Cox wrote:
> > The natsemi docs here say otherwise. I trust them not you.
> >
> As well you should. I am honestly curious (for my own satisfaction) as
> to what the natsemi docs say the delay code should do (can't imagine
> they s
On Wed, 2008-01-09 at 16:27 +0100, Rene Herman wrote:
> On 09-01-08 06:30, Christer Weinigel wrote:
> I'd not expect very time crtical. The current outb_p use gives a delay
> somewhere between .5 and 2 microseconds as per earlier survey meaning a
> udelay(1) or 2 would be enough -- again, at the
On Tue, 2008-01-08 at 21:19 -0800, H. Peter Anvin wrote:
> Zachary Amsden wrote:
> >
> > BTW, it isn't ever safe to pass port 0x80 through to hardware from a
> > virtual machine; some OSes use port 0x80 as a hardware available scratch
> > register (I believe Darw
On Fri, 2008-01-18 at 22:37 +0100, Ingo Molnar wrote:
> * Ingo Molnar <[EMAIL PROTECTED]> wrote:
>
> > > The first fix is not even specific for PARAVIRT, and it's actually
> > > preventing the whole tree from booting.
> >
> > on CONFIG_EFI, indeed :)
>
> but in exchange you broke all of 32-bit
On Wed, 2007-10-10 at 15:37 +0800, Fengguang Wu wrote:
> Hi Zachary,
>
> One of my friends' vmware "hangs" on booting Linux 2.6.23, and then get
> it to work by applying your patch at http://lkml.org/lkml/2007/8/4/72.
>
> It would be nice to see your fix going into mainline :-)
I thought that pa
On Mon, 2007-11-19 at 14:06 -0800, Roland McGrath wrote:
> This changes the 64-bit kernel's support for the 32-bit sysenter
> instruction to use stored fields rather than constants for the
> user-mode return address, as the 32-bit kernel does. This adds a
> sysenter_return field to struct thread_i
On Mon, 2007-11-19 at 14:06 -0800, Roland McGrath wrote:
> This makes x86_64's ia32 emulation support share the sources used in the
> 32-bit kernel for the 32-bit vDSO and much of its setup code.
>
> The 32-bit vDSO mapping now behaves the same on x86_64 as on native 32-bit.
> The abi.syscall32 sy
On Wed, 2007-11-21 at 02:25 -0800, Roland McGrath wrote:
> This consolidates the four different places that implemented the same
> encoding magic for the GDT-slot 32-bit TLS support. The old tls32.c is
> renamed and only slightly modified to be the shared implementation guts.
> -#define GET_BASE(
On Wed, 2007-11-21 at 09:13 +0200, Avi Kivity wrote:
> Where the device is implemented is an implementation detail that should
> be hidden from the guest, isn't that one of the strengths of
> virtualization? Two examples: a file-based block device implemented in
> qemu gives you fancy file for
On Wed, 2007-11-21 at 02:20 -0800, Roland McGrath wrote:
> This changes a couple of places to use the get_desc_base function.
> They were duplicating the same calculation with different equivalent code.
>
> Signed-off-by: Roland McGrath <[EMAIL PROTECTED]>
>
> diff --git a/arch/x86/ia32/tls32.c b
On Mon, 2007-11-26 at 00:38 -0800, Yinghai Lu wrote:
> [PATCH] x86_64: not set boot cpu in cpu_online_map at smp_prepare_boot_cpu
>
> in init/main.c boot_cpu_init() does that before
>
> Signed-off-by: Yinghai Lu <[EMAIL PROTECTED]>
>
> diff --git a/arch/x86/kernel/smpboot_64.c b/arch/x86/kernel/
On Mon, 2007-11-26 at 14:06 -0800, Yinghai Lu wrote:
> >> diff --git a/arch/x86/kernel/smpboot_64.c b/arch/x86/kernel/smpboot_64.c
> >> index 500670c..966d124 100644
> >> --- a/arch/x86/kernel/smpboot_64.c
> >> +++ b/arch/x86/kernel/smpboot_64.c
> >> @@ -912,7 +912,7 @@ void __init smp_prepare_cpu
On Wed, 2008-01-09 at 17:22 -0500, David P. Reed wrote:
> Zachary Amsden wrote:
> >
> > According to Phoenix Technologies book "System BIOS for IBM PCs,
> > Compatibles and EISA Computers, 2nd Edition", the I/O port list gives
> >
> > port 0080h
On Fri, 2008-01-11 at 18:08 +, Alan Cox wrote:
> This lets us remove port 0x80 use on the PCI systems. It also speeds
> up
> some of the later 8390 based cores where we know the device does not
> need
> delay loops either because it has internal handling or in most cases a
> faster device anywa
ks boxes got upgraded so I
can't test, but install base is really big.
Acked-by: Zachary Amsden <[EMAIL PROTECTED]>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.or
ret
sysenter_call_2:
push %ebx
push %ebp
movl 20(%esp), %ebx /* pid */
movl 24(%esp), %ecx /* signo */
movl 28(%esp), %ebp
movl $SYS_kill, %eax
sysenter
.data
test: .long 0
/*
* Copyright (c) 2005, Zachary Amsden ([EMAIL PROTECT
On Tue, 2007-11-13 at 08:18 -0500, Gregory Haskins wrote:
> Since PCI was designed as a hardware solution it has all kinds of stuff
> specifically geared towards hardware constraints. Those constraints
> are different in a virtualized platform, so some things do not translate
> well to an optima
On Tue, 2007-11-13 at 22:22 +, Christoph Hellwig wrote:
> On Tue, Nov 13, 2007 at 12:21:16PM -0800, Jeremy Fitzhardinge wrote:
> > Subject: x86/paravirt: revert exports to restore old behaviour
> >
> > Subdividing the paravirt_ops structure caused a regression in certain
> > non-GPL modules wh
On Thu, 2007-10-25 at 16:57 -0700, Linus Torvalds wrote:
>
> On Fri, 26 Oct 2007, Andi Kleen wrote:
> >
> > The conditional add/sub using carry trick is not generally bogus.
> > But for registers it's a fine optimization.
>
> For registers it's fine. For memory, it's a disaster. It's more than
On Mon, 2007-10-29 at 20:10 -0300, Glauber de Oliveira Costa wrote:
> From: Glauber de Oliveira Costa <[EMAIL PROTECTED]>
>
> tsc is very good time source (when it does not have drifts, does not
> change it's frequency, i.e. when it works), so it should have its rating
> raised to a value greater
On Tue, 2007-10-30 at 00:02 +0100, Ingo Molnar wrote:
> * Zachary Amsden <[EMAIL PROTECTED]> wrote:
> > Not every guest support paravirt, but for correctness, all guests
> > require TSC, which must be exposed all the way up to userspace, no
> > matter what the ef
On Mon, 2007-10-29 at 23:48 +0100, Ingo Molnar wrote:
> * Zachary Amsden <[EMAIL PROTECTED]> wrote:
> if it's inaccurate why are you exposing it to the guest then? Native
> only uses the TSC if it's safe and accurate to do so.
Not every guest support paravirt, but fo
On Tue, 2007-10-30 at 10:02 -0200, Glauber de Oliveira Costa wrote:
> > No, if no paravirt clocksource is detected, nothing can override the
> > perfect TSC hardware clocksource rating of 400. And if a paravirt
> > clocksource is detected, it is always better than TSC.
>
> Why always? tsc is the
Andi Kleen wrote:
+ *addr = opcode;
+ /* Not strictly needed, but can speed CPU recovery up */
+ if (cpu_has_clflush)
+ asm("clflush (%0) " :: "r" (addr) : "memory");
+ if (addr != oaddr)
+ vunmap(addr);
clflush should take oaddr.
If you h
Mathieu Desnoyers wrote:
Yes, kprobes is case 1: atomic update. And we don't even have to bother
about Intel's erratum. This one is ok. That's mainly the
alternatives/paravirt code I worry about.
Paravirt and alternatives should all be ok because they are done before
SMP bringup and with NM
Rusty Russell wrote:
Otherwise we end up with $NARCH copies of that Kconfig, each slightly
different. The top-level entry can be made to depend on the archs that
actually have some virt capability, so as not to show empty an menu.
I dislike the duplication, too, but
1) it's a CPU capab
Gabriel Barazer wrote:
Hi,
After upgrading kernel to 2.6.22 on a Vmware workstation guest version
5.5 and 6 , the kernel decompression stage ("Decompressing Linux...")
is hanging for a very long time (~5 minutes) before finally
succeeding (displaying "done.\nBooting the kernel.\n"). During t
Benjamin Herrenschmidt wrote:
On Wed, 2007-08-22 at 16:25 +1000, Rusty Russell wrote:
On Wed, 2007-08-22 at 08:34 +0300, Avi Kivity wrote:
Zachary Amsden wrote:
This patch provides hypercalls for the i386 port I/O instructions,
which vastly helps guests which use native-style
On Thu, 2007-09-06 at 02:33 +1000, Rusty Russell wrote:
> On Tue, 2007-09-04 at 14:42 +0100, Jeremy Fitzhardinge wrote:
> > Rusty Russell wrote:
> > > static inline void arch_flush_lazy_mmu_mode(void)
> > > {
> > > - PVOP_VCALL1(set_lazy_mode, PARAVIRT_LAZY_FLUSH);
> > > + if (unlikely(__get_cpu_
On Thu, 2007-09-06 at 06:37 +1000, Rusty Russell wrote:
> On Thu, 2007-08-23 at 22:46 -0700, Zachary Amsden wrote:
> > I recently sent off a fix for lazy vmalloc faults which can happen under
> > paravirt when lazy mode is enabled. Unfortunately, I jumped the gun a
> > b
H. Peter Anvin wrote:
I just got the following message on the syslinux mailing list:
2. On some platforms (vmware for example :), READING from the video memory
in the 32bit mode is impossible (causes an exeption). Taking in to account
that the scroll function in ilinux/arch/i386/boot/c
Andi Kleen wrote:
In the boot decompressor for the kernel in the image Iouri provided, I
32bit or 64bit image?
As you can plainly see, the call to memcpy (which is redefined in
boot/compressed/misc.c) is made using stack calling convention.
Unfortunately, the compiler generated the me
Andi Kleen wrote:
In the boot decompressor for the kernel in the image Iouri provided, I
32bit or 64bit image?
As you can plainly see, the call to memcpy (which is redefined in
boot/compressed/misc.c) is made using stack calling convention.
Unfortunately, the compiler generated the me
Before, I was seeing times up to a minute or more to decompress a 1.3MB kernel
on a very fast box.
Signed-off-by: Zachary Amsden <[EMAIL PROTECTED]>
===
--- a/arch/x86_64/boot/compressed/head.S
+++ a/arch/x86_64/boot/compresse
Rusty Russell wrote:
If a Guest makes hypercall which sets a GDT entry to not present, we
currently set any segment registers using that GDT entry to 0.
Unfortunately, this is not sufficient: there are other ways of
altering GDT entries which will cause a fault.
The correct solution to do what L
1 - 100 of 371 matches
Mail list logo