Commit Graph
970 Commits
Author SHA1 Message Date
cl349@firebug.cl.cam.ac.uk 9d77d697b1 Update to Linux 2.6.16-rc5.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-27 16:56:08 +00:00
Ian.Campbell@xensource.com 002d669228 List pae_pgdir_above_4gb in features for x86/32 Linux kernel.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-02-27 11:01:06 +00:00
Ian.Campbell@xensource.com ebc9e1ccdb Support XENFEAT_supervisor_mode_kernel in x86/64 HYPERVISOR_IRET macro
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-02-27 10:58:17 +00:00
cl349@firebug.cl.cam.ac.uk 0a28c5336a Fix non-xen build for: Make the fixmap area moveable in kernel address space.
From: Gerd Hoffmann <kraxel@suse.de>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-27 10:34:03 +00:00
cl349@firebug.cl.cam.ac.uk 99e35ca051 Add arch/i386/mm/pgtable.c to sparse tree.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-27 10:31:30 +00:00
cl349@firebug.cl.cam.ac.uk 566a61fa41 Fix non-xen build for: Move the gate page (vsyscall) out of the fixmap area
into user address space, just below PAGE_OFFSET.

From: Gerd Hoffmann <kraxel@suse.de>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-27 10:27:57 +00:00
cl349@firebug.cl.cam.ac.uk 62d449275c Add include/asm-i386/{fixmap,page}.h to sparse tree.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-27 10:26:01 +00:00
kaf24@firebug.cl.cam.ac.uk 09066aa42a Periodically sytnchronize Xen's wallclock time with NTP-synchronized time in domain0.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-02-26 16:38:59 +01:00
kaf24@firebug.cl.cam.ac.uk 705ea2b54c New VCPUOP_register_runstate_memory_area hypercall. Avoids
need for a hypercall in the guest timer interrupt handler.

Cleaned up stolen/blocked tick handling in Linux.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-02-25 21:28:27 +01:00
kaf24@firebug.cl.cam.ac.uk 11a008c7c5 Update Linux time IRQ handler to understand the new stolen/blocked cycle counts
exported by Xen. This is based heavily on a patch from Rik van Riel, but
extended to distinguish between idle/blocked cycles and stolen cycles.

There is still stuff todo:
 1. Xen should export the time values in shared memory, to save a hypercall
    on every time interrupt (even though that is only every 10ms, worst case).
 2. As in s390, Xen's cputime_t should be measured at finer granularity than
    jiffies. Nanoseconds would be a better unit.
 3. Break out the internals of the account_steal_time() interface so that we don't
    need to abuse it so wretchedly.

Signed-off-by: Rik van Riel <riel@redhat.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-02-25 20:07:28 +01:00
kaf24@firebug.cl.cam.ac.uk 28c8245ab0 Default minimum number of receive buffers queued by netfront is now 64, not 8.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-02-24 17:50:20 +01:00
kaf24@firebug.cl.cam.ac.uk f6591ed77a Two missing exports (one of them needed only for PAE) prevented netfront from being built as a module.
From: Jan Beulich

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-02-24 17:25:41 +01:00
cl349@firebug.cl.cam.ac.uk bb5d5f577a linux-i386: cleanup head.S, sync default_ldt and {new,boot}_cpu_data with native.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-24 14:41:45 +00:00
Ian.Campbell@xensource.com c6ba49142d Implement direct iret to guest kernel where possible in HYPERVISOR_IRET macro.
Returns to guest userspace and from an NMI must still go via the hypervisor.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-02-24 11:05:52 +00:00
kaf24@firebug.cl.cam.ac.uk e36c8877da Return <4GB memory back to Xen when destroying a PAE pgdir.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-02-24 08:49:32 +01:00
kaf24@firebug.cl.cam.ac.uk e16b78bf48 Use common IRET macro for all exits from XenLinux. Currently
uses slow iret path every time (but most returns will do that
anyway, since they'll be to userspace). Fast return (to kernel)
can be implemented inside the macro and respect the 
supervisor_mode_kernel feature flag.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-02-23 18:40:08 +01:00
kaf24@firebug.cl.cam.ac.uk 9925f4a7dc Remove explicit munging of selector RPLs from Xen Linux x86/64.
Not needed now it's done by Xen.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-02-23 18:27:18 +01:00
cl349@firebug.cl.cam.ac.uk f79142a93d Make the fixmap area moveable in kernel address space.
From: Gerd Hoffmann <kraxel@suse.de>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-23 15:59:54 +00:00
cl349@firebug.cl.cam.ac.uk 7ac0b750e5 Move the gate page (vsyscall) out of the fixmap area into user address space,
just below PAGE_OFFSET.

From: Gerd Hoffmann <kraxel@suse.de>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-23 15:22:19 +00:00
cl349@firebug.cl.cam.ac.uk 14fbb23123 Add include/asm-i386/{a.out,elf}.h to sparse tree
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-23 15:22:17 +00:00
kaf24@firebug.cl.cam.ac.uk 186366e279 Remove some unnecessary diffs vs. native Linux. We now don't use the Xen
FLAT_foo segment selectors at all.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-02-23 15:33:08 +01:00
kaf24@firebug.cl.cam.ac.uk cc0225babb Fix netfront receive path for auto_translate_physmap mode.
Signed-off-by: Steven Smith <sos22@cam.ac.uk>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-02-23 15:22:12 +01:00
kaf24@firebug.cl.cam.ac.uk 55232abc7e Rename XENFEAT_ring0_kernel to slightly more generic XENFEAT_supervisor_mode_kernel.
Add comments in public header version.h to explain what all the different
feature flags mean. Add a new flag XENFEAT_pae_pgdir_above_4gb to inform the guest
that its PAE page directories do not need to conform to the usual hardware
restriction.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-02-23 11:59:27 +01:00
kaf24@firebug.cl.cam.ac.uk 7b7a8ea148 Silenty ignore calls to xen_create_contiguous_region() when running
in auto_translated_physmap mode. A new comment in that function explains
why this is an okay thing to do.

This avoids an unnecessary crash in Xen's skbuff_ctor.

Signed-off-by: Michael Vrable <mvrable@cs.ucsd.edu>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-02-23 11:42:19 +01:00
Ian.Campbell@xensource.com a58703d1ed Add feature flag allowing guest kernel to run in domain 0.
To support this we give kernel GDT entries DPL=0 and use kernel
segment selectors with RPL=0. Xen will crunch these to ring 1 when
they are passed in. When a segment selector is used directly or placed
in a stack frame the guest OS is reponsible for crunching the RPL.

Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
2006-02-22 19:11:23 +00:00
cl349@firebug.cl.cam.ac.uk 4720eab035 Don't reload segment registers -- it's done later in generic code.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-22 15:50:28 +00:00
Ian.Campbell@xensource.com 3d7e20748b Move lgdt_finish inline
Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
2006-02-22 15:17:04 +00:00
Ian.Campbell@xensource.com c0bb7d27dc List supported feature flags in __xen_guest section.
Signed-off-bu: Ian Campbell <Ian.Campbell@XenSource.com>
2006-02-22 15:16:44 +00:00
Ian.Campbell@xensource.com 33718a77fd Allow Xen to truncate x86_32 segment limits to the correct value
rather than hardcoding them in each guest kernel.

Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
2006-02-22 15:13:08 +00:00
cl349@firebug.cl.cam.ac.uk 55ee36debf tpm: Fixes and cleanup
Fix a recently found problem in tpm.c, move the vtpm sysfs
entry to /sys/device/platform/tpm_vtpm and add locking in
the vtpm hotplug script.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2006-02-21 17:13:30 +00:00
cl349@firebug.cl.cam.ac.uk b42866cdd4 Update ia64 sparse tree to Linux 2.6.16-rc4.
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-02-21 16:25:56 +00:00
cl349@firebug.cl.cam.ac.uk 471759d839 Update to Linux 2.6.16-rc4.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>


--HG--
rename : patches/linux-2.6.16-rc3/i386-mach-io-check-nmi.patch => patches/linux-2.6.16-rc4/i386-mach-io-check-nmi.patch
rename : patches/linux-2.6.16-rc3/net-csum.patch => patches/linux-2.6.16-rc4/net-csum.patch
rename : patches/linux-2.6.16-rc3/pmd-shared.patch => patches/linux-2.6.16-rc4/pmd-shared.patch
rename : patches/linux-2.6.16-rc3/smp-alts.patch => patches/linux-2.6.16-rc4/smp-alts.patch
2006-02-21 11:19:13 +00:00
cl349@firebug.cl.cam.ac.uk bc5d7734b3 linux-i386: Fix CONFIG_X86_NO_TSS and CONFIG_X86_SYSENTER.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-20 23:01:50 +00:00
cl349@firebug.cl.cam.ac.uk 7db6c822ec linux-i386: Cleanup stack pointer initialization at start of day.
From: Jan Beulich <JBeulich@novell.com>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-20 20:26:24 +00:00
cl349@firebug.cl.cam.ac.uk d3e3ecc2a9 Suppress VIDEO_SELECT config option.
The Xen guest doesn't know how to change video modes at boot.

From: Jan Beulich <JBeulich@novell.com>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-20 18:03:56 +00:00
cl349@firebug.cl.cam.ac.uk cb4d0ad5d0 Add drivers/video/Kconfig to sparse tree.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-20 18:02:55 +00:00
cl349@firebug.cl.cam.ac.uk 4d0d0e2ed5 Fix I/O port address for first floppy controller on x86_64.
As a consequence, some of the i386 changes over native code need to also be
added to x86-64.

From: Jan Beulich <JBeulich@novell.com>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-20 17:59:41 +00:00
cl349@firebug.cl.cam.ac.uk 49fa33098b Fix read_cr3() and use it.
From: Jan Beulich <JBeulich@novell.com>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-20 17:34:21 +00:00
cl349@firebug.cl.cam.ac.uk d685638f98 Eliminate x86_64 idt_table.
Add CONFIG_X86_NO_IDT to exclude all code which references the idt table.
Also fix the non-Xen cpu_gdt_init() handling.

From: Jan Beulich <JBeulich@novell.com>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-20 17:32:29 +00:00
cl349@firebug.cl.cam.ac.uk 704aa39dff Eliminate i386 idt_table.
Add CONFIG_X86_NO_IDT to exclude all code which references the idt table.
Make CONFIG_X86_F00F_BUG conditional on CONFIG_X86_NO_IDT.

From: Jan Beulich <JBeulich@novell.com>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-20 17:22:00 +00:00
cl349@firebug.cl.cam.ac.uk 9f4df136bd Add arch/i386/Kconfig.cpu to sparse tree.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-20 17:15:14 +00:00
vhanquez@kneesa.uk.xensource.com b5532eb9d7 do not BUG() if memory cannot be allocated, just wait.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-02-20 17:14:19 +00:00
vhanquez@kneesa.uk.xensource.com 2d93dbc65a alloc_netdev must be freed with free_netdev, not directly by kfree.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-02-20 17:06:36 +00:00
cl349@firebug.cl.cam.ac.uk 0df689dee5 Simplify utoa macro, make it identical with x86_64 version.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-20 16:49:35 +00:00
cl349@firebug.cl.cam.ac.uk 448cb8937a Eliminate hard coded items from x86_64 __xen_guest section
to avoid problems when the position of the hypercall page changes.
Further, clean up many things to avoid needless differences to native
code, while also adding a couple of adjustments that only will be
submitted for native code inclusion, that simplify code, or that
remove unused elements.

From: Jan Beulich <JBeulich@novell.com>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-20 16:42:54 +00:00
cl349@firebug.cl.cam.ac.uk 83e8b14bc4 Eliminate hard coded items from i386 __xen_guest section
to allow the new VMSPLIT_* Kconfig options to work, and to
avoid problems when the position of the hypercall page
changes.

From: Jan Beulich <JBeulich@novell.com>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-20 16:08:27 +00:00
cl349@firebug.cl.cam.ac.uk 29a164e799 Eliminate tss - tss is meaningless in a paravirtualized kernel
and consumes 25% of the per-cpu area.
Add CONFIG_X86_NO_TSS to exclude all code which references tss.

Based on a patch by Jan Beulich <JBeulich@novell.com>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-20 15:15:10 +00:00
cl349@firebug.cl.cam.ac.uk c41010d645 Add arch/x86_64/kernel/{asm-offsets,init_task}.c to sparse tree.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-20 14:51:50 +00:00
cl349@firebug.cl.cam.ac.uk b2c35e3d13 Eliminate tss - tss is meaningless in a paravirtualized kernel
and consumes 25% of the per-cpu area.
Add CONFIG_X86_NO_TSS to exclude all code which references tss.
Add CONFIG_X86_SYSENTER to conditionally include support for sysenter.
Change CONFIG_DOUBLEFAULT to depend on !CONFIG_X86_NO_TSS.
(sysenter and doublefault need tss).

Based on a patch by Jan Beulich <JBeulich@novell.com>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-20 14:46:14 +00:00
cl349@firebug.cl.cam.ac.uk 530dd103f6 Add arch/i386/kernel/{asm-offsets.c,sysenter.c,vm86.c,vsyscall.S} to sparse tree.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-02-20 14:37:13 +00:00