Commit Graph
965 Commits
Author SHA1 Message Date
kfraser@localhost.localdomain 12ace65c63 netback: Disable debug interrupt (accidentally left enabled in
previous checkin).
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-07 16:16:09 +00:00
kfraser@localhost.localdomain ef9e4decc4 linux: Use fake carrier flag for netfront/netback rather than the real
netif_carrier_XXX() functions. This makes network bringup much faster.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-07 16:00:47 +00:00
kfraser@localhost.localdomain bca5f6d829 linux: Don't use set_fixmap/clear_fixmap after boot-time. It's not
allowed and the functions are marked __init on x86/64.
Use HYPERVISOR_update_va_mapping() directly instead.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-07 10:13:39 +00:00
kfraser@localhost.localdomain 91d86d5e62 linux: Remove unnecessary locking from pcifront free_root_bus_devs().
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-05 14:09:19 +00:00
kfraser@localhost.localdomain 3660aa4b7b linux 2.6.18: constify instances of 'struct file_operations'
Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-03-05 14:00:05 +00:00
Keir Fraser 3a65ca09cd linux: Some save/restore simplifications and cleanups.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-02 23:01:36 +00:00
kfraser@localhost.localdomain 8ede8a78de Fix -xen build.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-02 16:57:24 +00:00
kfraser@localhost.localdomain 55fcb979e1 linux: xenbus dev write function resets packet data on *all* error conditions.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-02 16:29:48 +00:00
kfraser@localhost.localdomain 8666439e6a linux: Fix xenbus device write function.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-02 16:26:56 +00:00
kfraser@localhost.localdomain 2651400e34 tpm: Code style cleanups.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-02 16:15:28 +00:00
kfraser@localhost.localdomain 5ba41352cd [Linux] [TPM driver] Resume frontend after checkpointing
This patch implements TPM frontend driver resume after checkpointing a
domain. I also now let the front-end wait for the response from the
TPM until the response is there. A response must come due to the
strict request/response nature of the protocol, but the time until the
responses arrives depends on the type of operation that is executed by
the vTPM. Resending a request is not possible with this type of device.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2007-03-02 16:03:21 +00:00
kfraser@localhost.localdomain 9807b9f09a linux: Use old-mode of save/restore for uniproc guests (it's faster).
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-02 16:00:22 +00:00
kfraser@localhost.localdomain 700ba2f69b linux: allow use of split page table locks
This changes netback to use struct page's mapping field instead of the
index one, and the PageForeign logic the other way around. That way,
CONFIG_SPLIT_PTLOCK_CPUS doesn't have to be suppressed anymore for x86.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-03-02 15:59:12 +00:00
kfraser@localhost.localdomain 188ac9feda linux: Support new 'fast suspend' mode which does not require us to
hotplug all auxiliary CPUs.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-02 12:11:52 +00:00
kfraser@localhost.localdomain ed372f4e41 linux: More save/restore fixes. Fix deadlock of cpu_hotplug_lock vs
workqueue_mutex. This is a new deadlock since the workqueue_mutex is
acquired in the workqueue_cpu_calbback() function across
CPU_UP_PREPARE->CPU_ONLINE.

The fix is for us not to rudely grab the cpu_hotplug_lock() during
save/restore -- it's really not necessary.

This patch is applicable to any of our 2.6 kernels, but is absolutely
required from 2.6.18 onwards.

Signed-off-by: Keir Fraser <keir@xensource.com>
2007-02-28 17:55:19 +00:00
kfraser@localhost.localdomain ed2bd98ac2 linux: Split suspend_mutex into watch_mutex and transaction_mutex.
This clarifies their usage and relationship with request_mutex and
response_mutex.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-02-28 14:26:26 +00:00
kfraser@localhost.localdomain c70b3e5890 More PV save/restore fixes.
Related changesets:
 14148:b67c253d1cdb4f502dec2
 13519:b4a8000e76db6b4b27341

These three changesets must be applied as a set!

Signed-off-by: Keir Fraser <keir@xensource.com>
2007-02-28 14:13:09 +00:00
kfraser@localhost.localdomain 8c364f217a linux: Don't allow partial message raeds from xenstore across
save/restore. This patch is an essential companion to
13519:b4a8000e76db6b4b27341.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-02-27 13:43:01 +00:00
Ian Campbell f380fac05a [LINUX] Purge include <linux/config.h>. It has been obsolete for some time now.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2007-02-23 16:56:45 +00:00
Ian Campbell 8c994baaf3 [PV-on-HVM] Fix gnttab_map to not run off the bottom of the gnttab space.
Cleanup a few warnings: reached end of void function and unused variables.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2007-02-23 16:56:42 +00:00
kfraser@localhost.localdomain 634febdae7 linux, tpm: Fix argument to grant table operation
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2007-02-23 16:24:07 +00:00
Jake Wires 88b9531ce0 [BLKTAP] fix sysfs cleanup on error case
Signed-off-by: Jake Wires <jwires@xensource.com>
2007-02-21 18:38:11 -08:00
kfraser@localhost.localdomain eac290c978 linux: Use hard tabs and Linux coding style.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-02-21 20:03:56 +00:00
Jake Wires 5f7fc2a275 [BLKBACK/BLKTAP] add sysfs throughput profiling to blk{back/tap} 2007-02-21 11:42:04 -08:00
Keir Fraser bbf3a3eebd linux: vmalloc_sync_all() is not a no-op when running in PAE mode on Xen.
Also vmalloc_sync_all() is only defined for x86 architectures so make
use of it in driver code conditional on CONFIG_X86.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-02-17 13:26:33 +00:00
kfraser@localhost.localdomain 090fa70b37 linux: remove {lock,unlock}_vm_area(). Instead use vmalloc_sync_all()
in alloc_vm_area().
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-02-16 11:24:10 +00:00
kfraser@localhost.localdomain 56c508cce0 Bring TPM driver files to 2.6.18 level. Remove the tpm.c so that the
one from the kernel can be used and reduce changes to a minimum
required to compile the xen-specific driver.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2007-02-15 14:21:50 +00:00
kfraser@localhost.localdomain 3169b9cf23 linux: miscellaneous changes after upgrade through 2.6.17.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-02-15 14:12:32 +00:00
kfraser@localhost.localdomain 2b41f02c7a linux: proper mutex use in balloon driver
Mutexes are supposed to not use the old semaphore technique anymore.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-02-15 13:38:59 +00:00
kfraser@localhost.localdomain 5ce8fafa94 Dynamic grant-table sizing.
Signed-off-by: Christopher CLark <christopher.clark@cl.cam.ac.uk>
Signed-off-by: Andrei Petrov <andrei.petrov@xensource.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-02-15 10:54:12 +00:00
kfraser@localhost.localdomain ced24e96c7 linux: quieten some driver printk logging.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-02-14 16:05:28 +00:00
Ian Campbell 193ca2e8bb [LINUX] Call ctrl_alt_del() to trigger a reboot so we benefit from the
generic infrastructure for cad_pid etc.

Add a ctrl_alt_del() implemenation to the PV on HVM compatibility
layer since ctrl_alt_del() is not exported on native kernels.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2007-02-13 15:32:25 +00:00
kfraser@localhost.localdomain 6b91de464c pvfb: Split mouse and keyboard into separate devices.
This patch creates two separate input devices for keyboard and mouse
events.  The reason for this is to separate them in the linux input
layer and allow them being routed different ways.

Use case:  Configure the X-Server like this to get the mouse
events directly from the linux input layer, which has the major
advantage that absolute coordinates work correctly:

Section "InputDevice"
  Driver       "evdev"
  Identifier   "Mouse"
  Option       "Device" "/dev/input/event<nr>"
EndSection

This makes the keyboard stop working though in case mouse and
keyboard events are coming through the same input device, at least
with older Xorg (6.9) versions.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>

Assign fake pci product identifiers down from 0xffff. This may help
clarify that the devices are not actually PCI. Also it reduces
probability of accidental conflict if further real PCI assignments
occur in future (0x0002, 0x0003, ... would be obvious next identifiers
to allocate).

Signed-off-by: Keir Fraser <keir@xensource.com>
2007-02-07 16:12:40 +00:00
Keir Fraser 3310ae17fd linux: Zap /proc/interrupts count when a dynamic IRQ is unbound.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-02-07 00:39:48 +00:00
kfraser@localhost.localdomain e03f6e62c8 linux: Allow xenbus_strstate() to be used from modules.
The function is referenced by a number of DPRINTK()-s. Also, properly
const-ify it.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-02-02 16:04:11 +00:00
Ian Campbell 5d4e92412e [LINUX] netfront: Don't call netif_carrier_off until the device is
fuly allocated.

netif_carrier_off() causes events to be queued on the device so if we
subsequently abort the allocation (e.g. due to lack of grant entries)
then we crash trying to access the now invalid device.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2007-02-01 10:20:34 +00:00
Christian Limpach 495989297b [linux] Delay making the VCPUOP_initialise calls until the cpu is brought up
the first time.

Signed-off-by: Christian Limpach <Christian.Limpach@xensource.com>
2007-01-29 22:43:51 +00:00
kfraser@localhost.localdomain a802ad78c3 netfront: Better fix for netfront_tx_slot_available().
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-25 16:58:21 +00:00
kfraser@localhost.localdomain 8658df107c netfront: Check availability of grant references in start_xmit().
Signed-off-by: Tomonari Horikoshi <t.horikoshi@jp.fujitsu.com>
2007-01-25 12:24:43 +00:00
kfraser@localhost.localdomain d32128e96e bimodal blkback: Support multiple ring protocols.
This is needed for 32-on-64 support.  Right now there are three
protocols: native, x86_32 and x86_64.  If needed it can be extended.

Interface changes (io/blkif.h)
 * Define the x86_32 and x86_64 structs additionally to the native
   version.
 * Add helper functions to convert them requests to native.

Backend changes:
 * Look at the "protocol" name of the frontend and switch ring
   handling accordingly.  If the protocol node isn't present it
   assumes native protocol.
 * As the request struct is copied anyway before being processed (for
   security reasons) it is converted to native at that point so most
   backend code doesn't need to know what the frontend speaks.
 * In case of blktap this is completely transparent to userspace, the
   kernel/userspace ring is always native no matter what the frontend
   speaks.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2007-01-24 10:38:17 +00:00
john.levon@sun.com 95d3856e97 Close save-after-restore race.
Make xc_linux_save() wait for the frame_list_list MFN to be updated by the
domain before trying to use it. Make Linux set the top-level MFN /after/
updating the other MFN lists.

Signed-off-by: John Levon <john.levon@sun.com>
2007-01-23 19:06:31 -08:00
kfraser@localhost.localdomain 1ac5e8ece3 linux: Make resend_irq_on_evtchn() non-static for ia64 use.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-23 15:54:12 +00:00
kfraser@localhost.localdomain 7606be28a6 bimodal blkfront: Create a new node "protocol" in xenstore, add the
protocol name it speaks there.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2007-01-23 14:48:42 +00:00
kfraser@localhost.localdomain c82ff605c7 bimodal: pvfb frontend
Create a new node "protocol" in xenstore, add the protocol name it
speaks there.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2007-01-23 14:47:26 +00:00
kfraser@localhost.localdomain 50f5003308 linux: Fix enable_irq() crash by removing a BUG_ON() assumption in our
event-channel retrigger() function. Also clean up bitmap usages.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-23 13:39:20 +00:00
Ian Campbell e22738def9 [PV-on-HVM] Make PV drivers on HVM kernels work on older kernels after
update to 2.6.18.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2007-01-22 17:10:27 +00:00
kfraser@localhost.localdomain f272b20670 Add unsuspend hook for resuming devices in the checkpoint parent.
Nothing uses it at the moment.

Signed-off-by: Brendan Cully <brendan@cs.ubc.ca>
2007-01-19 16:11:31 +00:00
kfraser@localhost.localdomain 931818cacb Make xen_suspend handle resume.
Don't destroy xenstore watches on suspend, and only recreate them when
resuming in a new domain. Likewise, only invoke frontend device resume
code when in a new domain (the resume functions all tear down the
existing function and wait for the backend to negotiate a new one,
which does not happen in the source domain).

Signed-off-by: Brendan Cully <brendan@cs.ubc.ca>
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-19 16:06:09 +00:00
Christian Limpach c6a0a466fa [merge] with xen-unstable
Signed-off-by: Christian Limpach <Christian.Limpach@xensource.com>
2007-01-19 14:48:57 +00:00
Christian Limpach 1a9914c007 [linux networking] Remove the code to allocate page sized skbs.
This is no longer used much since the default is to always copy packets
to guests.

Signed-off-by: Christian Limpach <Christian.Limpach@xensource.com>
2007-01-18 18:40:30 +00:00