1. 09 Sep, 2015 2 commits
    • Linus Torvalds's avatar
      Merge tag 'linux-kselftest-4.3-rc1' of... · 54283aed
      Linus Torvalds authored
      Merge tag 'linux-kselftest-4.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull kselftest update from Shuah Khan:
       "This update adds new zram test and fixes to problems found during
        testing this new zram test.  In addition, there are a few bug fixes
        and ksefltest improvement patches from Linaro developers.
      
        I will send another update later on this week to fix kselftest
        breakage due to commit 2bf9e0ab ("locking/static_keys: Provide a
        selftest") after the fix soaks in next for a couple of days"
      
      * tag 'linux-kselftest-4.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        selftests/zram: Makefile fix
        selftests/zram: must be run as root
        selftests: breakpoints: fix installing error on the architecture except x86
        selftests: check before install
        selftests/zram: Adding zram tests
      54283aed
    • Linus Torvalds's avatar
      Merge tag 'iommu-updates-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · 9a9952bb
      Linus Torvalds authored
      Pull iommu updates for from Joerg Roedel:
       "This time the IOMMU updates are mostly cleanups or fixes.  No big new
        features or drivers this time.  In particular the changes include:
      
         - Bigger cleanup of the Domain<->IOMMU data structures and the code
           that manages them in the Intel VT-d driver.  This makes the code
           easier to understand and maintain, and also easier to keep the data
           structures in sync.  It is also a preparation step to make use of
           default domains from the IOMMU core in the Intel VT-d driver.
      
         - Fixes for a couple of DMA-API misuses in ARM IOMMU drivers, namely
           in the ARM and Tegra SMMU drivers.
      
         - Fix for a potential buffer overflow in the OMAP iommu driver's
           debug code
      
         - A couple of smaller fixes and cleanups in various drivers
      
         - One small new feature: Report domain-id usage in the Intel VT-d
           driver to easier detect bugs where these are leaked"
      
      * tag 'iommu-updates-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (83 commits)
        iommu/vt-d: Really use upper context table when necessary
        x86/vt-d: Fix documentation of DRHD
        iommu/fsl: Really fix init section(s) content
        iommu/io-pgtable-arm: Unmap and free table when overwriting with block
        iommu/io-pgtable-arm: Move init-fn declarations to io-pgtable.h
        iommu/msm: Use BUG_ON instead of if () BUG()
        iommu/vt-d: Access iomem correctly
        iommu/vt-d: Make two functions static
        iommu/vt-d: Use BUG_ON instead of if () BUG()
        iommu/vt-d: Return false instead of 0 in irq_remapping_cap()
        iommu/amd: Use BUG_ON instead of if () BUG()
        iommu/amd: Make a symbol static
        iommu/amd: Simplify allocation in irq_remapping_alloc()
        iommu/tegra-smmu: Parameterize number of TLB lines
        iommu/tegra-smmu: Factor out tegra_smmu_set_pde()
        iommu/tegra-smmu: Extract tegra_smmu_pte_get_use()
        iommu/tegra-smmu: Use __GFP_ZERO to allocate zeroed pages
        iommu/tegra-smmu: Remove PageReserved manipulation
        iommu/tegra-smmu: Convert to use DMA API
        iommu/tegra-smmu: smmu_flush_ptc() wants device addresses
        ...
      9a9952bb
  2. 08 Sep, 2015 24 commits
    • Linus Torvalds's avatar
      Merge tag 'regmap-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · e81b594c
      Linus Torvalds authored
      Pull regmap updates from Mark Brown:
       "This has been a busy release for regmap.
      
        By far the biggest set of changes here are those from Markus Pargmann
        which implement support for block transfers in smbus devices.  This
        required quite a bit of refactoring but leaves us better able to
        handle odd restrictions that controllers may have and with better
        performance on smbus.
      
        Other new features include:
      
         - Fix interactions with lockdep for nested regmaps (eg, when a device
           using regmap is connected to a bus where the bus controller has a
           separate regmap).  Lockdep's default class identification is too
           crude to work without help.
      
         - Support for must write bitfield operations, useful for operations
           which require writing a bit to trigger them from Kuniori Morimoto.
      
         - Support for delaying during register patch application from Nariman
           Poushin.
      
         - Support for overriding cache state via the debugfs implementation
           from Richard Fitzgerald"
      
      * tag 'regmap-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap: (25 commits)
        regmap: fix a NULL pointer dereference in __regmap_init
        regmap: Support bulk reads for devices without raw formatting
        regmap-i2c: Add smbus i2c block support
        regmap: Add raw_write/read checks for max_raw_write/read sizes
        regmap: regmap max_raw_read/write getter functions
        regmap: Introduce max_raw_read/write for regmap_bulk_read/write
        regmap: Add missing comments about struct regmap_bus
        regmap: No multi_write support if bus->write does not exist
        regmap: Split use_single_rw internally into use_single_read/write
        regmap: Fix regmap_bulk_write for bus writes
        regmap: regmap_raw_read return error on !bus->read
        regulator: core: Print at debug level on debugfs creation failure
        regmap: Fix regmap_can_raw_write check
        regmap: fix typos in regmap.c
        regmap: Fix integertypes for register address and value
        regmap: Move documentation to regmap.h
        regmap: Use different lockdep class for each regmap init call
        thermal: sti: Add parentheses around bridge->ops->regmap_init call
        mfd: vexpress: Add parentheses around bridge->ops->regmap_init call
        regmap: debugfs: Fix misuse of IS_ENABLED
        ...
      e81b594c
    • Linus Torvalds's avatar
      Merge tag 'fbdev-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux · fa815580
      Linus Torvalds authored
      Pull fbdev updates from Tomi Valkeinen:
       "Minor fixes and cleanups"
      
      * tag 'fbdev-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux:
        video: fbdev: atmel_lcdfb: remove useless include
        video: fbdev: pxa168fb: Use devm_clk_get
        fbdev: ssd1307fb: fix error return code
        fbdev: fix snprintf() limit in show_bl_curve()
        video: fbdev: s3c-fb: Constify platform_device_id
        video: fbdev: atmel: fix warning for const return value
        video: fbdev: Drop owner assignment from platform_driver
        video: fbdev: Drop owner assignment from i2c_driver
        fbdev: remove unnecessary memset in vfb
        framebuffer: disable vgacon on microblaze arch
        fbdev: udlfb: remove unneeded initialization in few places
        fbdev: Allow compile test of GPIO consumers if !GPIOLIB
        fbdev: fix cea_modes array size
      fa815580
    • Linus Torvalds's avatar
      Merge tag 'mmc-v4.3' of git://git.linaro.org/people/ulf.hansson/mmc · 85579ad7
      Linus Torvalds authored
      Pull MMC updates from Ulf Hansson:
       "MMC core:
         - Fix a race condition in the request handling
         - Skip trim commands for some buggy kingston eMMCs
         - An optimization and a correction for erase groups
         - Set CMD23 quirk for some Sandisk cards
      
        MMC host:
         - sdhci: Give GPIO CD higher precedence and don't poll when it's used
         - sdhci: Fix DMA memory leakage
         - sdhci: Some updates for clock management
         - sdhci-of-at91: introduce driver for the Atmel SDMMC
         - sdhci-of-arasan: Add support for sdhci-5.1
         - sdhci-esdhc-imx: Add support for imx7d which also supports HS400
         - sdhci: A collection of fixes and improvements for various sdhci hosts
         - omap_hsmmc: Modernization of the regulator code
         - dw_mmc: A couple of fixes for DMA and PIO mode
         - usdhi6rol0: A few fixes and support probe deferral for regulators
         - pxamci: Convert to use dmaengine
         - sh_mmcif: Fix the suspend process in a short term solution
         - tmio: Adjust timeout for commands
         - sunxi: Fix timeout while gating/ungating clock"
      
      * tag 'mmc-v4.3' of git://git.linaro.org/people/ulf.hansson/mmc: (67 commits)
        mmc: android-goldfish: remove incorrect __iomem annotation
        mmc: core: fix race condition in mmc_wait_data_done
        mmc: host: omap_hsmmc: remove CONFIG_REGULATOR check
        mmc: host: omap_hsmmc: use ios->vdd for setting vmmc voltage
        mmc: host: omap_hsmmc: use regulator_is_enabled to find pbias status
        mmc: host: omap_hsmmc: enable/disable vmmc_aux regulator based on previous state
        mmc: host: omap_hsmmc: don't use ->set_power to set initial regulator state
        mmc: host: omap_hsmmc: avoid pbias regulator enable on power off
        mmc: host: omap_hsmmc: add separate function to set pbias
        mmc: host: omap_hsmmc: add separate functions for enable/disable supply
        mmc: host: omap_hsmmc: return error if any of the regulator APIs fail
        mmc: host: omap_hsmmc: remove unnecessary pbias set_voltage
        mmc: host: omap_hsmmc: use mmc_host's vmmc and vqmmc
        mmc: host: omap_hsmmc: use the ocrmask provided by the vmmc regulator
        mmc: host: omap_hsmmc: cleanup omap_hsmmc_reg_get()
        mmc: host: omap_hsmmc: return on fatal errors from omap_hsmmc_reg_get
        mmc: host: omap_hsmmc: use devm_regulator_get_optional() for vmmc
        mmc: sdhci-of-at91: fix platform_no_drv_owner.cocci warnings
        mmc: sh_mmcif: Fix suspend process
        mmc: usdhi6rol0: fix error return code
        ...
      85579ad7
    • Linus Torvalds's avatar
      Merge tag 'platform-drivers-x86-v4.3-1' of... · 3af6e98f
      Linus Torvalds authored
      Merge tag 'platform-drivers-x86-v4.3-1' of git://git.infradead.org/users/dvhart/linux-platform-drivers-x86
      
      Pull x86 platform driver updates from Darren Hart:
       "Significant work on toshiba_acpi, including new hardware support,
        refactoring, and cleanups.  Extend device support for asus, ideapad,
        and acer systems.  New surface pro 3 buttons driver.  Misc minor
        cleanups for thinkpad and hp-wireless.
      
        acer-wmi:
         - No rfkill on HP Omen 15 wifi
      
        thinkpad_acpi:
         - Remove side effects from vdbg_printk -> no_printk macro
      
        surface pro 3:
         - Add support driver for Surface Pro 3 buttons
      
        hp-wireless:
         - remove unneeded goto/label in hpwl_init
      
        ideapad-laptop:
         - add alternative representation for Yoga 2 to DMI table
         - Add Lenovo Yoga 3 14 to no_hw_rfkill dmi list
      
        asus-laptop:
         - Add key found on Asus F3M
      
        MAINTAINERS:
         - Remove Toshiba Linux mailing list address
      
        toshiba_acpi:
         - Bump driver version to 0.23
         - Remove unnecessary checks and returns in HCI/SCI functions
         - Refactor *{get, set} functions return value
         - Remove "*not supported" feature prints
         - Change *available functions return type
         - Add set_fan_status function
         - Change some variables to avoid warnings from ninja-check
         - Reorder toshiba_acpi_alt_keymap entries
         - Remove unused wireless defines
         - Transflective backlight updates
         - Avoid registering input device on WMI event laptops
         - Add /dev/toshiba_acpi device
         - Adapt /proc/acpi/toshiba/keys to TOS1900 devices"
      
      * tag 'platform-drivers-x86-v4.3-1' of git://git.infradead.org/users/dvhart/linux-platform-drivers-x86: (21 commits)
        acer-wmi: No rfkill on HP Omen 15 wifi
        thinkpad_acpi: Remove side effects from vdbg_printk -> no_printk macro
        surface pro 3: Add support driver for Surface Pro 3 buttons
        hp-wireless: remove unneeded goto/label in hpwl_init
        ideapad-laptop: add alternative representation for Yoga 2 to DMI table
        asus-laptop: Add key found on Asus F3M
        MAINTAINERS: Remove Toshiba Linux mailing list address
        ideapad-laptop: Add Lenovo Yoga 3 14 to no_hw_rfkill dmi list
        toshiba_acpi: Bump driver version to 0.23
        toshiba_acpi: Remove unnecessary checks and returns in HCI/SCI functions
        toshiba_acpi: Refactor *{get, set} functions return value
        toshiba_acpi: Remove "*not supported" feature prints
        toshiba_acpi: Change *available functions return type
        toshiba_acpi: Add set_fan_status function
        toshiba_acpi: Change some variables to avoid warnings from ninja-check
        toshiba_acpi: Reorder toshiba_acpi_alt_keymap entries
        toshiba_acpi: Remove unused wireless defines
        toshiba_acpi: Transflective backlight updates
        toshiba_acpi: Avoid registering input device on WMI event laptops
        toshiba_acpi: Add /dev/toshiba_acpi device
        ...
      3af6e98f
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · acceba59
      Linus Torvalds authored
      Pull i2c updates from Wolfram Sang:
       "Features:
      
         - new drivers: Renesas EMEV2, register based MUX, NXP LPC2xxx
         - core: scans DT and assigns wakeup interrupts.  no driver changes needed.
         - core: some refcouting issues fixed and better API for that
         - core: new helper function for best effort block read emulation
         - slave framework: proper DT bindings and userspace instantiation
         - some bigger work for xiic, pxa, omap drivers
      
        .. and quite a number of smaller driver fixes, cleanups, improvements"
      
      * 'i2c/for-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (65 commits)
        i2c: mux: reg Change ioread endianness for readback
        i2c: mux: reg: fix compilation warnings
        i2c: mux: reg: simplify register size checking
        i2c: muxes: fix leaked i2c adapter device node references
        i2c: allow specifying separate wakeup interrupt in device tree
        of/irq: export of_get_irq_byname()
        i2c: xgene-slimpro: dma_mapping_error() doesn't return an error code
        i2c: Replace I2C_CROS_EC_TUNNEL dependency
        eeprom: at24: use i2c_smbus_read_i2c_block_data_or_emulated
        i2c: core: Add support for best effort block read emulation
        i2c: lpc2k: add driver
        i2c: mux: Add register-based mux i2c-mux-reg
        i2c: dt: describe generic bindings
        i2c: slave: print warning if slave flag not set
        i2c: support 10 bit and slave addresses in sysfs 'new_device'
        i2c: take address space into account when checking for used addresses
        i2c: apply DT flags when probing
        i2c: make address check indpendent from client struct
        i2c: rename address check functions
        i2c: apply address offset for slaves, too
        ...
      acceba59
    • Linus Torvalds's avatar
      Merge tag 'rtc-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux · c1917615
      Linus Torvalds authored
      Pull RTC updates from Alexandre Belloni:
       "Core:
         - use is_visible() to control sysfs attributes
         - switch wakealarm attribute to DEVICE_ATTR_RW
         - make rtc_does_wakealarm() return boolean
         - properly manage lifetime of dev and cdev in rtc device
         - remove unnecessary device_get() in rtc_device_unregister
         - fix double free in rtc_register_device() error path
      
        New drivers:
         - NXP LPC24xx
         - Xilinx Zynq MP
         - Dialog DA9062
      
        Subsystem wide cleanups:
         - fix drivers that consider 0 as a valid IRQ in client->irq
         - Drop (un)likely before IS_ERR(_OR_NULL)
         - drop the remaining owner assignment for i2c_driver and
           platform_driver
         - module autoload fixes
      
        Drivers:
         - 88pm80x: add device tree support
         - abx80x: fix RTC write bit
         - ab8500: Add a sentinel to ab85xx_rtc_ids[]
         - armada38x: Align RTC set time procedure with the official errata
         - as3722: correct month value
         - at91sam9: cleanups
         - at91rm9200: get and use slow clock and cleanups
         - bq32k: remove redundant check
         - cmos: century support, proper fix for the spurious wakeup
         - ds1307: cleanups and wakeup irq support
         - ds1374: Remove unused variable
         - ds1685: Use module_platform_driver
         - ds3232: fix WARNING trace in resume function
         - gemini: fix ptr_ret.cocci warnings
         - mt6397: implement suspend/resume
         - omap: support internal and external clock enabling
         - opal: Enable alarms only when opal supports tpo
         - pcf2127: use OFS flag to detect unreliable date and warn the user
         - pl031: fix typo for author email
         - rx8025: huge cleanup and fixes
         - sa1100/pxa: share common code
         - s5m: fix to update ctrl register
         - s3c: fix clocks and wakeup, cleanup
         - sirfsoc: use regmap
         - nvram_read()/nvram_write() functions for cmos, ds1305, ds1307,
           ds1343, ds1511, ds1553, ds1742, m48t59, rp5c01, stk17ta8, tx4939
         - use rtc_valid_tm() error code when reading date/time instead of 0
           for isl12022, pcf2123, pcf2127"
      
      * tag 'rtc-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (90 commits)
        rtc: abx80x: fix RTC write bit
        rtc: ab8500: Add a sentinel to ab85xx_rtc_ids[]
        rtc: ds1374: Remove unused variable
        rtc: Fix module autoload for OF platform drivers
        rtc: Fix module autoload for rtc-{ab8500,max8997,s5m} drivers
        rtc: omap: Add external clock enabling support
        rtc: omap: Add internal clock enabling support
        ARM: dts: AM437x: Add the internal and external clock nodes for rtc
        rtc: s5m: fix to update ctrl register
        rtc: add xilinx zynqmp rtc driver
        devicetree: bindings: rtc: add bindings for xilinx zynqmp rtc
        rtc: as3722: correct month value
        ARM: config: Switch PXA27x platforms to use PXA RTC driver
        ARM: mmp: remove unused RTC register definitions
        ARM: sa1100: remove unused RTC register definitions
        rtc: sa1100/pxa: convert to run-time register mapping
        ARM: pxa: add memory resource to SA1100 RTC device
        rtc: pxa: convert to use shared sa1100 functions
        rtc: sa1100: prepare to share sa1100_rtc_ops
        rtc: ds3232: fix WARNING trace in resume function
        ...
      c1917615
    • Linus Torvalds's avatar
      Merge tag 'libnvdimm-for-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · 12f03ee6
      Linus Torvalds authored
      Pull libnvdimm updates from Dan Williams:
       "This update has successfully completed a 0day-kbuild run and has
        appeared in a linux-next release.  The changes outside of the typical
        drivers/nvdimm/ and drivers/acpi/nfit.[ch] paths are related to the
        removal of IORESOURCE_CACHEABLE, the introduction of memremap(), and
        the introduction of ZONE_DEVICE + devm_memremap_pages().
      
        Summary:
      
         - Introduce ZONE_DEVICE and devm_memremap_pages() as a generic
           mechanism for adding device-driver-discovered memory regions to the
           kernel's direct map.
      
           This facility is used by the pmem driver to enable pfn_to_page()
           operations on the page frames returned by DAX ('direct_access' in
           'struct block_device_operations').
      
           For now, the 'memmap' allocation for these "device" pages comes
           from "System RAM".  Support for allocating the memmap from device
           memory will arrive in a later kernel.
      
         - Introduce memremap() to replace usages of ioremap_cache() and
           ioremap_wt().  memremap() drops the __iomem annotation for these
           mappings to memory that do not have i/o side effects.  The
           replacement of ioremap_cache() with memremap() is limited to the
           pmem driver to ease merging the api change in v4.3.
      
           Completion of the conversion is targeted for v4.4.
      
         - Similar to the usage of memcpy_to_pmem() + wmb_pmem() in the pmem
           driver, update the VFS DAX implementation and PMEM api to provide
           persistence guarantees for kernel operations on a DAX mapping.
      
         - Convert the ACPI NFIT 'BLK' driver to map the block apertures as
           cacheable to improve performance.
      
         - Miscellaneous updates and fixes to libnvdimm including support for
           issuing "address range scrub" commands, clarifying the optimal
           'sector size' of pmem devices, a clarification of the usage of the
           ACPI '_STA' (status) property for DIMM devices, and other minor
           fixes"
      
      * tag 'libnvdimm-for-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm: (34 commits)
        libnvdimm, pmem: direct map legacy pmem by default
        libnvdimm, pmem: 'struct page' for pmem
        libnvdimm, pfn: 'struct page' provider infrastructure
        x86, pmem: clarify that ARCH_HAS_PMEM_API implies PMEM mapped WB
        add devm_memremap_pages
        mm: ZONE_DEVICE for "device memory"
        mm: move __phys_to_pfn and __pfn_to_phys to asm/generic/memory_model.h
        dax: drop size parameter to ->direct_access()
        nd_blk: change aperture mapping from WC to WB
        nvdimm: change to use generic kvfree()
        pmem, dax: have direct_access use __pmem annotation
        dax: update I/O path to do proper PMEM flushing
        pmem: add copy_from_iter_pmem() and clear_pmem()
        pmem, x86: clean up conditional pmem includes
        pmem: remove layer when calling arch_has_wmb_pmem()
        pmem, x86: move x86 PMEM API to new pmem.h header
        libnvdimm, e820: make CONFIG_X86_PMEM_LEGACY a tristate option
        pmem: switch to devm_ allocations
        devres: add devm_memremap
        libnvdimm, btt: write and validate parent_uuid
        ...
      12f03ee6
    • Linus Torvalds's avatar
      Merge branch 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild · d9241b22
      Linus Torvalds authored
      Pull misc kbuild updates from Michal Marek:
       - deb-pkg:
           + module signing fix
           + dtb files are added to the package
           + do not require `hostname -f` to work during build
           + make deb-pkg generates a source package, bindeb-pkg has been
             added to only generate the binary package
       - rpm-pkg packages /lib/modules as well
       - new coccinelle patch and updates to existing ones
       - new stackusage & stackdelta script to collect and compare stack usage
         info (using gcc's -fstack-usage)
       - make tags understands trace_*_rcuidle() macros
       - .gitignore updates, misc cleanups
      
      * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild: (27 commits)
        deb-pkg: add source package
        package/Makefile: move source tar creation to a function
        scripts: add stackdelta script
        kbuild: remove *.su files generated by -fstack-usage
        .gitignore: add *.su pattern
        scripts: add stackusage script
        kbuild: avoid listing /lib/modules in kernel spec file
        fallback to hostname in scripts/package/builddeb
        coccinelle: api: extend spatch for dropping unnecessary owner
        deb-pkg: simplify directory creation
        scripts/tags.sh: Include trace_*_rcuidle() in tags
        scripts/package/Makefile: rpmbuild is needed for rpm targets
        Kbuild: Add ID files to .gitignore
        gitignore: Add MIPS vmlinux.32 to the list
        coccinelle: simple_return: Add a blank line
        coccinelle: irqf_oneshot.cocci: Improve the generated commit log
        coccinelle: api: add vma_pages.cocci
        scripts/coccinelle/misc/irqf_oneshot.cocci: Fix grammar
        scripts/coccinelle/misc/semicolon.cocci: Use imperative mood
        coccinelle: simple_open: Use imperative mood
        ...
      d9241b22
    • Linus Torvalds's avatar
      Merge branch 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild · 605e9710
      Linus Torvalds authored
      Pull kconfig updates from Michal Marek:
       - kconfig warns about junk characters in Kconfig files
       - merge_config.sh error handling
       - small cleanup
      
      * 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
        merge_config.sh: exit on missing input files
        kconfig: Regenerate shipped zconf.{hash,lex}.c files
        kconfig: warn of unhandled characters in Kconfig commands
        kconfig: Delete unnecessary checks before the function call "sym_calc_value"
      605e9710
    • Linus Torvalds's avatar
      Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild · dab3c3cc
      Linus Torvalds authored
      Pull core kbuild updates from Michal Marek:
       - modpost portability fix
       - linker script fix
       - genksyms segfault fix
       - fixdep cleanup
       - fix for clang detection
      
      * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
        kbuild: Fix clang detection
        kbuild: fixdep: drop meaningless hash table initialization
        kbuild: fixdep: optimize code slightly
        genksyms: Regenerate parser
        genksyms: Duplicate function pointer type definitions segfault
        kbuild: Fix .text.unlikely placement
        Avoid conflict with host definitions when cross-compiling
      dab3c3cc
    • Linus Torvalds's avatar
      Merge tag 'trace-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 59a47fff
      Linus Torvalds authored
      Pull tracing update from Steven Rostedt:
       "Mostly this is just clean ups and micro optimizations.
      
        The changes with more meat are:
      
         - Allowing the trace event filters to filter on CPU number and
           process ids
      
         - Two new markers for trace output latency were added (10 and 100
           msec latencies)
      
         - Have tracing_thresh filter function profiling time
      
        I also worked on modifying the ring buffer code for some future work,
        and moved the adding of the timestamp around.  One of my changes
        caused a regression, and since other changes were built on top of it
        and already tested, I had to operate a revert of that change.  Instead
        of rebasing, this change set has the code that caused a regression as
        well as the code to revert that change without touching the other
        changes that were made on top of it"
      
      * tag 'trace-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        ring-buffer: Revert "ring-buffer: Get timestamp after event is allocated"
        tracing: Don't make assumptions about length of string on task rename
        tracing: Allow triggers to filter for CPU ids and process names
        ftrace: Format MCOUNT_ADDR address as type unsigned long
        tracing: Introduce two additional marks for delay
        ftrace: Fix function_graph duration spacing with 7-digits
        ftrace: add tracing_thresh to function profile
        tracing: Clean up stack tracing and fix fentry updates
        ring-buffer: Reorganize function locations
        ring-buffer: Make sure event has enough room for extend and padding
        ring-buffer: Get timestamp after event is allocated
        ring-buffer: Move the adding of the extended timestamp out of line
        ring-buffer: Add event descriptor to simplify passing data
        ftrace: correct the counter increment for trace_buffer data
        tracing: Fix for non-continuous cpu ids
        tracing: Prefer kcalloc over kzalloc with multiply
      59a47fff
    • Linus Torvalds's avatar
      Merge branch 'upstream' of git://git.infradead.org/users/pcmoore/audit · 425afcff
      Linus Torvalds authored
      Pull audit update from Paul Moore:
       "This is one of the larger audit patchsets in recent history,
        consisting of eight patches and almost 400 lines of changes.
      
        The bulk of the patchset is the new "audit by executable"
        functionality which allows admins to set an audit watch based on the
        executable on disk.  Prior to this, admins could only track an
        application by PID, which has some obvious limitations.
      
        Beyond the new functionality we also have some refcnt fixes and a few
        minor cleanups"
      
      * 'upstream' of git://git.infradead.org/users/pcmoore/audit:
        fixup: audit: implement audit by executable
        audit: implement audit by executable
        audit: clean simple fsnotify implementation
        audit: use macros for unset inode and device values
        audit: make audit_del_rule() more robust
        audit: fix uninitialized variable in audit_add_rule()
        audit: eliminate unnecessary extra layer of watch parent references
        audit: eliminate unnecessary extra layer of watch references
      425afcff
    • Linus Torvalds's avatar
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · b793c005
      Linus Torvalds authored
      Pull security subsystem updates from James Morris:
       "Highlights:
      
         - PKCS#7 support added to support signed kexec, also utilized for
           module signing.  See comments in 3f1e1bea.
      
           ** NOTE: this requires linking against the OpenSSL library, which
              must be installed, e.g.  the openssl-devel on Fedora **
      
         - Smack
            - add IPv6 host labeling; ignore labels on kernel threads
            - support smack labeling mounts which use binary mount data
      
         - SELinux:
            - add ioctl whitelisting (see
              http://kernsec.org/files/lss2015/vanderstoep.pdf)
            - fix mprotect PROT_EXEC regression caused by mm change
      
         - Seccomp:
            - add ptrace options for suspend/resume"
      
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: (57 commits)
        PKCS#7: Add OIDs for sha224, sha284 and sha512 hash algos and use them
        Documentation/Changes: Now need OpenSSL devel packages for module signing
        scripts: add extract-cert and sign-file to .gitignore
        modsign: Handle signing key in source tree
        modsign: Use if_changed rule for extracting cert from module signing key
        Move certificate handling to its own directory
        sign-file: Fix warning about BIO_reset() return value
        PKCS#7: Add MODULE_LICENSE() to test module
        Smack - Fix build error with bringup unconfigured
        sign-file: Document dependency on OpenSSL devel libraries
        PKCS#7: Appropriately restrict authenticated attributes and content type
        KEYS: Add a name for PKEY_ID_PKCS7
        PKCS#7: Improve and export the X.509 ASN.1 time object decoder
        modsign: Use extract-cert to process CONFIG_SYSTEM_TRUSTED_KEYS
        extract-cert: Cope with multiple X.509 certificates in a single file
        sign-file: Generate CMS message as signature instead of PKCS#7
        PKCS#7: Support CMS messages also [RFC5652]
        X.509: Change recorded SKID & AKID to not include Subject or Issuer
        PKCS#7: Check content type and versions
        MAINTAINERS: The keyrings mailing list has moved
        ...
      b793c005
    • Linus Torvalds's avatar
      Merge branch 'nmi' of git://ftp.arm.linux.org.uk/~rmk/linux-arm · 6f0a2fc1
      Linus Torvalds authored
      Pull NMI backtrace update from Russell King:
       "These changes convert the x86 NMI handling to be a library
        implementation which other architectures can make use of.  Thomas
        Gleixner has reviewed and tested these changes, and wishes me to send
        these rather than taking them through the tip tree.
      
        The final patch in the set adds an initial implementation using this
        infrastructure to ARM, even though it doesn't send the IPI at "NMI"
        level.  Patches are in progress to add the ARM equivalent of NMI, but
        we still need the IRQ-level fallback for systems where the "NMI" isn't
        available due to secure firmware denying access to it"
      
      * 'nmi' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
        ARM: add basic support for on-demand backtrace of other CPUs
        nmi: x86: convert to generic nmi handler
        nmi: create generic NMI backtrace implementation
      6f0a2fc1
    • Linus Torvalds's avatar
      Merge tag 'for-linus-4.3-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · 752240e7
      Linus Torvalds authored
      Pull xen updates from David Vrabel:
       "Xen features and fixes for 4.3:
      
         - Convert xen-blkfront to the multiqueue API
         - [arm] Support binding event channels to different VCPUs.
         - [x86] Support > 512 GiB in a PV guests (off by default as such a
           guest cannot be migrated with the current toolstack).
         - [x86] PMU support for PV dom0 (limited support for using perf with
           Xen and other guests)"
      
      * tag 'for-linus-4.3-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip: (33 commits)
        xen: switch extra memory accounting to use pfns
        xen: limit memory to architectural maximum
        xen: avoid another early crash of memory limited dom0
        xen: avoid early crash of memory limited dom0
        arm/xen: Remove helpers which are PV specific
        xen/x86: Don't try to set PCE bit in CR4
        xen/PMU: PMU emulation code
        xen/PMU: Intercept PMU-related MSR and APIC accesses
        xen/PMU: Describe vendor-specific PMU registers
        xen/PMU: Initialization code for Xen PMU
        xen/PMU: Sysfs interface for setting Xen PMU mode
        xen: xensyms support
        xen: remove no longer needed p2m.h
        xen: allow more than 512 GB of RAM for 64 bit pv-domains
        xen: move p2m list if conflicting with e820 map
        xen: add explicit memblock_reserve() calls for special pages
        mm: provide early_memremap_ro to establish read-only mapping
        xen: check for initrd conflicting with e820 map
        xen: check pre-allocated page tables for conflict with memory map
        xen: check for kernel memory conflicting with memory layout
        ...
      752240e7
    • Linus Torvalds's avatar
      Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · b8cb642a
      Linus Torvalds authored
      Pull more irq updates from Thomas Gleixner:
       "The second part of irq related updates:
      
         - Provide EOImode for GIC[V3] irq chips, which is a prerequisite for
           direct interrupt handling in [KVM] guests"
      
      * 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        irqchip/GIC: Fix EOImode setting for non-DT/ACPI systems
        irqchip/GIC: Don't deactivate interrupts forwarded to a guest
        irqchip/GIC: Convert to EOImode == 1
        irqchip/GICv3: Don't deactivate interrupts forwarded to a guest
        irqchip/GICv3: Convert to EOImode == 1
      b8cb642a
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu · 1c8cc72d
      Linus Torvalds authored
      Pull m68k/colfire fixes from Greg Ungerer:
       "Only a couple of patches this time.  One migrating the clock driver
        code to the new set-state interface.  The other cleaning up to use the
        PFN_DOWN macro"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
        m68k/coldfire: use PFN_DOWN macro
        m68k/coldfire/pit: Migrate to new 'set-state' interface
      1c8cc72d
    • Linus Torvalds's avatar
      Merge tag 'ecryptfs-4.3-rc1-stale-dcache' of... · b9ffce9a
      Linus Torvalds authored
      Merge tag 'ecryptfs-4.3-rc1-stale-dcache' of git://git.kernel.org/pub/scm/linux/kernel/git/tyhicks/ecryptfs
      
      Pull ecryptfs fixes from Tyler Hicks:
       "Invalidate stale eCryptfs dcache entries caused by unlinked lower
        inodes"
      
      * tag 'ecryptfs-4.3-rc1-stale-dcache' of git://git.kernel.org/pub/scm/linux/kernel/git/tyhicks/ecryptfs:
        eCryptfs: Delete a check before the function call "key_put"
        eCryptfs: Invalidate dcache entries when lower i_nlink is zero
      b9ffce9a
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 0c8e2f2c
      Linus Torvalds authored
      Pull crypto fix from Herbert Xu:
       "This fixes a memory corruption bug in ghash-clmulni-intel due to
        insufficient memory allocation"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
        crypto: ghash-clmulni: specify context size for ghash async algorithm
      0c8e2f2c
    • Andrea Arcangeli's avatar
      userfaultfd: selftest: update userfaultfd x86 32bit syscall number · 49df2e3e
      Andrea Arcangeli authored
      It changed as result of other syscalls, and while the system call list
      itself was correctly updated, the selftest program was not.
      Signed-off-by: default avatarAndrea Arcangeli <aarcange@redhat.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Stephen Rothwell <sfr@canb.auug.org.au>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Andy Lutomirski <luto@kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      49df2e3e
    • Juergen Gross's avatar
      xen: switch extra memory accounting to use pfns · 626d7508
      Juergen Gross authored
      Instead of using physical addresses for accounting of extra memory
      areas available for ballooning switch to pfns as this is much less
      error prone regarding partial pages.
      Reported-by: default avatarRoger Pau Monné <roger.pau@citrix.com>
      Tested-by: default avatarRoger Pau Monné <roger.pau@citrix.com>
      Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
      Signed-off-by: default avatarDavid Vrabel <david.vrabel@citrix.com>
      626d7508
    • Juergen Gross's avatar
      xen: limit memory to architectural maximum · cb9e444b
      Juergen Gross authored
      When a pv-domain (including dom0) is started it tries to size it's
      p2m list according to the maximum possible memory amount it ever can
      achieve. Limit the initial maximum memory size to the architectural
      limit of the hardware in order to avoid overflows during remapping
      of memory.
      
      This problem will occur when dom0 is started with an initial memory
      size being a multiple of 1GB, but without specifying it's maximum
      memory size. The kernel must be configured without
      CONFIG_XEN_BALLOON_MEMORY_HOTPLUG for the problem to happen.
      Reported-by: default avatarRoger Pau Monné <roger.pau@citrix.com>
      Tested-by: default avatarRoger Pau Monné <roger.pau@citrix.com>
      Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
      Signed-off-by: default avatarDavid Vrabel <david.vrabel@citrix.com>
      cb9e444b
    • Juergen Gross's avatar
      xen: avoid another early crash of memory limited dom0 · ab24507c
      Juergen Gross authored
      Commit b1c9f169047b ("xen: split counting of extra memory pages...")
      introduced an error when dom0 was started with limited memory occurring
      only on some hardware.
      
      The problem arises in case dom0 is started with initial memory and
      maximum memory being the same. The kernel must be configured without
      CONFIG_XEN_BALLOON_MEMORY_HOTPLUG for the problem to happen. If all
      of this is true and the E820 map of the machine is sparse (some areas
      are not covered) then the machine might crash early in the boot
      process.
      
      An example E820 map triggering the problem looks like this:
      
      [    0.000000] e820: BIOS-provided physical RAM map:
      [    0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009d7ff] usable
      [    0.000000] BIOS-e820: [mem 0x000000000009d800-0x000000000009ffff] reserved
      [    0.000000] BIOS-e820: [mem 0x00000000000e0000-0x00000000000fffff] reserved
      [    0.000000] BIOS-e820: [mem 0x0000000000100000-0x00000000cf7fafff] usable
      [    0.000000] BIOS-e820: [mem 0x00000000cf7fb000-0x00000000cf95ffff] reserved
      [    0.000000] BIOS-e820: [mem 0x00000000cf960000-0x00000000cfb62fff] ACPI NVS
      [    0.000000] BIOS-e820: [mem 0x00000000cfb63000-0x00000000cfd14fff] usable
      [    0.000000] BIOS-e820: [mem 0x00000000cfd15000-0x00000000cfd61fff] ACPI NVS
      [    0.000000] BIOS-e820: [mem 0x00000000cfd62000-0x00000000cfd6cfff] ACPI data
      [    0.000000] BIOS-e820: [mem 0x00000000cfd6d000-0x00000000cfd6ffff] ACPI NVS
      [    0.000000] BIOS-e820: [mem 0x00000000cfd70000-0x00000000cfd70fff] usable
      [    0.000000] BIOS-e820: [mem 0x00000000cfd71000-0x00000000cfea8fff] reserved
      [    0.000000] BIOS-e820: [mem 0x00000000cfea9000-0x00000000cfeb9fff] ACPI NVS
      [    0.000000] BIOS-e820: [mem 0x00000000cfeba000-0x00000000cfecafff] reserved
      [    0.000000] BIOS-e820: [mem 0x00000000cfecb000-0x00000000cfecbfff] ACPI NVS
      [    0.000000] BIOS-e820: [mem 0x00000000cfecc000-0x00000000cfedbfff] reserved
      [    0.000000] BIOS-e820: [mem 0x00000000cfedc000-0x00000000cfedcfff] ACPI NVS
      [    0.000000] BIOS-e820: [mem 0x00000000cfedd000-0x00000000cfeddfff] reserved
      [    0.000000] BIOS-e820: [mem 0x00000000cfede000-0x00000000cfee3fff] ACPI NVS
      [    0.000000] BIOS-e820: [mem 0x00000000cfee4000-0x00000000cfef6fff] reserved
      [    0.000000] BIOS-e820: [mem 0x00000000cfef7000-0x00000000cfefffff] usable
      [    0.000000] BIOS-e820: [mem 0x00000000e0000000-0x00000000efffffff] reserved
      [    0.000000] BIOS-e820: [mem 0x00000000fec00000-0x00000000fec00fff] reserved
      [    0.000000] BIOS-e820: [mem 0x00000000fec10000-0x00000000fec10fff] reserved
      [    0.000000] BIOS-e820: [mem 0x00000000fed00000-0x00000000fed00fff] reserved
      [    0.000000] BIOS-e820: [mem 0x00000000fed40000-0x00000000fed44fff] reserved
      [    0.000000] BIOS-e820: [mem 0x00000000fed61000-0x00000000fed70fff] reserved
      [    0.000000] BIOS-e820: [mem 0x00000000fed80000-0x00000000fed8ffff] reserved
      [    0.000000] BIOS-e820: [mem 0x00000000ff000000-0x00000000ffffffff] reserved
      [    0.000000] BIOS-e820: [mem 0x0000000100001000-0x000000020effffff] usable
      
      In this case the area a0000-dffff isn't present in the map. This will
      confuse the memory setup of the domain when remapping the memory from
      such holes to populated areas.
      
      To avoid the problem the accounting of to be remapped memory has to
      count such holes in the E820 map as well.
      Reported-by: default avatarBoris Ostrovsky <boris.ostrovsky@oracle.com>
      Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
      Signed-off-by: default avatarDavid Vrabel <david.vrabel@citrix.com>
      ab24507c
    • Juergen Gross's avatar
      xen: avoid early crash of memory limited dom0 · eafd72e0
      Juergen Gross authored
      Commit b1c9f169047b ("xen: split counting of extra memory pages...")
      introduced an error when dom0 was started with limited memory.
      
      The problem arises in case dom0 is started with initial memory and
      maximum memory being the same and exactly a multiple of 1 GB. The
      kernel must be configured without CONFIG_XEN_BALLOON_MEMORY_HOTPLUG
      for the problem to happen. In this case it will crash very early
      during boot due to the virtual mapped p2m list not being large
      enough to be able to remap any memory:
      
      (XEN) Freed 304kB init memory.
      mapping kernel into physical memory
      about to get started...
      (XEN) traps.c:459:d0v0 Unhandled invalid opcode fault/trap [#6] on VCPU 0 [ec=0000]
      (XEN) domain_crash_sync called from entry.S: fault at ffff82d080229a93 create_bounce_frame+0x12b/0x13a
      (XEN) Domain 0 (vcpu#0) crashed on cpu#0:
      (XEN) ----[ Xen-4.5.2-pre  x86_64  debug=n Not tainted ]----
      (XEN) CPU:    0
      (XEN) RIP:    e033:[<ffffffff81d120cb>]
      (XEN) RFLAGS: 0000000000000206   EM: 1 CONTEXT: pv guest (d0v0)
      (XEN) rax: ffffffff81db2000   rbx: 000000004d000000   rcx: 0000000000000000
      (XEN) rdx: 000000004d000000   rsi: 0000000000063000   rdi: 000000004d063000
      (XEN) rbp: ffffffff81c03d78   rsp: ffffffff81c03d28   r8:  0000000000023000
      (XEN) r9:  00000001040ff000   r10: 0000000000007ff0   r11: 0000000000000000
      (XEN) r12: 0000000000063000   r13: 000000000004d000   r14: 0000000000000063
      (XEN) r15: 0000000000000063   cr0: 0000000080050033   cr4: 00000000000006f0
      (XEN) cr3: 0000000105c0f000   cr2: ffffc90000268000
      (XEN) ds: 0000   es: 0000   fs: 0000   gs: 0000   ss: e02b   cs: e033
      (XEN) Guest stack trace from rsp=ffffffff81c03d28:
      (XEN)   0000000000000000 0000000000000000 ffffffff81d120cb 000000010000e030
      (XEN)   0000000000010006 ffffffff81c03d68 000000000000e02b ffffffffffffffff
      (XEN)   0000000000000063 000000000004d063 ffffffff81c03de8 ffffffff81d130a7
      (XEN)   ffffffff81c03de8 000000000004d000 00000001040ff000 0000000000105db1
      (XEN)   00000001040ff001 000000000004d062 ffff8800092d6ff8 0000000002027000
      (XEN)   ffff8800094d8340 ffff8800092d6ff8 00003ffffffff000 ffff8800092d7ff8
      (XEN)   ffffffff81c03e48 ffffffff81d13c43 ffff8800094d8000 ffff8800094d9000
      (XEN)   0000000000000000 ffff8800092d6000 00000000092d6000 000000004cfbf000
      (XEN)   00000000092d6000 00000000052d5442 0000000000000000 0000000000000000
      (XEN)   ffffffff81c03ed8 ffffffff81d185c1 0000000000000000 0000000000000000
      (XEN)   ffffffff81c03e78 ffffffff810f8ca4 ffffffff81c03ed8 ffffffff8171a15d
      (XEN)   0000000000000010 ffffffff81c03ee8 0000000000000000 0000000000000000
      (XEN)   ffffffff81f0e402 ffffffffffffffff ffffffff81dae900 0000000000000000
      (XEN)   0000000000000000 0000000000000000 ffffffff81c03f28 ffffffff81d0cf0f
      (XEN)   0000000000000000 0000000000000000 0000000000000000 ffffffff81db82e0
      (XEN)   0000000000000000 0000000000000000 0000000000000000 0000000000000000
      (XEN)   ffffffff81c03f38 ffffffff81d0c603 ffffffff81c03ff8 ffffffff81d11c86
      (XEN)   0300000100000032 0000000000000005 0000000000000020 0000000000000000
      (XEN)   0000000000000000 0000000000000000 0000000000000000 0000000000000000
      (XEN)   0000000000000000 0000000000000000 0000000000000000 0000000000000000
      (XEN) Domain 0 crashed: rebooting machine in 5 seconds.
      
      This can be avoided by allocating aneough space for the p2m to cover
      the maximum memory of dom0 plus the identity mapped holes required
      for PCI space, BIOS etc.
      Reported-by: default avatarBoris Ostrovsky <boris.ostrovsky@oracle.com>
      Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
      Signed-off-by: default avatarDavid Vrabel <david.vrabel@citrix.com>
      eafd72e0
  3. 07 Sep, 2015 4 commits
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-4.3-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · 4e4adb2f
      Linus Torvalds authored
      Pull NFS client updates from Trond Myklebust:
       "Highlights include:
      
        Stable patches:
         - Fix atomicity of pNFS commit list updates
         - Fix NFSv4 handling of open(O_CREAT|O_EXCL|O_RDONLY)
         - nfs_set_pgio_error sometimes misses errors
         - Fix a thinko in xs_connect()
         - Fix borkage in _same_data_server_addrs_locked()
         - Fix a NULL pointer dereference of migration recovery ops for v4.2
           client
         - Don't let the ctime override attribute barriers.
         - Revert "NFSv4: Remove incorrect check in can_open_delegated()"
         - Ensure flexfiles pNFS driver updates the inode after write finishes
         - flexfiles must not pollute the attribute cache with attrbutes from
           the DS
         - Fix a protocol error in layoutreturn
         - Fix a protocol issue with NFSv4.1 CLOSE stateids
      
        Bugfixes + cleanups
         - pNFS blocks bugfixes from Christoph
         - Various cleanups from Anna
         - More fixes for delegation corner cases
         - Don't fsync twice for O_SYNC/IS_SYNC files
         - Fix pNFS and flexfiles layoutstats bugs
         - pnfs/flexfiles: avoid duplicate tracking of mirror data
         - pnfs: Fix layoutget/layoutreturn/return-on-close serialisation
           issues
         - pnfs/flexfiles: error handling retries a layoutget before fallback
           to MDS
      
        Features:
         - Full support for the OPEN NFS4_CREATE_EXCLUSIVE4_1 mode from
           Kinglong
         - More RDMA client transport improvements from Chuck
         - Removal of the deprecated ib_reg_phys_mr() and ib_rereg_phys_mr()
           verbs from the SUNRPC, Lustre and core infiniband tree.
         - Optimise away the close-to-open getattr if there is no cached data"
      
      * tag 'nfs-for-4.3-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (108 commits)
        NFSv4: Respect the server imposed limit on how many changes we may cache
        NFSv4: Express delegation limit in units of pages
        Revert "NFS: Make close(2) asynchronous when closing NFS O_DIRECT files"
        NFS: Optimise away the close-to-open getattr if there is no cached data
        NFSv4.1/flexfiles: Clean up ff_layout_write_done_cb/ff_layout_commit_done_cb
        NFSv4.1/flexfiles: Mark the layout for return in ff_layout_io_track_ds_error()
        nfs: Remove unneeded checking of the return value from scnprintf
        nfs: Fix truncated client owner id without proto type
        NFSv4.1/flexfiles: Mark layout for return if the mirrors are invalid
        NFSv4.1/flexfiles: RW layouts are valid only if all mirrors are valid
        NFSv4.1/flexfiles: Fix incorrect usage of pnfs_generic_mark_devid_invalid()
        NFSv4.1/flexfiles: Fix freeing of mirrors
        NFSv4.1/pNFS: Don't request a minimal read layout beyond the end of file
        NFSv4.1/pnfs: Handle LAYOUTGET return values correctly
        NFSv4.1/pnfs: Don't ask for a read layout for an empty file.
        NFSv4.1: Fix a protocol issue with CLOSE stateids
        NFSv4.1/flexfiles: Don't mark the entire deviceid as bad for file errors
        SUNRPC: Prevent SYN+SYNACK+RST storms
        SUNRPC: xs_reset_transport must mark the connection as disconnected
        NFSv4.1/pnfs: Ensure layoutreturn reserves space for the opaque payload
        ...
      4e4adb2f
    • Linus Torvalds's avatar
      Merge tag 'xfs-for-linus-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs · 77a78806
      Linus Torvalds authored
      Pull xfs updates from Dave Chinner:
       "There isn't a whole lot to this update - it's mostly bug fixes and
        they are spread pretty much all over XFS.  There are some corruption
        fixes, some fixes for log recovery, some fixes that prevent unount
        from hanging, a lockdep annotation rework for inode locking to prevent
        false positives and the usual random bunch of cleanups and minor
        improvements.
      
        Deatils:
      
         - large rework of EFI/EFD lifecycle handling to fix log recovery
           corruption issues, crashes and unmount hangs
      
         - separate metadata UUID on disk to enable changing boot label UUID
           for v5 filesystems
      
         - fixes for gcc miscompilation on certain platforms and optimisation
           levels
      
         - remote attribute allocation and recovery corruption fixes
      
         - inode lockdep annotation rework to fix bugs with too many
           subclasses
      
         - directory inode locking changes to prevent lockdep false positives
      
         - a handful of minor corruption fixes
      
         - various other small cleanups and bug fixes"
      
      * tag 'xfs-for-linus-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs: (42 commits)
        xfs: fix error gotos in xfs_setattr_nonsize
        xfs: add mssing inode cache attempts counter increment
        xfs: return errors from partial I/O failures to files
        libxfs: bad magic number should set da block buffer error
        xfs: fix non-debug build warnings
        xfs: collapse allocsize and biosize mount option handling
        xfs: Fix file type directory corruption for btree directories
        xfs: lockdep annotations throw warnings on non-debug builds
        xfs: Fix uninitialized return value in xfs_alloc_fix_freelist()
        xfs: inode lockdep annotations broke non-lockdep build
        xfs: flush entire file on dio read/write to cached file
        xfs: Fix xfs_attr_leafblock definition
        libxfs: readahead of dir3 data blocks should use the read verifier
        xfs: stop holding ILOCK over filldir callbacks
        xfs: clean up inode lockdep annotations
        xfs: swap leaf buffer into path struct atomically during path shift
        xfs: relocate sparse inode mount warning
        xfs: dquots should be stamped with sb_meta_uuid
        xfs: log recovery needs to validate against sb_meta_uuid
        xfs: growfs not aware of sb_meta_uuid
        ...
      77a78806
    • Trond Myklebust's avatar
      NFSv4: Respect the server imposed limit on how many changes we may cache · 5445b1fb
      Trond Myklebust authored
      The NFSv4 delegation spec allows the server to tell a client to limit how
      much data it cache after the file is closed. In return, the server
      guarantees enough free space to avoid ENOSPC situations, etc.
      Prior to this patch, we assumed we could always cache aggressively after
      close. Unfortunately, this causes problems with servers that set the
      limit to 0 and therefore do not offer any ENOSPC guarantees.
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      5445b1fb
    • Trond Myklebust's avatar
      NFSv4: Express delegation limit in units of pages · 7d160a6c
      Trond Myklebust authored
      Since we're tracking modifications to the page cache on a per-page
      basis, it makes sense to express the limit to how much we may cache
      in units of pages.
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      7d160a6c
  4. 06 Sep, 2015 6 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 7d9071a0
      Linus Torvalds authored
      Pull vfs updates from Al Viro:
       "In this one:
      
         - d_move fixes (Eric Biederman)
      
         - UFS fixes (me; locking is mostly sane now, a bunch of bugs in error
           handling ought to be fixed)
      
         - switch of sb_writers to percpu rwsem (Oleg Nesterov)
      
         - superblock scalability (Josef Bacik and Dave Chinner)
      
         - swapon(2) race fix (Hugh Dickins)"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (65 commits)
        vfs: Test for and handle paths that are unreachable from their mnt_root
        dcache: Reduce the scope of i_lock in d_splice_alias
        dcache: Handle escaped paths in prepend_path
        mm: fix potential data race in SyS_swapon
        inode: don't softlockup when evicting inodes
        inode: rename i_wb_list to i_io_list
        sync: serialise per-superblock sync operations
        inode: convert inode_sb_list_lock to per-sb
        inode: add hlist_fake to avoid the inode hash lock in evict
        writeback: plug writeback at a high level
        change sb_writers to use percpu_rw_semaphore
        shift percpu_counter_destroy() into destroy_super_work()
        percpu-rwsem: kill CONFIG_PERCPU_RWSEM
        percpu-rwsem: introduce percpu_rwsem_release() and percpu_rwsem_acquire()
        percpu-rwsem: introduce percpu_down_read_trylock()
        document rwsem_release() in sb_wait_write()
        fix the broken lockdep logic in __sb_start_write()
        introduce __sb_writers_{acquired,release}() helpers
        ufs_inode_get{frag,block}(): get rid of 'phys' argument
        ufs_getfrag_block(): tidy up a bit
        ...
      7d9071a0
    • Linus Torvalds's avatar
      Merge tag 'for-linus-4.3-merge-window-part-1' of... · bd779669
      Linus Torvalds authored
      Merge tag 'for-linus-4.3-merge-window-part-1' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs
      
      Pull 9p updates from Eric Van Hensbergen:
       "Just a few cleanups for 4.3 merge window for the 9p file system.  I've
        gotten several more over the past week, but this group has been in
        for-next for at least a couple of weeks so I figured I'd push them
        first while I test the rest.
      
        Most of the ones not in this set are bug-fixes anyways so I could hold
        them for rc1"
      
      * tag 'for-linus-4.3-merge-window-part-1' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:
        9p: fix return code of read() when count is 0
        9p: remove unused option Opt_trans
      bd779669
    • Linus Torvalds's avatar
      Merge tag 'media/v4.3-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · 9cfcc658
      Linus Torvalds authored
      Pull media updates from Mauro Carvalho Chehab:
       - new DVB frontend drivers: ascot2e, cxd2841er, horus3a, lnbh25
       - new HDMI capture driver: tc358743
       - new driver for NetUP DVB new boards (netup_unidvb)
       - IR support for DVBSky cards (smipcie-ir)
       - Coda driver has gain macroblock tiling support
       - Renesas R-Car gains JPEG codec driver
       - new DVB platform driver for STi boards: c8sectpfe
       - added documentation for the media core kABI to device-drivers DocBook
       - lots of driver fixups, cleanups and improvements
      
      * tag 'media/v4.3-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (297 commits)
        [media] c8sectpfe: Remove select on undefined LIBELF_32
        [media] i2c: fix platform_no_drv_owner.cocci warnings
        [media] cx231xx: Use wake_up_interruptible() instead of wake_up_interruptible_nr()
        [media] tc358743: only queue subdev notifications if devnode is set
        [media] tc358743: add missing Kconfig dependency/select
        [media] c8sectpfe: Use %pad to print 'dma_addr_t'
        [media] DocBook media: Fix typo "the the" in xml files
        [media] tc358743: make reset gpio optional
        [media] tc358743: set direction of reset gpio using devm_gpiod_get
        [media] dvbdev: document most of the functions/data structs
        [media] dvb_frontend.h: document the struct dvb_frontend
        [media] dvb-frontend.h: document struct dtv_frontend_properties
        [media] dvb-frontend.h: document struct dvb_frontend_ops
        [media] dvb: Use DVBFE_ALGO_HW where applicable
        [media] dvb_frontend.h: document struct analog_demod_ops
        [media] dvb_frontend.h: Document struct dvb_tuner_ops
        [media] Docbook: Document struct analog_parameters
        [media] dvb_frontend.h: get rid of dvbfe_modcod
        [media] add documentation for struct dvb_tuner_info
        [media] dvb_frontend: document dvb_frontend_tune_settings
        ...
      9cfcc658
    • Linus Torvalds's avatar
      Merge branch 'mailbox-for-next' of git://git.linaro.org/landing-teams/working/fujitsu/integration · e3a98ac4
      Linus Torvalds authored
      Pull mailbox updates from Jassi Brar:
       "Mainly we move from jiffy based timer to HRTIMER for finer control
        over polling.  Then a controller reduces its polling period from 10 to
        1ms"
      
      * 'mailbox-for-next' of git://git.linaro.org/landing-teams/working/fujitsu/integration:
        mailbox: arm_mhu: reduce txpoll_period from 10ms to 1 ms
        mailbox: switch to hrtimer for tx_complete polling
        mailbox: Drop owner assignment from platform_driver
      e3a98ac4
    • Linus Torvalds's avatar
      Merge tag 'md/4.3' of git://neil.brown.name/md · 2a013e37
      Linus Torvalds authored
      Pull md updates from Neil Brown:
      
       - an assortment of little fixes, several for minor races only likely to
         be hit during testing
      
       - further cluster-md-raid1 development, not ready for real use yet.
      
       - new RAID6 syndrome code for ARM NEON
      
       - fix a race where a write can return before failure of one device is
         properly recorded in metadata, so an immediate crash might result in
         that write being lost.
      
      * tag 'md/4.3' of git://neil.brown.name/md: (33 commits)
        md/raid5: ensure device failure recorded before write request returns.
        md/raid5: use bio_list for the list of bios to return.
        md/raid10: ensure device failure recorded before write request returns.
        md/raid1: ensure device failure recorded before write request returns.
        md-cluster: remove inappropriate try_module_get from join()
        md: extend spinlock protection in register_md_cluster_operations
        md-cluster: Read the disk bitmap sb and check if it needs recovery
        md-cluster: only call complete(&cinfo->completion) when node join cluster
        md-cluster: add missed lockres_free
        md-cluster: remove the unused sb_lock
        md-cluster: init suspend_list and suspend_lock early in join
        md-cluster: add the error check if failed to get dlm lock
        md-cluster: init completion within lockres_init
        md-cluster: fix deadlock issue on message lock
        md-cluster: transfer the resync ownership to another node
        md-cluster: split recover_slot for future code reuse
        md-cluster: use %pU to print UUIDs
        md: setup safemode_timer before it's being used
        md/raid5: handle possible race as reshape completes.
        md: sync sync_completed has correct value as recovery finishes.
        ...
      2a013e37
    • Linus Torvalds's avatar
      Merge tag 'nfsd-4.3' of git://linux-nfs.org/~bfields/linux · 17447717
      Linus Torvalds authored
      Pull nfsd updates from Bruce Fields:
       "Nothing major, but:
      
         - Add Jeff Layton as an nfsd co-maintainer: no change to existing
           practice, just an acknowledgement of the status quo.
      
         - Two patches ("nfsd: ensure that...") for a race overlooked by the
           state locking rewrite, causing a crash noticed by multiple users.
      
         - Lots of smaller bugfixes all over from Kinglong Mee.
      
         - From Jeff, some cleanup of server rpc code in preparation for
           possible shift of nfsd threads to workqueues"
      
      * tag 'nfsd-4.3' of git://linux-nfs.org/~bfields/linux: (52 commits)
        nfsd: deal with DELEGRETURN racing with CB_RECALL
        nfsd: return CLID_INUSE for unexpected SETCLIENTID_CONFIRM case
        nfsd: ensure that delegation stateid hash references are only put once
        nfsd: ensure that the ol stateid hash reference is only put once
        net: sunrpc: fix tracepoint Warning: unknown op '->'
        nfsd: allow more than one laundry job to run at a time
        nfsd: don't WARN/backtrace for invalid container deployment.
        fs: fix fs/locks.c kernel-doc warning
        nfsd: Add Jeff Layton as co-maintainer
        NFSD: Return word2 bitmask if setting security label in OPEN/CREATE
        NFSD: Set the attributes used to store the verifier for EXCLUSIVE4_1
        nfsd: SUPPATTR_EXCLCREAT must be encoded before SECURITY_LABEL.
        nfsd: Fix an FS_LAYOUT_TYPES/LAYOUT_TYPES encode bug
        NFSD: Store parent's stat in a separate value
        nfsd: Fix two typos in comments
        lockd: NLM grace period shouldn't block NFSv4 opens
        nfsd: include linux/nfs4.h in export.h
        sunrpc: Switch to using hash list instead single list
        sunrpc/nfsd: Remove redundant code by exports seq_operations functions
        sunrpc: Store cache_detail in seq_file's private directly
        ...
      17447717
  5. 05 Sep, 2015 4 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · 22365979
      Linus Torvalds authored
      Pull btrfs updates from Chris Mason:
       "This has Jeff Mahoney's long standing trim patch that fixes corners
        where trims were missing.  Omar has some raid5/6 fixes, especially for
        using scrub and device replace when devices are missing.
      
        Zhao Lie continues cleaning and fixing things, this series fixes some
        really hard to hit corners in xfstests.  I had to pull it last merge
        window due to some deadlocks, but those are now resolved.
      
        I added support for Tejun's new blkio controllers.  It seems to work
        well for single devices, we'll expand to multi-device as well"
      
      * 'for-linus-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (47 commits)
        btrfs: fix compile when block cgroups are not enabled
        Btrfs: fix file read corruption after extent cloning and fsync
        Btrfs: check if previous transaction aborted to avoid fs corruption
        btrfs: use __GFP_NOFAIL in alloc_btrfs_bio
        btrfs: Prevent from early transaction abort
        btrfs: Remove unused arguments in tree-log.c
        btrfs: Remove useless condition in start_log_trans()
        Btrfs: add support for blkio controllers
        Btrfs: remove unused mutex from struct 'btrfs_fs_info'
        Btrfs: fix parity scrub of RAID 5/6 with missing device
        Btrfs: fix device replace of a missing RAID 5/6 device
        Btrfs: add RAID 5/6 BTRFS_RBIO_REBUILD_MISSING operation
        Btrfs: count devices correctly in readahead during RAID 5/6 replace
        Btrfs: remove misleading handling of missing device scrub
        btrfs: fix clone / extent-same deadlocks
        Btrfs: fix defrag to merge tail file extent
        Btrfs: fix warning in backref walking
        btrfs: Add WARN_ON() for double lock in btrfs_tree_lock()
        btrfs: Remove root argument in extent_data_ref_count()
        btrfs: Fix wrong comment of btrfs_alloc_tree_block()
        ...
      22365979
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · 6c0f568e
      Linus Torvalds authored
      Merge patch-bomb from Andrew Morton:
      
       - a few misc things
      
       - Andy's "ambient capabilities"
      
       - fs/nofity updates
      
       - the ocfs2 queue
      
       - kernel/watchdog.c updates and feature work.
      
       - some of MM.  Includes Andrea's userfaultfd feature.
      
      [ Hadn't noticed that userfaultfd was 'default y' when applying the
        patches, so that got fixed in this merge instead.  We do _not_ mark
        new features that nobody uses yet 'default y'   - Linus ]
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (118 commits)
        mm/hugetlb.c: make vma_has_reserves() return bool
        mm/madvise.c: make madvise_behaviour_valid() return bool
        mm/memory.c: make tlb_next_batch() return bool
        mm/dmapool.c: change is_page_busy() return from int to bool
        mm: remove struct node_active_region
        mremap: simplify the "overlap" check in mremap_to()
        mremap: don't do uneccesary checks if new_len == old_len
        mremap: don't do mm_populate(new_addr) on failure
        mm: move ->mremap() from file_operations to vm_operations_struct
        mremap: don't leak new_vma if f_op->mremap() fails
        mm/hugetlb.c: make vma_shareable() return bool
        mm: make GUP handle pfn mapping unless FOLL_GET is requested
        mm: fix status code which move_pages() returns for zero page
        mm: memcontrol: bring back the VM_BUG_ON() in mem_cgroup_swapout()
        genalloc: add support of multiple gen_pools per device
        genalloc: add name arg to gen_pool_get() and devm_gen_pool_create()
        mm/memblock: WARN_ON when nid differs from overlap region
        Documentation/features/vm: add feature description and arch support status for batched TLB flush after unmap
        mm: defer flush of writable TLB entries
        mm: send one IPI per CPU to TLB flush all entries after unmapping pages
        ...
      6c0f568e
    • Eric Dumazet's avatar
      task_work: remove fifo ordering guarantee · c8219906
      Eric Dumazet authored
      In commit f341861f ("task_work: add a scheduling point in
      task_work_run()") I fixed a latency problem adding a cond_resched()
      call.
      
      Later, commit ac3d0da8 added yet another loop to reverse a list,
      bringing back the latency spike :
      
      I've seen in some cases this loop taking 275 ms, if for example a
      process with 2,000,000 files is killed.
      
      We could add yet another cond_resched() in the reverse loop, or we
      can simply remove the reversal, as I do not think anything
      would depend on order of task_work_add() submitted works.
      
      Fixes: ac3d0da8 ("task_work: Make task_work_add() lockless")
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Reported-by: default avatarMaciej Żenczykowski <maze@google.com>
      Acked-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      c8219906
    • Mitja Spes's avatar
      rtc: abx80x: fix RTC write bit · 5f1b2f77
      Mitja Spes authored
      Fix RTC write bit as per application manual
      
      Cc: stable@vger.kernel.org # 4.1+
      Signed-off-by: default avatarMitja Spes <mitja@lxnav.com>
      Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@free-electrons.com>
      5f1b2f77