Commit Graph

128 Commits

Author SHA1 Message Date
bouyer
b3de8f0978 Define xen devices in i386/conf/majors.i386. This makes sure there won't
be conflics with regular i386 kernels.
2005-03-11 20:44:37 +00:00
bouyer
153285b0bd Properly define NISA and NPCI; cleanup use of NISA and NPCI. 2005-03-11 20:39:39 +00:00
bouyer
45f2a74300 Print the irq used. 2005-03-11 15:51:25 +00:00
bouyer
9375b9c69f Wrap some ISA stuff in DOM0OPS, so that DOMU kernels build again. 2005-03-11 15:50:25 +00:00
bouyer
111fb1ed01 increment couters at the right place, so that deffered interrupts are
accounted too.
2005-03-11 15:48:40 +00:00
bouyer
a4dee0e2b9 The extent allocation was off by one, causing us to use unallocated
kernel VA, and overflow the _xen_shm_vaddr2ma[] array.
2005-03-11 15:47:27 +00:00
bouyer
5ce7842238 Add missing STI() from i386/i386/vector.S 1.15.
This seems to fix the network hang issues I noticed with NetBSD guests
on heavy network I/O.
2005-03-11 15:45:54 +00:00
bouyer
fb78ac6542 Properly track connected/disconnected state, and set IFF_RUNNING only when
in connected state. Avoid a panic when the interface is configured
before being in connected state (e.g. when configured automatically by xend
when a domain is created).
2005-03-11 11:34:32 +00:00
bouyer
145cc1138c Clean up ISA attachement, and do not try to attach it at hypervisor if
it has already been attached at pcib.
2005-03-10 22:10:11 +00:00
bouyer
f7dcd8b304 Report which IRQ is used. 2005-03-10 21:44:31 +00:00
bouyer
bdb48992d1 Bump blkif_pdev_t from 16 to 32 bits, to fix the dev_t problem on NetBSD.
Remove the padding bits from blkif_extent_t, so that the message size doesn't
change. You'll need xentools20-2.0.3nb1 if you upgrade your kernel
(the old tools didn't zero out the padding bits, and a new kernel will
interpret them as part of the device number).
2005-03-10 19:47:08 +00:00
bouyer
82981f9fda - Don't reallocate transmit pages from xennetback_get_xmit_page(), as the
previously-allocated pages may not have been loaned to the remote domain
  yet. Let the called deal with this.
- clean up the TX and RX loops to use less MASK_NETIF_xX_IDX() calls
- When we're done with the queued TX requests, try again in case some new
  ones are available
- avoid leaking a xmit page if we queued NB_XMIT_PAGES_BATCH requests.
- remove dead code.
2005-03-10 17:12:12 +00:00
bouyer
94d162a5c1 Use the same type as xen in the request descriptor.
Change the logic in the request processing loop so that we don't
think the ring is empty when is has BLKIF_RING_SIZE requests.
2005-03-10 17:05:38 +00:00
bouyer
577e77f21d Add some DIAGNOSTIC cheks
Protect the callback queue with splvm()
XXX some debug printf about the callback stuff is left here. This is because
    I've not been able to trigger this condition yet, so I've left them
    until we sure the code works as intended.
2005-03-10 17:02:20 +00:00
xtraeme
840f589aad Add missing #ifdef DDB for db_max_line() 2005-03-10 00:31:48 +00:00
matt
290234fa8a Update to new bus_dma semantics. 2005-03-10 00:20:54 +00:00
xtraeme
d2088067fe Add missing #ifdef DDB, ok'ed by bouyer@. 2005-03-09 23:40:08 +00:00
xtraeme
3c451cf142 Now that GENERIC* kernels are removed, remove references. 2005-03-09 23:24:50 +00:00
bouyer
e9666f30ad Merge the bouyer-xen2 branch. This add supports for the Xen 2.0 virtual
machine kernel (both privileged and non-privileged domains), and remove support
for the old xen 1.2.
2005-03-09 22:39:19 +00:00
simonb
ff8f0b23c9 Add COMPAT_20 (and COMPAT_16 in some cases) to kernel config files
that didn't have those options but had other earlier compat options.
2005-02-25 13:46:48 +00:00
dsl
1122e62a52 Add FFS_NO_SNAPSHOT - commented out in XEN 2005-02-18 21:12:36 +00:00
dsl
4822cbaae2 Invert FFS_SNAPSHOT to FFS_NO_SNAPSHOT 2005-02-18 21:05:50 +00:00
dsl
05e2f6ebdb Add 'option FFS_SNAPSHOT' to most of the config files.
Commented out for kernels that appear to hace space constraints.
2005-02-11 08:25:53 +00:00
jmc
89f2c62a84 Add opt_scsipi_debug.h to list since compat_linux pulls in scsipi now for sg
driver
2005-02-04 05:59:51 +00:00
jmc
672ed23467 vfr.c is still needed on the trunk or GENERIC doesn't compile... 2005-02-04 05:59:23 +00:00
bouyer
52a37d39ea vfr.c doesn't exists any more. 2005-02-03 21:38:59 +00:00
hannken
d5fbb6936f Add file system snapshots to kernel configs.
- Ffs internal snapshots get compiled in unconditionally.

- File system snapshot device fss(4) added to all kernel configs that
  have a disk.  Device is commented out on all non-GENERIC kernels.

Reviewed by: Jason Thorpe <thorpej@netbsd.org>
2005-01-31 16:54:32 +00:00
rumble
de81c2c878 Sprinkle options UFS_DIRHASH on GENERIC kernels. It's presently
commented out and labeled experimental pending further review and
testing.
2005-01-28 03:19:49 +00:00
cube
ec53a61e98 Add tap(4) support to a random^Wcarefully chosen set of kernel configs.
All those kernels have a line for both tun and bridge, and if either is
commented out, tap is commented out also.  With the exception of i386's
GENERIC_TINY.

XXX:  we _need_ some way of making this more simple.
2005-01-17 15:28:51 +00:00
yamt
1207308b90 for in-kernel maps,
- allocate kva for vm_map_entry from the map itsself and
  remove the static limit, MAX_KMAPENT.
- keep merged entries for later splitting to fix allocate-to-free problem.
  PR/24039.
2005-01-01 21:00:06 +00:00
tls
c1545077ff Terminate the domain on RB_HALT, not just on reboot. This avoids looping
around a cngetc() that will never return while "halted", which is rude,
and which also requires domain 0 to not just restart us, but kill us
first.  Suggestion from Michael Kukat (though this change is not the
same as the one he suggested).

Will cngetc() actually return something when running in domain 0 with a
VGA console?  I don't think it will; if it actually does, we should make
this behaviour depend on whether we're in domain 0 or some other domain.
2004-12-14 18:07:42 +00:00
tls
2f6318305f Change confusing name HYPERVISOR_yield to HYPERVISOR_sched_op as suggested
by Michael Kukat.
2004-12-14 17:13:56 +00:00
tls
db47b27974 HYPERVISOR_yield is one of the hypervisor calls that's "overloaded"; it
does different things depending what's in %ebx.

We weren't setting %ebx here *at all*; so we did not get SCHEDOP_yield,
which was what was wanted; so unpredictable things happened, notably
immediate return to the NetBSD idle loop, in other words spinning on CPU.
Definitely not cool!

Michael Kukat caught this one and suggested this fix on port-xen.
2004-12-13 19:33:56 +00:00
jmc
d33fb8436c Fix some improper casts now that b_count is an int 2004-12-10 20:05:05 +00:00
christos
142373a47b dkvar.h now needs bufq.h, and now xen compiles again. 2004-12-10 18:54:08 +00:00
christos
78db5aa65d catch up with field name rename. 2004-12-10 18:53:43 +00:00
christos
d0f26be538 Just when I thought it was all working... Unfortunately cpu.h defines
clockframe -> intrframe, but that is included too late, because this
file includes systm.h and it is in the path of including systm.h. Fix
it by not including <systm.h>; it was only needed for the panic() calls
which I have disabled, since they look more like debugging calls to me.
Also add forward struct declaration for trapframe.
2004-12-10 18:51:15 +00:00
christos
d4ea0343bc don't use va_list here; use _BSD_VA_LIST_ because we could be included
before va_list is defined. This is common practice for kernel header
files (syslog.h)
2004-12-10 18:49:02 +00:00
christos
174c6b074b Move the disable_intr and enable_intr functions from xenfunc.h to cpufunc.h,
because the x86/intr.h needs them and does not include xenfunc.h. Including
xenfunc.h in cpufunc.h is a clear lose because xenfunc.h needs a boatload
of include functions in order to compile.
2004-12-10 18:47:52 +00:00
christos
30fc143afa Add COMPAT_BSDPTY to the rest of the config files. 2004-11-10 17:54:02 +00:00
christos
eec07087aa Add COMPAT_BSDPTY on all the kernels that have COMPAT options. 2004-11-10 17:25:21 +00:00
jmc
97b060e9aa This needs u16/u32/u64 defined if it's going to include internals (otherwise
it has to load hypervisor.h which has all sorts of other problems assuming
_KERNEL). Provide the defs before including hypervisor-if.h and then turn
them off afterwards (ala the same as hypervisor.h does
2004-11-10 02:52:11 +00:00
yamt
05f25dcc2a move buffer queue related stuffs from buf.h to their own header, bufq.h. 2004-10-28 07:07:35 +00:00
yamt
c0ebe301d7 don't reference kernel_lock directly. 2004-10-23 21:27:33 +00:00
thorpej
dc2f2fbe74 Centralize the declaration of booted_device and booted_partition. 2004-10-23 17:07:37 +00:00
thorpej
42b8fac3b8 Move boot device detection code from i386 and amd64 ports to x86_autoconf.c.
Rename i386_alldisks and x86_64_alldisks to x86_alldisks, adjust other
references to compensate.
2004-10-20 04:20:05 +00:00
tls
849c42925b Changes from Christian Limpach to improve timekeeping on NetBSD/xen by
actually adjusting the time correctly (calling hardclock as needed, not
just blindly every time Xen schedules us) based on Xen's idea of the
time in the shared page.

Xen source repo change info:
 ChangeSet
   2004/09/22 13:47:22+01:00 cl349@freefall.cl.cam.ac.uk
   Fix time.

 netbsd-2.0-xen-sparse/sys/arch/xen/xen/clock.c
   2004/09/22 13:47:21+01:00 cl349@freefall.cl.cam.ac.uk +28 -3
   Don't call hardclock on spurious timer interrupt and call hardclock
   for missed interrupts.

 netbsd-2.0-xen-sparse/sys/arch/xen/conf/XEN
   2004/09/22 13:47:21+01:00 cl349@freefall.cl.cam.ac.uk +0 -1
   Don't need custom HZ value any longer.

: ----------------------------------------------------------------------
2004-09-23 02:24:22 +00:00
yamt
d2fe4b34bb move some per-cpu data definitions to MI place so that they can be modified
without touching all ports.  discussed on tech-kern@.
2004-09-22 11:32:02 +00:00
skrll
f7155e40f6 There's no need to pass a proc value when using UIO_SYSSPACE with
vn_rdwr(9) and uiomove(9).

OK'd by Jason Thorpe
2004-09-17 14:11:20 +00:00
tls
74ec9a5fcc Actually mix samples into the kernel RNG pool. There's a buglet here: all
disk samples are reported as belonging to the first disk.
2004-09-15 04:55:21 +00:00