aboutsummaryrefslogtreecommitdiffstats
path: root/linux-2.6-xen-sparse
Commit message (Collapse)AuthorAgeFilesLines
...
| * [HVM] Add a concept of HVM parameters to the hypervisor.kfraser@localhost.localdomain2006-08-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | Each HVM domain has a space of HVM parameters associated with it, and these can be manipulated via a new hvm_op hypercall. This means that the hypervisor no longer needs to parse the hvm_info table, so remove that code. Signed-off-by: Steven Smith <ssmith@xensource.com> Signed-off-by: Keir Fraser <keir@xensource.com>
* | [IA64] Add EXPORT_SYMBOL to modularize netfront/netbackawilliam@xenbuild.aw2006-08-071-1/+4
| | | | | | | | | | | | | | | | | | Add EXPORT_SYMBOLs to allow netfront and netback to be used as modules. Signed-off-by: Akio Takebe <takebe_akio@jp.fujitsu.com>
* | [IA64] Remove P==M supportawilliam@xenbuild.aw2006-08-0414-161/+12
| | | | | | | | | | | | | | | | | | Remove the old P==M dom0 memory model support. It's likely broken by now anyway. Signed-off-by: Alex Williamson <alex.williamson@hp.com>
* | [IA64] fix vDSO paravirtualization.awilliam@xenbuild.aw2006-08-032-19/+24
| | | | | | | | | | | | | | | | | | sometimes it fails to clear event mask. It results in domain's unstability. And one typo. Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
* | merge with xen-unstable.hgawilliam@xenbuild.aw2006-08-0216-273/+880
|\|
| * [PCI] Transparent virtualization for pcifront and pciback.kfraser@localhost.localdomain2006-08-022-4/+6
| | | | | | | | | | Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
| * [LINUX] Allows userspace tools on a domU to set up a watch on the xenstore.kfraser@localhost.localdomain2006-08-021-0/+114
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It does this by intercepting XS_WATCH requests written to /proc/xen/xenbus and then re-submitting the request to the in-kernel xenstore interface, in linux-2.6-xen-sparse/drivers/xen/xenbus/xenbus_xs.c. When a callback occurs, an in-kernel function is invoked, which then reconstructs a response in the format expected by userspace, and sends this response through /proc/xen/xenbus. It was necessary to add some supporting infrastructure to linux-2.6-xen-sparse/drivers/xen/xenbus/xenbus_dev.c, such as an additional mutex to protect the response queue and a list of active watches associated with each connection. Signed-off-by: Michael LeMay <mdlemay@epoch.ncsc.mil>
| * [LINUX] Clarify a confusing error message in xenbus_probe.c.kfraser@localhost.localdomain2006-08-021-1/+3
| | | | | | | | | | Signed-off-by: Michael LeMay <mdlemay@epoch.ncsc.mil>
| * [PCI] back: Fix potential infinite loop in pcistub_match_one().kfraser@localhost.localdomain2006-08-021-0/+4
| | | | | | | | | | | | | | | | | | The for loop in pcistub_match_one will loop forever if the dev->bus->self links to itself at the uppermost bridge. Adding a check to prevent linking back in on itself prevents this. Signed-off-by: Jon Mason <jdmason@us.ibm.com>
| * [LINUX] Fix save/restore (broken by my own GSO tweaks).kfraser@localhost.localdomain2006-08-011-1/+1
| | | | | | | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
| * [LINUX] Do not early-unpin pagetables that contain foreign mappings.kfraser@localhost.localdomain2006-08-016-2/+11
| | | | | | | | | | | | | | | | | | This fixes a bug whereby foreign pages were freed by the unpin, which then become owned by the local domain before it destroys its ptes. It therefore (erroneously) detects the mappings as local and so updates reference counts, leading to crashes. Signed-off-by: Keir Fraser <keir@xensource.com>
| * [NET] Enable TCPv4 segmentation offload in front/back drivers.kfraser@localhost.localdomain2006-08-013-13/+12
| | | | | | | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
| * [NET] back: Transmit TSO packets if supportedkfraser@localhost.localdomain2006-07-313-21/+78
| | | | | | | | | | | | | | | | | | | | | | This patch adds TSO transmission support to the backend. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Disable for now, as domU->dom0 direction. Signed-off-by: Keir Fraser <keir@xensource.com>
| * [NET] front: Add TSO supportkfraser@localhost.localdomain2006-07-311-4/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds TCP Segmentation Offload (TSO) support to the frontend. It also advertises this fact through xenbus so that the frontend can detect this and send through TSO requests only if it is supported. This is done using an extra request slot which is indicated by a flag in the first slot. In future checksum offload can be done in the same way. Even though only TSO is supported for now the code actually supports GSO so it can be applied to any other protocol. The only missing bit is the detection of host support for a specific GSO protocol. Once that is added we can advertise all supported protocols to the guest. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Disable for now, as in domU->dom0 direction. Signed-off-by: Keir Fraser <keir@xensource.com>
| * [NET] back: Transmit SG packets if supportedkfraser@localhost.localdomain2006-07-314-115/+304
| | | | | | | | | | | | | | | | | | This patch adds scatter-and-gather transmission support to the backend. This allows the MTU to be raised right now and the potential for TSO in future. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
| * [NET] front: Add SG supportkfraser@localhost.localdomain2006-07-311-129/+212
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds scatter-and-gather support to the frontend. It also advertises this fact through xenbus so that the backend can detect this and send through SG requests only if it is supported. SG support is required to support skb's larger than one page. This in turn is needed for either jumbo MTU or TSO. One of these is required to bring local networking performance up to a level that is acceptable. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
| * [NET] back: Added tx queuekfraser@localhost.localdomain2006-07-314-8/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds a tx queue to the backend if the frontend supports rx refill notification. A queue is needed because SG/TSO greatly reduces the number of packets that can be stored in the rx ring. Given an rx ring with 256 entries, a maximum TSO packet can occupy as many as 18 entries, meaning that the entire ring can only hold 14 packets. This is too small at high bandwidths with large TCP RX windows. Having a tx queue does not present a new security risk as the queue is a fixed size buffer just like the rx ring. So each guest can only hold a fixed amount of memory (proportional to the tx queue length) on the host. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Cannot BUG_ON netbk_queue_full yet !netbk_can_queue, as this can be triggered by a misbehaving client. Set req_event appropriately when stopping the packet queue, or we will not receive a notification. Signed-off-by: Keir Fraser <keir@xensource.com>
* | [IA64] rewrite of last util.c patchawilliam@xenbuild.aw2006-07-311-5/+3
|/ | | | | | | | | Rewrite utils.c patch to be less ugly: do not set area->phys_addr, recompute phys_addr in free_vm_area. Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
* [NET] front: Fix the build (broken my me a few changesets back).kfraser@localhost.localdomain2006-07-281-0/+1
| | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
* [TPM] Remove some stale code from the TPM backend driver. The codekfraser@localhost.localdomain2006-07-282-48/+0
| | | | | | | | used to be used for sending of vTPM control commands, but now this is all done with the hotplug scripts. Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
* [LINUX] update_va_mapping multicalls: Use MULTI_UVMxxx_INDEX where possible.kfraser@localhost.localdomain2006-07-281-9/+3
| | | | | Signed-off-by: Jan Beulich <jbeulich@novell.com>
* [PCI] Pcifront for ia64.kfraser@localhost.localdomain2006-07-284-8/+63
| | | | | | | | | Added in Kconfig. On ia64, use ia64 sysdata instead of pcifront genuine one. Fix a warning on xenbus.c Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
* [NET] front: Added feature-rx-notifykfraser@localhost.localdomain2006-07-281-2/+10
| | | | | | | | | | | | | | This patch adds support to the frontend for notifying the backend whenever the rx ring is refilled. This is required in order for the backend to get a tx queue. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Modified to only send notification if req_event index is set appropriately. Signed-off-by: Keir Fraser <keir@xensource.com>
* [NET] back: Replace netif->status with netif_carrier_okkfraser@localhost.localdomain2006-07-283-28/+12
| | | | | | | | | | | | | | | | | The connection status to the frontend can be represented using netif_carrier_ok instead of netif->status. As a result, we delay the construction of the dev qdisc until the carrier comes on. This is a prerequisite for adding a tx queue. By the same token, netif->active is now simply the conjunction of netif_running and netif_carrier_ok so it too can be removed. Because netif_carrier_off/netif_carrier_on and rtnl_lock all entail memory barriers, there is no need to have extra memory barriers around them. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
* [NET] front: Move rx req pushing to one spotkfraser@localhost.localdomain2006-07-281-4/+6
| | | | | | | | | | This patch moves all rx request pushing to network_alloc_rx_buffers. This is needed to reduce churn for TSO. More importantly, this makes it easier to send notifications when adding rx requests which is required for having a queue in dom0. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
* [NET] front: Clean up rx ring recovery.kfraser@localhost.localdomain2006-07-281-12/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Keir Fraser <keir@xensource.com> This is an update to c/s 10855:03c8002068d9d60c7bbfc2f41af975e09b2e2211 which should have contained the following changeset message (rather than 'Merge.'). [NET] front: Stop using rx->id With the current protocol for transferring packets from dom0 to domU, the rx->id field is useless because it can be derived from the rx request ring ID. In particular, rx->id = (ring_id & NET_RX_RING_SIZE - 1) + 1; This formula works because the rx response to each request always occupies the same slot that the request arrived in. This in turn is a consequence of the fact that each packet only occupies one slot. The other important reason that this works for dom0=>domU but not domU=>dom0 is that the resource associated with the rx->id is freed immediately while in the domU=>dom0 case the resource is held until the skb is liberated by dom0. Using this formula we can essentially remove rx->id from the protocol, freeing up space that could be instead be used by things like TSO. The only constraint is that the backend must obey the rule that each id must only be used in the response that occupies the same slot as the request. The actual field of rx->id is still maintained for compatibility with older backends. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
* Merge.kfraser@localhost.localdomain2006-07-281-22/+61
|
* [PCI] Per-device permissive flag (replaces global permissive flag).kfraser@localhost.localdomain2006-07-283-4/+70
| | | | | Signed-off-by: Chris Bookholt <hap10@tycho.ncsc.mil>
* [PCI] Allow per-device configuration for fine-grained control over PCIkfraser@localhost.localdomain2006-07-287-28/+375
| | | | | | | | | | | | | | | | | | | | | | | | configuration space writes, with a goal that was also previously described by Ryan: "Permissive mode should only be used as a fall back for unknown devices. I think the correct solution for dealing with these device-specific configuration space registers is to identify them and add the device-specific fields to the overlay. This patch adds a special configuration space handler for network cards based on the tg3 linux network device driver. This handler should allow for reads/writes to all of the configuration space registers that the tg3 driver requires." This patch attempts to address concerns with Ryan's original submission by moving policy from the dom0 kernel into dom0 user-space. As new quirky devices emerge they can be incorporated into the user-space policy. An added benefit is that changes to the policy are effective for domains created after the changes are written (no need rebuild the hypervisor or restart xend). Signed-off-by: Chris Bookholt <hap10@tycho.ncsc.mil>
* [LINUX] Clean up reboot.c suspend handling.kfraser@localhost.localdomain2006-07-282-55/+62
| | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
* merge with xen-unstable.hgawilliam@xenbuild.aw2006-07-272-5/+8
|\
| * Revert previous changeset. Needs more review.kfraser@localhost.localdomain2006-07-273-8/+7
| | | | | | | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
| * [NET] back: Replace netif->active with netif_carrier_okkfraser@localhost.localdomain2006-07-273-7/+8
| | | | | | | | | | | | | | | | | | | | The connection status to the frontend can be represented using netif_carrier_ok instead of netif->active. As a result, we delay the construction of the dev qdisc until the carrier comes on. This is a prerequisite for adding a tx queue. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
| * [NET] back: Make use of the simplicity of tasklets in net_rx_actionkfraser@localhost.localdomain2006-07-271-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tasklets have the property that each one is running on only one CPU at any time. This means that you don't have to worry about the tasklet racing against itself. Therefore any resources used by just a single tasklet does not need to be guarded by locks. Since net_rx_action is the only user of alloc_mfn, we can remove the mfn_lock that guard it. The notify_list array is huge by Linux standards so placing it on the stack is unsafe. Since net_rx_action is not re-entrant, we can simply make it static. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
| * [NET] front: Zero gso features/padkfraser@localhost.localdomain2006-07-271-0/+2
| | | | | | | | | | | | | | Set unused gso features/pad values to zero for forward-compatibility. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
* | [IA64] remove a debug messageawilliam@xenbuild.aw2006-07-271-2/+0
| | | | | | | | | | | | Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
* | merge with xen-unstable.hgawilliam@xenbuild.aw2006-07-266-26/+41
|\|
| * [LINUX] Disable configuration of ARCH_SPARSEMEM_ENABLE on x86/64.kfraser@localhost.localdomain2006-07-261-1/+1
| | | | | | | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
| * Fix Linux so that it does not set a timeout if there are no pendingkfraser@localhost.localdomain2006-07-251-7/+14
| | | | | | | | | | | | | | | | | | timers. Fix Xen so that it does not immediately fire a timer event if it sees a very long timeout -- sometimes this means that there are no pending timers. Signed-off-by: Keir Fraser <keir@xensource.com>
| * [LINUX][NET] Add default ethtool get_link implementation to allkfraser@localhost.localdomain2006-07-253-0/+3
| | | | | | | | | | | | | | | | interfaces. Some management tools rely on this operation. From: Mark McLoughlin <markmc@redhat.com> Signed-off-by: Keir Fraser <keir@xensource.com>
| * [LINUX] Improve single-page contiguous region creation/destructionkfraser@localhost.localdomain2006-07-251-18/+23
| | | | | | | | | | | | | | | | Batch page table updates and fold TLB flush into last one, reducing number of hypercalls made from ((# of pages) + 1) to just 1. Signed-off-by: Jan Beulich <jbeulich@novell.com>
* | [IA64] nasty bug fixawilliam@xenbuild.aw2006-07-261-0/+3
| | | | | | | | | | | | | | | | | | Bug fix: restore phys_addr field, because some other Xen functions consider it as unused. Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
* | [IA64] linux without SMPawilliam@xenbuild.aw2006-07-261-0/+4
| | | | | | | | | | | | | | | | Add #ifdef CONFIG_SMP so that linux can compile without SMP. Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
* | merge with xen-unstable.hgawilliam@xenbuild.aw2006-07-2513-69/+2216
|\|
| * Fix some more text inconsistencies and put devices in a more sensible order.chris@kneesaa.uk.xensource.com2006-07-141-47/+47
| | | | | | | | | | Signed-off-by: Christian Limpach <Christian.Limpach@xensource.com>
| * [TPM] Discard a future response packet after a timeout has occurred instead ofkaf24@firebug.cl.cam.ac.uk2006-07-141-2/+2
| | | | | | | | | | | | removing the request right away. Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
| * Fix typo in description of XEN_BLKDEV_TAPkfraser@localhost.localdomain2006-07-141-1/+1
| | | | | | | | | | Signed-off-by: Horms <horms@verge.net.au>
| * Added blktap support. Includes kernel driver (enabled as ↵jchesterfield@dhcp92.uk.xensource.com2006-07-137-0/+2094
| | | | | | | | CONFIG_XEN_BLKDEV_TAP=y) and userspace tools. The userspace deamon (blktapctrl) is enabled by default when xend is activated. For further information on using and configuring blktap see tools/blktap/README.
| * [LINUX] Define dma_get_cache_alignment even on x86/64.kfraser@localhost.localdomain2006-07-101-2/+0
| | | | | | | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
| * [XENOPROF] Some fixes for xenoprof passive domain support.kfraser@localhost.localdomain2006-07-101-5/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, passive domain samples are being assigned to the wrong kernel functions. This patch fixes this problem. In addition the patch changes the encoding of domain switch ESCAPE codes (marks used to separate samples in oprofile buffers associated with different domains). Instead of using 2 codes, one for START and one for END of passive domain samples, a single escape CODE value is used to indicate a domain switch (no need for a STOP followed by a START). Finally there some other minor style fixes. Signed-off-by: Jose Renato Santos <jsantos@hpl.hp.com>