Commit Graph
774 Commits
Author SHA1 Message Date
Christian Limpach 42ee90deeb [linux] Update to linux-2.6.16.29.
Signed-off-by: Christian Limpach <Christian.Limpach@xensource.com>
2006-09-19 14:26:22 +01:00
kfraser@localhost.localdomain 977599dbcb Clean up dom0_vga_console_info structure for v3.0.3.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-09-18 18:17:54 +01:00
kfraser@ubuntu.eng.hq.xensource.com 5e1a83e8f5 Build fix. 2006-09-08 15:46:54 -07:00
kfraser@ubuntu.eng.hq.xensource.com 160a8ad575 [LINUX] console: ensure virtual console is disabled if mfn/evtchn
not provided.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-09-08 14:49:00 -07:00
ssmith@weybridge.uk.xensource.com 114411f240 Add support for netif frontends which don't support checksum offload.
Signed-off-by: Steven Smith <sos22@cam.ac.uk>
2006-09-04 16:38:24 +01:00
kaf24@firebug.cl.cam.ac.uk 8b7ee4cecb [XENBUS] Make frontend drivers shutdown cleanly.
This patch makes frontend drivers being shutdown when devices_shutdown()
is called and walks down the device tree.  Most of it is handled by the
xenbus core, which got a new function for the bus->shutdown callback.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2006-09-01 00:42:14 +01:00
kaf24@firebug.cl.cam.ac.uk 5182367c40 [XENBUS] Introduce new "online" node for backend drivers.
Driver changes:  Make backend drivers check it when entering Closed
state, only unregister devices when the "online" node is either "0" or
not present.  The later maintains backward compatibility.

Tools changes:  Update "online" node when creating and hot-unplugging
devices.

Background: When kexec'ing a new kernel, the old kernel's frontend
driver will shutdown, but the backend device should *NOT* disappear
due to that, so the new kernel instance can reconnect.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2006-09-01 00:33:19 +01:00
kaf24@firebug.cl.cam.ac.uk e957a7cb4a Add xenbus_strstate() helper function for more readable debug output.
From: Gerd Hoffmann <kraxel@suse.de>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-09-01 00:20:42 +01:00
kaf24@firebug.cl.cam.ac.uk 02980865d0 [NET] front: move register_netdev() + sysfs attribute registering from create_netdev() into the new open_netdev() function.
open_netdev is called as very last thing in netdev_probe.

This closes at least one initialization race: uninitialized
mac address is visible for a short time in
/sys/class/net/${if}/address

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2006-08-30 18:40:40 +01:00
akw@devbox.site 34cac35129 Small blktap cleanups.
Signed-off-by: Andrew Warfield <andy@xensource.com>
2006-08-29 15:55:24 -07:00
kfraser@localhost.localdomain 9a0c7e1900 [LINUX] Remove hypercall permission checks from privcmd driver.
This will allow the tools management to be revised independently
of dom0 kernel interfaces. Currently tools cannot be 'smarter'
than the kernel in terms of hypercalls they know about, because
the kernel disallows access to any hypercalls it does not know
about.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-24 17:58:28 +01:00
kfraser@localhost.localdomain b3ea76b1e0 [HVM] Clean ups for PV-on-HVM drivers. In particular, platform-pci
driver can now handle multi-page hypercall stub areas.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-22 17:16:58 +01:00
kaf24@localhost.localdomain e7b9a93ed4 [XENBUS] Allow user of xenbus_read_driver_state() to distinguish
absence of state field in xenstore by returning XenbusStateUnknown
rather than XenbusStateClosed.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-19 14:28:10 +01:00
kaf24@localhost.localdomain 35f4fc005c [LINUX] Replace uses of CONFIG_XEN_PRIVILEGED_GUEST with is_initial_xendomain().
Signed-off-by: Jan Beulich <jbeulich@novell.com>
2006-08-19 12:08:12 +01:00
kaf24@localhost.localdomain 9f60d1c88b [NET] front: Fix receive path for auto-translated guests, so that
driver balloon allowance is properly accounted.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-19 11:39:04 +01:00
kaf24@localhost.localdomain 8da2f6c59c [NET] front: Fix tx buffer leak in teardown path. Fix rx-buffer
cleanup: cannot free skbuffs until their memory is remapped by
multicall.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-19 11:08:40 +01:00
kaf24@localhost.localdomain 587411253f [NET] front: Fix rx buffer leak when tearing down an interface.
Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2006-08-19 10:58:07 +01:00
kaf24@localhost.localdomain a2a686df00 [XENBUS] Cleanup correctly on suspend, unregister watches.
Again needed for domU kexec, so the next kernel instance can register
watches without running into -EBUSY.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2006-08-19 10:21:02 +01:00
kaf24@localhost.localdomain 7d0aeaacea [NET/BLK] back: Change the netback and blkback device drivers to allow
and handle frontend state transition from "Closing" to "Initialising".
Instead of destroying the backend device then they wait for a
reconnect from the frontend.  Needed for domU kexec support, to hand over
devices from one kernel instance to the next.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2006-08-19 10:20:08 +01:00
kaf24@localhost.localdomain eafec813bf [BALLOON] Make /proc/xen/ballon contain driver_pages (aka "driver headroom") unconditionally.
Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2006-08-19 10:17:48 +01:00
kaf24@localhost.localdomain 7ee41b61d8 [XENBUS] A few cleanups.
* move function prototypes to the top of the file.
  * uses the "struct bus_type" function pointers instead
    of overwriting the "struct device_driver" ones for
    xenbus_dev_probe() and xenbus_dev_remove().

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2006-08-19 10:15:01 +01:00
kfraser@localhost.localdomain 5b25e510fe [NET] front: Improve correctness when there is no connection to backend driver.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-17 19:11:14 +01:00
kfraser@localhost.localdomain d72404ae25 [NET] front: Allow driver to be built for an HVM guest.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-17 18:45:59 +01:00
kfraser@localhost.localdomain c3bc0c6a72 [NET] front: Allow driver to be built against kernels which do not
have extended checksum-offload info fields in teh skbuff structure.
Based on a patch from Steven Smith <ssmith@xensource.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-17 17:08:19 +01:00
kfraser@localhost.localdomain 5455b6130d [NET] front: Make netfront compile against kernels without the GSO patch.
Signed-off-by: Steven Smith <ssmith@xensource.com>
2006-08-17 16:57:43 +01:00
kfraser@localhost.localdomain 6c90c31b47 [LINUX] Fix return value of gnttab_resume().
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-17 16:57:16 +01:00
kfraser@localhost.localdomain dc043970e7 [HVM] Allow blkfront driver to be built for an HVM guest.
Signed-off-by: Steven Smith <ssmith@xensource.com>
2006-08-17 16:33:42 +01:00
kfraser@localhost.localdomain 05592e02ad [HVM] Allow xenbus to run in an HVM guest.
Signed-off-by: Steven Smith <ssmith@xensource.com>
2006-08-17 16:32:30 +01:00
kfraser@localhost.localdomain a03d12d189 [LINUX] Allow xenbus to be built as a module.
Signed-off-by: Steven Smith <ssmith@xensource.com>
2006-08-17 16:28:47 +01:00
kfraser@localhost.localdomain a8475c2e49 [HVM] Avoid accessing start_info from xenbus as far as possible, since
HVM domains do things slightly differently.
Signed-off-by: Steven Smith <ssmith@xensource.com>
2006-08-17 16:22:08 +01:00
kfraser@localhost.localdomain 738c1ffa96 [HVM] Make grant tables functions work in PV-on-HVM drivers.
Signed-off-by: Steven Smith <ssmith@xensource.com>
2006-08-17 16:21:08 +01:00
ssmith@weybridge.uk.xensource.com 340282216e [NET] Fix ``rx->offset: 10, size: 4294967295'' bug.
Signed-off-by: Steven Smith <sos22@cam.ac.uk>
2006-08-17 12:46:45 +01:00
kfraser@localhost.localdomain fb837a6f8e [NET] back: Initialise first fragment properly
The first fragment is used to store the pending_idx of the leading
txreq if it doesn't fit in the head area.  When it does fit into
the head we need to ensure that the first fragment contains a value
that is not equal to pending_idx as that's what we use to distinguish
between the two cases in a a number of places.

This patch sets the first fragment to ~0 which is not equal to any
valid pending_idx.  Without this initialisation, we may double-free
a pending_idx if the first fragment happened to contain a value
equal to it (this usually happened with pending_idx 0).

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2006-08-17 11:32:39 +01:00
kfraser@localhost.localdomain 85107eee34 [NET] front: Fix indentation of a comment.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-16 16:14:03 +01:00
kfraser@localhost.localdomain e1811a4877 [NET] front: Allow packets to be copied on the receive path instead of flipped.
Signed-off-by: Steven Smith <ssmith@xensource.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-16 16:11:53 +01:00
kfraser@localhost.localdomain 38cf7a9127 [NET] back: Change 'copyall' xenstore node to 'request-rx-copy', which
is slightly more informative and mirrors the 'feature-rx-copy' name
which communicates the feature in the other direction (back->front).
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-16 16:11:12 +01:00
kfraser@localhost.localdomain b8f69c1f51 [NET] back: Support copying packets to the frontend on receive path.
Signed-off-by: Steven Smith <ssmith@xensource.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-16 16:01:00 +01:00
kfraser@localhost.localdomain 23f3715358 [NET] front: Fix features on resume when csum is off
When the netfront driver is resumed the features are renegotiated with
the backend.  However, I forgot take into account the status of the TX
checksum setting.  When TX checksum is disabled by the user, we cannot
enable SG or TSO since both require checksum offload.  This patch
makes
xennet check the checksum setting before renegotiating SG or TSO.

This bug was fixed thanks to a report from Anton Burtsev.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2006-08-16 14:26:59 +01:00
shand@kneesaa.uk.xensource.com 4aedf8adc3 Whitespace clean-ups.
Signed-off-by: Steven Hand <steven@xensource.com>
2006-08-16 11:36:13 +01:00
ack@localhost.localdomain 123d19164c merge 2006-08-15 16:04:12 +01:00
kfraser@localhost.localdomain 121ec85fcf Clean up console fields in start_info structure. Add compat code for
older kernels so they can use the old start_info API.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-15 15:50:36 +01:00
ack@localhost.localdomain 7df96ad145 Don't copy all incoming fragmented packets.
Some drivers (ie the e1000) hand up packets with the header in
the main area and the data in a fragment. Unless there are
multiple references on any of the data, we don't need to
make a full copy of those packets.
Signed-off-by: Emmanuel Ackaouy <ack@xensource.com>
2006-08-15 15:48:31 +01:00
ack@localhost.localdomain 543b6e24b0 Adjust truesize in netfront to more closely reflect real data payload
plus supervisor overheads but keeping out gross hypervisor overheads.
Signed-off-by: Emmanuel Ackaouy <ack@xensource.com>
2006-08-15 11:13:04 +01:00
kfraser@localhost.localdomain 20e8909335 [LINUX] Oney 'nosmp' and 'max_cpus=' command line options.
Based on a patch from Jan Beulich.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-14 16:12:43 +01:00
kfraser@localhost.localdomain ff843ce876 [NET] back: Fix an __init that should be an __exit in loopback driver.
This was pointed out by the newer build system used in 2.6.18-rc4.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2006-08-14 15:26:37 +01:00
kfraser@localhost.localdomain 2b88d7ed5f [LINUX] Provide a handy macro for detrmining if we are domain0.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-14 14:44:31 +01:00
kfraser@localhost.localdomain daff910c6c [XENBUS] Avoid direct use of xen_start_info. It's unevailable when
building as a separate driver for an HVM guest.
Signed-off-by: Steven Smith <ssmith@xensource.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-14 14:17:26 +01:00
kfraser@localhost.localdomain 3847c96fcf [NET] back: Tidy up and remove communications via references to global structures.
Signed-off-by: Steven Smith <ssmith@xensource.com>
2006-08-14 11:32:24 +01:00
kaf24@localhost.localdomain d086c32a4a [NET] front: Restore 16 bytes of reservation
By replacing dev_alloc_skb with alloc_skb we need to do the 16-byte
reservation ourselves.  Also, it's unnecessary to align the size
when calling alloc_skb since the alignment is an implementation
detail of alloc_skb and it already takes care of it for us.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2006-08-12 15:56:00 +01:00
kaf24@localhost.localdomain 5940b606ba [LINUX][XENBUS] Wait for devices to connect when frontend driver is loaded as a module.
Thsi fixes problems where a driver is loaded from a script, and the
following parts of the script depend on devices having connected
by the time the modprobe/insmod returns.

Based on a tested patch from Rik van Riel at Red Hat.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-12 15:50:25 +01:00