Commit Graph

6 Commits

Author SHA1 Message Date
yamaguchi
6386396aca Introduce per-cpu IDTs
This is realized by following modifications:
- Add IDT pages and its allocation maps for each cpu in "struct cpu_info"
- Load per-cpu IDTs at cpu_init_idt(struct cpu_info*)
- Copy the IDT entries for cpu0 to other CPUs at attach
   - These are, for example, exceptions, db, system calls, etc.

And, added a kernel option named PCPU_IDT to enable the feature.
2020-07-14 00:45:52 +00:00
nonaka
b74d80dfe5 vmbus(4): Do not call hyperv_dma_alloc() in interrupt context.
The channel offer and rescind process is performed on another context.
2020-05-26 16:08:55 +00:00
nonaka
c9d5b0910f hvn(4) can be added and deleted dynamically. 2019-12-10 12:20:20 +00:00
nonaka
82065bef52 Get a Hyper-V virtual processor id in cpu_hatch().
Currently, it is got in config_interrupts context.
However, since it is required when attaching a device,
it is got earlier than now.
2019-12-07 11:45:45 +00:00
nonaka
13deebddb0 Added drivers for Hyper-V Synthetic Keyboard and Video device. 2019-05-24 14:28:48 +00:00
nonaka
50517e577b Added Microsoft Hyper-V support. It ported from OpenBSD and FreeBSD.
graphical console is not work on Gen.2 VM yet. To use the serial console,
enter "consdev com,0x3f8,115200" on efiboot.
2019-02-15 08:54:01 +00:00