08 Sep, 2013

7 commits

  • crypto_larval_lookup should only return a larval if it created one.
    Any larval created by another entity must be processed through
    crypto_larval_wait before being returned.

    Otherwise this will lead to a larval being killed twice, which
    will most likely lead to a crash.

    Cc: stable@vger.kernel.org
    Reported-by: Kees Cook
    Tested-by: Kees Cook
    Signed-off-by: Herbert Xu

    Herbert Xu
     
  • Pull crypto update from Herbert Xu:
    "Here is the crypto update for 3.12:

    - Added MODULE_SOFTDEP to allow pre-loading of modules.
    - Reinstated crct10dif driver using the module softdep feature.
    - Allow via rng driver to be auto-loaded.

    - Split large input data when necessary in nx.
    - Handle zero length messages correctly for GCM/XCBC in nx.
    - Handle SHA-2 chunks bigger than block size properly in nx.

    - Handle unaligned lengths in omap-aes.
    - Added SHA384/SHA512 to omap-sham.
    - Added OMAP5/AM43XX SHAM support.
    - Added OMAP4 TRNG support.

    - Misc fixes"

    * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (66 commits)
    Reinstate "crypto: crct10dif - Wrap crc_t10dif function all to use crypto transform framework"
    hwrng: via - Add MODULE_DEVICE_TABLE
    crypto: fcrypt - Fix bitoperation for compilation with clang
    crypto: nx - fix SHA-2 for chunks bigger than block size
    crypto: nx - fix GCM for zero length messages
    crypto: nx - fix XCBC for zero length messages
    crypto: nx - fix limits to sg lists for AES-CCM
    crypto: nx - fix limits to sg lists for AES-XCBC
    crypto: nx - fix limits to sg lists for AES-GCM
    crypto: nx - fix limits to sg lists for AES-CTR
    crypto: nx - fix limits to sg lists for AES-CBC
    crypto: nx - fix limits to sg lists for AES-ECB
    crypto: nx - add offset to nx_build_sg_lists()
    padata - Register hotcpu notifier after initialization
    padata - share code between CPU_ONLINE and CPU_DOWN_FAILED, same to CPU_DOWN_PREPARE and CPU_UP_CANCELED
    hwrng: omap - reorder OMAP TRNG driver code
    crypto: omap-sham - correct dma burst size
    crypto: omap-sham - Enable Polling mode if DMA fails
    crypto: tegra-aes - bitwise vs logical and
    crypto: sahara - checking the wrong variable
    ...

    Linus Torvalds
     
  • Pull networking fixes from David Miller:
    "A quick set of fixes, some to deal with fallout from yesterday's
    net-next merge.

    1) Fix compilation of bnx2x driver with CONFIG_BNX2X_SRIOV disabled,
    from Dmitry Kravkov.

    2) Fix a bnx2x regression caused by one of Dave Jones's mistaken
    braces changes, from Eilon Greenstein.

    3) Add some protective filtering in the netlink tap code, from Daniel
    Borkmann.

    4) Fix TCP congestion window growth regression after timeouts, from
    Yuchung Cheng.

    5) Correctly adjust TCP's rcv_ssthresh for out of order packets, from
    Eric Dumazet"

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
    tcp: properly increase rcv_ssthresh for ofo packets
    net: add documentation for BQL helpers
    mlx5: remove unused MLX5_DEBUG param in Kconfig
    bnx2x: Restore a call to config_init
    bnx2x: fix broken compilation with CONFIG_BNX2X_SRIOV is not set
    tcp: fix no cwnd growth after timeout
    net: netlink: filter particular protocols from analyzers

    Linus Torvalds
     
  • Pull hwmon fixes from Jean Delvare.

    * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
    hwmon: (emc6w201) Do not declare enum variable
    hwmon: (w83792d) Update module author

    Linus Torvalds
     
  • Pull GPIO updates from Linus Walleij:
    "This is the bulk of GPIO changes for the v3.12 series:

    - A new driver for the TZ1090 PDC which is used on the metag
    architecture.

    - A new driver for the Kontron ETX or COMexpress GPIO block. This is
    found on some ETX x86 devices.

    - A new driver for the Fintek Super-I/O chips, used on some x86
    boards.

    - Added device tree probing on a few select GPIO blocks.

    - Drop the Exynos support from the Samsung GPIO driver.

    The Samsung maintainers have moved over to use the modernized pin
    control driver to provide GPIO for the modern platforms instead.

    - The usual bunch of non-critical fixes and cleanups"

    * tag 'gpio-v3.12-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (36 commits)
    gpio: return -ENOTSUPP if debounce cannot be set
    gpio: improve error path in gpiolib
    gpio: add GPIO support for F71882FG and F71889F
    of: add vendor prefix for Microchip Technology Inc
    gpio: mcp23s08: rename the device tree property
    gpio: samsung: Drop support for Exynos SoCs
    gpio: pcf857x: Remove pdata argument to pcf857x_irq_domain_init()
    gpio: pcf857x: Sort headers alphabetically
    gpio: max7301: Reverting "Do not force SPI speed when using OF Platform"
    gpio: Fix bit masking in Kontron PLD GPIO driver
    gpio: pca953x: fix gpio input on gpio offsets >= 8
    drivers/gpio: simplify use of devm_ioremap_resource
    drivers/gpio/gpio-omap.c: convert comma to semicolon
    gpio-lynxpoint: Fix warning about unbalanced pm_runtime_enable
    gpio: Fix platform driver name in Kontron PLD GPIO driver
    gpio: adnp: Fix segfault if request_threaded_irq fails
    gpio: msm: Staticize local variable 'msm_gpio'
    gpio: gpiolib-of.c: make error message more meaningful by adding the node name and index
    gpio: use dev_get_platdata()
    gpio/mxc: add chained_irq_enter/exit() to mx2_gpio_irq_handler
    ...

    Linus Torvalds
     
  • Pull input updates from Dmitry Torokhov:
    "A new driver for slidebar on Ideapad laptops and a bunch of assorted
    driver fixes"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (32 commits)
    Input: add SYN_MAX and SYN_CNT constants
    Input: max11801_ts - convert to devm
    Input: egalax-ts - fix typo and improve text
    Input: MAINTAINERS - change maintainer for cyttsp driver
    Input: cyttsp4 - kill 'defined but not used' compiler warnings
    Input: add driver for slidebar on Lenovo IdeaPad laptops
    Input: omap-keypad - set up irq type from DT
    Input: omap-keypad - enable wakeup capability for keypad.
    Input: omap-keypad - clear interrupts on open
    Input: omap-keypad - convert to threaded IRQ
    Input: omap-keypad - use bitfiled instead of hardcoded values
    Input: cyttsp4 - remove useless NULL test from cyttsp4_watchdog_timer()
    Input: wacom - fix error return code in wacom_probe()
    Input: as5011 - fix error return code in as5011_probe()
    Input: keyboard, serio - simplify use of devm_ioremap_resource
    Input: tegra-kbc - simplify use of devm_ioremap_resource
    Input: htcpen - fix incorrect placement of __initdata
    Input: qt1070 - add power management ops
    Input: wistron_btns - add MODULE_DEVICE_TABLE
    Input: wistron_btns - mark the Medion MD96500 keymap as tested
    ...

    Linus Torvalds
     
  • This reverts commits 61e00655e9cb, 73f8645db191 and 8e22ecb603c8:
    "Input: introduce BTN/ABS bits for drums and guitars"
    "HID: wiimote: add support for Guitar-Hero drums"
    "HID: wiimote: add support for Guitar-Hero guitars"

    The extra new ABS_xx values resulted in ABS_MAX no longer being a
    power-of-two, which broke the comparison logic. It also caused the
    ioctl numbers to overflow into the next byte, causing problems for that.

    We'll try again for 3.13.

    Reported-by: Markus Trippelsdorf
    Reported-by: Linus Torvalds
    Acked-by: David Herrmann
    Acked-by: Dmitry Torokhov
    Cc: Benjamin Tissoires
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

07 Sep, 2013

26 commits

  • Merge first round of changes for 3.12 merge window.

    Dmitry Torokhov
     
  • This patch reinstates commits
    67822649d7305caf3dd50ed46c27b99c94eff996
    39761214eefc6b070f29402aa1165f24d789b3f7
    0b95a7f85718adcbba36407ef88bba0a7379ed03
    31d939625a9a20b1badd2d4e6bf6fd39fa523405
    2d31e518a42828df7877bca23a958627d60408bc

    Now that module softdeps are in the kernel we can use that to resolve
    the boot issue which cause the revert.

    Signed-off-by: Herbert Xu

    Herbert Xu
     
  • Merge upstream tree in order to reinstate crct10dif.

    Herbert Xu
     
  • Pull ARM SoC board updates from Olof Johansson:
    "Board updates for 3.12. Again, a bit of domain overlap with SoC and
    DT branches, but most of this is around legacy code and board support.
    We've found that platform maintainers have a hard time separating all
    of these out and might move towards fewer branches for next release.

    - Removal of a number of Marvell Kirkwood board files, since contents
    is now common and mostly configured via DT.
    - Device-tree updates for Marvell Dove, including irqchip and
    clocksource setup.
    - Defconfig updates. Gotta go somewhere. One new one for Renesas
    Lager.
    - New backlight drivers for backlights used on Renesas shmobile
    platforms.
    - Removal of Renesas leds driver.
    - Shuffling of some of the new Broadcom platforms to give room for
    others in the same mach directory. More in 3.13"

    * tag 'boards-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (67 commits)
    mmc: sdhci-bcm-kona: Staticize sdhci_bcm_kona_card_event
    mmc: sdhci-bcm-kona: Remove unneeded version.h inclusion
    ARM: bcm: Make secure API call optional
    ARM: DT: binding fixup to align with vendor-prefixes.txt (drivers)
    ARM: mmc: fix NONREMOVABLE test in sdhci-bcm-kona
    ARM: bcm: Rename board_bcm
    mmc: sdhci-bcm-kona: make linker-section warning go away
    ARM: tegra: defconfig updates
    ARM: dove: add initial DT file for Globalscale D2Plug
    ARM: dove: add GPIO IR receiver node to SolidRun CuBox
    ARM: dove: add common pinmux functions to DT
    ARM: dove: add cpu device tree node
    ARM: dove: update dove_defconfig with SI5351, PCI, and xHCI
    arch/arm/mach-kirkwood: Avoid using ARRAY_AND_SIZE(e) as a function argument
    ARM: kirkwood: fix DT building and update defconfig
    ARM: kirkwood: Remove all remaining trace of DNS-320/325 platform code
    ARM: configs: disable DEBUG_LL in bcm_defconfig
    ARM: bcm281xx: Board specific reboot code
    ARM bcm281xx: Turn on socket & network support.
    ARM: bcm281xx: Turn on L2 cache.
    ...

    Linus Torvalds
     
  • Pull ARM SoC platform changes from Olof Johansson:
    "This branch contains mostly additions and changes to platform
    enablement and SoC-level drivers. Since there's sometimes a
    dependency on device-tree changes, there's also a fair amount of
    those in this branch.

    Pieces worth mentioning are:

    - Mbus driver for Marvell platforms, allowing kernel configuration
    and resource allocation of on-chip peripherals.
    - Enablement of the mbus infrastructure from Marvell PCI-e drivers.
    - Preparation of MSI support for Marvell platforms.
    - Addition of new PCI-e host controller driver for Tegra platforms
    - Some churn caused by sharing of macro names between i.MX 6Q and 6DL
    platforms in the device tree sources and header files.
    - Various suspend/PM updates for Tegra, including LP1 support.
    - Versatile Express support for MCPM, part of big little support.
    - Allwinner platform support for A20 and A31 SoCs (dual and quad
    Cortex-A7)
    - OMAP2+ support for DRA7, a new Cortex-A15-based SoC.

    The code that touches other architectures are patches moving MSI
    arch-specific functions over to weak symbols and removal of
    ARCH_SUPPORTS_MSI, acked by PCI maintainers"

    * tag 'soc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (266 commits)
    tegra-cpuidle: provide stub when !CONFIG_CPU_IDLE
    PCI: tegra: replace devm_request_and_ioremap by devm_ioremap_resource
    ARM: tegra: Drop ARCH_SUPPORTS_MSI and sort list
    ARM: dts: vf610-twr: enable i2c0 device
    ARM: dts: i.MX51: Add one more I2C2 pinmux entry
    ARM: dts: i.MX51: Move pins configuration under "iomuxc" label
    ARM: dtsi: imx6qdl-sabresd: Add USB OTG vbus pin to pinctrl_hog
    ARM: dtsi: imx6qdl-sabresd: Add USB host 1 VBUS regulator
    ARM: dts: imx27-phytec-phycore-som: Enable AUDMUX
    ARM: dts: i.MX27: Disable AUDMUX in the template
    ARM: dts: wandboard: Add support for SDIO bcm4329
    ARM: i.MX5 clocks: Remove optional clock setup (CKIH1) from i.MX51 template
    ARM: dts: imx53-qsb: Make USBH1 functional
    ARM i.MX6Q: dts: Enable I2C1 with EEPROM and PMIC on Phytec phyFLEX-i.MX6 Ouad module
    ARM i.MX6Q: dts: Enable SPI NOR flash on Phytec phyFLEX-i.MX6 Ouad module
    ARM: dts: imx6qdl-sabresd: Add touchscreen support
    ARM: imx: add ocram clock for imx53
    ARM: dts: imx: ocram size is different between imx6q and imx6dl
    ARM: dts: imx27-phytec-phycore-som: Fix regulator settings
    ARM: dts: i.MX27: Remove clock name from CPU node
    ...

    Linus Torvalds
     
  • Pull ARM SoC DT updates from Olof Johansson:
    "Device tree and bindings updates for 3.12.

    General additions of various on-chip and on-board peripherals on
    various platforms as support gets added. Some of the bigger changes
    are:

    - Addition of (new) PCI-e support on Tegra.
    - More Tegra4 support, including PMC configuration for Dalmore.
    - Addition of a new board for Exynos4 (trats2) and more bindings for
    4x12 IP.
    - Addition of Allwinner A20 and A31 SoC and board files.
    - Move of the ST Ericsson device tree files to now use ste-* prefix.
    - More move of hardware description of shmobile platforms to DT.
    - Two new board dts files for Freescale MXs"

    * tag 'dt-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (177 commits)
    dts: Rename DW APB timer compatible strings
    dts: Deprecate ALTR as a vendor prefix
    of: add vendor prefix for Altera Corp.
    ARM: at91/dt: sam9x5ek: add sound configuration
    ARM: at91/dt: sam9x5ek: enable SSC
    ARM: at91/dt: sam9x5ek: add WM8731 codec
    ARM: at91/dt: sam9x5: add SSC DMA parameters
    ARM: at91/dt: add at91rm9200 PQFP package version
    ARM: at91: at91rm9200: set default mmc0 pinctrl-names
    ARM: at91: at91sam9n12: correct pin number of gpio-key
    ARM: at91: at91sam9n12: add qt1070 support
    ARM: at91: at91sam9n12: add pinctrl of TWI
    ARM: at91: Add PMU support for sama5d3
    ARM: at91: at91sam9260: add missing pinctrl-names on mmc
    ARM: tegra: configure power off for Dalmore
    ARM: DT: binding fixup to align with vendor-prefixes.txt (DT)
    ARM: dts: add sdio blocks to bcm28155-ap board
    ARM: dts: align sdio numbers to HW definition
    ARM: sun7i: Add Olimex A20-Olinuxino-Micro support
    ARM: sun7i: Add Allwinner A20 DTSI
    ...

    Linus Torvalds
     
  • Pull ARM SoC cleanups from Olof Johansson:
    "This branch contains code cleanups, moves and removals for 3.12.

    There's a large number of various cleanups, and a nice net removal of
    13500 lines of code.

    Highlights worth mentioning are:

    - A series of patches from Stephen Boyd removing the ARM local timer
    API.
    - Move of Qualcomm MSM IOMMU code to drivers/iommu.
    - Samsung PWM driver cleanups from Tomasz Figa, removing legacy PWM
    driver and switching over to the drivers/pwm one.
    - Removal of some unusued auto-generated headers for OMAP2+ (PRM/CM).

    There's also a move of a header file out of include/linux/i2c/ to
    platform_data, where it really belongs. It touches mostly ARM
    platform code for include changes so we took it through our tree"

    * tag 'cleanup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (83 commits)
    ARM: OMAP2+: Add back the define for AM33XX_RST_GLOBAL_WARM_SW_MASK
    gpio: (gpio-pca953x) move header to linux/platform_data/
    arm: zynq: hotplug: Remove unreachable code
    ARM: SAMSUNG: Remove unnecessary exynos4_default_sdhci*()
    tegra: simplify use of devm_ioremap_resource
    ARM: SAMSUNG: Remove plat/regs-timer.h header
    ARM: SAMSUNG: Remove remaining uses of plat/regs-timer.h header
    ARM: SAMSUNG: Remove pwm-clock infrastructure
    ARM: SAMSUNG: Remove old PWM timer platform devices
    pwm: Remove superseded pwm-samsung-legacy driver
    ARM: SAMSUNG: Modify board files to use new PWM platform device
    ARM: SAMSUNG: Rework private data handling in dev-backlight
    pwm: Add new pwm-samsung driver
    ARM: mach-mvebu: remove redundant DT parsing and validation
    ARM: msm: Only compile io.c on platforms that use it
    iommu/msm: Move mach includes to iommu directory
    ARM: msm: Remove devices-iommu.c
    ARM: msm: Move mach/board.h contents to common.h
    ARM: msm: Migrate msm_timer to CLOCKSOURCE_OF_DECLARE
    ARM: msm: Remove TMR and TMR0 static mappings
    ...

    Linus Torvalds
     
  • Pull ARM SoC low-priority fixes from Olof Johansson:
    "This branch contains a handful of fixes for various platforms that
    weren't serious enough to be included in late 3.11-rc releases. Most
    of them are for minor cleanups and cosmetic fixes.

    There's also a bit of code removal here, one board file removal for
    clps711x, and removal of some legacy device creation on OMAP2+"

    * tag 'fixes-nc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (25 commits)
    ARM: OMAP2: use 'int' instead of 'unsigned' for variable 'gpmc_irq_start'
    ARM: OMAP2: remove useless variable 'ret'
    ARM: OMAP: dma: fix error return code in omap_system_dma_probe()
    ARM: OMAP2+: fix wrong address when loading PRM_FRAC_INCREMENTOR_DENUMERATOR_RELOAD
    ARM: OMAP2+: am33xx-restart: trigger warm reset on omap2+ boards
    ARM: OMAP2: Use a consistent AM33XX SoC option description
    ARM: OMAP2+: Remove legacy device creation for McPDM and DMIC
    ARM: clps711x: edb7211: Remove extra iotable_init() call
    ARM: clps711x: autcpu12: Remove incorrect config checking
    ARM: clps711x: Drop fortunet board support
    ARM: clps711x: Remove the special name for the syscon driver
    ARM: dts: Fix memory node in skeleton64.dtsi
    ARM: Keystone: Convert device tree file to use IRQ defines
    ARM: keystone: use #include to include skeleton.dtsi
    ARM: keystone: Drop the un-necessary dsb from keystone_cpu_smc()
    ARM: Keystone: No need to preserve r12 across smc call
    ARM: keystone: remove redundant smp_init_cpus definition
    ARM: keystone: drop useless HAVE_SCHED_CLOCK
    ARM: dove: fix missing __init section of dove_mpp_gpio_mode
    ARM: shmobile: armadillo800eva-reference: fix compiler warning
    ...

    Linus Torvalds
     
  • Pull ia64 fixes from Tony Luck:
    "Couple of small cleanups for ia64"

    * tag 'please-pull-misc-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
    [IA64] Use asm-generic/bitops/builtin-ffs.h
    [IA64] dmi.h: Make dmi_alloc use kzalloc

    Linus Torvalds
     
  • TCP receive window handling is multi staged.

    A socket has a memory budget, static or dynamic, in sk_rcvbuf.

    Because we do not really know how this memory budget translates to
    a TCP window (payload), TCP announces a small initial window
    (about 20 MSS).

    When a packet is received, we increase TCP rcv_win depending
    on the payload/truesize ratio of this packet. Good citizen
    packets give a hint that it's reasonable to have rcv_win = sk_rcvbuf/2

    This heuristic takes place in tcp_grow_window()

    Problem is : We currently call tcp_grow_window() only for in-order
    packets.

    This means that reorders or packet losses stop proper grow of
    rcv_win, and senders are unable to benefit from fast recovery,
    or proper reordering level detection.

    Really, a packet being stored in OFO queue is not a bad citizen.
    It should be part of the game as in-order packets.

    In our traces, we very often see sender is limited by linux small
    receive windows, even if linux hosts use autotuning (DRS) and should
    allow rcv_win to grow to ~3MB.

    Signed-off-by: Eric Dumazet
    Acked-by: Neal Cardwell
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • Provide a kernel-doc comment documentation for the BQL helpers:
    - netdev_sent_queue
    - netdev_completed_queue
    - netdev_reset_queue

    Similarly to how it is done for the other functions, the documentation
    only covers the function operating on struct net_device and not struct
    netdev_queue.

    Signed-off-by: Florian Fainelli
    Acked-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Florian Fainelli
     
  • This patch proposes to remove the MLX5_DEBUG kernel configuration
    parameter defined in drivers/net/ethernet/mellanox/mlx5/core/Kconfig,
    but used nowhere in the makefiles and source code.

    This could also be fixed by using this parameter,
    but this may be a leftover from driver development...

    Signed-off-by: Michael Opdenacker
    Signed-off-by: David S. Miller

    Michael Opdenacker
     
  • Commit c0a77ec74f295013d7ba3204dd3ed25fccf83cb4 'bnx2x: Add missing braces in
    bnx2x:bnx2x_link_initialize' identified indentation problem, but resolved it
    by adding braces instead of fixing the indentation. The braces now prevents a
    config_init call in some cases, though it should be called regardless of that
    condition. This patch removes the braces and fix the confusing indentation
    that caused this mess.

    Signed-off-by: Eilon Greenstein
    CC: Dave Jones
    Tested-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • Since commit 60cad4e67bd6ff400e7ea61fe762b3042b12ae9d
    "bnx2x: VF RSS support - VF side" fails to compile w/o
    CONFIG_BNX2X_SRIOV option.

    Reported-by: Eric Dumazet
    CC: Ariel Elior
    Signed-off-by: Dmitry Kravkov
    Acked-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Dmitry Kravkov
     
  • In commit 0f7cc9a3 "tcp: increase throughput when reordering is high",
    it only allows cwnd to increase in Open state. This mistakenly disables
    slow start after timeout (CA_Loss). Moreover cwnd won't grow if the
    state moves from Disorder to Open later in tcp_fastretrans_alert().

    Therefore the correct logic should be to allow cwnd to grow as long
    as the data is received in order in Open, Loss, or even Disorder state.

    Signed-off-by: Yuchung Cheng
    Acked-by: Neal Cardwell
    Signed-off-by: David S. Miller

    Yuchung Cheng
     
  • Fix finer-grained control and let only a whitelist of allowed netlink
    protocols pass, in our case related to networking. If later on, other
    subsystems decide they want to add their protocol as well to the list
    of allowed protocols they shall simply add it. While at it, we also
    need to tell what protocol is in use otherwise BPF_S_ANC_PROTOCOL can
    not pick it up (as it's not filled out).

    Signed-off-by: Daniel Borkmann
    Signed-off-by: David S. Miller

    Daniel Borkmann
     
  • Pull Tile arch updates from Chris Metcalf:
    "These changes bring in a bunch of new functionality that has been
    maintained internally at Tilera over the last year, plus other stray
    bits of work that I've taken into the tile tree from other folks.

    The changes include some PCI root complex work, interrupt-driven
    console support, support for performing fast-path unaligned data
    fixups by kernel-based JIT code generation, CONFIG_PREEMPT support,
    vDSO support for gettimeofday(), a serial driver for the tilegx
    on-chip UART, KGDB support, more optimized string routines, support
    for ftrace and kprobes, improved ASLR, and many bug fixes.

    We also remove support for the old TILE64 chip, which is no longer
    buildable"

    * git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile: (85 commits)
    tile: refresh tile defconfig files
    tile: rework
    tile PCI RC: make default consistent DMA mask 32-bit
    tile: add null check for kzalloc in tile/kernel/setup.c
    tile: make __write_once a synonym for __read_mostly
    tile: remove support for TILE64
    tile: use asm-generic/bitops/builtin-*.h
    tile: eliminate no-op "noatomichash" boot argument
    tile: use standard tile_bundle_bits type in traps.c
    tile: simplify code referencing hypervisor API addresses
    tile: change to in comments
    tile: mark pcibios_init() as __init
    tile: check for correct compiler earlier in asm-offsets.c
    tile: use standard 'generic-y' model for
    tile: use asm-generic version of
    tile PCI RC: add comment about "PCI hole" problem
    tile: remove DEBUG_EXTRA_FLAGS kernel config option
    tile: add virt_to_kpte() API and clean up and document behavior
    tile: support FRAME_POINTER
    tile: support reporting Tilera hypervisor statistics
    ...

    Linus Torvalds
     
  • Pull ARM64 update from Catalin Marinas:
    - User tagged pointers support (top 8-bit of user pointers
    automatically ignored by the CPU).
    - Kernel mode NEON (no users for arm64 yet but work in progress).
    - arm64 kernel Image header extended to accommodate future EFI stub.
    - Remove BogoMIPS reporting (not relevant, it's just the timer
    frequency).
    - Clean-up (EM_AARCH64/EM_ARM to elf-em.h, ELF notes in read-only
    segment, unused variable).
    - Bug-fixes (RAM boundaries not 2MB aligned, perf, includes).

    * tag 'arm64-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-aarch64:
    Documentation/arm64: clarify requirements for DTB placement
    arm64: mm: permit use of tagged pointers at EL0
    Move the EM_ARM and EM_AARCH64 definitions to uapi/linux/elf-em.h
    arm64: Remove unused cpu_name ascii in arch/arm64/mm/proc.S
    arm64: delay: don't bother reporting bogomips in /proc/cpuinfo
    arm64: Fix mapping of memory banks not ending on a PMD_SIZE boundary
    arm64: move elf notes into readonly segment
    arm64: Enable interrupts in the EL0 undef handler
    arm64: Expand arm64 image header
    ARM64: include: asm: include "asm/types.h" in "pgtable-2level-types.h" and "pgtable-3level-types.h"
    arm64: add support for kernel mode NEON
    arm64: perf: fix ARMv8 EVTYPE_MASK to include NSH bit
    arm64: perf: fix group validation when using enable_on_exec

    Linus Torvalds
     
  • Pull Microblaze patches from Michal Simek:
    - PCI fixes
    - Selfmod code removing
    - Intc and timer fixes
    - Adding new MB versions
    - Minor fixes

    * tag 'microblaze-3.12-rc1' of git://git.monstr.eu/linux-2.6-microblaze:
    microblaze: Show message when reset gpio is not present
    microblaze: Add linux.bin.ub target
    microblaze: Add PVR version string for MB v9.0 and v9.1
    microblaze: timer: Replace microblaze_ prefix by xilinx_
    microblaze: timer: Update header
    microblaze: timer: Remove unused header
    microblaze: timer: Clear driver init function
    microblaze: timer: Use CLKSRC_OF initialization
    microblaze: intc: Remove unused header
    microblaze: intc: Clean driver init function
    microblaze: intc: Using irqchip
    microblaze: intc: Update header
    microblaze: intc: Remove unused headers
    microblaze: Remove selfmodified feature
    of/pci: Use of_pci_range_parser

    Linus Torvalds
     
  • Pull powerpc updates from Ben Herrenschmidt:
    "Here's the powerpc batch for this merge window. Some of the
    highlights are:

    - A bunch of endian fixes ! We don't have full LE support yet in that
    release but this contains a lot of fixes all over arch/powerpc to
    use the proper accessors, call the firmware with the right endian
    mode, etc...

    - A few updates to our "powernv" platform (non-virtualized, the one
    to run KVM on), among other, support for bridging the P8 LPC bus
    for UARTs, support and some EEH fixes.

    - Some mpc51xx clock API cleanups in preparation for a clock API
    overhaul

    - A pile of cleanups of our old math emulation code, including better
    support for using it to emulate optional FP instructions on
    embedded chips that otherwise have a HW FPU.

    - Some infrastructure in selftest, for powerpc now, but could be
    generalized, initially used by some tests for our perf instruction
    counting code.

    - A pile of fixes for hotplug on pseries (that was seriously
    bitrotting)

    - The usual slew of freescale embedded updates, new boards, 64-bit
    hiberation support, e6500 core PMU support, etc..."

    * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (146 commits)
    powerpc: Correct FSCR bit definitions
    powerpc/xmon: Fix printing of set of CPUs in xmon
    powerpc/pseries: Move lparcfg.c to platforms/pseries
    powerpc/powernv: Return secondary CPUs to firmware on kexec
    powerpc/btext: Fix CONFIG_PPC_EARLY_DEBUG_BOOTX on ppc32
    powerpc: Cleanup handling of the DSCR bit in the FSCR register
    powerpc/pseries: Child nodes are not detached by dlpar_detach_node
    powerpc/pseries: Add mising of_node_put in delete_dt_node
    powerpc/pseries: Make dlpar_configure_connector parent node aware
    powerpc/pseries: Do all node initialization in dlpar_parse_cc_node
    powerpc/pseries: Fix parsing of initial node path in update_dt_node
    powerpc/pseries: Pack update_props_workarea to map correctly to rtas buffer header
    powerpc/pseries: Fix over writing of rtas return code in update_dt_node
    powerpc/pseries: Fix creation of loop in device node property list
    powerpc: Skip emulating & leave interrupts off for kernel program checks
    powerpc: Add more exception trampolines for hypervisor exceptions
    powerpc: Fix location and rename exception trampolines
    powerpc: Add more trap names to xmon
    powerpc/pseries: Add a warning in the case of cross-cpu VPA registration
    powerpc: Update the 00-Index in Documentation/powerpc
    ...

    Linus Torvalds
     
  • These are based on the current shipping versions of the config files
    from Tilera, as synced up to the tip, so are a better starting point
    for folks who want a default configuration.

    Signed-off-by: Chris Metcalf

    Chris Metcalf
     
  • The macrology in cmpxchg.h was designed to allow arbitrary pointer
    and integer values to be passed through the routines. To support
    cmpxchg() on 64-bit values on the 32-bit tilepro architecture, we
    used the idiom "(typeof(val))(typeof(val-val))". This way, in the
    "size 8" branch of the switch, when the underlying cmpxchg routine
    returns a 64-bit quantity, we cast it first to a typeof(val-val)
    quantity (i.e. size_t if "val" is a pointer) with no warnings about
    casting between pointers and integers of different sizes, then cast
    onwards to typeof(val), again with no warnings. If val is not a
    pointer type, the additional cast is a no-op. We can't replace the
    typeof(val-val) cast with (for example) unsigned long, since then if
    "val" is really a 64-bit type, we cast away the high bits.

    HOWEVER, this fails with current gcc (through 4.7 at least) if "val"
    is a pointer to an incomplete type. Unfortunately gcc isn't smart
    enough to realize that "val - val" will always be a size_t type
    even if it's an incomplete type pointer.

    Accordingly, I've reworked the way we handle the casting. We have
    given up the ability to use cmpxchg() on 64-bit values on tilepro,
    which is OK in the kernel since we should use cmpxchg64() explicitly
    on such values anyway. As a result, I can just use simple "unsigned
    long" casts internally.

    As I reworked it, I realized it would be cleaner to move the
    architecture-specific conditionals for cmpxchg and xchg out of the
    atomic.h headers and into cmpxchg, and then use the cmpxchg() and
    xchg() primitives directly in atomic.h and elsewhere. This allowed
    the cmpxchg.h header to stand on its own without relying on the
    implicit include of it that is performed by .
    It also allowed collapsing the atomic_xchg/atomic_cmpxchg routines
    from atomic_{32,64}.h into atomic.h.

    I improved the tests that guard the allowed size of the arguments
    to the routines to use a __compiletime_error() test. (By avoiding
    the use of BUILD_BUG, I could include cmpxchg.h into bitops.h as
    well and use the macros there, which is otherwise impossible due
    to include order dependency issues.)

    The tilepro _atomic_xxx internal methods were previously set up to
    take atomic_t and atomic64_t arguments, which isn't as convenient
    with the new model, so I modified them to take int or u64 arguments,
    which is consistent with how they used the arguments internally
    anyway, so provided some nice simplification there too.

    Signed-off-by: Chris Metcalf

    Chris Metcalf
     
  • Pull trivial tree from Jiri Kosina:
    "The usual trivial updates all over the tree -- mostly typo fixes and
    documentation updates"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (52 commits)
    doc: Documentation/cputopology.txt fix typo
    treewide: Convert retrun typos to return
    Fix comment typo for init_cma_reserved_pageblock
    Documentation/trace: Correcting and extending tracepoint documentation
    mm/hotplug: fix a typo in Documentation/memory-hotplug.txt
    power: Documentation: Update s2ram link
    doc: fix a typo in Documentation/00-INDEX
    Documentation/printk-formats.txt: No casts needed for u64/s64
    doc: Fix typo "is is" in Documentations
    treewide: Fix printks with 0x%#
    zram: doc fixes
    Documentation/kmemcheck: update kmemcheck documentation
    doc: documentation/hwspinlock.txt fix typo
    PM / Hibernate: add section for resume options
    doc: filesystems : Fix typo in Documentations/filesystems
    scsi/megaraid fixed several typos in comments
    ppc: init_32: Fix error typo "CONFIG_START_KERNEL"
    treewide: Add __GFP_NOWARN to k.alloc calls with v.alloc fallbacks
    page_isolation: Fix a comment typo in test_pages_isolated()
    doc: fix a typo about irq affinity
    ...

    Linus Torvalds
     
  • Pull HID updates from Jiri Kosina:
    "Highlights:

    - conversion of HID subsystem to use devm-based resource management,
    from Benjamin Tissoires

    - i2c-hid support for DT bindings, from Benjamin Tissoires

    - much improved support for Win8-multitouch devices, from Benjamin
    Tissoires

    - cleanup of core code using common hidinput_input_event(), from
    David Herrmann

    - fix for bug in implement() access to the bit stream (causing oops)
    that has been present in the code for ages, but devices that are
    able to trigger it have started to appear only now, from Jiri
    Kosina

    - fixes for CVE-2013-2899, CVE-2013-2898, CVE-2013-2896,
    CVE-2013-2892, CVE-2013-2888 (all triggerable only by specially
    crafted malicious HW devices plugged into the system), from Kees
    Cook

    - hidraw oops fix, from Manoj Chourasia

    - various smaller fixes here and there, support for a bunch of new
    devices by various contributors"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (53 commits)
    HID: MAINTAINERS: add roccat drivers
    HID: hid-sensor-hub: change kmalloc + memcpy by kmemdup
    HID: hid-sensor-hub: move to devm_kzalloc
    HID: hid-sensor-hub: fix indentation accross the code
    HID: move HID_REPORT_TYPES closer to the report-definitions
    HID: check for NULL field when setting values
    HID: picolcd_core: validate output report details
    HID: sensor-hub: validate feature report details
    HID: ntrig: validate feature report details
    HID: pantherlord: validate output report details
    HID: hid-wiimote: print small buffers via %*phC
    HID: uhid: improve uhid example client
    HID: Correct the USB IDs for the new Macbook Air 6
    HID: wiimote: add support for Guitar-Hero guitars
    HID: wiimote: add support for Guitar-Hero drums
    Input: introduce BTN/ABS bits for drums and guitars
    HID: battery: don't do DMA from stack
    HID: roccat: add support for KonePureOptical v2
    HID: picolcd: Prevent NULL pointer dereference on _remove()
    HID: usbhid: quirk for N-Trig DuoSense Touch Screen
    ...

    Linus Torvalds
     
  • Pull ext3, reiserfs, udf & isofs fixes from Jan Kara:
    "The contains a bunch of ext3 cleanups and minor improvements, major
    reiserfs locking changes which should hopefully fix deadlocks
    introduced by BKL removal, and udf/isofs changes to refuse mounting fs
    rw instead of mounting it ro automatically which makes eject button
    work as expected for all media (see the changelog for why userspace
    should be ok with this change)"

    * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
    jbd: use a single printk for jbd_debug()
    reiserfs: locking, release lock around quota operations
    reiserfs: locking, handle nested locks properly
    reiserfs: locking, push write lock out of xattr code
    jbd: relocate assert after state lock in journal_commit_transaction()
    udf: Refuse RW mount of the filesystem instead of making it RO
    udf: Standardize return values in mount sequence
    isofs: Refuse RW mount of the filesystem instead of making it RO
    ext3: allow specifying external journal by pathname mount option
    jbd: remove unneeded semicolon

    Linus Torvalds
     
  • Pull f2fs updates from Jaegeuk Kim:
    "This patch-set includes the following major enhancement patches:
    - support inline xattrs
    - add sysfs support to control GCs explicitly
    - add proc entry to show the current segment usage information
    - improve the GC/SSR performance

    The other bug fixes are as follows:
    - avoid the overflow on status calculation
    - fix some error handling routines
    - fix inconsistent xattr states after power-off-recovery
    - fix incorrect xattr node offset definition
    - fix deadlock condition in fsync
    - fix the fdatasync routine for power-off-recovery"

    * tag 'for-f2fs-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (40 commits)
    f2fs: optimize gc for better performance
    f2fs: merge more bios of node block writes
    f2fs: avoid an overflow during utilization calculation
    f2fs: trigger GC when there are prefree segments
    f2fs: use strncasecmp() simplify the string comparison
    f2fs: fix omitting to update inode page
    f2fs: support the inline xattrs
    f2fs: add the truncate_xattr_node function
    f2fs: introduce __find_xattr for readability
    f2fs: reserve the xattr space dynamically
    f2fs: add flags for inline xattrs
    f2fs: fix error return code in init_f2fs_fs()
    f2fs: fix wrong BUG_ON condition
    f2fs: fix memory leak when init f2fs filesystem fail
    f2fs: fix a compound statement label error
    f2fs: avoid writing inode redundantly when creating a file
    f2fs: alloc_page() doesn't return an ERR_PTR
    f2fs: should cover i_xattr_nid with its xattr node page lock
    f2fs: check the free space first in new_node_page
    f2fs: clean up the needless end 'return' of void function
    ...

    Linus Torvalds
     

06 Sep, 2013

7 commits

  • Fix the following smatch warning:

    emc6w201.c:52:26: warning: symbol 'subfeature' was not declared.
    Should it be static?

    'enum { } subtype' declares an enum as (global) variable which we don't want.

    Signed-off-by: Guenter Roeck
    Signed-off-by: Jean Delvare

    Guenter Roeck
     
  • w83792d was written by me in 2004, I'd like to update my first name
    into my current one to keep consistent, and delete invalid address.

    Signed-off-by: Shane Huang
    Signed-off-by: Jean Delvare

    Shane Huang
     
  • Conflicts:
    drivers/hid/hid-sensor-hub.c

    Jiri Kosina
     
  • …3.12/logitech', 'for-3.12/multitouch-win8', 'for-3.12/trasnport-driver-cleanup', 'for-3.12/uhid', 'for-3.12/upstream' and 'for-3.12/wiimote' into for-linus

    Jiri Kosina
     
  • Pull ARM updates from Russell King:
    "This set includes adding support for Neon acceleration of RAID6 XOR
    code from Ard Biesheuvel, cache flushing and barrier updates from Will
    Deacon, and a cleanup to the ARM debug code which reduces the amount
    of code by about 500 lines.

    A few other cleanups, such as constifying the machine descriptors
    which already shouldn't be written to, cleaning up the printing of the
    L2 cache size"

    * 'for-linus' of git://git.linaro.org/people/rmk/linux-arm: (55 commits)
    ARM: 7826/1: debug: support debug ll on hisilicon soc
    ARM: 7830/1: delay: don't bother reporting bogomips in /proc/cpuinfo
    ARM: 7829/1: Add ".text.unlikely" and ".text.hot" to arm unwind tables
    ARM: 7828/1: ARMv7-M: implement restart routine common to all v7-M machines
    ARM: 7827/1: highbank: fix debug uart virtual address for LPAE
    ARM: 7823/1: errata: workaround Cortex-A15 erratum 773022
    ARM: 7806/1: allow DEBUG_UNCOMPRESS for Tegra
    ARM: 7793/1: debug: use generic option for ep93xx PL10x debug port
    ARM: debug: move SPEAr debug to generic PL01x code
    ARM: debug: move davinci debug to generic 8250 code
    ARM: debug: move keystone debug to generic 8250 code
    ARM: debug: remove DEBUG_ROCKCHIP_UART
    ARM: debug: provide generic option choices for 8250 and PL01x ports
    ARM: debug: move PL01X debug include into arch/arm/include/debug/
    ARM: debug: provide PL01x debug uart phys/virt address configuration options
    ARM: debug: add support for word accesses to debug/8250.S
    ARM: debug: move 8250 debug include into arch/arm/include/debug/
    ARM: debug: provide 8250 debug uart phys/virt address configuration options
    ARM: debug: provide 8250 debug uart register shift configuration option
    ARM: debug: provide 8250 debug uart flow control configuration option
    ...

    Linus Torvalds
     
  • Merge commit 06c54055bebf did a bad conflict resolution accidentally
    leaving out a closing brace. Add it back.

    This breaks a handful of defconfigs on ARM, so it'd be good to see it
    applied pretty quickly.

    Signed-off-by: Olof Johansson
    Cc: David S. Miller
    Signed-off-by: Linus Torvalds

    Olof Johansson
     
  • Pull IDE changes from David Miller:
    "Mostly cleanups, and changes part of tree-wide adjustments, this code
    is in deep freeze so that's pretty much what we expect these days"

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide:
    ide: sgiioc4: Staticize ioc4_ide_attach_one()
    ide: palm_bk3710: add missing __iomem annotation
    ide: use dev_get_platdata()
    ide-disk_proc: use macro to replace magic number
    ide: replace strict_strtol() with kstrtol()

    Linus Torvalds