1. 27 Jan, 2014 1 commit
    • Cédric Le Goater's avatar
      KVM: PPC: Book3S: MMIO emulation support for little endian guests · 73601775
      Cédric Le Goater authored
      MMIO emulation reads the last instruction executed by the guest
      and then emulates. If the guest is running in Little Endian order,
      or more generally in a different endian order of the host, the
      instruction needs to be byte-swapped before being emulated.
      
      This patch adds a helper routine which tests the endian order of
      the host and the guest in order to decide whether a byteswap is
      needed or not. It is then used to byteswap the last instruction
      of the guest in the endian order of the host before MMIO emulation
      is performed.
      
      Finally, kvmppc_handle_load() of kvmppc_handle_store() are modified
      to reverse the endianness of the MMIO if required.
      Signed-off-by: default avatarCédric Le Goater <clg@fr.ibm.com>
      [agraf: add booke handling]
      Signed-off-by: default avatarAlexander Graf <agraf@suse.de>
      73601775
  2. 09 Jan, 2014 15 commits
  3. 21 Nov, 2013 2 commits
  4. 20 Nov, 2013 1 commit
  5. 19 Nov, 2013 1 commit
  6. 17 Nov, 2013 1 commit
  7. 15 Nov, 2013 19 commits
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · f0804804
      Linus Torvalds authored
      Pull KVM changes from Paolo Bonzini:
       "Here are the 3.13 KVM changes.  There was a lot of work on the PPC
        side: the HV and emulation flavors can now coexist in a single kernel
        is probably the most interesting change from a user point of view.
      
        On the x86 side there are nested virtualization improvements and a few
        bugfixes.
      
        ARM got transparent huge page support, improved overcommit, and
        support for big endian guests.
      
        Finally, there is a new interface to connect KVM with VFIO.  This
        helps with devices that use NoSnoop PCI transactions, letting the
        driver in the guest execute WBINVD instructions.  This includes some
        nVidia cards on Windows, that fail to start without these patches and
        the corresponding userspace changes"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (146 commits)
        kvm, vmx: Fix lazy FPU on nested guest
        arm/arm64: KVM: PSCI: propagate caller endianness to the incoming vcpu
        arm/arm64: KVM: MMIO support for BE guest
        kvm, cpuid: Fix sparse warning
        kvm: Delete prototype for non-existent function kvm_check_iopl
        kvm: Delete prototype for non-existent function complete_pio
        hung_task: add method to reset detector
        pvclock: detect watchdog reset at pvclock read
        kvm: optimize out smp_mb after srcu_read_unlock
        srcu: API for barrier after srcu read unlock
        KVM: remove vm mmap method
        KVM: IOMMU: hva align mapping page size
        KVM: x86: trace cpuid emulation when called from emulator
        KVM: emulator: cleanup decode_register_operand() a bit
        KVM: emulator: check rex prefix inside decode_register()
        KVM: x86: fix emulation of "movzbl %bpl, %eax"
        kvm_host: typo fix
        KVM: x86: emulate SAHF instruction
        MAINTAINERS: add tree for kvm.git
        Documentation/kvm: add a 00-INDEX file
        ...
      f0804804
    • Linus Torvalds's avatar
      Merge tag 'stable/for-linus-3.13-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · eda670c6
      Linus Torvalds authored
      Pull Xen updates from Konrad Rzeszutek Wilk:
       "This has tons of fixes and two major features which are concentrated
        around the Xen SWIOTLB library.
      
        The short <blurb> is that the tracing facility (just one function) has
        been added to SWIOTLB to make it easier to track I/O progress.
        Additionally under Xen and ARM (32 & 64) the Xen-SWIOTLB driver
        "is used to translate physical to machine and machine to physical
        addresses of foreign[guest] pages for DMA operations" (Stefano) when
        booting under hardware without proper IOMMU.
      
        There are also bug-fixes, cleanups, compile warning fixes, etc.
      
        The commit times for some of the commits is a bit fresh - that is b/c
        we wanted to make sure we have the Ack's from the ARM folks - which
        with the string of back-to-back conferences took a bit of time.  Rest
        assured - the code has been stewing in #linux-next for some time.
      
        Features:
         - SWIOTLB has tracing added when doing bounce buffer.
         - Xen ARM/ARM64 can use Xen-SWIOTLB.  This work allows Linux to
           safely program real devices for DMA operations when running as a
           guest on Xen on ARM, without IOMMU support. [*1]
         - xen_raw_printk works with PVHVM guests if needed.
      
        Bug-fixes:
         - Make memory ballooning work under HVM with large MMIO region.
         - Inform hypervisor of MCFG regions found in ACPI DSDT.
         - Remove deprecated IRQF_DISABLED.
         - Remove deprecated __cpuinit.
      
        [*1]:
        "On arm and arm64 all Xen guests, including dom0, run with second
         stage translation enabled.  As a consequence when dom0 programs a
         device for a DMA operation is going to use (pseudo) physical
         addresses instead machine addresses.  This work introduces two trees
         to track physical to machine and machine to physical mappings of
         foreign pages.  Local pages are assumed mapped 1:1 (physical address
         == machine address).  It enables the SWIOTLB-Xen driver on ARM and
         ARM64, so that Linux can translate physical addresses to machine
         addresses for dma operations when necessary.  " (Stefano)"
      
      * tag 'stable/for-linus-3.13-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip: (32 commits)
        xen/arm: pfn_to_mfn and mfn_to_pfn return the argument if nothing is in the p2m
        arm,arm64/include/asm/io.h: define struct bio_vec
        swiotlb-xen: missing include dma-direction.h
        pci-swiotlb-xen: call pci_request_acs only ifdef CONFIG_PCI
        arm: make SWIOTLB available
        xen: delete new instances of added __cpuinit
        xen/balloon: Set balloon's initial state to number of existing RAM pages
        xen/mcfg: Call PHYSDEVOP_pci_mmcfg_reserved for MCFG areas.
        xen: remove deprecated IRQF_DISABLED
        x86/xen: remove deprecated IRQF_DISABLED
        swiotlb-xen: fix error code returned by xen_swiotlb_map_sg_attrs
        swiotlb-xen: static inline xen_phys_to_bus, xen_bus_to_phys, xen_virt_to_bus and range_straddles_page_boundary
        grant-table: call set_phys_to_machine after mapping grant refs
        arm,arm64: do not always merge biovec if we are running on Xen
        swiotlb: print a warning when the swiotlb is full
        swiotlb-xen: use xen_dma_map/unmap_page, xen_dma_sync_single_for_cpu/device
        xen: introduce xen_dma_map/unmap_page and xen_dma_sync_single_for_cpu/device
        tracing/events: Fix swiotlb tracepoint creation
        swiotlb-xen: use xen_alloc/free_coherent_pages
        xen: introduce xen_alloc/free_coherent_pages
        ...
      eda670c6
    • Linus Torvalds's avatar
      Merge tag 'virtio-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux · b746f9c7
      Linus Torvalds authored
      Pull virtio updates from Rusty Russell:
       "Nothing really exciting: some groundwork for changing virtio endian,
        and some robustness fixes for broken virtio devices, plus minor
        tweaks"
      
      * tag 'virtio-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
        virtio_scsi: verify if queue is broken after virtqueue_get_buf()
        x86, asmlinkage, lguest: Pass in globals into assembler statement
        virtio: mmio: fix signature checking for BE guests
        virtio_ring: adapt to notify() returning bool
        virtio_net: verify if queue is broken after virtqueue_get_buf()
        virtio_console: verify if queue is broken after virtqueue_get_buf()
        virtio_blk: verify if queue is broken after virtqueue_get_buf()
        virtio_ring: add new function virtqueue_is_broken()
        virtio_test: verify if virtqueue_kick() succeeded
        virtio_net: verify if virtqueue_kick() succeeded
        virtio_ring: let virtqueue_{kick()/notify()} return a bool
        virtio_ring: change host notification API
        virtio_config: remove virtio_config_val
        virtio: use size-based config accessors.
        virtio_config: introduce size-based accessors.
        virtio_ring: plug kmemleak false positive.
        virtio: pm: use CONFIG_PM_SLEEP instead of CONFIG_PM
      b746f9c7
    • Linus Torvalds's avatar
      Merge tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux · ce6513f7
      Linus Torvalds authored
      Pull module updates from Rusty Russell:
       "Mainly boring here, too.  rmmod --wait finally removed, though"
      
      * tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
        modpost: fix bogus 'exported twice' warnings.
        init: fix in-place parameter modification regression
        asmlinkage, module: Make ksymtab and kcrctab symbols and __this_module __visible
        kernel: add support for init_array constructors
        modpost: Optionally ignore secondary errors seen if a single module build fails
        module: remove rmmod --wait option.
      ce6513f7
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patch-bomb from Andrew Morton) · d8fe4acc
      Linus Torvalds authored
      Merge patches from Andrew Morton:
       - memstick fixes
      
       - the rest of MM
      
       - various misc bits that were awaiting merges from linux-next into
         mainline: seq_file, printk, rtc, completions, w1, softirqs, llist,
         kfifo, hfsplus
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (72 commits)
        cmdline-parser: fix build
        hfsplus: Fix undefined __divdi3 in hfsplus_init_header_node()
        kfifo API type safety
        kfifo: kfifo_copy_{to,from}_user: fix copied bytes calculation
        sound/core/memalloc.c: use gen_pool_dma_alloc() to allocate iram buffer
        llists-move-llist_reverse_order-from-raid5-to-llistc-fix
        llists: move llist_reverse_order from raid5 to llist.c
        kernel: fix generic_exec_single indentation
        kernel-provide-a-__smp_call_function_single-stub-for-config_smp-fix
        kernel: provide a __smp_call_function_single stub for !CONFIG_SMP
        kernel: remove CONFIG_USE_GENERIC_SMP_HELPERS
        revert "softirq: Add support for triggering softirq work on softirqs"
        drivers/w1/masters/w1-gpio.c: use dev_get_platdata()
        sched: remove INIT_COMPLETION
        tree-wide: use reinit_completion instead of INIT_COMPLETION
        sched: replace INIT_COMPLETION with reinit_completion
        drivers/rtc/rtc-hid-sensor-time.c: enable HID input processing early
        drivers/rtc/rtc-hid-sensor-time.c: use dev_get_platdata()
        vsprintf: ignore %n again
        seq_file: remove "%n" usage from seq_file users
        ...
      d8fe4acc
    • Alexander Beregalov's avatar
      cmdline-parser: fix build · 8d3ef556
      Alexander Beregalov authored
      Fix following errors:
      
        include/linux/cmdline-parser.h:17:12: error: 'BDEVNAME_SIZE' undeclared here
        block/cmdline-parser.c:17:2: error: implicit declaration of function 'kzalloc'
      Signed-off-by: default avatarAlexander Beregalov <alexander.beregalov@intel.com>
      Cc: CaiZhiyong <caizhiyong@huawei.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      8d3ef556
    • Geert Uytterhoeven's avatar
      hfsplus: Fix undefined __divdi3 in hfsplus_init_header_node() · a99b7069
      Geert Uytterhoeven authored
      ERROR: "__divdi3" [fs/hfsplus/hfsplus.ko] undefined!
      
      Introduced by commit 099e9245 ("hfsplus: implement attributes file's
      header node initialization code").
      
      i_size_read() returns loff_t, which is long long, i.e.  64-bit.  node_size
      is size_t, which is either 32-bit or 64-bit.  Hence
      "i_size_read(attr_file) / node_size" is a 64-by-32 or 64-by-64 division,
      causing (some versions of) gcc to emit a call to __divdi3().
      
      Fortunately node_size is actually 16-bit, as the sole caller of
      hfsplus_init_header_node() passes a u16.  Hence change its type from
      size_t to u16, and use do_div() to perform a 64-by-32 division.
      
      Not seen in m68k/allmodconfig in -next, so it really depends on the
      verion of gcc.
      Signed-off-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Cc: Vyacheslav Dubeyko <slava@dubeyko.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a99b7069
    • Stefani Seibold's avatar
      kfifo API type safety · 498d319b
      Stefani Seibold authored
      This patch enhances the type safety for the kfifo API.  It is now safe
      to put const data into a non const FIFO and the API will now generate a
      compiler warning when reading from the fifo where the destination
      address is pointing to a const variable.
      
      As a side effect the kfifo_put() does now expect the value of an element
      instead a pointer to the element.  This was suggested Russell King.  It
      make the handling of the kfifo_put easier since there is no need to
      create a helper variable for getting the address of a pointer or to pass
      integers of different sizes.
      
      IMHO the API break is okay, since there are currently only six users of
      kfifo_put().
      
      The code is also cleaner by kicking out the "if (0)" expressions.
      
      [akpm@linux-foundation.org: coding-style fixes]
      Signed-off-by: default avatarStefani Seibold <stefani@seibold.net>
      Cc: Russell King <rmk@arm.linux.org.uk>
      Cc: Hauke Mehrtens <hauke@hauke-m.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      498d319b
    • Lars-Peter Clausen's avatar
      kfifo: kfifo_copy_{to,from}_user: fix copied bytes calculation · a019e48c
      Lars-Peter Clausen authored
      'copied' and 'len' are in bytes, while 'ret' is in elements, so we need to
      multiply 'ret' with the size of one element to get the correct result.
      Signed-off-by: default avatarLars-Peter Clausen <lars@metafoo.de>
      Cc: Stefani Seibold <stefani@seibold.net>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a019e48c
    • Nicolin Chen's avatar
      sound/core/memalloc.c: use gen_pool_dma_alloc() to allocate iram buffer · 07968fe4
      Nicolin Chen authored
      Since gen_pool_dma_alloc() is introduced, we implement it to simplify code.
      Signed-off-by: default avatarNicolin Chen <b42378@freescale.com>
      Acked-by: default avatarTakashi Iwai <tiwai@suse.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      07968fe4
    • Andrew Morton's avatar
      llists-move-llist_reverse_order-from-raid5-to-llistc-fix · 0791a605
      Andrew Morton authored
      fix comment typo, per Jan
      
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Jens Axboe <axboe@kernel.dk>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      0791a605
    • Christoph Hellwig's avatar
      llists: move llist_reverse_order from raid5 to llist.c · b89241e8
      Christoph Hellwig authored
      Make this useful helper available for other users.
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Reviewed-by: default avatarJan Kara <jack@suse.cz>
      Cc: Jens Axboe <axboe@kernel.dk>
      Cc: Neil Brown <neilb@suse.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      b89241e8
    • Christoph Hellwig's avatar
      kernel: fix generic_exec_single indentation · ca5ecd64
      Christoph Hellwig authored
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Jens Axboe <axboe@kernel.dk>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ca5ecd64
    • Andrew Morton's avatar
      kernel-provide-a-__smp_call_function_single-stub-for-config_smp-fix · 7cf64f86
      Andrew Morton authored
      x86_64 allnoconfig:
      
        kernel/up.c:25: error: redefinition of '__smp_call_function_single'
        include/linux/smp.h:154: note: previous definition of '__smp_call_function_single' was here
      
      Cc: Christoph Hellwig <hch@infradead.org>
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Jens Axboe <axboe@kernel.dk>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      7cf64f86
    • Christoph Hellwig's avatar
      kernel: provide a __smp_call_function_single stub for !CONFIG_SMP · 40c01e8b
      Christoph Hellwig authored
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Jens Axboe <axboe@kernel.dk>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      40c01e8b
    • Christoph Hellwig's avatar
      kernel: remove CONFIG_USE_GENERIC_SMP_HELPERS · 0a06ff06
      Christoph Hellwig authored
      We've switched over every architecture that supports SMP to it, so
      remove the new useless config variable.
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Jens Axboe <axboe@kernel.dk>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      0a06ff06
    • Christoph Hellwig's avatar
      revert "softirq: Add support for triggering softirq work on softirqs" · fc21c0cf
      Christoph Hellwig authored
      This commit was incomplete in that code to remove items from the per-cpu
      lists was missing and never acquired a user in the 5 years it has been in
      the tree.  We're going to implement what it seems to try to archive in a
      simpler way, and this code is in the way of doing so.
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Jens Axboe <axboe@kernel.dk>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      fc21c0cf
    • Jingoo Han's avatar
      drivers/w1/masters/w1-gpio.c: use dev_get_platdata() · c853b167
      Jingoo Han authored
      Use the wrapper function for retrieving the platform data instead of
      accessing dev->platform_data directly.  This is a cosmetic change to make
      the code simpler and enhance the readability.
      Signed-off-by: default avatarJingoo Han <jg1.han@samsung.com>
      Acked-by: default avatarEvgeniy Polyakov <zbr@ioremap.net>
      Cc: Greg KH <greg@kroah.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      c853b167
    • Wolfram Sang's avatar
      sched: remove INIT_COMPLETION · 62026aed
      Wolfram Sang authored
      All users are converted over to reinit_completion(). Remove the old
      macro now.
      Signed-off-by: default avatarWolfram Sang <wsa@the-dreams.de>
      Cc: Linus Walleij <linus.walleij@linaro.org>
      Cc: Ingo Molnar <mingo@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      62026aed