1. 25 Jul, 2007 9 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm · a9417357
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm:
        KVM: disable writeback for 0x0f 0x01 instructions.
        KVM: Fix removal of nx capability from guest cpuid
        Revert "KVM: Avoid useless memory write when possible"
        KVM: Fix unlikely kvm_create vs decache_vcpus_on_cpu race
        KVM: Correctly handle writes crossing a page boundary
      a9417357
    • john stultz's avatar
      Cache xtime every call to update_wall_time · 17c38b74
      john stultz authored
      This avoids xtime lag seen with dynticks, because while 'xtime' itself
      is still not updated often, we keep a 'xtime_cache' variable around that
      contains the approximate real-time that _is_ updated each time we do a
      'update_wall_time()', and is thus never off by more than one tick.
      
      IOW, this restores the original semantics for 'xtime' users, as long as
      you use the proper abstraction functions (ie 'current_kernel_time()' or
      'get_seconds()' depending on whether you want a timespec or just the
      seconds field).
      
      [ Updated Patch.  As penance for my sins I've also yanked another #ifdef
        that was added to avoid the xtime lag w/ hrtimers.  ]
      Signed-off-by: default avatarJohn Stultz <johnstul@us.ibm.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      17c38b74
    • john stultz's avatar
      Cleanup non-arch xtime uses, use get_seconds() or current_kernel_time(). · 2c6b47de
      john stultz authored
      This avoids use of the kernel-internal "xtime" variable directly outside
      of the actual time-related functions.  Instead, use the helper functions
      that we already have available to us.
      
      This doesn't actually change any behaviour, but this will allow us to
      fix the fact that "xtime" isn't updated very often with CONFIG_NO_HZ
      (because much of the realtime information is maintained as separate
      offsets to 'xtime'), which has caused interfaces that use xtime directly
      to get a time that is out of sync with the real-time clock by up to a
      third of a second or so.
      Signed-off-by: default avatarJohn Stultz <johnstul@us.ibm.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      2c6b47de
    • Aurelien Jarno's avatar
      KVM: disable writeback for 0x0f 0x01 instructions. · d37c8557
      Aurelien Jarno authored
      0x0f 0x01 instructions (ie lgdt, lidt, smsw, lmsw and invlpg) does
      not use writeback. This patch set no_wb=1 when emulating those
      instructions.
      
      This fixes a regression booting the FreeBSD kernel on AMD.
      Signed-off-by: default avatarAurelien Jarno <aurelien@aurel32.net>
      Signed-off-by: default avatarAvi Kivity <avi@qumranet.com>
      d37c8557
    • Avi Kivity's avatar
      KVM: Fix removal of nx capability from guest cpuid · 4c981b43
      Avi Kivity authored
      Testing the wrong bit caused kvm not to disable nx on the guest when it is
      disabled on the host (an mmu optimization relies on the nx bits being the
      same in the guest and host).
      
      This allows Windows to boot when nx is disabled on te host (e.g. when
      host pae is disabled).
      Signed-off-by: default avatarAvi Kivity <avi@qumranet.com>
      4c981b43
    • Avi Kivity's avatar
      Revert "KVM: Avoid useless memory write when possible" · 7cfa4b0a
      Avi Kivity authored
      This reverts commit a3c870bd.  While it
      does save useless updates, it (probably) defeats the fork detector, causing
      a massive performance loss.
      Signed-off-by: default avatarAvi Kivity <avi@qumranet.com>
      7cfa4b0a
    • Rusty Russell's avatar
      KVM: Fix unlikely kvm_create vs decache_vcpus_on_cpu race · 5e58cfe4
      Rusty Russell authored
      We add the kvm to the vm_list before initializing the vcpu mutexes,
      which can be mutex_trylock()'ed by decache_vcpus_on_cpu().
      Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      Signed-off-by: default avatarAvi Kivity <avi@qumranet.com>
      5e58cfe4
    • Avi Kivity's avatar
      KVM: Correctly handle writes crossing a page boundary · b0fcd903
      Avi Kivity authored
      Writes that are contiguous in virtual memory may not be contiguous in
      physical memory; so split writes that straddle a page boundary.
      
      Thanks to Aurelien for reporting the bug, patient testing, and a fix
      to this very patch.
      Signed-off-by: default avatarAurelien Jarno <aurelien@aurel32.net>
      Signed-off-by: default avatarAvi Kivity <avi@qumranet.com>
      b0fcd903
    • Linus Torvalds's avatar
      Merge branch 'for_paulus' of master.kernel.org:/pub/scm/linux/kernel/git/galak/powerpc · 0de085bb
      Linus Torvalds authored
      * 'for_paulus' of master.kernel.org:/pub/scm/linux/kernel/git/galak/powerpc: (25 commits)
        [POWERPC] 85xx: Added needed MPC85xx PCI device IDs
        [POWERPC] Add Freescale PCI VENDOR ID and 8641 device IDs
        [POWERPC] 85xxCDS: MPC8548 DTS cleanup.
        [POWERPC] 85xxCDS: Misc 8548 PCI Corrections.
        [POWERPC] 85xxCDS: Delay 8259 cascade hookup.
        [POWERPC] 85xxCDS: Make sure restart resets the PCI bus.
        [POWERPC] 85xxCDS: Allow 8259 cascade to share an MPIC interrupt line.
        [POWERPC] FSL: Add support for PCI-X controllers
        [POWERPC] Make sure virtual P2P bridge registers are setup on PCIe PHB
        [POWERPC] Provide ability to setup P2P bridge registers from struct resource
        [POWERPC] Add basic PCI/PCI Express support for 8544DS board
        [POWERPC] Make endianess of cfg_addr for indirect pci ops runtime
        [POWERPC] Removed setup_indirect_pci_nomap
        [POWERPC] 85xx: Add quirk to ignore bogus FPGA on CDS
        [POWERPC] 85xx: Added 8568 PCIe support
        [POWERPC] Fixup resources on pci_bus for PCIe PHB when no device is connected
        [POWERPC] Add basic PCI node for mpc8568mds board
        [POWERPC] Use Freescale pci/pcie common code for 85xx boards
        [POWERPC] Update PCI nodes in the 83xx/85xx boards device tree
        [POWERPC] Add 8548 CDS PCI express controller node and PCI-X device node
        ...
      0de085bb
  2. 24 Jul, 2007 31 commits