1. 02 May, 2013 22 commits
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · 99bece77
      Linus Torvalds authored
      Pull i2c changes from Wolfram Sang:
      
       - an arbitration driver.  While the driver is quite simple, it caused
         discussion if we need additional arbitration on top of the one
         specified in the I2C standard.  Conclusion is that I accept a few
         generic mechanisms, but not very specific ones.
      
       - the core lost the detach_adapter() call.  It has no users anymore and
         was in the way for other cleanups.  attach_adapter() is sadly still
         there since there are users waiting to be converted.
      
       - the core gained a bus recovery infrastructure.  I2C defines a way to
         recover if the data line is stalled.  This mechanism is now in the
         core and drivers can now pass some data to make use of it.
      
       - bigger driver cleanups for designware, s3c2410
      
       - removing superfluous refcounting from drivers
      
       - removing Ben Dooks as second maintainer due to inactivity.  Thanks
         for all your work so far, Ben!
      
       - bugfixes, feature additions, devicetree fixups, simplifications...
      
      * 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (38 commits)
        i2c: xiic: must always write 16-bit words to TX_FIFO
        i2c: octeon: use HZ in timeout value
        i2c: octeon: Fix i2c fail problem when a process is terminated by a signal
        i2c: designware-pci: drop superfluous {get|put}_device
        i2c: designware-plat: drop superfluous {get|put}_device
        i2c: davinci: drop superfluous {get|put}_device
        MAINTAINERS: Ben Dooks is inactive regarding I2C
        i2c: mux: Add i2c-arb-gpio-challenge 'mux' driver
        i2c: at91: convert to dma_request_slave_channel_compat()
        i2c: mxs: do error checking and handling in PIO mode
        i2c: mxs: remove races in PIO code
        i2c-designware: switch to use runtime PM autosuspend
        i2c-designware: use usleep_range() in the busy-loop
        i2c-designware: enable/disable the controller properly
        i2c-designware: use dynamic adapter numbering on Lynxpoint
        i2c-designware-pci: use managed functions pcim_* and devm_*
        i2c-designware-pci: use dev_err() instead of printk()
        i2c-designware: move to managed functions (devm_*)
        i2c: remove CONFIG_HOTPLUG ifdefs
        i2c: s3c2410: Add SMBus emulation for block read
        ...
      99bece77
    • Linus Torvalds's avatar
      Merge tag 'virtio-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux · 736a2dd2
      Linus Torvalds authored
      Pull virtio & lguest updates from Rusty Russell:
       "Lots of virtio work which wasn't quite ready for last merge window.
      
        Plus I dived into lguest again, reworking the pagetable code so we can
        move the switcher page: our fixmaps sometimes take more than 2MB now..."
      
      Ugh.  Annoying conflicts with the tcm_vhost -> vhost_scsi rename.
      Hopefully correctly resolved.
      
      * tag 'virtio-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux: (57 commits)
        caif_virtio: Remove bouncing email addresses
        lguest: improve code readability in lg_cpu_start.
        virtio-net: fill only rx queues which are being used
        lguest: map Switcher below fixmap.
        lguest: cache last cpu we ran on.
        lguest: map Switcher text whenever we allocate a new pagetable.
        lguest: don't share Switcher PTE pages between guests.
        lguest: expost switcher_pages array (as lg_switcher_pages).
        lguest: extract shadow PTE walking / allocating.
        lguest: make check_gpte et. al return bool.
        lguest: assume Switcher text is a single page.
        lguest: rename switcher_page to switcher_pages.
        lguest: remove RESERVE_MEM constant.
        lguest: check vaddr not pgd for Switcher protection.
        lguest: prepare to make SWITCHER_ADDR a variable.
        virtio: console: replace EMFILE with EBUSY for already-open port
        virtio-scsi: reset virtqueue affinity when doing cpu hotplug
        virtio-scsi: introduce multiqueue support
        virtio-scsi: push vq lock/unlock into virtscsi_vq_done
        virtio-scsi: pass struct virtio_scsi to virtqueue completion function
        ...
      736a2dd2
    • Linus Torvalds's avatar
      Merge tag 'vfio-for-v3.10' of git://github.com/awilliam/linux-vfio · 0b2e3b6b
      Linus Torvalds authored
      Pull vfio updates from Alex Williamson:
       "Changes include extension to support PCI AER notification to
        userspace, byte granularity of PCI config space and access to
        unarchitected PCI config space, better protection around IOMMU driver
        accesses, default file mode fix, and a few misc cleanups."
      
      * tag 'vfio-for-v3.10' of git://github.com/awilliam/linux-vfio:
        vfio: Set container device mode
        vfio: Use down_reads to protect iommu disconnects
        vfio: Convert container->group_lock to rwsem
        PCI/VFIO: use pcie_flags_reg instead of access PCI-E Capabilities Register
        vfio-pci: Enable raw access to unassigned config space
        vfio-pci: Use byte granularity in config map
        vfio: make local function vfio_pci_intx_unmask_handler() static
        VFIO-AER: Vfio-pci driver changes for supporting AER
        VFIO: Wrapper for getting reference to vfio_device
      0b2e3b6b
    • Linus Torvalds's avatar
      Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost · e9589300
      Linus Torvalds authored
      Pull vhost cleanups and fixes from Michael Tsirkin:
       "Here are vhost cleanups and fixes by Asias He and myself.  They affect
        both vhost-net and vhost-scsi devices.  They also *depend* on both
        net-next and target-pending, where the net and target commits these
        changes depend on are already merged.  So merging through the common
        vhost tree."
      
      * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
        vhost_scsi: module rename
        tcm_vhost: header split up
        vhost: src file renames
        vhost: fix error handling in RESET_OWNER ioctl
        tcm_vhost: remove virtio-net.h dependency
        vhost: move per-vq net specific fields out to net
        tcm_vhost: document inflight ref-counting use
        vhost: move vhost-net zerocopy fields to net.c
        tcm_vhost: Wait for pending requests in vhost_scsi_flush()
        vhost: Allow device specific fields per vq
      e9589300
    • Linus Torvalds's avatar
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc · 5a148af6
      Linus Torvalds authored
      Pull powerpc update from Benjamin Herrenschmidt:
       "The main highlights this time around are:
      
         - A pile of addition POWER8 bits and nits, such as updated
           performance counter support (Michael Ellerman), new branch history
           buffer support (Anshuman Khandual), base support for the new PCI
           host bridge when not using the hypervisor (Gavin Shan) and other
           random related bits and fixes from various contributors.
      
         - Some rework of our page table format by Aneesh Kumar which fixes a
           thing or two and paves the way for THP support.  THP itself will
           not make it this time around however.
      
         - More Freescale updates, including Altivec support on the new e6500
           cores, new PCI controller support, and a pile of new boards support
           and updates.
      
         - The usual batch of trivial cleanups & fixes"
      
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (156 commits)
        powerpc: Fix build error for book3e
        powerpc: Context switch the new EBB SPRs
        powerpc: Turn on the EBB H/FSCR bits
        powerpc: Replace CPU_FTR_BCTAR with CPU_FTR_ARCH_207S
        powerpc: Setup BHRB instructions facility in HFSCR for POWER8
        powerpc: Fix interrupt range check on debug exception
        powerpc: Update tlbie/tlbiel as per ISA doc
        powerpc: Print page size info during boot
        powerpc: print both base and actual page size on hash failure
        powerpc: Fix hpte_decode to use the correct decoding for page sizes
        powerpc: Decode the pte-lp-encoding bits correctly.
        powerpc: Use encode avpn where we need only avpn values
        powerpc: Reduce PTE table memory wastage
        powerpc: Move the pte free routines from common header
        powerpc: Reduce the PTE_INDEX_SIZE
        powerpc: Switch 16GB and 16MB explicit hugepages to a different page table format
        powerpc: New hugepage directory format
        powerpc: Don't truncate pgd_index wrongly
        powerpc: Don't hard code the size of pte page
        powerpc: Save DAR and DSISR in pt_regs on MCE
        ...
      5a148af6
    • Linus Torvalds's avatar
      Merge tag 'multiplatform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 99c6bcf4
      Linus Torvalds authored
      Pull ARM SoC multiplatform updates from Olof Johansson:
       "More multiplatform enablement for ARM platforms.  The ones converted
        in this branch are:
      
         - bcm2835
         - cns3xxx
         - sirf
         - nomadik
         - msx
         - spear
         - tegra
         - ux500
      
        We're getting close to having most of them converted!
      
        One of the larger platforms remaining is Samsung Exynos, and there are
        a bunch of supporting patches in this merge window for it.  There was
        a patch in this branch to a early version of multiplatform conversion,
        but it ended up being reverted due to need of more bake time.  The
        revert commit is part of the branch since it would have required
        rebasing multiple dependent branches and they were stable by then"
      
      * tag 'multiplatform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (70 commits)
        mmc: sdhci-s3c: Fix operation on non-single image Samsung platforms
        clocksource: nomadik-mtu: fix up clocksource/timer
        Revert "ARM: exynos: enable multiplatform support"
        ARM: SPEAr13xx: Fix typo "ARCH_HAVE_CPUFREQ"
        ARM: exynos: enable multiplatform support
        rtc: s3c: make header file local
        mtd: onenand/samsung: make regs-onenand.h file local
        thermal/exynos: remove unnecessary header inclusions
        mmc: sdhci-s3c: remove platform dependencies
        ARM: samsung: move mfc device definition to s5p-dev-mfc.c
        ARM: exynos: move debug-macro.S to include/debug/
        ARM: exynos: prepare for sparse IRQ
        ARM: exynos: introduce EXYNOS_ATAGS symbol
        ARM: tegra: build assembly files with -march=armv7-a
        ARM: Push selects for TWD/SCU into machine entries
        ARM: ux500: build hotplug.o for ARMv7-a
        ARM: ux500: move to multiplatform
        ARM: ux500: make remaining headers local
        ARM: ux500: make irqs.h local to platform
        ARM: ux500: get rid of <mach/[hardware|db8500-regs].h>
        ...
      99c6bcf4
    • Linus Torvalds's avatar
      Merge tag 'soc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 97b1007a
      Linus Torvalds authored
      Pull ARM SoC platform updates from Olof Johansson:
       "This branch contains part 1 of the platform updates for 3.10.  Among
        the highlights:
      
         - Support for the new Atmel Cortex-A5 based platforms (SAMA5D3)
         - New support for CSR SiRFatlas6 SoCs
         - A handful of updates for NVidia T114 (a.k.a. Tegra 4)
         - A bunch of updates for the shmobile platforms
         - A handful of updates for davinci
         - A few updates for Qualcomm MSM
         - Plus a handful of other patches, defconfig updates, etc."
      
      * tag 'soc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (135 commits)
        ARM: tegra: pm: fix build error w/o PM_SLEEP
        ARM: davinci: ensure global variables are declared
        ARM: davinci: sram.c: fix incorrect type in assignment
        ARM: davinci: da8xx dt: make file local symbols static
        ARM: davinci: da8xx: add remoteproc support
        ARM: socfpga: Upgrade clk driver for socfpga to make use of dts clock entries
        ARM: socfpga: Add clock entries into device tree
        ARM: socfpga: Enable soft reset
        ARM: EXYNOS: replace cpumask by the corresponding macro
        ARM: EXYNOS: handle properly the return values
        ARM: EXYNOS: factor out the idle states
        ARM: OMAP4: Enable fix for Cortex-A9 erratas
        ARM: OMAP2+: Export SoC information to userspace
        ARM: OMAP2+: SoC name and revision unification
        ARM: OMAP2+: Move common part of late init into common function
        ARM: tegra: pm: remove duplicated include from pm.c
        ARM: davinci: da850: override mmc DT node device name
        ARM: davinci: da850: add mmc DT entries
        mmc: davinci_mmc: add DT support
        ARM: SAMSUNG: check processor type before cache restoration in resume
        ...
      97b1007a
    • Linus Torvalds's avatar
      Merge tag 'dt-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · dfab34aa
      Linus Torvalds authored
      Pull ARM SoC device-tree updates from Olof Johansson:
       "Part 1 of device-tree updates for 3.10.  The bulk of the churn in this
        branch is due to i.MX moving from C-defined pin control over to device
        tree, which is a one-time conversion that will allow greater
        flexibility down the road.
      
        Besides that, there's PCI-e bindings for Marvell mvebu platforms and a
        handful of cleanups to tegra due to the new include file functionality
        of the device tree compiler"
      
      * tag 'dt-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (113 commits)
        arm: mvebu: PCIe Device Tree informations for Armada XP GP
        arm: mvebu: PCIe Device Tree informations for Armada 370 DB
        arm: mvebu: PCIe Device Tree informations for Armada 370 Mirabox
        arm: mvebu: PCIe Device Tree informations for Armada XP DB
        arm: mvebu: PCIe Device Tree informations for OpenBlocks AX3-4
        arm: mvebu: add PCIe Device Tree informations for Armada XP
        arm: mvebu: add PCIe Device Tree informations for Armada 370
        ARM: sunxi: unify osc24M_fixed and osc24M
        arm: vt8500: Add SDHC support to WM8505 DT
        ARM: dts: Add a 64 bits version of the skeleton device tree
        ARM: mvebu: Add Device Bus and CFI flash memory support to defconfig
        ARM: mvebu: Add support for NOR flash device on Openblocks AX3 board
        ARM: mvebu: Add support for NOR flash device on Armada XP-GP board
        ARM: mvebu: Add Device Bus support for Armada 370/XP SoC
        ARM: dts: imx6dl-wandboard: Add USB Host support
        ARM: dts: imx51 cpu node
        ARM: dts: Add missing imx27-phytec-phycore dtb target
        ARM: dts: Add NFC support for i.MX27 Phytec PCM038 module
        ARM: i.MX51: Add PATA support
        ARM: dts: Add initial support for Wandboard Dual-Lite
        ...
      dfab34aa
    • Linus Torvalds's avatar
      Merge tag 'cleanup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · a7726350
      Linus Torvalds authored
      Pull ARM SoC cleanup from Olof Johansson:
       "Here is a collection of cleanup patches.  Among the pieces that stand
        out are:
      
         - The deletion of h720x platforms
         - Split of at91 non-dt platforms to their own Kconfig file to keep
           them separate
         - General cleanups and refactoring of i.MX and MXS platforms
         - Some restructuring of clock tables for OMAP
         - Convertion of PMC driver for Tegra to dt-only
         - Some renames of sunxi -> sun4i (Allwinner A10)
         - ... plus a bunch of other stuff that I haven't mentioned"
      
      * tag 'cleanup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (119 commits)
        ARM: i.MX: remove unused ARCH_* configs
        ARM i.MX53: remove platform ahci support
        ARM: sunxi: Rework the restart code
        irqchip: sunxi: Rename sunxi to sun4i
        irqchip: sunxi: Make use of the IRQCHIP_DECLARE macro
        clocksource: sunxi: Rename sunxi to sun4i
        clocksource: sunxi: make use of CLKSRC_OF
        clocksource: sunxi: Cleanup the timer code
        ARM: at91: remove trailing semicolon from macros
        ARM: at91/setup: fix trivial typos
        ARM: EXYNOS: remove "config EXYNOS_DEV_DRM"
        ARM: EXYNOS: change the name of USB ohci header
        ARM: SAMSUNG: Remove unnecessary code for dma
        ARM: S3C24XX: Remove unused GPIO drive strength register definitions
        ARM: OMAP4+: PM: Restore CPU power state to ON with clockdomain force wakeup method
        ARM: S3C24XX: Removed unneeded dependency on CPU_S3C2412
        ARM: S3C24XX: Removed unneeded dependency on CPU_S3C2410
        ARM: S3C24XX: Removed unneeded dependency on ARCH_S3C24XX for boards
        ARM: SAMSUNG: Fix typo "CONFIG_SAMSUNG_DEV_RTC"
        ARM: S5P64X0: Fix typo "CONFIG_S5P64X0_SETUP_SDHCI"
        ...
      a7726350
    • Linus Torvalds's avatar
      Merge tag 'fixes-nc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 4d26aa30
      Linus Torvalds authored
      Pull ARM SoC non-critical fixes from Olof Johansson:
       "Here is a collection of fixes (and some intermixed cleanups) that were
        considered less important and thus not included in the later parts of
        the 3.9-rc cycle.
      
        It's a bit all over the map, contents wise.  A series of ux500 fixes
        and cleanups, a bunch of various fixes for OMAP and tegra, and some
        for Freescale i.MX and even Qualcomm MSM.
      
        Note that there's also a patch on this branch to globally turn off
        -Wmaybe-uninitialized when building with -Os.  It's been posted
        several times by Arnd and no dissent was raised, but nobody seemed
        interested to pick it up.  So here it is, as the topmost patch."
      
      * tag 'fixes-nc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (70 commits)
        Turn off -Wmaybe-uninitialized when building with -Os
        ARM: orion5x: include linux/cpu.h
        ARM: tegra: call cpu_do_idle from C code
        ARM: u300: fix ages old copy/paste bug
        ARM: OMAP2+: add dependencies on ARCH_MULTI_V6/V7
        ARM: tegra: solve adr range issue with THUMB2_KERNEL enabled
        ARM: tegra: fix relocation truncated error when THUMB2_KERNEL enabled
        ARM: tegra: fix build error when THUMB2_KERNEL enabled
        ARM: msm: Fix uncompess.h tx underrun check
        ARM: vexpress: Remove A9 PMU compatible values for non-A9 platforms
        ARM: cpuimx27 and mbimx27: prepend CONFIG_ to Kconfig macro
        ARM: OMAP2+: fix typo "CONFIG_BRIDGE_DVFS"
        ARM: OMAP1: remove "config MACH_OMAP_HTCWIZARD"
        ARM: mach-imx: mach-imx6q: Fix sparse warnings
        ARM: mach-imx: src: Include "common.h
        ARM: mach-imx: gpc: Include "common.h"
        ARM: mach-imx: avic: Staticize *avic_base
        ARM: mach-imx: tzic: Staticize *tzic_base
        ARM: mach-imx: clk: Include "clk.h"
        ARM: mach-imx: clk-busy: Staticize clk_busy_mux_ops
        ...
      4d26aa30
    • Al Viro's avatar
      ipc_schedule_free() can do vfree() directly now · 600fe975
      Al Viro authored
      Commit 32fcfd40 ("make vfree() safe to call from interrupt
      contexts") made it safe to do vfree directly from the RCU callback,
      which allows us to simplify ipc/util.c a lot by getting rid of the
      differences between vmalloc/kmalloc memory.
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      600fe975
    • David Miller's avatar
      net: Restore NETIF_F_* bit ordering. · 4ada8db3
      David Miller authored
      Commit 8ad227ff ("net: vlan: add 802.1ad support") added some new
      NETIF_F_* features bits, but it added them in the middle of existing
      values.
      
      Userland depends upon the flag bits via the per-netdevice 'flags' sysfs
      file.
      
      So restore the previous ordering by adding the new flags at the end.
      Reported-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      4ada8db3
    • Michael S. Tsirkin's avatar
      vhost_scsi: module rename · 181c04a3
      Michael S. Tsirkin authored
      Rename module and update Kconfig and Makefile.
      Add alias for compatibility with old userspace
      scripts if any.
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: default avatarAsias He <asias@redhat.com>
      Acked-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      181c04a3
    • Michael S. Tsirkin's avatar
      tcm_vhost: header split up · 5012a3a3
      Michael S. Tsirkin authored
      move uapi parts to vhost.h
      move .c private parts to .c itself
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: default avatarAsias He <asias@redhat.com>
      Acked-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      5012a3a3
    • Michael S. Tsirkin's avatar
      vhost: src file renames · eb62b74e
      Michael S. Tsirkin authored
      Move tcm_vhost.c -> scsi.c
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: default avatarAsias He <asias@redhat.com>
      Acked-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      eb62b74e
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 20b4fb48
      Linus Torvalds authored
      Pull VFS updates from Al Viro,
      
      Misc cleanups all over the place, mainly wrt /proc interfaces (switch
      create_proc_entry to proc_create(), get rid of the deprecated
      create_proc_read_entry() in favor of using proc_create_data() and
      seq_file etc).
      
      7kloc removed.
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (204 commits)
        don't bother with deferred freeing of fdtables
        proc: Move non-public stuff from linux/proc_fs.h to fs/proc/internal.h
        proc: Make the PROC_I() and PDE() macros internal to procfs
        proc: Supply a function to remove a proc entry by PDE
        take cgroup_open() and cpuset_open() to fs/proc/base.c
        ppc: Clean up scanlog
        ppc: Clean up rtas_flash driver somewhat
        hostap: proc: Use remove_proc_subtree()
        drm: proc: Use remove_proc_subtree()
        drm: proc: Use minor->index to label things, not PDE->name
        drm: Constify drm_proc_list[]
        zoran: Don't print proc_dir_entry data in debug
        reiserfs: Don't access the proc_dir_entry in r_open(), r_start() r_show()
        proc: Supply an accessor for getting the data from a PDE's parent
        airo: Use remove_proc_subtree()
        rtl8192u: Don't need to save device proc dir PDE
        rtl8187se: Use a dir under /proc/net/r8180/
        proc: Add proc_mkdir_data()
        proc: Move some bits from linux/proc_fs.h to linux/{of.h,signal.h,tty.h}
        proc: Move PDE_NET() to fs/proc/proc_net.c
        ...
      20b4fb48
    • Aneesh Kumar K.V's avatar
      powerpc: Fix build error for book3e · 54d5999d
      Aneesh Kumar K.V authored
      We moved the definition of shift_to_mmu_psize and mmu_psize_to_shift
      out of hugetlbpage.c in patch "powerpc: New hugepage directory format".
      
      These functions are not related to hugetlbpage and we want to use them
      outside hugetlbpage.c We missed a definition for book3e when we moved
      these functions. Add similar functions to mmu-book3e.h
      Signed-off-by: default avatarAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      54d5999d
    • Michael Ellerman's avatar
      powerpc: Context switch the new EBB SPRs · 9353374b
      Michael Ellerman authored
      This context switches the new Event Based Branching (EBB) SPRs.  The three new
      SPRs are:
        - Event Based Branch Handler Register (EBBHR)
        - Event Based Branch Return Register (EBBRR)
        - Branch Event Status and Control Register (BESCR)
      Signed-off-by: default avatarMichael Ellerman <michael@ellerman.id.au>
      Signed-off-by: default avatarMatt Evans <matt@ozlabs.org>
      Signed-off-by: default avatarMichael Neuling <mikey@neuling.org>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      9353374b
    • Michael Neuling's avatar
      powerpc: Turn on the EBB H/FSCR bits · 1ddf499e
      Michael Neuling authored
      This turns Event Based Branching (EBB) on in the Hypervisor Facility Status and
      Control Register (HFSCR) and Facility Status and Control Register (FSCR).
      Signed-off-by: default avatarMichael Neuling <mikey@neuling.org>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      1ddf499e
    • Michael Ellerman's avatar
      powerpc: Replace CPU_FTR_BCTAR with CPU_FTR_ARCH_207S · 1de2bd4e
      Michael Ellerman authored
      We are getting low on cpu feature bits. So rather than add a separate bit for
      every new Power8 feature, add a bit for arch 2.07 server catagory and use that
      instead.
      
      Hijack the value we had for BCTAR, but swap the value with CFAR so that all the
      ARCH defines are together.
      
      Note we don't touch CPU_FTR_TM, because it is conditionally enabled if
      the kernel is built with TM support.
      Signed-off-by: default avatarMichael Ellerman <michael@ellerman.id.au>
      Signed-off-by: default avatarMichael Neuling <mikey@neuling.org>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      1de2bd4e
    • Anshuman Khandual's avatar
      powerpc: Setup BHRB instructions facility in HFSCR for POWER8 · 53b56ca0
      Anshuman Khandual authored
      Make BHRB instructions available in problem and privileged states.
      Signed-off-by: default avatarAnshuman Khandual <khandual@linux.vnet.ibm.com>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      53b56ca0
    • Bharat Bhushan's avatar
      powerpc: Fix interrupt range check on debug exception · fc2a6cfe
      Bharat Bhushan authored
      We do not want to take single step and branch-taken debug exception
      in kernel exception code. But the address range check was not covering
      all kernel exception handlers address range.
      
      With this patch we defined the interrupt_end label which defines the
      end on kernel exception code. So now we check interrupt_base to
      interrupt_end range for not handling debug exception in kernel
      exception entry.
      Signed-off-by: default avatarBharat Bhushan <bharat.bhushan@freescale.com>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      fc2a6cfe
  2. 01 May, 2013 18 commits
    • Linus Torvalds's avatar
      Merge branch 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · b9394d8a
      Linus Torvalds authored
      Pull x86/efi changes from Peter Anvin:
       "The bulk of these changes are cleaning up the efivars handling and
        breaking it up into a tree of files.  There are a number of fixes as
        well.
      
        The entire changeset is pretty big, but most of it is code movement.
      
        Several of these commits are quite new; the history got very messed up
        due to a mismerge with the urgent changes for rc8 which completely
        broke IA64, and so Ingo requested that we rebase it to straighten it
        out."
      
      * 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        efi: remove "kfree(NULL)"
        efi: locking fix in efivar_entry_set_safe()
        efi, pstore: Read data from variable store before memcpy()
        efi, pstore: Remove entry from list when erasing
        efi, pstore: Initialise 'entry' before iterating
        efi: split efisubsystem from efivars
        efivarfs: Move to fs/efivarfs
        efivars: Move pstore code into the new EFI directory
        efivars: efivar_entry API
        efivars: Keep a private global pointer to efivars
        efi: move utf16 string functions to efi.h
        x86, efi: Make efi_memblock_x86_reserve_range more readable
        efivarfs: convert to use simple_open()
      b9394d8a
    • James Hogan's avatar
      linkage.h: fix build breakage due to symbol prefix handling · 126de6b2
      James Hogan authored
      Al's commit e1b5bb6d ("consolidate cond_syscall and SYSCALL_ALIAS
      declarations") broke the build on blackfin and metag due to the
      following code:
      
        #ifndef SYMBOL_NAME
        #ifdef CONFIG_SYMBOL_PREFIX
        #define SYMBOL_NAME(x) CONFIG_SYMBOL_PREFIX ## x
        #else
        #define SYMBOL_NAME(x) x
        #endif
        #endif
        #define __SYMBOL_NAME(x) __stringify(SYMBOL_NAME(x))
      
      __stringify literally stringifies CONFIG_SYMBOL_PREFIX ##x, so you get
      lines like this in kernel/sys_ni.s:
      
        .weak CONFIG_SYMBOL_PREFIXsys_quotactl
        .set CONFIG_SYMBOL_PREFIXsys_quotactl,CONFIG_SYMBOL_PREFIXsys_ni_syscall
      
      The patches in Rusty's modules-next tree such as "CONFIG_SYMBOL_PREFIX:
      cleanup." cleans up the whole mess around symbol prefixes, so this patch
      just attempts to fix the build in the meantime.
      
      The intermediate definition of SYMBOL_NAME above isn't used and is
      incorrect when CONFIG_SYMBOL_PREFIX is defined as CONFIG_SYMBOL_PREFIX
      is a quoted string literal, so define __SYMBOL_NAME directly depending
      on CONFIG_SYMBOL_PREFIX.
      Signed-off-by: default avatarJames Hogan <james.hogan@imgtec.com>
      Mea-culpa-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Cc: Mike Frysinger <vapier@gentoo.org>
      Cc: uclinux-dist-devel@blackfin.uclinux.org
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      126de6b2
    • Al Viro's avatar
      don't bother with deferred freeing of fdtables · ac3e3c5b
      Al Viro authored
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      ac3e3c5b
    • Al Viro's avatar
      Merge branch 'vfree' into for-next · 094dd33b
      Al Viro authored
      094dd33b
    • David Howells's avatar
      proc: Move non-public stuff from linux/proc_fs.h to fs/proc/internal.h · 59d8053f
      David Howells authored
      Move non-public declarations and definitions from linux/proc_fs.h to
      fs/proc/internal.h.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      59d8053f
    • David Howells's avatar
      proc: Make the PROC_I() and PDE() macros internal to procfs · c30480b9
      David Howells authored
      Make the PROC_I() and PDE() macros internal to procfs.  This means making
      PDE_DATA() out of line.  This could be made more optimal by storing
      PDE()->data into inode->i_private.
      
      Also provide a __PDE_DATA() that is inline and internal to procfs.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      c30480b9
    • David Howells's avatar
      proc: Supply a function to remove a proc entry by PDE · a8ca16ea
      David Howells authored
      Supply a function (proc_remove()) to remove a proc entry (and any subtree
      rooted there) by proc_dir_entry pointer rather than by name and (optionally)
      root dir entry pointer.  This allows us to eliminate all remaining pde->name
      accesses outside of procfs.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Acked-by: default avatarGrant Likely <grant.likely@linaro.or>
      cc: linux-acpi@vger.kernel.org
      cc: openipmi-developer@lists.sourceforge.net
      cc: devicetree-discuss@lists.ozlabs.org
      cc: linux-pci@vger.kernel.org
      cc: netdev@vger.kernel.org
      cc: netfilter-devel@vger.kernel.org
      cc: alsa-devel@alsa-project.org
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      a8ca16ea
    • Al Viro's avatar
      8d8b97ba
    • David Howells's avatar
      ppc: Clean up scanlog · 4c237820
      David Howells authored
      Clean up the pseries scanlog driver's use of procfs:
      
       (1) Don't need to save the proc_dir_entry pointer as we have the filename to
           remove with.
      
       (2) Save the scan log buffer pointer in a static variable (there is only one
           of it) and don't save it in the PDE (which doesn't have a destructor).
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      cc: Paul Mackerras <paulus@samba.org>
      cc: linuxppc-dev@lists.ozlabs.org
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      4c237820
    • David Howells's avatar
      ppc: Clean up rtas_flash driver somewhat · e8eeded3
      David Howells authored
      Clean up some of the problems with the rtas_flash driver:
      
       (1) It shouldn't fiddle with the internals of the procfs filesystem (altering
           pde->count).
      
       (2) If pid namespaces are in effect, then you can get multiple inodes
           connected to a single pde, thereby rendering the pde->count > 2 test
           useless.
      
       (3) The pde->count fudging doesn't work for forked, dup'd or cloned file
           descriptors, so add static mutexes and use them to wrap access to the
           driver through read, write and release methods.
      
       (4) The driver can only handle one device, so allocate most of the data
           previously attached to the pde->data as static variables instead (though
           allocate the validation data buffer with kmalloc).
      
       (5) We don't need to save the pde pointers as long as we have the filenames
           available for removal.
      
       (6) Don't try to multiplex what the update file read method does based on the
           filename.  Instead provide separate file ops and split the function.
      
      Whilst we're at it, tabulate the procfile information and loop through it when
      creating or destroying them rather than manually coding each one.
      
      [Folded fixes from Vasant Hegde <hegdevasant@linux.vnet.ibm.com>]
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      cc: Paul Mackerras <paulus@samba.org>
      cc: Anton Blanchard <anton@samba.org>
      cc: linuxppc-dev@lists.ozlabs.org
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      e8eeded3
    • David Howells's avatar
      hostap: proc: Use remove_proc_subtree() · 819695ab
      David Howells authored
      Use remove_proc_subtree() rather than remove_proc_entry() to remove a
      device-specific proc directory and all its children.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      cc: Jouni Malinen <j@w1.fi>
      cc: Johannes Berg <johannes@sipsolutions.net>
      cc: linux-wireless@vger.kernel.org
      cc: devel@driverdev.osuosl.org
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      819695ab
    • David Howells's avatar
      drm: proc: Use remove_proc_subtree() · 8bc742e1
      David Howells authored
      Use remove_proc_subtree() rather than remove_proc_entry() to remove a
      minor-specific drm proc directory and all its children.
      
      Things could theoretically be improved by storing the drm_minor pointer in the
      minor-specific dir proc_dir_entry struct data and then scrapping the list of
      proc files - but that's shared with the debugfs interface where you can't do
      that, so I don't see an easy way of doing it.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      cc: dri-devel@lists.freedesktop.org
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      8bc742e1
    • David Howells's avatar
      drm: proc: Use minor->index to label things, not PDE->name · b63e6aa5
      David Howells authored
      Use minor->index to label things, not the name field from the proc_dir_entry
      of the /proc/dwm/<minor>/ directory.
      
      Also, use "%u" not "%d" to render the value and use a 12-byte buffer in which
      to render the integer, not a 16-byte buffer.  The longest string an unsigned
      int can give you is 10 chars (4294967295) plus a NUL, so round up to 12 as the
      stack is likely to be 4- or 8-byte aligned.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      cc: dri-devel@lists.freedesktop.org
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      b63e6aa5
    • David Howells's avatar
      drm: Constify drm_proc_list[] · ce089b54
      David Howells authored
      Constify drm_proc_list[] and related pointers.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      cc: dri-devel@lists.freedesktop.org
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      ce089b54
    • David Howells's avatar
      zoran: Don't print proc_dir_entry data in debug · 0c2f3438
      David Howells authored
      Don't print proc_dir_entry data in debug as we're soon to have no direct
      access to the contents of the PDE.  Print what was put in there instead.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      cc: mjpeg-users@lists.sourceforge.net
      cc: linux-media@vger.kernel.org
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      0c2f3438
    • David Howells's avatar
      reiserfs: Don't access the proc_dir_entry in r_open(), r_start() r_show() · e42270a1
      David Howells authored
      Don't access the proc_dir_entry in ReiserFS's r_open(), r_start() r_show()
      procfs interface functions.
      
      ReiserFS stores the ->show() method pointer in PDE->data and the super_block
      pointer in PDE->parent->data.  This isn't changing.
      
      Currently, ReiserFS passes the PDE pointer into seq_file::private from
      r_open() so that r_start() and r_show() can then access it.  Instead, use
      seq_open_private() to allocate a two-pointer struct that's passed through
      seq_file::private and put the ->show() method and the sb pointers in there.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      cc: reiserfs-devel@vger.kernel.org
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      e42270a1
    • David Howells's avatar
      proc: Supply an accessor for getting the data from a PDE's parent · 4a520d27
      David Howells authored
      Supply an accessor function for getting the private data from the parent
      proc_dir_entry struct of the proc_dir_entry struct associated with an inode.
      
      ReiserFS, for instance, stores the super_block pointer in the proc directory
      it makes for that super_block, and a pointer to the respective seq_file show
      function in each of the proc files in that directory.
      
      This allows a reduction in the number of file_operations structs, open
      functions and seq_operations structs required.  The problem otherwise is that
      each show function requires two pieces of data but only has storage for one
      per PDE (and this has no release function).
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Acked-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
      Acked-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      cc: Jerry Chuang <jerry-chuang@realtek.com>
      cc: Maxim Mikityanskiy <maxtram95@gmail.com>
      cc: YAMANE Toshiaki <yamanetoshi@gmail.com>
      cc: linux-wireless@vger.kernel.org
      cc: linux-scsi@vger.kernel.org
      cc: devel@driverdev.osuosl.org
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      4a520d27
    • David Howells's avatar
      airo: Use remove_proc_subtree() · b25f774d
      David Howells authored
      Use remove_proc_subtree() to remove the airo device subdir and all its
      children instead of doing it manually.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      cc: linux-wireless@vger.kernel.org
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      b25f774d