joerg
9ae4651601
Move some MD declarations from x86/pci/files.pci to x86/conf/files.x86,
...
so that Xen can use the former.
Drop Xen's pcib.c in favor of the x86 code and thereby unbreak ichlpcib.
2008-08-03 19:32:03 +00:00
bouyer
d80637780e
xbd_map_align() can be called from interrupt context (though
...
xbd_handler()->dk_iodone()->dk_start()->xbd_start()), so don't try
to sleep in uvm_km_alloc().
2008-07-05 19:06:01 +00:00
drochner
abec36fc7a
split device/softc for ioapic
2008-07-03 15:44:19 +00:00
drochner
54745077e8
Remove "struct device" from "struct pic", where it was only real
...
for ioapics and faked up for others. Add it to "struct ioapic_softc"
for now, until device/softc get split.
This required all typecasts between "struct pic" and "struct ioapic_softc"
to be replaced, I hope I got them all.
functionally tested on i386, compile-tested on xen, untested on amd64
2008-07-03 14:02:24 +00:00
drochner
14071b7c24
remove some obviously obsolete definitions
2008-07-02 19:18:52 +00:00
bouyer
802c7519a2
Raise ci_idepth (and switch to interrupt stack on i386) becore calling
...
xenevt_event().
2008-07-01 18:49:20 +00:00
bouyer
42f814d7d2
spllower(): return immediatly if ci->ci_ilevel <= nlevel, as the asm
...
versions do.
2008-07-01 18:44:50 +00:00
cegger
d0c2dda1a1
correct spelling in error message
2008-06-13 22:59:03 +00:00
cegger
78be369e90
xbddump: remove duplicate check done by device_lookup_private
2008-06-12 04:54:40 +00:00
briggs
3eeb707af6
Don't try to look up the softc manually in xbddump(). We already have it
...
from device_lookup_private().
2008-06-12 02:50:30 +00:00
bouyer
581b1e5743
Initialize ih_ilevel for the special xenevt_processevt() handler.
...
Should fix KASSERT panic reported by Sarton O'Brien and Kazushi Marukawa
on port-xen@
2008-06-07 20:07:42 +00:00
ad
06c343ac94
vm_page: put TAILQ_ENTRY into a union with LIST_ENTRY, so we can use both.
2008-06-04 12:41:40 +00:00
cegger
5f767a47d6
Dom0: Add a delay before registering event handlers. Wait 1s per request from bouyer.
...
Fixes "Hotplug scripts not working" problems when launching guests.
Reviewed by bouyer.
2008-06-02 20:54:59 +00:00
ad
48ced055d4
pci_intr_setattr(), allows PCI interrupts to be marked MPSAFE on x86, and
...
other platforms if the code is added.
pci_intr_map(...)
pci_intr_setattr(pc, ih, PCI_INTR_MPSAFE, 1);
pci_intr_establish(...)
2008-05-30 19:26:35 +00:00
ad
2839301d21
Add a 'known_mpsafe' argument to intr_establish().
2008-05-30 19:03:10 +00:00
cegger
785a84e999
build fix: add missing prototype
2008-05-30 16:22:51 +00:00
ad
788aa3a3b0
Give it a private X86_MAXPROCS def. XXX
2008-05-28 12:48:21 +00:00
explorer
d4ffc0c2dd
print out the xen hypervisor's version number when attaching
2008-05-27 17:01:07 +00:00
bouyer
02ac2b8d02
Add a KASSERT(): Xspllower() will reenable interrupts, so make sure it's
...
not wrong to do so.
2008-05-25 16:09:30 +00:00
bouyer
c8e9dd1af4
G/C dead code: remove now-unused softintr-related code.
2008-05-24 15:10:50 +00:00
bouyer
d491d792fd
Remork the C implementation of spllower() in evtchn_do_event(), so that
...
callbacks are always called in decreasing IPL order. Although it's not
strictly a bug, it makes the code easier to read, and avoids processing
the whole IPL range several times.
2008-05-24 15:09:34 +00:00
bouyer
e0180214c9
call x86_cpu_idle_init(), avoid null function pointer call (cpu_idle()) when
...
scheduling starts.
cleanup printfs of vcpu
2008-05-16 17:20:01 +00:00
ad
bfff830416
Fix typo.
2008-05-11 16:25:46 +00:00
ad
b698c03c2c
Don't reload LDTR unless a new value, which only happens for USER_LDT.
2008-05-11 16:23:05 +00:00
ad
3cd3c8ccbc
Stop using APIC IDs to identify CPUs for software purposes. Allows for
...
APIC IDs beyond 31, which has been possible for some time now.
2008-05-11 15:59:50 +00:00
ad
f674d9678b
Share cpu.h between the x86 ports.
2008-05-11 15:32:20 +00:00
ad
c5fb1571ad
Update xen for identcpu changes.
2008-05-11 15:02:34 +00:00
ad
95a272a377
Make xen build after tsc changes.
2008-05-10 16:27:57 +00:00
joerg
a790b941e6
Make cpu_idle a macro calling a function pointer on x86.
...
Select the Xen idle routine for Xen, mwait if supported by the CPU and
it is not AMD and halt otherwise. As reported by Christoph Egger,
AMD Barcelona keeps the CPU in C0 state with MWAIT, contrary to HLT,
which uses C1 and therefore much less power.
2008-05-09 18:11:28 +00:00
ad
2f3850d422
Export tsc_freq via sysctl.
2008-05-05 17:47:06 +00:00
cegger
46512505a9
Update headers: Welcome Xen 3.2.1
...
Important note: This does not break backward-compatibility. It is still possible to run on Xen 3.1.4.
Hint for developers: Use the xen_version hypercall to determine at runtime if a new hypercall will work. Also check the hypercall return code.
Tested by me and bouyer. OK bouyer.
2008-05-04 19:56:28 +00:00
plunky
fcf1772a80
after the "struct disk" is finished with, it should be
...
destroyed with disk_destroy(9) to stave off LOCKDEBUG
panics.
2008-05-03 08:23:41 +00:00
cegger
c92d850bb3
AMD's APM Volume 2 says 'All control registers are 64bit in long mode'.
...
Fix the CR0 prototype to match this (the asm implementation is correct though).
OK ad
2008-04-30 00:16:30 +00:00
martin
ce099b4099
Remove clause 3 and 4 from TNF licenses
2008-04-28 20:22:51 +00:00
bouyer
0fef0ddf92
xengnt_more_entries(): fix memory leak, noticed by Jean-Yves Migeon
2008-04-27 19:28:45 +00:00
ad
1a1d0b7f30
Include null IPI functions if !MULTIPROCESSOR.
2008-04-25 13:26:27 +00:00
cegger
a9291fce0d
keep up with x86/x86/cpu.c, rev. 1.33:
...
Gracefully handle a condition where apic id >= X86_MAXPROCS rather than panicing.
2008-04-24 20:44:02 +00:00
cegger
20161b7289
Access Xen's vcpu info structure per-CPU.
...
Tested on i386 and amd64 (both dom0 and domU) by me.
Xen2 tested (both dom0 and domU) by bouyer.
OK bouyer
2008-04-21 15:15:33 +00:00
cegger
781f72a712
Use interrupt biglock wrapper as in x86/x86/intr.c
...
This change is based on http://mail-index.netbsd.org/port-amd64/2004/02/22/0000.html
OK bouyer
2008-04-19 13:46:12 +00:00
cegger
e1f7ded34b
g/c unused ioapic_bsp_id.
...
Per discussion with bouyer.
2008-04-18 15:32:46 +00:00
bouyer
ad2fcdc36d
Do not set ioapic_bsp_id in cpu_attach_common(). It's already initialized
...
in cpu_attach(), and doing it here will overwrite the cpu_number of the
physical CPU with the one from the virtual CPU (which is always 0).
XXX is ioapic_bsp_id read somewhere ?
2008-04-17 21:25:00 +00:00
yamt
dc985aec9b
cpu_debug_dump: s/curproc/curlwp/ in a message.
2008-04-17 14:01:03 +00:00
cegger
7d2699a931
reduce diff to x86/x86/cpu.c
2008-04-17 12:24:44 +00:00
cegger
19a5965092
Use device_xname(). From Manuel Bouyer.
2008-04-16 20:50:27 +00:00
cegger
af33bdeef3
device_t / softc split
...
reviewed, tested and approved by bouyer
2008-04-16 18:41:48 +00:00
cegger
7f5c40b741
- use POSIX integer types
...
- ansify functions
2008-04-14 13:38:03 +00:00
cegger
78ad08323e
reduce diff to x86/x86/cpu.c
2008-04-13 22:29:38 +00:00
cegger
f578477b0b
- device_t/softc split
...
- ansify
2008-04-13 21:59:15 +00:00
cegger
f5bd7c2196
use aprint_*_dev and device_xname
2008-04-06 07:23:57 +00:00
cegger
e34ebae1b0
remove unused file
...
OK bouyer
2008-04-04 20:15:07 +00:00