linux-2.6.git
13 years agoMerge branch 'kvm-updates-2.6.27' of git://git.kernel.org/pub/scm/linux/kernel/git...
Linus Torvalds [Mon, 21 Jul 2008 04:13:26 +0000 (21:13 -0700)]
Merge branch 'kvm-updates-2.6.27' of git://git./linux/kernel/git/avi/kvm

* 'kvm-updates-2.6.27' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm: (70 commits)
  KVM: Adjust smp_call_function_mask() callers to new requirements
  KVM: MMU: Fix potential race setting upper shadow ptes on nonpae hosts
  KVM: x86 emulator: emulate clflush
  KVM: MMU: improve invalid shadow root page handling
  KVM: MMU: nuke shadowed pgtable pages and ptes on memslot destruction
  KVM: Prefix some x86 low level function with kvm_, to avoid namespace issues
  KVM: check injected pic irq within valid pic irqs
  KVM: x86 emulator: Fix HLT instruction
  KVM: Apply the kernel sigmask to vcpus blocked due to being uninitialized
  KVM: VMX: Add ept_sync_context in flush_tlb
  KVM: mmu_shrink: kvm_mmu_zap_page requires slots_lock to be held
  x86: KVM guest: make kvm_smp_prepare_boot_cpu() static
  KVM: SVM: fix suspend/resume support
  KVM: s390: rename private structures
  KVM: s390: Set guest storage limit and offset to sane values
  KVM: Fix memory leak on guest exit
  KVM: s390: dont allocate dirty bitmap
  KVM: move slots_lock acquision down to vapic_exit
  KVM: VMX: Fake emulate Intel perfctr MSRs
  KVM: VMX: Fix a wrong usage of vmcs_config
  ...

13 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Mon, 21 Jul 2008 00:43:29 +0000 (17:43 -0700)]
Merge git://git./linux/kernel/git/davem/net-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (1232 commits)
  iucv: Fix bad merging.
  net_sched: Add size table for qdiscs
  net_sched: Add accessor function for packet length for qdiscs
  net_sched: Add qdisc_enqueue wrapper
  highmem: Export totalhigh_pages.
  ipv6 mcast: Omit redundant address family checks in ip6_mc_source().
  net: Use standard structures for generic socket address structures.
  ipv6 netns: Make several "global" sysctl variables namespace aware.
  netns: Use net_eq() to compare net-namespaces for optimization.
  ipv6: remove unused macros from net/ipv6.h
  ipv6: remove unused parameter from ip6_ra_control
  tcp: fix kernel panic with listening_get_next
  tcp: Remove redundant checks when setting eff_sacks
  tcp: options clean up
  tcp: Fix MD5 signatures for non-linear skbs
  sctp: Update sctp global memory limit allocations.
  sctp: remove unnecessary byteshifting, calculate directly in big-endian
  sctp: Allow only 1 listening socket with SO_REUSEADDR
  sctp: Do not leak memory on multiple listen() calls
  sctp: Support ipv6only AF_INET6 sockets.
  ...

13 years agoMerge branch 'for-linus' of git://www.jni.nu/cris
Linus Torvalds [Mon, 21 Jul 2008 00:37:46 +0000 (17:37 -0700)]
Merge branch 'for-linus' of git://www.jni.nu/cris

* 'for-linus' of git://www.jni.nu/cris:
  [CRISv10] Clean up compressed/misc.c
  [CRISv10] Correct whitespace damage.
  [CRIS] Correct definition of subdirs for install_headers.
  [CRIS] Correct image makefiles to allow using a separate OBJ-directory.
  [CRIS] Build fixes for compressed and rescue images for v10 and v32:
  It looks at least odd to apply spin_unlock to a mutex.
  cris: compile fixes for 2.6.26-rc5

13 years agoinitrd: Fix virtual/physical mix-up in overwrite test
Geert Uytterhoeven [Thu, 17 Jul 2008 19:16:36 +0000 (21:16 +0200)]
initrd: Fix virtual/physical mix-up in overwrite test

On recent kernels, I get the following error when using an initrd:

| initrd overwritten (0x00b78000 < 0x07668000) - disabling it.

My Amiga 4000 has 12 MiB of RAM at physical address 0x07400000 (virtual
0x00000000).
The initrd is located at the end of RAM: 0x00b78000 - 0x00c00000 (virtual).
The overwrite test compares the (virtual) initrd location to the (physical)
first available memory location, which fails.

This patch converts initrd_start to a page frame number, so it can safely be
compared with min_low_pfn.

Before the introduction of discontiguous memory support on m68k
(12d810c1b8c2b913d48e629e2b5c01d105029839), min_low_pfn was just left
untouched by the m68k-specific code (zero, I guess), and everything worked
fine.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agodio: use dio_match_device() in dio_bus_match()
Akinobu Mita [Thu, 17 Jul 2008 19:16:35 +0000 (21:16 +0200)]
dio: use dio_match_device() in dio_bus_match()

dio_bus_match() can use dio_match_device().

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoarch/m68k/mm/sun3mmu.c: Eliminate NULL test and memset after alloc_bootmem
Julia Lawall [Thu, 17 Jul 2008 19:16:34 +0000 (21:16 +0200)]
arch/m68k/mm/sun3mmu.c: Eliminate NULL test and memset after alloc_bootmem

As noted by Akinobu Mita in patch b1fceac2b9e04d278316b2faddf276015fc06e3b,
alloc_bootmem and related functions never return NULL and always return a
zeroed region of memory.  Thus a NULL test or memset after calls to these
functions is unnecessary.

This was fixed using the following semantic patch.
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@@
expression E;
statement S;
@@

E = \(alloc_bootmem\|alloc_bootmem_low\|alloc_bootmem_pages\|alloc_bootmem_low_pages\)(...)
.. when != E
(
- BUG_ON (E == NULL);
|
- if (E == NULL) S
)

@@
expression E,E1;
@@

E = \(alloc_bootmem\|alloc_bootmem_low\|alloc_bootmem_pages\|alloc_bootmem_low_pages\)(...)
.. when != E
- memset(E,0,E1);
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoarch/m68k/mm/motorola.c: Eliminate NULL test and memset after alloc_bootmem
Julia Lawall [Thu, 17 Jul 2008 19:16:33 +0000 (21:16 +0200)]
arch/m68k/mm/motorola.c: Eliminate NULL test and memset after alloc_bootmem

As noted by Akinobu Mita in patch b1fceac2b9e04d278316b2faddf276015fc06e3b,
alloc_bootmem and related functions never return NULL and always return a
zeroed region of memory.  Thus a NULL test or memset after calls to these
functions is unnecessary.

This was fixed using the following semantic patch.
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@@
expression E;
statement S;
@@

E = \(alloc_bootmem\|alloc_bootmem_low\|alloc_bootmem_pages\|alloc_bootmem_low_pages\)(...)
.. when != E
(
- BUG_ON (E == NULL);
|
- if (E == NULL) S
)

@@
expression E,E1;
@@

E = \(alloc_bootmem\|alloc_bootmem_low\|alloc_bootmem_pages\|alloc_bootmem_low_pages\)(...)
.. when != E
- memset(E,0,E1);
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agom68k/Apollo: remove the unused APOLLO_ELPLUS option
Geert Uytterhoeven [Thu, 17 Jul 2008 19:16:32 +0000 (21:16 +0200)]
m68k/Apollo: remove the unused APOLLO_ELPLUS option

Looking at older kernel sources the APOLLO_ELPLUS option was added
somewhere during kernel 2.1, but even kernel 2.2.0 does not contain
any driver that would be enabled through it...

Reported-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agom68k/Atari: remove the dead ATARI_SCC{,_DMA} options
Adrian Bunk [Thu, 17 Jul 2008 19:16:31 +0000 (21:16 +0200)]
m68k/Atari: remove the dead ATARI_SCC{,_DMA} options

It seems the driver was removed back in kernel 2.3 but the options were
forgotten.

Reported-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agom68k/Mac: remove the unused ADB_KEYBOARD option
Adrian Bunk [Thu, 17 Jul 2008 19:16:30 +0000 (21:16 +0200)]
m68k/Mac: remove the unused ADB_KEYBOARD option

When the driver was removed back in 2002 the option was forgotten.

Reported-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agom68k/apollo: Add missing call to apollo_parse_bootinfo()
Geert Uytterhoeven [Thu, 17 Jul 2008 19:16:29 +0000 (21:16 +0200)]
m68k/apollo: Add missing call to apollo_parse_bootinfo()

Add the missing call to apollo_parse_bootinfo(), which had been lost from a
big Apollo support patch by Peter De Schrijver in 1999.

Thanks to Adrian Bunk for noticing!

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agom68k: remove stale ARCH_SUN4 #define
Adrian Bunk [Thu, 17 Jul 2008 19:16:28 +0000 (21:16 +0200)]
m68k: remove stale ARCH_SUN4 #define

m68k: remove stale ARCH_SUN4 #define

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agom68k/sun3/: possible cleanups
Adrian Bunk [Thu, 17 Jul 2008 19:16:27 +0000 (21:16 +0200)]
m68k/sun3/: possible cleanups

This patch contains the following possible cleanups:
- make the following needlessly global code static:
  - config.c: sun3_bootmem_alloc()
  - config.c: sun3_sched_init()
  - dvma.c: dvma_page()
  - idprom.c: struct Sun_Machines[]
  - mmu_emu.c: struct ctx_alloc[]
  - sun3dvma.c: iommu_use[]
  - sun3ints.c: led_pattern[]
- remove the unused sbus.c

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agom68k/q40/config.c: make functions static
Adrian Bunk [Thu, 17 Jul 2008 19:16:26 +0000 (21:16 +0200)]
m68k/q40/config.c: make functions static

This patch makes the following needlessly global functions static:
- q40_reset()
- q40_halt()
- q40_disable_irqs()
- q40_gettimeoffset()
- q40_hwclk()
- q40_get_ss()
- q40_set_clock_mmss()

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agom68k/mac/: possible cleanups
Adrian Bunk [Thu, 17 Jul 2008 19:16:25 +0000 (21:16 +0200)]
m68k/mac/: possible cleanups

This patch contains the following possible cleanups:
- make the following needlessly global code (always) static:
  - baboon.c: struct baboon
  - baboon.c: baboon_irq()
  - config.c: mac_orig_videoaddr
  - config.c: mac_identify()
  - config.c: mac_report_hardware()
  - config.c: mac_debug_console_write()
  - config.c: mac_sccb_console_write()
  - config.c: mac_scca_console_write()
  - config.c: mac_init_scc_port()
  - oss.c: oss_irq()
  - oss.c: oss_nubus_irq()
  - psc.c: psc_debug_dump()
  - psc.c: psc_dma_die_die_die()
  - via.c: rbv_clear
- remove the unused bootparse.c
- #if 0 the following unused functions:
  - config.c: mac_debugging_short()
  - config.c: mac_debugging_long()
- remove the following unused code:
  - config.c: mac_bisize
  - config.c: mac_env
  - config.c: mac_SCC_init_done
  - config.c: mac_SCC_reset_done
  - config.c: mac_init_scca_port()
  - config.c: mac_init_sccb_port()

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agom68k/atari/debug.c: possible cleanups
Adrian Bunk [Thu, 17 Jul 2008 19:16:24 +0000 (21:16 +0200)]
m68k/atari/debug.c: possible cleanups

This patch contains the following possible cleanups:
- make the following needlessly global functions (always) static:
  - atari_mfp_console_write()
  - atari_scc_console_write()
  - atari_midi_console_write()
  - atari_init_mfp_port()
  - atari_init_scc_port()
  - atari_init_midi_port()
- #if 0 the following unused functions:
  - atari_mfp_console_wait_key()
  - atari_scc_console_wait_key()
  - atari_midi_console_wait_key()
- remove the following unused variables:
  - atari_MFP_init_done
  - atari_SCC_init_done

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agom68k/amiga/: possible cleanups
Adrian Bunk [Thu, 17 Jul 2008 19:16:23 +0000 (21:16 +0200)]
m68k/amiga/: possible cleanups

This patch contains the following possible cleanups:
- amiints.c: add a proper prototype for amiga_init_IRQ() in
             include/asm-m68k/amigaints.h
- make the following needlessly global code static:
  - config.c: amiga_model
  - config.c: amiga_psfreq
  - config.c: amiga_serial_console_write()
- #if 0 the following unused functions:
  - config.c: amiga_serial_puts()
  - config.c: amiga_serial_console_wait_key()
  - config.c: amiga_serial_gets()
- remove the following unused variable:
  - config.c: amiga_masterclock

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoexport c2p
Adrian Bunk [Thu, 17 Jul 2008 19:16:22 +0000 (21:16 +0200)]
export c2p

This patch fixes the following build error:

<--  snip  -->

..
  Building modules, stage 2.
  MODPOST 1203 modules
ERROR: "c2p" [drivers/video/amifb.ko] undefined!
..
make[2]: *** [__modpost] Error 1

<--  snip  -->

Reported-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoexport amiga_vblank
Adrian Bunk [Thu, 17 Jul 2008 19:16:21 +0000 (21:16 +0200)]
export amiga_vblank

This patch fixes the following build error:

<--  snip  -->

..
  Building modules, stage 2.
  MODPOST 1203 modules
ERROR: "amiga_vblank" [drivers/video/amifb.ko] undefined!
..
make[2]: *** [__modpost] Error 1

<--  snip  -->

Reported-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agodrivers/video/c2p.c: add MODULE_LICENSE
Adrian Bunk [Thu, 17 Jul 2008 19:16:20 +0000 (21:16 +0200)]
drivers/video/c2p.c: add MODULE_LICENSE

This patch adds the missing MODULE_LICENSE("GPL").

Reported-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoatafb: Register Atari-specific video modes with sysfs
Geert Uytterhoeven [Thu, 17 Jul 2008 19:16:19 +0000 (21:16 +0200)]
atafb: Register Atari-specific video modes with sysfs

Register the Atari-specific video modes with sysfs, so you can see them in
/sys/class/graphics/fb0/modes and change the video mode by writing to
/sys/class/graphics/fb0/mode.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoamifb: Register Amiga-specific video modes with sysfs
Geert Uytterhoeven [Thu, 17 Jul 2008 19:16:18 +0000 (21:16 +0200)]
amifb: Register Amiga-specific video modes with sysfs

Register the Amiga-specific video modes with sysfs, so you can see them in
/sys/class/graphics/fb0/modes and change the video mode by writing to
/sys/class/graphics/fb0/mode.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agozorro: use memory_read_from_buffer
akinobu.mita@gmail.com [Thu, 17 Jul 2008 19:16:17 +0000 (21:16 +0200)]
zorro: use memory_read_from_buffer

zorro: use memory_read_from_buffer

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoZORRO: Replace deprecated __initcall with equivalent device_initcall.
Robert P. J. Day [Thu, 17 Jul 2008 19:16:16 +0000 (21:16 +0200)]
ZORRO: Replace deprecated __initcall with equivalent device_initcall.

ZORRO: Replace deprecated __initcall with equivalent device_initcall.

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agom68k: remove AP1000 code
Adrian Bunk [Thu, 17 Jul 2008 19:16:15 +0000 (21:16 +0200)]
m68k: remove AP1000 code

Unless I miss something that's code for a sparc machine even the sparc
code no longer supports that got copied to m68k when these files were
copied.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agom68k: make multi_defconfig the default defconfig
Adrian Bunk [Thu, 17 Jul 2008 19:16:14 +0000 (21:16 +0200)]
m68k: make multi_defconfig the default defconfig

It seems to match the intention behind multi_defconfig to make it the
default defconfig.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoStringify support commas
Mathieu Desnoyers [Thu, 17 Jul 2008 19:16:13 +0000 (21:16 +0200)]
Stringify support commas

> This is a no-no for those archs that still use -traditional.
 > > I dunno if this is a problem for you at the moment and the
 > > right fix is anyway to nuke -traditional.
 > >
 > >     Sam

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agom68k: Allow no CPU/platform type for allnoconfig
Geert Uytterhoeven [Thu, 17 Jul 2008 19:16:12 +0000 (21:16 +0200)]
m68k: Allow no CPU/platform type for allnoconfig

Allow no CPU/platform type for allnoconfig
  - Provide a dummy value for FPSTATESIZE if no CPU type was selected
  - Provide a dummy value for NR_IRQS if no platform type was selected
  - Warn the user if no CPU or platform type was selected

Note: you still cannot build an allnoconfig kernel, as CONFIG_SWAP=n doesn't
build and we cannot easily fix that
(http://groups.google.com/group/linux.kernel/browse_thread/thread/d430c78b07e1827b)

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agom68k: vmlinux-std/sun3.lds.S cleanup - use PAGE_SIZE macro
Cyrill Gorcunov [Thu, 17 Jul 2008 19:16:11 +0000 (21:16 +0200)]
m68k: vmlinux-std/sun3.lds.S cleanup - use PAGE_SIZE macro

This patch includes page.h header into linker script that
allow us to use PAGE_SIZE macro instead of numeric constant

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agom68k: Return -ENODEV if no device is found
Geert Uytterhoeven [Thu, 17 Jul 2008 19:16:10 +0000 (21:16 +0200)]
m68k: Return -ENODEV if no device is found

According to the tests in do_initcalls(), the proper error code in case no
device is found is -ENODEV, not -ENXIO or -EIO.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoariadne: use netstats in net_device structure
Paulius Zaleckas [Thu, 17 Jul 2008 19:16:09 +0000 (21:16 +0200)]
ariadne: use netstats in net_device structure

Use net_device_stats from net_device structure instead of local.

Signed-off-by: Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agom68k: remove CVS keywords
Adrian Bunk [Thu, 17 Jul 2008 19:16:08 +0000 (21:16 +0200)]
m68k: remove CVS keywords

This patch removes CVS keywords that weren't updated for a long time
from comments.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoMerge branch 'configfs-fixup-ptr-error' of git://oss.oracle.com/git/jlbec/linux-2.6
Linus Torvalds [Mon, 21 Jul 2008 00:17:52 +0000 (17:17 -0700)]
Merge branch 'configfs-fixup-ptr-error' of git://oss.oracle.com/git/jlbec/linux-2.6

* 'configfs-fixup-ptr-error' of git://oss.oracle.com/git/jlbec/linux-2.6:
  configfs: Allow ->make_item() and ->make_group() to return detailed errors.
  Revert "configfs: Allow ->make_item() and ->make_group() to return detailed errors."

13 years agoAPCI: revert another duplicated patch
Thomas Gleixner [Fri, 18 Jul 2008 00:07:02 +0000 (02:07 +0200)]
APCI: revert another duplicated patch

commit d1857056904d5f313f11184fcfa624652ff9620a ("ACPI: don't walk
tables if ACPI was disabled") is another superfluous duplicate commit
caused by git -> quilt -> git conversion.

Revert it.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoAPCI: revert duplicated patch
Thomas Gleixner [Thu, 17 Jul 2008 23:11:38 +0000 (01:11 +0200)]
APCI: revert duplicated patch

commit 816c2eda3ce8fa7eb62f22e01e2ec7a3f7d677c0 ("dock: bay: Don't call
acpi_walk_namespace() when ACPI is disabled.") was merged between
2.6.26-rc8 and -rc9)

Due to rebasing the ACPI tree via quilt the same patch got applied again
via commit cc7e51666d82aedfd6b9a033ca1a10d71c21f1ca ("dock: bay: Don't
call acpi_walk_namespace() when ACPI is disabled.")

Revert it, as it is obviously bogus.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoFix strip driver back up for ldisc/tty changes
Alan Cox [Wed, 16 Jul 2008 20:57:28 +0000 (21:57 +0100)]
Fix strip driver back up for ldisc/tty changes

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agotty: add more tty_port fields
Alan Cox [Wed, 16 Jul 2008 20:57:18 +0000 (21:57 +0100)]
tty: add more tty_port fields

Move more bits into the tty_port structure

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agotermios: Termios defines for other platforms
Alan Cox [Wed, 16 Jul 2008 20:57:10 +0000 (21:57 +0100)]
termios: Termios defines for other platforms

Fix up the termios of the people who have not yet got with the program

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agocyclades: use tty_port
Alan Cox [Wed, 16 Jul 2008 20:57:02 +0000 (21:57 +0100)]
cyclades: use tty_port

Switch cyclades to use the new tty_port structure

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agotty: Clean up tiocmset
Alan Cox [Wed, 16 Jul 2008 20:56:54 +0000 (21:56 +0100)]
tty: Clean up tiocmset

Reverse the order of one test and it gets much more readable

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agosynclink: use tty_port
Alan Cox [Wed, 16 Jul 2008 20:56:46 +0000 (21:56 +0100)]
synclink: use tty_port

Switch the synclink ports to use the new tty_port structure

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agostallion: use tty_port
Alan Cox [Wed, 16 Jul 2008 20:56:37 +0000 (21:56 +0100)]
stallion: use tty_port

Switch the stallion driver to use the tty_port structure

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoatmel_serial: Fix tty_port breakage
Haavard Skinnemoen [Wed, 16 Jul 2008 20:56:29 +0000 (21:56 +0100)]
atmel_serial: Fix tty_port breakage

The tty pointer has been moved into a tty_port field, so we need to use
->info->port.tty instead of just ->info->tty. Fixes these build errors:

David Brownell <david-b@pacbell.net> wrote:
> drivers/serial/atmel_serial.c: In function 'atmel_rx_from_ring':
> drivers/serial/atmel_serial.c:665: error: 'struct uart_info' has no member named 'tty'
> drivers/serial/atmel_serial.c: In function 'atmel_rx_from_dma':
> drivers/serial/atmel_serial.c:672: error: 'struct uart_info' has no member named 'tty'
> drivers/serial/atmel_serial.c: In function 'atmel_startup':
> drivers/serial/atmel_serial.c:797: error: 'struct uart_info' has no member named 'tty'
> make[2]: *** [drivers/serial/atmel_serial.o] Error 1

Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agorocket: use tty_port
Alan Cox [Wed, 16 Jul 2008 20:56:18 +0000 (21:56 +0100)]
rocket: use tty_port

Switch the rocketport to use the new tty_port structure

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agomxser: use tty_port
Alan Cox [Wed, 16 Jul 2008 20:56:10 +0000 (21:56 +0100)]
mxser: use tty_port

Switch mxser to use the new tty_port structure

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agomoxa: use tty_port
Alan Cox [Wed, 16 Jul 2008 20:56:02 +0000 (21:56 +0100)]
moxa: use tty_port

Switch MOXA to use the new tty_port structure

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoistallion: use tty_port
Alan Cox [Wed, 16 Jul 2008 20:55:53 +0000 (21:55 +0100)]
istallion: use tty_port

Switch istallion to use the new tty_port structure

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoisicom: use tty_port
Alan Cox [Wed, 16 Jul 2008 20:55:45 +0000 (21:55 +0100)]
isicom: use tty_port

Switch isicom to use a tty_port structure for some fields

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoriscom8: remove bogus checks
Alan Cox [Wed, 16 Jul 2008 20:55:37 +0000 (21:55 +0100)]
riscom8: remove bogus checks

Chris Malley posted a patch removing a NULL check in the riscom8 driver.
Further analysis shows that even more of the tests are irrelevant so we
can delete lots of stuff

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoriscom8: use tty_port
Alan Cox [Wed, 16 Jul 2008 20:55:29 +0000 (21:55 +0100)]
riscom8: use tty_port

Switch riscom8 to use the new tty_port structure

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agogs: use tty_port
Alan Cox [Wed, 16 Jul 2008 20:55:20 +0000 (21:55 +0100)]
gs: use tty_port

Switch drivers using the old "generic serial" driver to use the tty_port
structures

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoesp: use tty_port
Alan Cox [Wed, 16 Jul 2008 20:55:11 +0000 (21:55 +0100)]
esp: use tty_port

Switch esp to use the new tty_port structures

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoepca: use tty_port
Alan Cox [Wed, 16 Jul 2008 20:55:02 +0000 (21:55 +0100)]
epca: use tty_port

Switch the EPCA driver to include and begin using a tty_port structure

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agotty.h: clean up
Alan Cox [Wed, 16 Jul 2008 20:54:54 +0000 (21:54 +0100)]
tty.h: clean up

Coding style clean up and white space tidy

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoFix compile errors in SGI console drivers (linux-next tree)
Takashi Iwai [Wed, 16 Jul 2008 20:54:42 +0000 (21:54 +0100)]
Fix compile errors in SGI console drivers (linux-next tree)

The below is the patch to replace blindly all possible places,
including Jack's fixes.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
(Reviewed and checked rather than blindly added)
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago- Fix compile errors in SGI console drivers (linux-next tree)
Jack Steiner [Wed, 16 Jul 2008 20:54:31 +0000 (21:54 +0100)]
- Fix compile errors in SGI console drivers (linux-next tree)

Fix compile errors in SGI console drivers caused by changes to the
tty_port structures in the linux-next tree.

Signed-off-by: Jack Steiner <steiner@sgi.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agottydev: fix pamc_zilog for tty pointer move
Stephen Rothwell [Wed, 16 Jul 2008 20:54:22 +0000 (21:54 +0100)]
ttydev: fix pamc_zilog for tty pointer move

Today's linux-next build (powerpc allyesconfig) failed like this:

drivers/serial/pmac_zilog.c: In function 'pmz_receive_chars':
drivers/serial/pmac_zilog.c:245: error: 'struct uart_info' has no member named 'tty'
drivers/serial/pmac_zilog.c:250: error: 'struct uart_info' has no member named 'tty'

I applied the patch below (which builds but may, or may not, be correct).
--
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agottydev: fix pamc_zilog for tty pointer move
Stephen Rothwell [Wed, 16 Jul 2008 20:54:11 +0000 (21:54 +0100)]
ttydev: fix pamc_zilog for tty pointer move

Today's linux-next build (sparc64 defconfig) failed like this:

drivers/serial/sunhv.c: In function `receive_chars':
drivers/serial/sunhv.c:188: error: structure has no member named `tty'
drivers/serial/sunsu.c: In function `receive_chars':
drivers/serial/sunsu.c:314: error: structure has no member named `tty'
drivers/serial/sunsab.c: In function `receive_chars':
drivers/serial/sunsab.c:121: error: structure has no member named `tty'

I applied the following patch (which, again, may not be correct).

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoMN10300: Fix MN10300's serial port driver to get at its tty_struct
David Howells [Wed, 16 Jul 2008 20:54:01 +0000 (21:54 +0100)]
MN10300: Fix MN10300's serial port driver to get at its tty_struct

Fix MN10300's serial port driver to get at its tty_struct as this moved
from struct uart_info into struct tty_port in patch:

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoserial: use tty_port
Alan Cox [Wed, 16 Jul 2008 20:53:50 +0000 (21:53 +0100)]
serial: use tty_port

Switch the serial_core based drivers to use the new tty_port structure.
We can't quite use all of it yet because of the dynamically allocated
extras in the serial_core layer.

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agotty: Introduce a tty_port common structure
Alan Cox [Wed, 16 Jul 2008 20:53:41 +0000 (21:53 +0100)]
tty: Introduce a tty_port common structure

Every tty driver has its own concept of a port structure and because
they all differ we cannot extract commonality.  Begin fixing this by
creating a structure drivers can elect to use so that over time we can
push fields into this and create commonality and then introduce common
methods.

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agodrivers/serial/: remove CVS keywords
Adrian Bunk [Wed, 16 Jul 2008 20:53:31 +0000 (21:53 +0100)]
drivers/serial/: remove CVS keywords

This patch removes CVS keywords that weren't updated for a long time in
comments, printk's and MODULE_DESCRIPTION's (no printk's or
MODULE_DESCRIPTION's are completely removed).

While doing this I also found and fixed a missing \n in a printk
in m32r_sio.c

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agodrivers/char/rio/: remove VCS tags
Adrian Bunk [Wed, 16 Jul 2008 20:53:22 +0000 (21:53 +0100)]
drivers/char/rio/: remove VCS tags

This patch removes ancient VCS tags (either protected
by #ifdef SCCS_LABELS or commented out).

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agotty: Ldisc revamp
Alan Cox [Wed, 16 Jul 2008 20:53:12 +0000 (21:53 +0100)]
tty: Ldisc revamp

Move the line disciplines towards a conventional ->ops arrangement.  For
the moment the actual 'tty_ldisc' struct in the tty is kept as part of
the tty struct but this can then be changed if it turns out that when it
all settles down we want to refcount ldiscs separately to the tty.

Pull the ldisc code out of /proc and put it with our ldisc code.

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agotty: isicom, enable/disable pci device
Jiri Slaby [Wed, 16 Jul 2008 20:52:56 +0000 (21:52 +0100)]
tty: isicom, enable/disable pci device

Don't forget to enable and disable PCI devices.  The device might be
unusable without that.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoSubject: [PATCH 2/2] atmel_serial: Implement flush_buffer() hook
Haavard Skinnemoen [Wed, 16 Jul 2008 20:52:46 +0000 (21:52 +0100)]
Subject: [PATCH 2/2] atmel_serial: Implement flush_buffer() hook

Avoid dumping garbage to the serial port when the tty is flushed. This
tends to happen when rebooting from a serial console.

Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoSubject: [PATCH 1/2] serial: Add flush_buffer() operation to uart_ops
Haavard Skinnemoen [Wed, 16 Jul 2008 20:52:36 +0000 (21:52 +0100)]
Subject: [PATCH 1/2] serial: Add flush_buffer() operation to uart_ops

Serial drivers using DMA (like the atmel_serial driver) tend to get very
confused when the xmit buffer is flushed and nobody told them.  They
also tend to spew a lot of garbage since the DMA engine keeps running
after the buffer is flushed and possibly refilled with unrelated data.

This patch adds a new flush_buffer operation to the uart_ops struct,
along with a call to it from uart_flush_buffer() right after the xmit
buffer has been cleared. The driver can implement this in order to
syncronize its internal DMA state with the xmit buffer when the buffer
is flushed.

Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agosimserial: Fix up for ldisc changes
Alan Cox [Wed, 16 Jul 2008 20:52:25 +0000 (21:52 +0100)]
simserial: Fix up for ldisc changes

Noted by Tony Luck although I've done the patches differently and also
removed some other bogus oddments.

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoiucv: Fix bad merging.
David S. Miller [Sun, 20 Jul 2008 17:18:44 +0000 (10:18 -0700)]
iucv: Fix bad merging.

Noticed by Stephen Rothwell.

Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoKVM: Adjust smp_call_function_mask() callers to new requirements
Avi Kivity [Sun, 20 Jul 2008 11:24:22 +0000 (14:24 +0300)]
KVM: Adjust smp_call_function_mask() callers to new requirements

smp_call_function_mask() now complains when called in a preemptible context;
adjust its callers accordingly.

Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: MMU: Fix potential race setting upper shadow ptes on nonpae hosts
Avi Kivity [Sun, 13 Jul 2008 08:33:54 +0000 (11:33 +0300)]
KVM: MMU: Fix potential race setting upper shadow ptes on nonpae hosts

The direct mapped shadow code (used for real mode and two dimensional paging)
sets upper-level ptes using direct assignment rather than calling
set_shadow_pte().  A nonpae host will split this into two writes, which opens
up a race if another vcpu accesses the same memory area.

Fix by calling set_shadow_pte() instead of assigning directly.

Noticed by Izik Eidus.

Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: x86 emulator: emulate clflush
Glauber Costa [Thu, 10 Jul 2008 20:08:15 +0000 (17:08 -0300)]
KVM: x86 emulator: emulate clflush

If the guest issues a clflush in a mmio address, the instruction
can trap into the hypervisor. Currently, we do not decode clflush
properly, causing the guest to hang. This patch fixes this emulating
clflush (opcode 0f ae).

Signed-off-by: Glauber Costa <gcosta@redhat.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: MMU: improve invalid shadow root page handling
Marcelo Tosatti [Thu, 10 Jul 2008 23:54:29 +0000 (20:54 -0300)]
KVM: MMU: improve invalid shadow root page handling

Harden kvm_mmu_zap_page() against invalid root pages that
had been shadowed from memslots that are gone.

Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: MMU: nuke shadowed pgtable pages and ptes on memslot destruction
Marcelo Tosatti [Thu, 10 Jul 2008 23:49:31 +0000 (20:49 -0300)]
KVM: MMU: nuke shadowed pgtable pages and ptes on memslot destruction

Flush the shadow mmu before removing regions to avoid stale entries.

Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: Prefix some x86 low level function with kvm_, to avoid namespace issues
Avi Kivity [Thu, 10 Jul 2008 13:53:33 +0000 (16:53 +0300)]
KVM: Prefix some x86 low level function with kvm_, to avoid namespace issues

Fixes compilation with CONFIG_VMI enabled.

Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: check injected pic irq within valid pic irqs
Ben-Ami Yassour [Sun, 6 Jul 2008 14:15:07 +0000 (17:15 +0300)]
KVM: check injected pic irq within valid pic irqs

Check that an injected pic irq is between 0 and 15.

Signed-off-by: Ben-Ami Yassour <benami@il.ibm.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: x86 emulator: Fix HLT instruction
Mohammed Gamal [Sun, 6 Jul 2008 13:51:26 +0000 (16:51 +0300)]
KVM: x86 emulator: Fix HLT instruction

This patch fixes issue encountered with HLT instruction
under FreeDOS's HIMEM XMS Driver.

The HLT instruction jumped directly to the done label and
skips updating the EIP value, therefore causing the guest
to spin endlessly on the same instruction.

The patch changes the instruction so that it writes back
the updated EIP value.

Signed-off-by: Mohammed Gamal <m.gamal005@gmail.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: Apply the kernel sigmask to vcpus blocked due to being uninitialized
Avi Kivity [Sun, 6 Jul 2008 12:48:31 +0000 (15:48 +0300)]
KVM: Apply the kernel sigmask to vcpus blocked due to being uninitialized

Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: VMX: Add ept_sync_context in flush_tlb
Sheng Yang [Sun, 6 Jul 2008 11:16:51 +0000 (19:16 +0800)]
KVM: VMX: Add ept_sync_context in flush_tlb

Fix a potention issue caused by kvm_mmu_slot_remove_write_access(). The
old behavior don't sync EPT TLB with modified EPT entry, which result
in inconsistent content of EPT TLB and EPT table.

Signed-off-by: Sheng Yang <sheng.yang@intel.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: mmu_shrink: kvm_mmu_zap_page requires slots_lock to be held
Marcelo Tosatti [Thu, 3 Jul 2008 21:33:02 +0000 (18:33 -0300)]
KVM: mmu_shrink: kvm_mmu_zap_page requires slots_lock to be held

kvm_mmu_zap_page() needs slots lock held (rmap_remove->gfn_to_memslot,
for example).

Since kvm_lock spinlock is held in mmu_shrink(), do a non-blocking
down_read_trylock().

Untested.

Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agox86: KVM guest: make kvm_smp_prepare_boot_cpu() static
Adrian Bunk [Mon, 30 Jun 2008 22:19:19 +0000 (01:19 +0300)]
x86: KVM guest: make kvm_smp_prepare_boot_cpu() static

This patch makes the needlessly global kvm_smp_prepare_boot_cpu() static.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: SVM: fix suspend/resume support
Joerg Roedel [Wed, 2 Jul 2008 14:02:11 +0000 (16:02 +0200)]
KVM: SVM: fix suspend/resume support

On suspend the svm_hardware_disable function is called which frees all svm_data
variables. On resume they are not re-allocated. This patch removes the
deallocation of svm_data from the hardware_disable function to the
hardware_unsetup function which is not called on suspend.

Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: s390: rename private structures
Christian Borntraeger [Fri, 27 Jun 2008 13:05:40 +0000 (15:05 +0200)]
KVM: s390: rename private structures

While doing some tests with our lcrash implementation I have seen a
naming conflict with prefix_info in kvm_host.h vs. addrconf.h

To avoid future conflicts lets rename private definitions in
asm/kvm_host.h by adding the kvm_s390 prefix.

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: s390: Set guest storage limit and offset to sane values
Christian Borntraeger [Fri, 27 Jun 2008 13:05:38 +0000 (15:05 +0200)]
KVM: s390: Set guest storage limit and offset to sane values

Some machines do not accept 16EB as guest storage limit. Lets change the
default for the guest storage limit to a sane value. We also should set
the guest_origin to what userspace thinks it is. This allows guests
starting at an address != 0.

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: Fix memory leak on guest exit
Carsten Otte [Fri, 27 Jun 2008 13:05:34 +0000 (15:05 +0200)]
KVM: Fix memory leak on guest exit

This patch fixes a memory leak, we want to free the physmem when destroying
the vm.

Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: s390: dont allocate dirty bitmap
Carsten Otte [Fri, 27 Jun 2008 13:05:31 +0000 (15:05 +0200)]
KVM: s390: dont allocate dirty bitmap

This patch #ifdefs the bitmap array for dirty tracking. We don't have dirty
tracking on s390 today, and we'd love to use our storage keys to store the
dirty information for migration. Therefore, we won't need this array at all,
and due to our limited amount of vmalloc space this limits the amount of guests
we can run.

Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: move slots_lock acquision down to vapic_exit
Marcelo Tosatti [Mon, 23 Jun 2008 15:04:25 +0000 (12:04 -0300)]
KVM: move slots_lock acquision down to vapic_exit

There is no need to grab slots_lock if the vapic_page will not
be touched.

Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: VMX: Fake emulate Intel perfctr MSRs
Chris Lalancette [Fri, 20 Jun 2008 07:51:30 +0000 (09:51 +0200)]
KVM: VMX: Fake emulate Intel perfctr MSRs

Older linux guests (in this case, 2.6.9) can attempt to
access the performance counter MSRs without a fixup section, and injecting
a GPF kills the guest.  Work around by allowing the guest to write those MSRs.

Tested by me on RHEL-4 i386 and x86_64 guests, as well as F-9 guests.

Signed-off-by: Chris Lalancette <clalance@redhat.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: VMX: Fix a wrong usage of vmcs_config
Sheng Yang [Wed, 18 Jun 2008 06:43:38 +0000 (14:43 +0800)]
KVM: VMX: Fix a wrong usage of vmcs_config

The function ept_update_paging_mode_cr0() write to
CPU_BASED_VM_EXEC_CONTROL based on vmcs_config.cpu_based_exec_ctrl. That's
wrong because the variable may not consistent with the content in the
CPU_BASE_VM_EXEC_CONTROL MSR.

Signed-off-by: Sheng Yang <sheng.yang@intel.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: MMU: Fix printk format
Avi Kivity [Sun, 22 Jun 2008 13:46:22 +0000 (16:46 +0300)]
KVM: MMU: Fix printk format

Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: MMU: When debug is enabled, make it a run-time parameter
Avi Kivity [Sun, 22 Jun 2008 13:45:24 +0000 (16:45 +0300)]
KVM: MMU: When debug is enabled, make it a run-time parameter

Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: x86 emulator: lazily evaluate segment registers
Avi Kivity [Sun, 22 Jun 2008 13:22:51 +0000 (16:22 +0300)]
KVM: x86 emulator: lazily evaluate segment registers

Instead of prefetching all segment bases before emulation, read them at the
last moment.  Since most of them are unneeded, we save some cycles on
Intel machines where this is a bit expensive.

Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: x86 emulator: avoid segment base adjust for lea
Avi Kivity [Mon, 16 Jun 2008 05:45:54 +0000 (22:45 -0700)]
KVM: x86 emulator: avoid segment base adjust for lea

Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: x86 emulator: simplify rip relative decoding
Avi Kivity [Mon, 16 Jun 2008 05:09:11 +0000 (22:09 -0700)]
KVM: x86 emulator: simplify rip relative decoding

rip relative decoding is relative to the instruction pointer of the next
instruction; by moving address adjustment until after decoding is complete,
we remove the need to determine the instruction size.

Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: x86 emulator: simplify r/m decoding
Avi Kivity [Mon, 16 Jun 2008 04:53:26 +0000 (21:53 -0700)]
KVM: x86 emulator: simplify r/m decoding

Consolidate the duplicated code when not in any special case.

Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: x86 emulator: simplify sib decoding
Avi Kivity [Mon, 16 Jun 2008 04:23:17 +0000 (21:23 -0700)]
KVM: x86 emulator: simplify sib decoding

Instead of using sparse switches, use simpler if/else sequences.

Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: x86 emulator: handle undecoded rex.b with r/m = 5 in certain cases
Avi Kivity [Mon, 16 Jun 2008 04:13:41 +0000 (21:13 -0700)]
KVM: x86 emulator: handle undecoded rex.b with r/m = 5 in certain cases

x86_64 does not decode rex.b in certain cases, where the r/m field = 5.

Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: x86 emulator: emulate nop and xchg reg, acc (opcodes 0x90 - 0x97)
Mohammed Gamal [Sun, 15 Jun 2008 16:37:38 +0000 (19:37 +0300)]
KVM: x86 emulator: emulate nop and xchg reg, acc (opcodes 0x90 - 0x97)

Signed-off-by: Mohammed Gamal <m.gamal005@gmail.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: Use printk_rlimit() instead of reporting emulation failures just once
Avi Kivity [Fri, 13 Jun 2008 19:45:42 +0000 (22:45 +0300)]
KVM: Use printk_rlimit() instead of reporting emulation failures just once

Emulation failure reports are useful, so allow more than one per the lifetime
of the module.

Signed-off-by: Avi Kivity <avi@qumranet.com>
13 years agoKVM: Support mixed endian machines
Tan, Li [Fri, 23 May 2008 06:54:09 +0000 (14:54 +0800)]
KVM: Support mixed endian machines

Currently kvmtrace is not portable. This will prevent from copying a
trace file from big-endian target to little-endian workstation for analysis.
In the patch, kernel outputs metadata containing a magic number to trace
log, and changes 64-bit words to be u64 instead of a pair of u32s.

Signed-off-by: Tan Li <li.tan@intel.com>
Acked-by: Jerone Young <jyoung5@us.ibm.com>
Acked-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>