History log of /kvmtool/x86/include/kvm/interrupt.h (Results 1 – 16 of 16)
Revision Date Author Comments
# af7b0868 06-Dec-2011 Matt Evans <matt@ozlabs.org>

kvm tools: Split x86 arch-specific bits into x86/

Create a new arch-specific subdirectory to contain architecture-specific code
and includes.

The Makefile now adds various arch-specific objects bas

kvm tools: Split x86 arch-specific bits into x86/

Create a new arch-specific subdirectory to contain architecture-specific code
and includes.

The Makefile now adds various arch-specific objects based on detected
architecture. That aside, this patch should only contain code moves. These
include:

- x86-specific kvm_cpu setup, kernel loading, memory setup etc. now in
x86/kvm{-cpu}.c
- BIOS now lives in x86/bios/
- ioport setup
- KVM extensions are asserted in arch-specific kvm.c now, so each architecture
can manage its own dependencies.
- Various architecture-specific #defines are moved into $(ARCH)/include/kvm{-cpu}.h
such as struct kvm_cpu, KVM_NR_CPUS, KVM_32BIT_GAP_SIZE.

Signed-off-by: Matt Evans <matt@ozlabs.org>
Signed-off-by: Pekka Enberg <penberg@kernel.org>

show more ...


# 43835ac9 11-May-2011 Sasha Levin <levinsasha928@gmail.com>

kvm tools: Rename 'self' variables

Give proper names to vars named 'self'.

Signed-off-by: Sasha Levin <levinsasha928@gmail.com>
Signed-off-by: Pekka Enberg <penberg@kernel.org>


# 3fdf659d 05-May-2011 Sasha Levin <levinsasha928@gmail.com>

kvm tools: Abolishment of uint*_t types

Clean uint*_t type from the code.

Signed-off-by: Sasha Levin <levinsasha928@gmail.com>
Signed-off-by: Pekka Enberg <penberg@kernel.org>


# 9292f776 08-Jul-2010 Cyrill Gorcunov <gorcunov@gmail.com>

kvm, bios: Rework BIOS setup

This is a really huge rework of our primitive BIOS emulator.

The initial idea was to implement stack management in BIOS
irq handlers. In turn it ends up in re-factoring

kvm, bios: Rework BIOS setup

This is a really huge rework of our primitive BIOS emulator.

The initial idea was to implement stack management in BIOS
irq handlers. In turn it ends up in re-factoring of all BIOS
code.

Some code details
-----------------

1) BIOS stack is placed at predefined constant memory address.
2) BIOS stack is only 64 bytes deep. It must be enough even for
future irq handlers.
3) To be able to place irq handlers at almost arbitrary place of
guest memory their start address must be 16 byte aligned.
This makes easy to compute irq routines local variables addresses.
4) To eliminate address relocations in irq handlers code we use a
special loader script.

TODO
----

- Still needs e820 map implements, int15 is dummy at moment

P.S. Thanks H. Peter Anvin for advices.

[ penberg@cs.helsinki.fi: cleanups ]
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>

show more ...


# 8b8fb6c7 13-Apr-2010 Cyrill Gorcunov <gorcunov@gmail.com>

kvm: Kill the bin2c helper

Instead of calling bin2c helper we just include 16-bit pure code with .incbin
and export the symbols we need.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-o

kvm: Kill the bin2c helper

Instead of calling bin2c helper we just include 16-bit pure code with .incbin
and export the symbols we need.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>

show more ...


# 305d9054 01-Apr-2010 Cyrill Gorcunov <gorcunov@gmail.com>

bios: Add bios stubs generated from assembly files

We substitute hardcoded fake bios handlers with ones generated
from assembly sources. This way we may extend them if needed.

In particular new int

bios: Add bios stubs generated from assembly files

We substitute hardcoded fake bios handlers with ones generated
from assembly sources. This way we may extend them if needed.

In particular new int0x10 handler just write output into video
guest memory so the node machine may read the output anytime
it needs (though, to be fair, the kernel uses int0x10 only once
at bootup procedure if there was an attempt to boot directly
from disk/floppy, any other output is done via video port I/O
which is not implemented yet).

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>

show more ...


# 768e8acc 01-Apr-2010 Cyrill Gorcunov <gorcunov@gmail.com>

interrupt: Move bios related constants to kvm/bios.h

This will allow us to share them between assembly code
and C code as well.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>


# d1a26cf0 01-Apr-2010 Cyrill Gorcunov <gorcunov@gmail.com>

interrupt: Add interrupt_table__set helper

In case if some particular interrupt entry needs
to be modified we should use interrupt_table__set
helper.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.

interrupt: Add interrupt_table__set helper

In case if some particular interrupt entry needs
to be modified we should use interrupt_table__set
helper.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>

show more ...


# 22489bb0 30-Mar-2010 Cyrill Gorcunov <gorcunov@gmail.com>

kvm: Put fake bios interrupt handlers into known memory area

Instead of hacking boot protocol header better to place interrupt handlers into
BDA.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>

kvm: Put fake bios interrupt handlers into known memory area

Instead of hacking boot protocol header better to place interrupt handlers into
BDA.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>

show more ...


# bc75b0ae 29-Mar-2010 Cyrill Gorcunov <gorcunov@gmail.com>

kvm: Rename ivt_ prefixed entities

Though ivt stands for interrupt vector table it's not that clear, lets use
real_intr_desc for that.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off

kvm: Rename ivt_ prefixed entities

Though ivt stands for interrupt vector table it's not that clear, lets use
real_intr_desc for that.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>

show more ...


# 4b62331f 28-Mar-2010 Pekka Enberg <penberg@cs.helsinki.fi>

kvm: Clean up interrupt_table__setup()

Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>


# da8883c1 28-Mar-2010 Pekka Enberg <penberg@cs.helsinki.fi>

kvm: Move interrupt table to struct kvm

This patch moves the global interrupt table to struct kvm.

Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>


# 68967fcf 28-Mar-2010 Pekka Enberg <penberg@cs.helsinki.fi>

kvm: Clean up kvm/interrupt.h a bit

Add include guards to the header file and remove unnecessary #includes.

Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>


# eda03319 28-Mar-2010 Pekka Enberg <penberg@cs.helsinki.fi>

kvm: Rename interrupt emulation source files

Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>


# ea684828 28-Mar-2010 Cyrill Gorcunov <gorcunov@gmail.com>

kvm: Setup fake IVT table

Setup fake interrupt handlers for real mode, it consists of iret opcode only.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Pekka Enberg <penberg@cs.h

kvm: Setup fake IVT table

Setup fake interrupt handlers for real mode, it consists of iret opcode only.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>

show more ...


# b1b71cd9 28-Mar-2010 Cyrill Gorcunov <gorcunov@gmail.com>

kvm: Introduce IVT handling

Introduce procedures for handling IVT (Interrupt Vector Table) to be used int
real mode bootstrap procedure.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-o

kvm: Introduce IVT handling

Introduce procedures for handling IVT (Interrupt Vector Table) to be used int
real mode bootstrap procedure.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>

show more ...