1. 31 Jul, 2011 11 commits
  2. 30 Jul, 2011 2 commits
  3. 25 Jul, 2011 4 commits
  4. 24 Jul, 2011 23 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm · b6844e8f
      Linus Torvalds authored
      * 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm: (237 commits)
        ARM: 7004/1: fix traps.h compile warnings
        ARM: 6998/2: kernel: use proper memory barriers for bitops
        ARM: 6997/1: ep93xx: increase NR_BANKS to 16 for support of 128MB RAM
        ARM: Fix build errors caused by adding generic macros
        ARM: CPU hotplug: ensure we migrate all IRQs off a downed CPU
        ARM: CPU hotplug: pass in proper affinity mask on IRQ migration
        ARM: GIC: avoid routing interrupts to offline CPUs
        ARM: CPU hotplug: fix abuse of irqdesc->node
        ARM: 6981/2: mmci: adjust calculation of f_min
        ARM: 7000/1: LPAE: Use long long printk format for displaying the pud
        ARM: 6999/1: head, zImage: Always Enter the kernel in ARM state
        ARM: btc: avoid invalidating the branch target cache on kernel TLB maintanence
        ARM: ARM_DMA_ZONE_SIZE is no more
        ARM: mach-shark: move ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size
        ARM: mach-sa1100: move ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size
        ARM: mach-realview: move from ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size
        ARM: mach-pxa: move from ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size
        ARM: mach-ixp4xx: move from ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size
        ARM: mach-h720x: move from ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size
        ARM: mach-davinci: move from ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size
        ...
      b6844e8f
    • Sasha Levin's avatar
      Documentation: Update augmented rbtree documentation · 2f175074
      Sasha Levin authored
      Current documentation referred to the old method of handling augmented
      trees.  Update documentation to correspond with the changes done in
      commit b945d6b2 ("rbtree: Undo augmented trees performance damage
      and regression").
      
      Cc: Pekka Enberg <penberg@cs.helsinki.fi>
      Cc: David Woodhouse <David.Woodhouse@intel.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Acked-by: default avatarIngo Molnar <mingo@elte.hu>
      Acked-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
      Signed-off-by: default avatarSasha Levin <levinsasha928@gmail.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      2f175074
    • Lasse Collin's avatar
      XZ: Fix missing <linux/kernel.h> include · 81d67439
      Lasse Collin authored
      <linux/kernel.h> is needed for min_t. The old version
      happened to work on x86 because <asm/unaligned.h>
      indirectly includes <linux/kernel.h>, but it didn't
      work on ARM.
      
      <linux/kernel.h> includes <asm/byteorder.h> so it's
      not necessary to include it explicitly anymore.
      Signed-off-by: default avatarLasse Collin <lasse.collin@tukaani.org>
      Cc: stable <stable@kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      81d67439
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6 · 21c7075f
      Linus Torvalds authored
      * 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: (21 commits)
        [S390] use siginfo for sigtrap signals
        [S390] dasd: add enhanced DASD statistics interface
        [S390] kvm: make sigp emerg smp capable
        [S390] disable cpu measurement alerts on a dying cpu
        [S390] initial cr0 bits
        [S390] iucv cr0 enablement bit
        [S390] race safe external interrupt registration
        [S390] remove tape block docu
        [S390] ap: toleration support for ap device type 10
        [S390] cleanup program check handler prototypes
        [S390] remove kvm mmu reload on s390
        [S390] Use gmap translation for accessing guest memory
        [S390] use gmap address spaces for kvm guest images
        [S390] kvm guest address space mapping
        [S390] fix s390 assembler code alignments
        [S390] move sie code to entry.S
        [S390] kvm: handle tprot intercepts
        [S390] qdio: clear shared DSCI before scheduling the queue handler
        [S390] reference bit testing for unmapped pages
        [S390] irqs: Do not trace arch_local_{*,irq_*} functions
        ...
      21c7075f
    • Linus Torvalds's avatar
      Merge branch 'for-upstream' of git://openrisc.net/jonas/linux · ff0c4ad2
      Linus Torvalds authored
      * 'for-upstream' of git://openrisc.net/jonas/linux: (24 commits)
        OpenRISC: Add MAINTAINERS entry
        OpenRISC: Miscellaneous
        OpenRISC: Library routines
        OpenRISC: Headers
        OpenRISC: Traps
        OpenRISC: Module support
        OpenRISC: GPIO
        OpenRISC: Scheduling/Process management
        OpenRISC: Idle/Power management
        OpenRISC: System calls
        OpenRISC: IRQ
        OpenRISC: Timekeeping
        OpenRISC: DMA
        OpenRISC: PTrace
        OpenRISC: Build infrastructure
        OpenRISC: Signal handling
        OpenRISC: Memory management
        OpenRISC: Device tree
        OpenRISC: Boot code
        iomap: make IOPORT/PCI mapping functions conditional
        ...
      ff0c4ad2
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus · fcda12e7
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:
        modpost: Fix modpost's license checking V3
        module: add /sys/module/<name>/uevent files
        module: change attr callbacks to take struct module_kobject
        modules: make arch's use default loader hooks
        modules: add default loader hook implementations
        param: fix return value handling in param_set_*
      fcda12e7
    • Linus Torvalds's avatar
      Merge branch 'kvm-updates/3.1' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 5fabc487
      Linus Torvalds authored
      * 'kvm-updates/3.1' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (143 commits)
        KVM: IOMMU: Disable device assignment without interrupt remapping
        KVM: MMU: trace mmio page fault
        KVM: MMU: mmio page fault support
        KVM: MMU: reorganize struct kvm_shadow_walk_iterator
        KVM: MMU: lockless walking shadow page table
        KVM: MMU: do not need atomicly to set/clear spte
        KVM: MMU: introduce the rules to modify shadow page table
        KVM: MMU: abstract some functions to handle fault pfn
        KVM: MMU: filter out the mmio pfn from the fault pfn
        KVM: MMU: remove bypass_guest_pf
        KVM: MMU: split kvm_mmu_free_page
        KVM: MMU: count used shadow pages on prepareing path
        KVM: MMU: rename 'pt_write' to 'emulate'
        KVM: MMU: cleanup for FNAME(fetch)
        KVM: MMU: optimize to handle dirty bit
        KVM: MMU: cache mmio info on page fault path
        KVM: x86: introduce vcpu_mmio_gva_to_gpa to cleanup the code
        KVM: MMU: do not update slot bitmap if spte is nonpresent
        KVM: MMU: fix walking shadow page table
        KVM guest: KVM Steal time registration
        ...
      5fabc487
    • Linus Torvalds's avatar
      Merge branch 'upstream/xen-tracing2' of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen · c61264f9
      Linus Torvalds authored
      * 'upstream/xen-tracing2' of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen:
        xen/trace: use class for multicall trace
        xen/trace: convert mmu events to use DECLARE_EVENT_CLASS()/DEFINE_EVENT()
        xen/multicall: move *idx fields to start of mc_buffer
        xen/multicall: special-case singleton hypercalls
        xen/multicalls: add unlikely around slowpath in __xen_mc_entry()
        xen/multicalls: disable MC_DEBUG
        xen/mmu: tune pgtable alloc/release
        xen/mmu: use extend_args for more mmuext updates
        xen/trace: add tlb flush tracepoints
        xen/trace: add segment desc tracing
        xen/trace: add xen_pgd_(un)pin tracepoints
        xen/trace: add ptpage alloc/release tracepoints
        xen/trace: add mmu tracepoints
        xen/trace: add multicall tracing
        xen/trace: set up tracepoint skeleton
        xen/multicalls: remove debugfs stats
        trace/xen: add skeleton for Xen trace events
      c61264f9
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · a23a334b
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (34 commits)
        crypto: caam - ablkcipher support
        crypto: caam - faster aead implementation
        crypto: caam - structure renaming
        crypto: caam - shorter names
        crypto: talitos - don't bad_key in ablkcipher setkey
        crypto: talitos - remove unused giv from ablkcipher methods
        crypto: talitos - don't set done notification in hot path
        crypto: talitos - ensure request ordering within a single tfm
        crypto: gf128mul - fix call to memset()
        crypto: s390 - support hardware accelerated SHA-224
        crypto: algif_hash - Handle initial af_alg_make_sg error correctly
        crypto: sha1_generic - use SHA1_BLOCK_SIZE
        hwrng: ppc4xx - add support for ppc4xx TRNG
        crypto: crypto4xx - Perform read/modify/write on device control register
        crypto: caam - fix build warning when DEBUG_FS not configured
        crypto: arc4 - Fixed coding style issues
        crypto: crc32c - Fixed coding style issue
        crypto: omap-sham - do not schedule tasklet if there is no active requests
        crypto: omap-sham - clear device flags when finishing request
        crypto: omap-sham - irq handler must not clear error code
        ...
      a23a334b
    • Alessio Igor Bogani's avatar
      modpost: Fix modpost's license checking V3 · 62a26356
      Alessio Igor Bogani authored
      The commit f02e8a65 sorts symbols placing each of them in its own elf section.
      The sorting and merging into the canonical sections are done by the linker.
      Unfortunately modpost to generate Module.symvers file parses vmlinux
      (already linked) and all modules object files (which aren't linked yet).
      These aren't sanitized by the linker yet. That breaks modpost that can't
      detect license properly for modules. This patch makes modpost aware of
      the new exported symbols structure.
      
      Thanks to Arnaud Lacombe <lacombar@gmail.com> and Anders Kaseorg
      <andersk@ksplice.com> for providing useful suggestions about code.
      
      This work was supported by a hardware donation from the CE Linux Forum.
      Reported-by: default avatarJan Beulich <jbeulich@novell.com>
      Signed-off-by: default avatarAlessio Igor Bogani <abogani@kernel.org>
      Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      62a26356
    • Kay Sievers's avatar
      module: add /sys/module/<name>/uevent files · 88bfa324
      Kay Sievers authored
      Userspace wants to manage module parameters with udev rules.
      This currently only works for loaded modules, but not for
      built-in ones.
      
      To allow access to the built-in modules we need to
      re-trigger all module load events that happened before any
      userspace was running. We already do the same thing for all
      devices, subsystems(buses) and drivers.
      
      This adds the currently missing /sys/module/<name>/uevent files
      to all module entries.
      Signed-off-by: default avatarKay Sievers <kay.sievers@vrfy.org>
      Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (split & trivial fix)
      88bfa324
    • Kay Sievers's avatar
      module: change attr callbacks to take struct module_kobject · 4befb026
      Kay Sievers authored
      This simplifies the next patch, where we have an attribute on a
      builtin module (ie. module == NULL).
      Signed-off-by: default avatarKay Sievers <kay.sievers@vrfy.org>
      Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (split into 2)
      4befb026
    • Jonas Bonn's avatar
      modules: make arch's use default loader hooks · 66574cc0
      Jonas Bonn authored
      This patch removes all the module loader hook implementations in the
      architecture specific code where the functionality is the same as that
      now provided by the recently added default hooks.
      Signed-off-by: default avatarJonas Bonn <jonas@southpole.se>
      Acked-by: default avatarMike Frysinger <vapier@gentoo.org>
      Acked-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Tested-by: default avatarMichal Simek <monstr@monstr.eu>
      Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      66574cc0
    • Jonas Bonn's avatar
      modules: add default loader hook implementations · 74e08fcf
      Jonas Bonn authored
      The module loader code allows architectures to hook into the code by
      providing a small number of entry points that each arch must implement.
      This patch provides __weakly linked generic implementations of these
      entry points for architectures that don't need to do anything special.
      Signed-off-by: default avatarJonas Bonn <jonas@southpole.se>
      Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      74e08fcf
    • Satoru Moriya's avatar
      param: fix return value handling in param_set_* · 81c74136
      Satoru Moriya authored
      In STANDARD_PARAM_DEF, param_set_* handles the case in which strtolfn
      returns -EINVAL but it may return -ERANGE. If it returns -ERANGE,
      param_set_* may set uninitialized value to the paramerter. We should handle
      both cases.
      
      The one of the cases in which strtolfn() returns -ERANGE is following:
      
       *Type of module parameter is long
       *Set the parameter more than LONG_MAX
      Signed-off-by: default avatarSatoru Moriya <satoru.moriya@hds.com>
      Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      81c74136
    • Alex Williamson's avatar
      KVM: IOMMU: Disable device assignment without interrupt remapping · 3f68b031
      Alex Williamson authored
      IOMMU interrupt remapping support provides a further layer of
      isolation for device assignment by preventing arbitrary interrupt
      block DMA writes by a malicious guest from reaching the host.  By
      default, we should require that the platform provides interrupt
      remapping support, with an opt-in mechanism for existing behavior.
      
      Both AMD IOMMU and Intel VT-d2 hardware support interrupt
      remapping, however we currently only have software support on
      the Intel side.  Users wishing to re-enable device assignment
      when interrupt remapping is not supported on the platform can
      use the "allow_unsafe_assigned_interrupts=1" module option.
      
      [avi: break long lines]
      Signed-off-by: default avatarAlex Williamson <alex.williamson@redhat.com>
      Signed-off-by: default avatarMarcelo Tosatti <mtosatti@redhat.com>
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      3f68b031
    • Xiao Guangrong's avatar
      KVM: MMU: trace mmio page fault · 4f022648
      Xiao Guangrong authored
      Add tracepoints to trace mmio page fault
      Signed-off-by: default avatarXiao Guangrong <xiaoguangrong@cn.fujitsu.com>
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      4f022648
    • Xiao Guangrong's avatar
      KVM: MMU: mmio page fault support · ce88decf
      Xiao Guangrong authored
      The idea is from Avi:
      
      | We could cache the result of a miss in an spte by using a reserved bit, and
      | checking the page fault error code (or seeing if we get an ept violation or
      | ept misconfiguration), so if we get repeated mmio on a page, we don't need to
      | search the slot list/tree.
      | (https://lkml.org/lkml/2011/2/22/221)
      
      When the page fault is caused by mmio, we cache the info in the shadow page
      table, and also set the reserved bits in the shadow page table, so if the mmio
      is caused again, we can quickly identify it and emulate it directly
      
      Searching mmio gfn in memslots is heavy since we need to walk all memeslots, it
      can be reduced by this feature, and also avoid walking guest page table for
      soft mmu.
      
      [jan: fix operator precedence issue]
      Signed-off-by: default avatarXiao Guangrong <xiaoguangrong@cn.fujitsu.com>
      Signed-off-by: default avatarJan Kiszka <jan.kiszka@siemens.com>
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      ce88decf
    • Xiao Guangrong's avatar
      KVM: MMU: reorganize struct kvm_shadow_walk_iterator · dd3bfd59
      Xiao Guangrong authored
      Reorganize it for good using the cache
      Signed-off-by: default avatarXiao Guangrong <xiaoguangrong@cn.fujitsu.com>
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      dd3bfd59
    • Xiao Guangrong's avatar
      KVM: MMU: lockless walking shadow page table · c2a2ac2b
      Xiao Guangrong authored
      Use rcu to protect shadow pages table to be freed, so we can safely walk it,
      it should run fastly and is needed by mmio page fault
      Signed-off-by: default avatarXiao Guangrong <xiaoguangrong@cn.fujitsu.com>
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      c2a2ac2b
    • Xiao Guangrong's avatar
      KVM: MMU: do not need atomicly to set/clear spte · 603e0651
      Xiao Guangrong authored
      Now, the spte is just from nonprsent to present or present to nonprsent, so
      we can use some trick to set/clear spte non-atomicly as linux kernel does
      Signed-off-by: default avatarXiao Guangrong <xiaoguangrong@cn.fujitsu.com>
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      603e0651
    • Xiao Guangrong's avatar
      KVM: MMU: introduce the rules to modify shadow page table · 1df9f2dc
      Xiao Guangrong authored
      Introduce some interfaces to modify spte as linux kernel does:
      - mmu_spte_clear_track_bits, it set the spte from present to nonpresent, and
        track the stat bits(accessed/dirty) of spte
      - mmu_spte_clear_no_track, the same as mmu_spte_clear_track_bits except
        tracking the stat bits
      - mmu_spte_set, set spte from nonpresent to present
      - mmu_spte_update, only update the stat bits
      
      Now, it does not allowed to set spte from present to present, later, we can
      drop the atomicly opration for X86_32 host, and it is the preparing work to
      get spte on X86_32 host out of the mmu lock
      Signed-off-by: default avatarXiao Guangrong <xiaoguangrong@cn.fujitsu.com>
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      1df9f2dc
    • Xiao Guangrong's avatar
      KVM: MMU: abstract some functions to handle fault pfn · d7c55201
      Xiao Guangrong authored
      Introduce handle_abnormal_pfn to handle fault pfn on page fault path,
      introduce mmu_invalid_pfn to handle fault pfn on prefetch path
      
      It is the preparing work for mmio page fault support
      Signed-off-by: default avatarXiao Guangrong <xiaoguangrong@cn.fujitsu.com>
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      d7c55201