aboutsummaryrefslogtreecommitdiffstats
path: root/linux-2.6-xen-sparse
Commit message (Collapse)AuthorAgeFilesLines
...
| * Allow compat hypercalls to be made via privcmd (to support older userspaces).kaf24@firebug.cl.cam.ac.uk2006-05-251-0/+3
| | | | | | | | | | Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
| * [BALLOON] Do not allow target to be set below two percent of maximumkaf24@firebug.cl.cam.ac.uk2006-05-251-0/+6
| | | | | | | | | | | | memory size. Signed-off-by: Keir Fraser <keir@xensource.com>
| * Do not include asm/fixmap.h directly from non-arch-specific Linux files.kaf24@firebug.cl.cam.ac.uk2006-05-251-1/+0
| | | | | | | | | | Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
| * [NET] front: Use netif_carrier to model backend-connection state.kaf24@firebug.cl.cam.ac.uk2006-05-251-23/+9
| | | | | | | | | | | | | | | | | | | | | | The tristate backend_state really only needs to be a boolean. In fact other virtualisation network drivers such as the s390 already model this using netif_carrier_*. So by converting backend_state over to the net carrier flag we can tap into existing infrastructure rather than creating new ones. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
| * Separate xenbusstate enumeration from typedef. Avoid using the typedefkaf24@firebug.cl.cam.ac.uk2006-05-2511-22/+22
| | | | | | | | | | | | in Linux coe as it is consider bad coding style. Signed-off-by: Keir Fraser <keir@xensource.com>
| * Remove unnecessary x86-specific mapping code from privcmd interface.kaf24@firebug.cl.cam.ac.uk2006-05-241-18/+2
| | | | | | | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
| * Event-channel driver: Use for_each_possible_cpu insteadkaf24@firebug.cl.cam.ac.uk2006-05-241-18/+9
| | | | | | | | | | | | of for_each_cpu , or statically initialize data when possible. Signed-off-by: Chris Wright <chrisw@sous-sol.org>
| * Fix kcons_write and kcons_write_dom0 CodingStyle.kaf24@firebug.cl.cam.ac.uk2006-05-241-10/+12
| | | | | | | | | | | | | | Use roundup_pow_of_two(). Signed-off-by: Chris Wright <chrisw@sous-sol.org>
| * Use DEFINE_SPINLOCK in Linux drivers, conforming to coding style.kaf24@firebug.cl.cam.ac.uk2006-05-248-11/+9
| | | | | | | | | | Signed-off-by: Chris Wright <chrisw@sous-sol.org>
| * Move Xen CPU hotplug code into new file cpu_hotplug.c.kaf24@firebug.cl.cam.ac.uk2006-05-235-202/+248
| | | | | | | | | | | | | | | | | | | | Cleaner and allows use by architectures which aren't currently using Xen's smpboot.c. Based on an original patch by Tristan Gingold. Signed-off-by: Keir Fraser <keir@xensource.com>
* | [IA64] remove evtchn_ia64.cawilliam@xenbuild.aw2006-05-251-261/+0
| | | | | | | | | | | | Signed-off-by Kevin Tian <kevin.tian@intel.com>
* | [IA64] GNTMAP_readonly support linux partawilliam@xenbuild.aw2006-05-242-10/+8
| | | | | | | | | | | | | | | | add read only mapping support. Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
* | [IA64] fix dirty_bit in xenivt.Sawilliam@xenbuild.aw2006-05-241-0/+9
| | | | | | | | | | | | | | | | | | fix dirty_bit in linux-2.6-xen-sparse/arch/ia64/xen/xenivt.S there was itc.d left which wasn't para-virtualized. Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
* | [IA64] swap XEN_HYPER_ITC_D and XEN_HYPER_ITC_Iawilliam@xenbuild.aw2006-05-241-2/+2
| | | | | | | | | | | | Signed-off-by Dietmar Hahn <dietmar.hahn@fujitsu-siemens.com>
* | [IA64] work around ENOSYS vs EINVAL in ioremapawilliam@xenbuild.aw2006-05-231-1/+3
| | | | | | | | | | | | | | | | | | | | We should not panic the domain for an EINVAL return from the ioremap hyerpcall. This was only meant for ENOSYS. Long term this is probably not the best place for this kind of sanity checking. Signed-off-by: Alex Williamson <alex.williamson@hp.com>
* | [IA64] make xenLinux/ia64 privcmd mmap not to use dom0 memoryawilliam@xenbuild.aw2006-05-231-61/+190
| | | | | | | | | | | | | | | | | | | | | | | | | | xenLinux/ia64 privcmd mmap uses pseudo physical address space. it used alloc_pages() to allocate the space. It wastes dom0 memory and sometimes several hundreds megabytes is allocated depending on domU memory size. With this patch xenLinux/ia64 trys to find the region which can be used safely and uses the reasion. Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
* | [IA64] Final patch to make evtchn fully working for xen/ia64awilliam@xenbuild.aw2006-05-238-6/+262
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | OK, this is the last one of patch sets, which enables xen/ia64 to work on event channel mechanism fully. Now user may observe /proc/interrupts of dom0 as: CPU0 34: 12 Phys-irq ide0 39: 0 Phys-irq acpi 45: 322 Phys-irq serial 48: 115006 Phys-irq peth0 49: 16269 Phys-irq ioc0 50: 31 Phys-irq ioc1 51: 2 Phys-irq ehci_hcd:usb1 52: 0 Phys-irq uhci_hcd:usb2 53: 55 Phys-irq uhci_hcd:usb3 256: 0 Dynamic-irq RESCHED0 257: 0 Dynamic-irq IPI0 258: 44572 Dynamic-irq timer0 259: 2316 Dynamic-irq xenbus 260: 8304 Dynamic-irq blkif-backend 261: 25947 Dynamic-irq vif3.0 ERR: 0 Based on this patch, dom0's performance is not affected, while domU's network output is seen with several percents increase. More important, now xen/ia64 can progress a base step towards driver domain support! Signed-off-by Kevin Tian <kevin.tian@intel.com>
* | [IA64] Add do_callback_opsawilliam@xenbuild.aw2006-05-231-1/+12
| | | | | | | | | | | | Signed-off-by Kevin Tian <kevin.tian@intel.com>
* | [IA64] Import linux header filesawilliam@xenbuild.aw2006-05-232-0/+175
|/ | | | | | | | Import hw_irq.h and irq.h from linux Signed-off-by Kevin Tian <kevin.tian@intel.com>
* merge with xen-unstable.hgawilliam@xenbuild.aw2006-05-2288-1414/+818
|\
| * Fix x86/64 by passing the required length to reserve_bootmem instead of the ↵Ian.Campbell@xensource.com2006-05-221-2/+4
| | | | | | | | | | | | | | | | | | | | end address Fixup a warning since the machine_e820 and memmap variables are only used if CONFIG_XEN_PRIVILEGED_GUEST. Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
| * Fix x86/64 -xenU build. probe_roms() is only defined if building a privlegedIan.Campbell@xensource.com2006-05-221-1/+2
| | | | | | | | | | | | | | or !xen build. Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
| * Convert x86/64 Linux to use the new memory map hypercall.Ian.Campbell@xensource.com2006-05-224-150/+140
| | | | | | | | | | | | | | | | This change removes several of the differences between the bare-metal and Xen versions. Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
| * Convert x86/32 Linux to use the new memory map hypercall.Ian.Campbell@xensource.com2006-05-223-123/+126
| | | | | | | | | | | | | | | | This change removes several of the differences between the bare-metal and Xen versions. Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
| * Add include/asm-x86_64/e820.h to sparse treeIan.Campbell@xensource.com2006-05-221-0/+63
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
| * Re-order code in preparation for future patches.Ian.Campbell@xensource.com2006-05-222-107/+108
| | | | | | | | | | | | | | There is no change to the functions which have moved. Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
| * [NET] front: Remove duplicate maybe_wake_txkaf24@firebug.cl.cam.ac.uk2006-05-191-2/+0
| | | | | | | | | | | | | | | | | | Since network_tx_buf_gc unconditionally calls network_maybe_wake_tx at the end, there is no need to call it again right after a call to network_tx_buf_gc. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
| * [NET] front: remove use of typedefs for structures.kaf24@firebug.cl.cam.ac.uk2006-05-191-15/+15
| | | | | | | | | | Signed-off-by: Chris Wright <chrisw@sous-sol.org>
| * Introduce is_running_on_xen() to test whether we are running on Xen beforekaf24@firebug.cl.cam.ac.uk2006-05-1921-51/+45
| | | | | | | | | | | | | | | | | | | | | | initialising a Xen-specific driver or subsystem. For ia64: * Call xen_init in setup_arch. * Remove xen_ksyms.c Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
| * [NET] front: remove unnecessary include of proc_fs.h.kaf24@firebug.cl.cam.ac.uk2006-05-181-1/+0
| | | | | | | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
| * Remove Emacs variables settings from tail of our Linux files.kaf24@firebug.cl.cam.ac.uk2006-05-1863-634/+0
| | | | | | | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
| * Rename init_IRQ to xen_init_IRQ, so that non-x86 can use their own init_IRQ.kaf24@firebug.cl.cam.ac.uk2006-05-181-4/+8
| | | | | | | | | | Signed-off-by Kevin Tian <Kevin.tian@intel.com>
| * [NET] front: clean up create_netdev interface.kaf24@firebug.cl.cam.ac.uk2006-05-181-16/+18
| | | | | | | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
| * [NET] front: Add a sysfs interface for tuning the receive buffer values.kaf24@firebug.cl.cam.ac.uk2006-05-181-3/+150
| | | | | | | | | | Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
| * [NET] front: Give netfront a procectomy. The existing /proc interfacekaf24@firebug.cl.cam.ac.uk2006-05-181-175/+0
| | | | | | | | | | | | | | | | for tuning is buggy (network device names can change), and would not be accepted in mainline. Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
| * [NET] front: Network devices need to be freed by free_netdev not kfree.kaf24@firebug.cl.cam.ac.uk2006-05-181-16/+18
| | | | | | | | | | | | | | | | | | Also, fix some missing unwinds in error path. Still not convinced there aren't some lurking double free's in the error paths here. Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
| * [NET] front: The initialization and removal functions should be taggedkaf24@firebug.cl.cam.ac.uk2006-05-181-8/+8
| | | | | | | | | | | | | | with proper section attributes to save space. Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
| * [NET] front: The receive buffer accounting should be unsigned to avoidkaf24@firebug.cl.cam.ac.uk2006-05-181-1/+1
| | | | | | | | | | | | | | range comparison issues. Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
| * [NET] front: Minor style fix and eliminate Emacs style comment whichkaf24@firebug.cl.cam.ac.uk2006-05-181-18/+6
| | | | | | | | | | | | | | is considered poor taste by current kernel community. Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
| * [NET] front: clean up transmit queue wakingkaf24@firebug.cl.cam.ac.uk2006-05-181-16/+19
| | | | | | | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
| * [NET] front: Replace user_state with netif_runningkaf24@firebug.cl.cam.ac.uk2006-05-181-13/+4
| | | | | | | | | | | | | | | | The user_state variable is simply replicating information that's already present through netif_running. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
| * [NET] front: Remove tx_full and unnecessary queue operationskaf24@firebug.cl.cam.ac.uk2006-05-181-20/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The tx_full variable merely mirrors information already present in the XOFF bit on the net device. The net device architecture itself is quite mature and can be trusted by Xen to maintain its state correctly. Also, it's pointless to stop the queue in close_netdev since it can be waken up anyway since there could be a softirq running on another CPU. All of this is handled by unregister_netdev anyway. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
| * When doing local migration, a timing-related problem occurred due to thekaf24@firebug.cl.cam.ac.uk2006-05-175-14/+4
| | | | | | | | | | | | | | | | | | | | frontend switching to the Closed state, which could end up having the .remove function being called after the backend has shut down. This now fixes the problem by switching to the Closing state. The other part of the patch cleans up freeing of memory. Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
| * Fixes to the xenoprofile Linux driver.kaf24@firebug.cl.cam.ac.uk2006-05-161-3/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The active_domains code has race conditions: * oprofile_set_active() calls set_active() method without holding start_sem. This is clearly wrong, as xenoprof_set_active() makes several hypercalls. oprofile_start(), for instance, could run in the middle of xenoprof_set_active(). * adomain_write(), adomain_read() and xenoprof_set_active() access global active_domains[] and adomains without synchronization. I went for a simple, obvious fix and created another mutex. Instead, one could move the shared data into oprof.c and protect it with start_sem, but that's more invasive. Also clean up the code dealing with /dev/oprofile/active_domains: * Use parameters instead of global variables to pass domain ids around. Give those globals internal linkage. * Allocate buffers dynamically to conserve stack space. * Treat writes with size zero exactly like a write containing no domain id. Before, zero-sized write was ignored, which is not the same. * Parse domain ids as unsigned numbers. Before, the first one was parsed as signed number. Because ispunct()-punctuation is ignored between domain ids, signs are still silently ignored except for the first number. Hmm. * Make parser accept whitespace as domain separator, because that's what you get when reading the file. * EINVAL on domain ids overflowing domid_t. Before, they were silently truncated. * EINVAL on too many domain ids. Before, the excess ones were silently ignored. * Reset active domains on failure halfway through setting them. * Fix potential buffer overflow in adomain_read(). Couldn't really happen because buffer was sufficient for current value of MAX_OPROF_DOMAINS. Signed-off-by: Markus Armbruster <armbru@redhat.com>
| * Prevent an oops in Dom0 that occurs when a CD device, specified as onekaf24@firebug.cl.cam.ac.uk2006-05-161-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | of the 'hardrives' in the 'disk=' line of a para-virtualized guest's def file, has no media when the guest is started. The oops occurs in vbd.c when vbd_size() is called from connect() (in xenbus.c) and the vbd pointer is really an error code that comes from the failed open that occurred in vbd_create(). Based on a patch from Ross Maxfield at Novell. Signed-off-by: Keir Fraser <keir@xensource.com>
| * [XENOPROFILE] Fix incorrect use of on_each_cpu() which could leadkaf24@firebug.cl.cam.ac.uk2006-05-161-40/+24
| | | | | | | | | | | | | | | | | | | | | | to sleep with interrupts disabled. on_each_cpu() disables interrupts. proc_create() calls passes GFP_KERNEL to kmalloc(). The patch converts from on_each_cpu() to for_each_cpu(), and then simplifies things. Signed-off-by: Markus Armbruster <armbru@redhat.com>
| * Add support to domain builders for loading kernels with physical addresses ↵cl349@firebug.cl.cam.ac.uk2006-05-115-3/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in the elf paddr and entry fields. Add a new __xen_guest header field to distinguish between kernels with the previous use of the paddr field and the new use. Add a new __xen_guest header field to control the kernel entry point, since the elf header entry field now points to a physical address. This header field is also useful for supporting alternative entry points in kernel images which run both on xen and native. Also add a kernel config option to control whether the resulting kernel should include compatibility code to run on Xen 3.0.2 or whether such code such be left out, resulting in a kernel which will only run on newer Xen versions. Default to having compatibility enabled. Kernels built with the new use of the elf header fields would otherwise not work on Xen versions prior to this changeset. Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
| * x86/64 has the wrong number of arguments defined for HYPERVISOR_xenoprof_op.kaf24@firebug.cl.cam.ac.uk2006-05-111-2/+2
| | | | | | | | | | Signed-off-by: Ray Bryant <raybry@mpdtxmail.amd.com>
| * Fix the building of the Xen TPM driver as module and prevents front-kaf24@firebug.cl.cam.ac.uk2006-05-114-9/+6
| | | | | | | | | | | | and backends to be rmmod'ed by removing their module_exit line. Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
| * When we copy packet sin netback/netfront make sure the new skb haskaf24@firebug.cl.cam.ac.uk2006-05-102-1/+8
| | | | | | | | | | | | | | | | all the necessary fields initialised. In particular, before we were not copying ip_summed and that screws up checksum offload. Signed-off-by: Keir Fraser <keir@xensource.com>