Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Apr 18, 2015
  1. Merge branch 'x86-pmem-for-linus' of git://git.kernel.org/pub/scm/lin…

    authored
    …ux/kernel/git/tip/tip
    
    Pull PMEM driver from Ingo Molnar:
     "This is the initial support for the pmem block device driver:
      persistent non-volatile memory space mapped into the system's physical
      memory space as large physical memory regions.
    
      The driver is based on Intel code, written by Ross Zwisler, with fixes
      by Boaz Harrosh, integrated with x86 e820 memory resource management
      and tidied up by Christoph Hellwig.
    
      Note that there were two other separate pmem driver submissions to
      lkml: but apparently all parties (Ross Zwisler, Boaz Harrosh) are
      reasonably happy with this initial version.
    
      This version enables minimal support that enables persistent memory
      devices out in the wild to work as block devices, identified through a
      magic (non-standard) e820 flag and auto-discovered if
      CONFIG_X86_PMEM_LEGACY=y, or added explicitly through manipulating the
      memory maps via the "memmap=..." boot option with the new, special '!'
      modifier character.
    
      Limitations: this is a regular block device, and since the pmem areas
      are not struct page backed, they are invisible to the rest of the
      system (other than the block IO device), so direct IO to/from pmem
      areas, direct mmap() or XIP is not possible yet.  The page cache will
      also shadow and double buffer pmem contents, etc.
    
      Initial support is for x86"
    
    * 'x86-pmem-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      drivers/block/pmem: Fix 32-bit build warning in pmem_alloc()
      drivers/block/pmem: Add a driver for persistent memory
      x86/mm: Add support for the non-standard protected e820 type
  2. Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/l…

    authored
    …inux/kernel/git/tip/tip
    
    Pull x86 fixes from Ingo Molnar:
     "This tree includes:
    
       - an FPU related crash fix
    
       - a ptrace fix (with matching testcase in tools/testing/selftests/)
    
       - an x86 Kconfig DMA-config defaults tweak to better avoid
         non-working drivers"
    
    * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      config: Enable NEED_DMA_MAP_STATE by default when SWIOTLB is selected
      x86/fpu: Load xsave pointer *after* initialization
      x86/ptrace: Fix the TIF_FORCED_TF logic in handle_signal()
      x86, selftests: Add single_step_syscall test
  3. Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/…

    authored
    …linux/kernel/git/tip/tip
    
    Pull perf updates from Ingo Molnar:
     "This update has mostly fixes, but also other bits:
    
       - perf tooling fixes
    
       - PMU driver fixes
    
       - Intel Broadwell PMU driver HW-enablement for LBR callstacks
    
       - a late coming 'perf kmem' tool update that enables it to also
         analyze page allocation data.  Note, this comes with MM tracepoint
         changes that we believe to not break anything: because it changes
         the formerly opaque 'struct page *' field that uniquely identifies
         pages to 'pfn' which identifies pages uniquely too, but isn't as
         opaque and can be used for other purposes as well"
    
    * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      perf/x86/intel/pt: Fix and clean up error handling in pt_event_add()
      perf/x86/intel: Add Broadwell support for the LBR callstack
      perf/x86/intel/rapl: Fix energy counter measurements but supporing per domain energy units
      perf/x86/intel: Fix Core2,Atom,NHM,WSM cycles:pp events
      perf/x86: Fix hw_perf_event::flags collision
      perf probe: Fix segfault when probe with lazy_line to file
      perf probe: Find compilation directory path for lazy matching
      perf probe: Set retprobe flag when probe in address-based alternative mode
      perf kmem: Analyze page allocator events also
      tracing, mm: Record pfn instead of pointer to struct page
  4. Merge branch 'locking-urgent-for-linus' of git://git.kernel.org/pub/s…

    authored
    …cm/linux/kernel/git/tip/tip
    
    Pull locking fixes from Ingo Molnar:
     "Two fixes: an smp-call fix and a lockdep fix"
    
    * 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      smp: Fix smp_call_function_single_async() locking
      lockdep: Make print_lock() robust against concurrent release
  5. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    authored
    …/git/ebiederm/user-namespace
    
    Pull usernamespace mount fixes from Eric Biederman:
     "Way back in October Andrey Vagin reported that umount(MNT_DETACH)
      could be used to defeat MNT_LOCKED.  As I worked to fix this I
      discovered that combined with mount propagation and an appropriate
      selection of shared subtrees a reference to a directory on an
      unmounted filesystem is not necessary.
    
      That MNT_DETACH is allowed in user namespace in a form that can break
      MNT_LOCKED comes from my early misunderstanding what MNT_DETACH does.
    
      To avoid breaking existing userspace the conflict between MNT_DETACH
      and MNT_LOCKED is fixed by leaving mounts that are locked to their
      parents in the mount hash table until the last reference goes away.
    
      While investigating this issue I also found an issue with
      __detach_mounts.  The code was unnecessarily and incorrectly
      triggering mount propagation.  Resulting in too many mounts going away
      when a directory is deleted, and too many cpu cycles are burned while
      doing that.
    
      Looking some more I realized that __detach_mounts by only keeping
      mounts connected that were MNT_LOCKED it had the potential to still
      leak information so I tweaked the code to keep everything locked
      together that possibly could be.
    
      This code was almost ready last cycle but Al invented fs_pin which
      slightly simplifies this code but required rewrites and retesting, and
      I have not been in top form for a while so it took me a while to get
      all of that done.  Similiarly this pull request is late because I have
      been feeling absolutely miserable all week.
    
      The issue of being able to escape a bind mount has not yet been
      addressed, as the fixes are not yet mature"
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
      mnt: Update detach_mounts to leave mounts connected
      mnt: Fix the error check in __detach_mounts
      mnt: Honor MNT_LOCKED when detaching mounts
      fs_pin: Allow for the possibility that m_list or s_list go unused.
      mnt: Factor umount_mnt from umount_tree
      mnt: Factor out unhash_mnt from detach_mnt and umount_tree
      mnt: Fail collect_mounts when applied to unmounted mounts
      mnt: Don't propagate unmounts to locked mounts
      mnt: On an unmount propagate clearing of MNT_LOCKED
      mnt: Delay removal from the mount hash.
      mnt: Add MNT_UMOUNT flag
      mnt: In umount_tree reuse mnt_list instead of mnt_hash
      mnt: Don't propagate umounts in __detach_mounts
      mnt: Improve the umount_tree flags
      mnt: Use hlist_move_list in namespace_unlock
  6. Merge tag 'for-f2fs-4.1' of git://git.kernel.org/pub/scm/linux/kernel…

    authored
    …/git/jaegeuk/f2fs
    
    Pull f2fs updates from Jaegeuk Kim:
     "New features:
       - in-memory extent_cache
       - fs_shutdown to test power-off-recovery
       - use inline_data to store symlink path
       - show f2fs as a non-misc filesystem
    
      Major fixes:
       - avoid CPU stalls on sync_dirty_dir_inodes
       - fix some power-off-recovery procedure
       - fix handling of broken symlink correctly
       - fix missing dot and dotdot made by sudden power cuts
       - handle wrong data index during roll-forward recovery
       - preallocate data blocks for direct_io
    
      ... and a bunch of minor bug fixes and cleanups"
    
    * tag 'for-f2fs-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (71 commits)
      f2fs: pass checkpoint reason on roll-forward recovery
      f2fs: avoid abnormal behavior on broken symlink
      f2fs: flush symlink path to avoid broken symlink after POR
      f2fs: change 0 to false for bool type
      f2fs: do not recover wrong data index
      f2fs: do not increase link count during recovery
      f2fs: assign parent's i_mode for empty dir
      f2fs: add F2FS_INLINE_DOTS to recover missing dot dentries
      f2fs: fix mismatching lock and unlock pages for roll-forward recovery
      f2fs: fix sparse warnings
      f2fs: limit b_size of mapped bh in f2fs_map_bh
      f2fs: persist system.advise into on-disk inode
      f2fs: avoid NULL pointer dereference in f2fs_xattr_advise_get
      f2fs: preallocate fallocated blocks for direct IO
      f2fs: enable inline data by default
      f2fs: preserve extent info for extent cache
      f2fs: initialize extent tree with on-disk extent info of inode
      f2fs: introduce __{find,grab}_extent_tree
      f2fs: split set_data_blkaddr from f2fs_update_extent_cache
      f2fs: enable fast symlink by utilizing inline data
      ...
  7. Merge tag 'docs-for-linus' of git://git.lwn.net/linux-2.6

    authored
    Pull documentation updates from Jonathan Corbet:
     "Numerous fixes, the overdue removal of the i2o docs, some new Chinese
      translations, and, hopefully, the README fix that will end the flow of
      identical patches to that file"
    
    * tag 'docs-for-linus' of git://git.lwn.net/linux-2.6: (34 commits)
      Documentation/memcg: update memcg/kmem status
      Documentation: blackfin: Makefile: Typo building issue
      Documentation/vm/pagemap.txt: correct location of page-types tool
      Documentation/memory-barriers.txt: typo fix
      doc: Add guest_nice column to example output of `cat /proc/stat'
      Documentation/kernel-parameters: Move "eagerfpu" to its right place
      Documentation: gpio: Update ACPI part of the document to mention _DSD
      docs/completion.txt: Various tweaks and corrections
      doc: completion: context, scope and language fixes
      Documentation:Update Documentation/zh_CN/arm64/memory.txt
      Documentation:Update Documentation/zh_CN/arm64/booting.txt
      Documentation: Chinese translation of arm64/legacy_instructions.txt
      DocBook media: fix broken EIA hyperlink
      Documentation: tweak the maintainers entry
      README: Change gzip/bzip2 to xz compression format
      README: Update version number reference
      doc:pci: Fix typo in Documentation/PCI
      Documentation: drm: Use '->' when describing access through pointers.
      Documentation: Remove mentioning of block barriers
      Documentation/email-clients.txt: Fix one grammar mistake, add extra info about TB
      ...
  8. @holtmann

    Bluetooth: hidp: Fix regression with older userspace and flags valida…

    holtmann authored committed
    …tion
    
    While it is not used by newer userspace anymore, the older userspace was
    utilizing HIDP_VIRTUAL_CABLE_UNPLUG and HIDP_BOOT_PROTOCOL_MODE flags
    when adding a new HIDP connection.
    
    The flags validation is important, but we can not break older userspace
    and with that allow providing these flags even if newer userspace does
    not use them anymore.
    
    Reported-and-tested-by: Jörg Otte <jrg.otte@gmail.com>
    Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  9. config: Enable NEED_DMA_MAP_STATE by default when SWIOTLB is selected

    Konrad Rzeszutek Wilk authored Ingo Molnar committed
    A huge amount of NIC drivers use the DMA API, however if
    compiled under 32-bit an very important part of the DMA API can
    be ommitted leading to the drivers not working at all
    (especially if used with 'swiotlb=force iommu=soft').
    
    As Prashant Sreedharan explains it: "the driver [tg3] uses
    DEFINE_DMA_UNMAP_ADDR(), dma_unmap_addr_set() to keep a copy of
    the dma "mapping" and dma_unmap_addr() to get the "mapping"
    value. On most of the platforms this is a no-op, but ... with
    "iommu=soft and swiotlb=force" this house keeping is required,
    ... otherwise we pass 0 while calling pci_unmap_/pci_dma_sync_
    instead of the DMA address."
    
    As such enable this even when using 32-bit kernels.
    
    Reported-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
    Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
    Acked-by: David S. Miller <davem@davemloft.net>
    Acked-by: Prashant Sreedharan <prashant@broadcom.com>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: H. Peter Anvin <hpa@zytor.com>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Michael Chan <mchan@broadcom.com>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: boris.ostrovsky@oracle.com
    Cc: cascardo@linux.vnet.ibm.com
    Cc: david.vrabel@citrix.com
    Cc: sanjeevb@broadcom.com
    Cc: siva.kallam@broadcom.com
    Cc: vyasevich@gmail.com
    Cc: xen-devel@lists.xensource.com
    Link: http://lkml.kernel.org/r/20150417190448.GA9462@l.oracle.com
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
  10. Merge tag 'devicetree-for-linus' of git://git.kernel.org/pub/scm/linu…

    authored
    …x/kernel/git/glikely/linux
    
    Pull devicetree changes from Grant Likely:
     "Here are the devicetree changes queued up for v4.1.  Nothing really
      exciting here.  Rob has another few commits for big-endian attached
      UARTs, but those will be sent in a separate merge request since they
      haven't been as thoroughly tested as this batch.
    
      Here are the highlights:
    
       - lots of unittest cleanup from Frank Rowand
    
       - bugfixes and updates to the of_graph code
    
       - tighten up of_get_mac_address() code
    
       - documentation updates"
    
    * tag 'devicetree-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/glikely/linux:
      of/unittest: Fix of_platform_depopulate test case
      of/unittest: early return from test skips tests
      of/unittest: breadcrumbs to reduce pain of future maintainers
      of/unittest: reduce checkpatch noise - line after declarations
      of/unittest: typo in error string
      of/unittest: add const where needed
      of_net: factor out repetitive code from of_get_mac_address()
      drivers/of: Add empty ranges quirk for PA-Semi
      of: Allow selection of OF_DYNAMIC and OF_OVERLAY if OF_UNITTEST
      of: Empty node & property flag accessors when !OF
      of: Explicitly include linux/types.h in of_graph.h
      dt-bindings: brcm: rationalize Broadcom documentation naming
      of/unittest: replace 'selftest' with 'unittest'
      Documentation: rename of_selftest.txt to of_unittest.txt
      Documentation: update the of_selftest.txt
      dt: OF_UNITTEST make dependency broken
      MAINTAINERS: Pantelis Antoniou device tree overlay maintainer
      of: Add of_graph_get_port_by_id function
      of: Add for_each_endpoint_of_node helper macro
      of: Decrement refcount of previous endpoint in of_graph_get_next_endpoint
  11. Merge tag 'gpio-v4.1-1' of git://git.kernel.org/pub/scm/linux/kernel/…

    authored
    …git/linusw/linux-gpio
    
    Pull GPIO updates from Linus Walleij:
     "This is the bulk of GPIO changes for the v4.1 development cycle:
    
       - A new GPIO hogging mechanism has been added.  This can be used on
         boards that want to drive some GPIO line high, low, or set it as
         input on boot and then never touch it again.  For some embedded
         systems this is bliss and simplifies things to a great extent.
    
       - Some API cleanup and closure: gpiod_get_array() and
         gpiod_put_array() has been added to get and put GPIOs in bulk as
         was possible with the non-descriptor API.
    
       - Encapsulate cross-calls to the pin control subsystem in
         <linux/gpio/driver.h>.  Now this should be the only header any GPIO
         driver needs to include or something is wrong.  Cleanups
         restricting drivers to this include are welcomed if tested.
    
       - Sort the GPIO Kconfig and split it into submenus, as it was
         becoming and unstructured, illogical and unnavigatable mess.  I
         hope this is easier to follow.  Menus that require a certain
         subsystem like I2C can now be hidden nicely for example, still
         working on others.
    
       - New drivers:
    
           - New driver for the Altera Soft GPIO.
    
           - The F7188x driver now handles the F71869 and F71869A variants.
    
           - The MIPS Loongson driver has been moved to drivers/gpio for
             consolidation and cleanup.
    
       - Cleanups:
    
           - The MAX732x is converted to use the GPIOLIB_IRQCHIP
             infrastructure.
    
           - The PCF857x is converted to use the GPIOLIB_IRQCHIP
             infrastructure.
    
           - Radical cleanup of the OMAP driver.
    
       - Misc:
    
           - Enable the DWAPB GPIO for all architectures.  This is a "hard
             IP" block from Synopsys which has started to turn up in so
             diverse architectures as X86 Quark, ARC and a slew of ARM
             systems.  So even though it's not an expander, it's generic
             enough to be available for all.
    
           - We add a mock GPIO on Crystalcove PMIC after a long discussion
             with Daniel Vetter et al, tracing back to the shootout at the
             kernel summit where DRM drivers and sub-componentization was
             discussed.  In this case a mock GPIO is assumed to be the best
             compromise gaining some reuse of infrastructure without making
             DRM drivers overly complex at the same time.  Let's see"
    
    * tag 'gpio-v4.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (62 commits)
      Revert "gpio: sch: use uapi/linux/pci_ids.h directly"
      gpio: dwapb: remove dependencies
      gpio: dwapb: enable for ARC
      gpio: removing kfree remove functionality
      gpio: mvebu: Fix mask/unmask managment per irq chip type
      gpio: split GPIO drivers in submenus
      gpio: move MFD GPIO drivers under their own comment
      gpio: move BCM Kona Kconfig option
      gpio: arrange SPI Kconfig symbols alphabetically
      gpio: arrange PCI GPIO controllers alphabetically
      gpio: arrange I2C Kconfig symbols alphabetically
      gpio: arrange Kconfig symbols alphabetically
      gpio: ich: Implement get_direction function
      gpio: use (!foo) instead of (foo == NULL)
      gpio: arizona: drop owner assignment from platform_drivers
      gpio: max7300: remove 'ret' variable
      gpio: use devm_kzalloc
      gpio: sch: use uapi/linux/pci_ids.h directly
      gpio: x-gene: fix devm_ioremap_resource() check
      gpio: loongson: Add Loongson-3A/3B GPIO driver support
      ...
  12. Merge branch 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/ker…

    authored
    …nel/git/wsa/linux
    
    Pull i2c fixes from Wolfram Sang:
     "Two buildfixes for I2C based on your tree from the day before
      yesterday.  Sadly, these build errors never reached me while the
      patches were sitting in -next.  Need to fix that"
    
    * 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
      i2c: core: Export bus recovery functions
      i2c: jz4780: Fix build for m68k and sparc64
  13. Merge tag 'dm-4.1-changes' of git://git.kernel.org/pub/scm/linux/kern…

    authored
    …el/git/device-mapper/linux-dm
    
    Pull device mapper updates from Mike Snitzer:
    
     - the most extensive changes this cycle are the DM core improvements to
       add full blk-mq support to request-based DM.
    
        - disabled by default but user can opt-in with CONFIG_DM_MQ_DEFAULT
        - depends on some blk-mq changes from Jens' for-4.1/core branch so
          that explains why this pull is built on linux-block.git
    
     - update DM to use name_to_dev_t() rather than open-coding a less
       capable device parser.
    
        - includes a couple small improvements to name_to_dev_t() that offer
          stricter constraints that DM's code provided.
    
     - improvements to the dm-cache "mq" cache replacement policy.
    
     - a DM crypt crypt_ctr() error path fix and an async crypto deadlock
       fix
    
     - a small efficiency improvement for DM crypt decryption by leveraging
       immutable biovecs
    
     - add error handling modes for corrupted blocks to DM verity
    
     - a new "log-writes" DM target from Josef Bacik that is meant for file
       system developers to test file system integrity at particular points
       in the life of a file system
    
     - a few DM log userspace cleanups and fixes
    
     - a few Documentation fixes (for thin, cache, crypt and switch)
    
    * tag 'dm-4.1-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm: (34 commits)
      dm crypt: fix missing error code return from crypt_ctr error path
      dm crypt: fix deadlock when async crypto algorithm returns -EBUSY
      dm crypt: leverage immutable biovecs when decrypting on read
      dm crypt: update URLs to new cryptsetup project page
      dm: add log writes target
      dm table: use bool function return values of true/false not 1/0
      dm verity: add error handling modes for corrupted blocks
      dm thin: remove stale 'trim' message documentation
      dm delay: use msecs_to_jiffies for time conversion
      dm log userspace base: fix compile warning
      dm log userspace transfer: match wait_for_completion_timeout return type
      dm table: fall back to getting device using name_to_dev_t()
      init: stricter checking of major:minor root= values
      init: export name_to_dev_t and mark name argument as const
      dm: add 'use_blk_mq' module param and expose in per-device ro sysfs attr
      dm: optimize dm_mq_queue_rq to _not_ use kthread if using pure blk-mq
      dm: add full blk-mq support to request-based DM
      dm: impose configurable deadline for dm_request_fn's merge heuristic
      dm sysfs: introduce ability to add writable attributes
      dm: don't start current request if it would've merged with the previous
      ...
  14. perf/x86/intel/pt: Fix and clean up error handling in pt_event_add()

    Ingo Molnar authored
    Dan Carpenter reported that pt_event_add() has buggy
    error handling logic: it returns 0 instead of -EBUSY when
    it fails to start a newly added event.
    
    Furthermore, the control flow in this function is messy,
    with cleanup labels mixed with direct returns.
    
    Fix the bug and clean up the code by converting it to
    a straight fast path for the regular non-failing case,
    plus a clear sequence of cascading goto labels to do
    all cleanup.
    
    NOTE: I materially changed the existing clean up logic in the
    pt_event_start() failure case to use the direct
    perf_aux_output_end() path, not pt_event_del(), because
    perf_aux_output_end() is enough here.
    
    Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
    Acked-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
    Cc: Julia Lawall <julia.lawall@lip6.fr>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Paul Mackerras <paulus@samba.org>
    Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Link: http://lkml.kernel.org/r/20150416103830.GB7847@gmail.com
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
Commits on Apr 17, 2015
  1. Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide

    authored
    Pull IDE update from David Miller:
     "Just one change, getting rid of usage of the deprecated PCI DMA
      interfaces in the IDE drivers"
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide:
      ide: remove deprecated use of pci api
  2. Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net

    authored
    Pull networking fixes from David Miller:
    
     1) Fix verifier memory corruption and other bugs in BPF layer, from
        Alexei Starovoitov.
    
     2) Add a conservative fix for doing BPF properly in the BPF classifier
        of the packet scheduler on ingress.  Also from Alexei.
    
     3) The SKB scrubber should not clear out the packet MARK and security
        label, from Herbert Xu.
    
     4) Fix oops on rmmod in stmmac driver, from Bryan O'Donoghue.
    
     5) Pause handling is not correct in the stmmac driver because it
        doesn't take into consideration the RX and TX fifo sizes.  From
        Vince Bridgers.
    
     6) Failure path missing unlock in FOU driver, from Wang Cong.
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (44 commits)
      net: dsa: use DEVICE_ATTR_RW to declare temp1_max
      netns: remove BUG_ONs from net_generic()
      IB/ipoib: Fix ndo_get_iflink
      sfc: Fix memcpy() with const destination compiler warning.
      altera tse: Fix network-delays and -retransmissions after high throughput.
      net: remove unused 'dev' argument from netif_needs_gso()
      act_mirred: Fix bogus header when redirecting from VLAN
      inet_diag: fix access to tcp cc information
      tcp: tcp_get_info() should fetch socket fields once
      net: dsa: mv88e6xxx: Add missing initialization in mv88e6xxx_set_port_state()
      skbuff: Do not scrub skb mark within the same name space
      Revert "net: Reset secmark when scrubbing packet"
      bpf: fix two bugs in verification logic when accessing 'ctx' pointer
      bpf: fix bpf helpers to use skb->mac_header relative offsets
      stmmac: Configure Flow Control to work correctly based on rxfifo size
      stmmac: Enable unicast pause frame detect in GMAC Register 6
      stmmac: Read tx-fifo-depth and rx-fifo-depth from the devicetree
      stmmac: Add defines and documentation for enabling flow control
      stmmac: Add properties for transmit and receive fifo sizes
      stmmac: fix oops on rmmod after assigning ip addr
      ...
  3. Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc

    authored
    Pull sparc updates from David Miller:
     "The PowerPC folks have a really nice scalable IOMMU pool allocator
      that we wanted to make use of for sparc.  So here we have a series
      that abstracts out their code into a common layer that anyone can make
      use of.
    
      Sparc is converted, and the PowerPC folks have reviewed and ACK'd this
      series and plan to convert PowerPC over as well"
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
      iommu-common: Fix PARISC compile-time warnings
      sparc: Make LDC use common iommu poll management functions
      sparc: Make sparc64 use scalable lib/iommu-common.c functions
      sparc: Break up monolithic iommu table/lock into finer graularity pools and lock
  4. Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile

    authored
    Pull arch/tile updates from Chris Metcalf:
     "These are mostly nohz_full changes, plus a smattering of minor fixes
      (notably a couple for ftrace)"
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
      tile: nohz: warn if nohz_full uses hypervisor shared cores
      tile: ftrace: fix function_graph tracer issues
      tile: map data region shadow of kernel as R/W
      tile: support CONTEXT_TRACKING and thus NOHZ_FULL
      tile: support arch_irq_work_raise
      arch: tile: fix null pointer dereference on pt_regs pointer
      tile/elf: reorganize notify_exec()
      tile: use si_int instead of si_ptr for compat_siginfo
  5. @vivien @davem330

    net: dsa: use DEVICE_ATTR_RW to declare temp1_max

    vivien authored davem330 committed
    Since commit da4759c (sysfs: Use only return value from is_visible for
    the file mode), it is possible to reduce the permissions of a file.
    
    So declare temp1_max with the DEVICE_ATTR_RW macro and remove the write
    permission in dsa_hwmon_attrs_visible if set_temp_limit isn't provided.
    
    Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
    Reviewed-by: Guenter Roeck <linux@roeck-us.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  6. Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upst…

    authored
    …ream-linus
    
    Pull MIPS updates from Ralf Baechle:
     "This is the main pull request for MIPS for Linux 4.1.  Most
      noteworthy:
    
       - Add more Octeon-optimized crypto functions
       - Octeon crypto preemption and locking fixes
       - Little endian support for Octeon
       - Use correct CSR to soft reset Octeons
       - Support LEDs on the Octeon-based DSR-1000N
       - Fix PCI interrupt mapping for the Octeon-based DSR-1000N
       - Mark prom_free_prom_memory() as __init for a number of systems
       - Support for Imagination's Pistachio SOC.  This includes arch and
         CLK bits.  I'd like to merge pinctrl bits later
       - Improve parallelism of csum_partial for certain pipelines
       - Organize DTB files in subdirs like other architectures
       - Implement read_sched_clock for all MIPS platforms other than
         Octeon
       - Massive series of 38 fixes and cleanups for the FPU emulator /
         kernel
       - Further FPU remulator work to support new features.  This sits on a
         separate branch which also has been pulled into the 4.1 KVM branch
       - Clean up and fixes for the SEAD3 eval board; remove unused file
       - Various updates for Netlogic platforms
       - A number of small updates for Loongson 3 platforms
       - Increase the memory limit for ATH79 platforms to 256MB
       - A fair number of fixes and updates for BCM47xx platforms
       - Finish the implementation of XPA support
       - MIPS FDC support.  No, not floppy controller but Fast Debug Channel :)
       - Detect the R16000 used in SGI legacy platforms
       - Fix Kconfig dependencies for the SSB bus support"
    
    * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (265 commits)
      MIPS: Makefile: Fix MIPS ASE detection code
      MIPS: asm: elf: Set O32 default FPU flags
      MIPS: BCM47XX: Fix detecting Microsoft MN-700 & Asus WL500G
      MIPS: Kconfig: Disable SMP/CPS for 64-bit
      MIPS: Hibernate: flush TLB entries earlier
      MIPS: smp-cps: cpu_set FPU mask if FPU present
      MIPS: lose_fpu(): Disable FPU when MSA enabled
      MIPS: ralink: add missing symbol for RALINK_ILL_ACC
      MIPS: ralink: Fix bad config symbol in PCI makefile.
      SSB: fix Kconfig dependencies
      MIPS: Malta: Detect and fix bad memsize values
      Revert "MIPS: Avoid pipeline stalls on some MIPS32R2 cores."
      MIPS: Octeon: Delete override of cpu_has_mips_r2_exec_hazard.
      MIPS: Fix cpu_has_mips_r2_exec_hazard.
      MIPS: kernel: entry.S: Set correct ISA level for mips_ihb
      MIPS: asm: spinlock: Fix addiu instruction for R10000_LLSC_WAR case
      MIPS: r4kcache: Use correct base register for MIPS R6 cache flushes
      MIPS: Kconfig: Fix typo for the r2-to-r6 emulator kernel parameter
      MIPS: unaligned: Fix regular load/store instruction emulation for EVA
      MIPS: unaligned: Surround load/store macros in do {} while statements
      ...
  7. Merge tag 'xtensa-20150416' of git://github.com/czankel/xtensa-linux

    authored
    Pull Xtensa updates from Chris Zankel:
    
     - fix linker script transformation for .text / .text.fixup
    
     - wire bpf and execveat syscalls
    
     - provide __NR_sync_file_range2 instead of __NR_sync_file_range, as
       that's what xtensa uses.
    
     - make xtfpgs LCD driver functional and configurable.  This fixes
       hardware lockup on KC705/ML605 boot
    
     - add audio subsystem bits to xtfpga DTS and provide sample KC705
       config with audio features enabled
    
     - add CY7C67300 USB controller support to XTFPGA
    
     - fix locking issues in ISS network driver
    
     - document PIC and MX interrupt distributor device tree bindings
    
    * tag 'xtensa-20150416' of git://github.com/czankel/xtensa-linux:
      xtensa: xtfpga: add CY7C67300 USB controller support
      irqchip: xtensa-pic: xtensa-mx: document DT bindings
      xtensa: ISS: fix locking in TAP network adapter
      xtensa: Fix fix linker script transformation for .text / .text.fixup
      xtensa: provide __NR_sync_file_range2 instead of __NR_sync_file_range
      xtensa: wire bpf and execveat syscalls
      xtensa: xtfpga: fix hardware lockup caused by LCD driver
      xtensa: xtfpga: provide defconfig with audio subsystem
      xtensa: xtfpga: add audio card to xtfpga DTS
  8. @Daiwen @davem330

    ide: remove deprecated use of pci api

    Daiwen authored davem330 committed
    Replace occurences of the pci api by appropriate call to the dma api.
    
    A simplified version of the semantic patch that finds this problem is as
    follows: (http://coccinelle.lip6.fr)
    
    @deprecated@
    idexpression id;
    position p;
    @@
    
    (
      pci_dma_supported@p ( id, ...)
    |
      pci_alloc_consistent@p ( id, ...)
    )
    
    @bad1@
    idexpression id;
    position deprecated.p;
    @@
    ...when != &id->dev
       when != pci_get_drvdata ( id )
       when != pci_enable_device ( id )
    (
      pci_dma_supported@p ( id, ...)
    |
      pci_alloc_consistent@p ( id, ...)
    )
    
    @depends on !bad1@
    idexpression id;
    expression direction;
    position deprecated.p;
    @@
    
    (
    - pci_dma_supported@p ( id,
    + dma_supported ( &id->dev,
    ...
    + , GFP_ATOMIC
      )
    |
    - pci_alloc_consistent@p ( id,
    + dma_alloc_coherent ( &id->dev,
    ...
    + , GFP_ATOMIC
      )
    )
    
    Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  9. @sowminiv @davem330

    iommu-common: Fix PARISC compile-time warnings

    sowminiv authored davem330 committed
    Fixes warnings due to
    - no DMA_ERROR_CODE on PARISC,
    - sizeof (unsigned long) == 4 bytes on PARISC.
    
    Signed-off-by: Sowmini Varadhan <sowmini.varadhan@oracle.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  10. @dvlasenk @davem330

    netns: remove BUG_ONs from net_generic()

    dvlasenk authored davem330 committed
    This inline has ~500 callsites.
    
    On 04/14/2015 08:37 PM, David Miller wrote:
    > That BUG_ON() was added 7 years ago, and I don't remember it ever
    > triggering or helping us diagnose something, so just remove it and
    > keep the function inlined.
    
    On x86 allyesconfig build:
    
        text     data      bss       dec     hex filename
    82447071 22255384 20627456 125329911 77861f7 vmlinux4
    82441375 22255384 20627456 125324215 7784bb7 vmlinux5prime
    
    Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
    CC: Eric W. Biederman <ebiederm@xmission.com>
    CC: David S. Miller <davem@davemloft.net>
    CC: Jan Engelhardt <jengelh@medozas.de>
    CC: Jiri Pirko <jpirko@redhat.com>
    CC: linux-kernel@vger.kernel.org
    CC: netdev@vger.kernel.org
    Signed-off-by: David S. Miller <davem@davemloft.net>
  11. @davem330

    IB/ipoib: Fix ndo_get_iflink

    Erez Shitrit authored davem330 committed
    Currently, iflink of the parent interface was always accessed, even
    when interface didn't have a parent and hence we crashed there.
    
    Handle the interface types properly: for a child interface, return
    the ifindex of the parent, for parent interface, return its ifindex.
    
    For child devices, make sure to set the parent pointer prior to
    invoking register_netdevice(), this allows the new ndo to be called
    by the stack immediately after the child device is registered.
    
    Fixes: 5aa7add ('infiniband/ipoib: implement ndo_get_iflink')
    Reported-by: Honggang Li <honli@redhat.com>
    Signed-off-by: Erez Shitrit <erezsh@mellanox.com>
    Signed-off-by: Honggang Li <honli@redhat.com>
    Reviewed-By: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>+
    Acked-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  12. @davem330

    sfc: Fix memcpy() with const destination compiler warning.

    davem330 authored
    drivers/net/ethernet/sfc/selftest.c: In function ‘efx_iterate_state’:
    drivers/net/ethernet/sfc/selftest.c:388:9: warning: passing argument 1 of ‘memcpy’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-array-qualifiers]
    
    This is because the msg[] member of struct efx_loopback_payload
    is marked as 'const'.  Remove that.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
  13. @davem330

    altera tse: Fix network-delays and -retransmissions after high throug…

    Andreas Oetken authored davem330 committed
    …hput.
    
    Fix bug which occurs when more than <limit> packets are available during
    napi-poll, leading to "delays" and retransmissions on the network.
    
    Check for (count < limit) before checking the get_rx_status in tse_rx-function.
    Function get_rx_status is reading from the response-fifo.
    If there is currently a response in the fifo,
    reading the last byte of the response pops the value from the fifo.
    If the limit is checked as second condition
    and the limit is reached the fifo is popped but the packet is not processed.
    
    Signed-off-by: Andreas Oetken <ennoerlangen@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  14. Merge branch 'for-linus' of git://git.kernel.dk/linux-block

    authored
    Pull block core fix from Jens Axboe:
     "A commit in the previous pull request introduce a regression.  So far
      only observed on qemu-sparc64, but it's a general bug.  Please pull
      this single fix to rectify that, thanks"
    
    [ And it turns out that it's been seen outside of that qemu-sparc64
      case, and is easy to trigger with small number of CPUs and blk-mq
      enabled by default - Linus ]
    
    * 'for-linus' of git://git.kernel.dk/linux-block:
      blk-mq: fix iteration of busy bitmap
  15. Merge tag 'acpica-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kern…

    authored
    …el/git/rafael/linux-pm
    
    Pull ACPICA updates from Rafael Wysocki:
     "This updates the kernel's ACPICA code to upstream revision 20150410
      and adds a fix for a GPE handling regression introduced during the
      3.19 cycle on top of that.
    
      Included are two stable-candidate bug fixes (one of them fixing a 3.16
      regression), multiple other fixes and a bunch of cleanups.
    
      Specifics:
    
       - Fix for a GPE handling regression on Dell Latitude D600 that caused
         GPE signaling to stop working on that machine, which appears to be
         due to a hardware glitch, but it used to work and it can be made
         work again in a relativly straightforward way (Rafael J Wysocki).
    
       - Fix for a mutex unlock regression related to the handling of ACPI
         tables introduced during the 3.16 development cycle (Octavian
         Purdila).
    
       - _REV modification to always return 2 which has been done by all
         versions of Windows since NT and the firmware people started to use
         it to distinguish between OSes in their AML and do some silly and
         wrong things on that basis (Bob Moore).
    
       - Fixes and cleanups related to the acpi_physicall_address data type
         including one stable-candidate fix for an issue occasionally
         occuring on 64-bit machines running 32-bit kernels where using
         offsets provided by the firmware may lead to address overflows (Lv
         Zheng).
    
       - External() opcode support infrastructure needed for recompiling
         disassembled ACPI tables in some cases including interpreter
         modification to ignore that opcode (Bob Moore).
    
       - Support for the "Windows 2015" string in _OSI (Bob Moore).
    
       - GPE debug interface change to return values read from hardware
         registers (Lv Zheng).
    
       - Removal of the __DATE__ macro usage in tools (Rasmus Villemoes).
    
       - Assorted minor fixes and cleanups (Lv Zheng, Rickard Strandqvist,
         Bob Moore)"
    
    * tag 'acpica-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (32 commits)
      ACPICA: Store GPE register enable masks upfront
      ACPICA: Update version to 20150410.
      ACPICA: Fix a couple issues with the local printf module.
      ACPICA: Disassembler: Some cleanup of the table dump module.
      ACPICA: iASL: Add support for MSDM ACPI table.
      ACPICA: Update for SLIC ACPI table.
      ACPICA: Add "//" before ascii output of buffers.
      ACPICA: Remove unused internal AML opcode.
      ACPICA: Permanently set _REV to the value '2'.
      ACPICA: Add "Windows 2015" string to _OSI support.
      ACPICA: Add infrastructure for External() opcode.
      ACPICA: iASL: Enhancement for constant folding.
      ACPICA: iASL/Disassembler: Add option to assume table contains valid AML.
      ACPICA: Update AML Debugger global variables.
      ACPICA: Update Resource descriptor dump module.
      ACPICA: Fix a sscanf format string.
      ACPICA: Casting changes around acpi_physical_address/acpi_size.
      ACPICA: Resources: Correct conditional compilation definitions.
      ACPICA: Utilities: Correct conditional compilation definitions.
      ACPICA: Tables: Move an iasl specific table function to iasl source file.
      ...
  16. tile: nohz: warn if nohz_full uses hypervisor shared cores

    Chris Metcalf authored
    The "hypervisor shared" cores are ones that the Tilera hypervisor
    uses to receive interrupts to manage hypervisor-owned devices.
    It's a bad idea to try to use those cores with nohz_full, since
    they will get interrupted unpredictably -- and invisibly to Linux
    tracing tools, since the interrupts are delivered at a higher
    privilege level to the Tilera hypervisor.
    
    Generate a clear warning at boot up that this doesn't end well
    for the nohz_full cores in question.
    
    Signed-off-by: Chris Metcalf <cmetcalf@ezchip.com>
  17. tile: ftrace: fix function_graph tracer issues

    Tony Lu authored Chris Metcalf committed
    - Add support for ARCH_SUPPORTS_FTRACE_OPS
    - Replace the instruction in ftrace_call with the bundle {move r10, lr;
    jal ftrace_stub}, so that the lr contains the right value after returning
    from ftrace_stub.  An alternative fix might be to leave the instruction
    in ftrace_call alone when it is being updated with ftrace_stub.
    
    Signed-off-by: Tony Lu <zlu@ezchip.com>
    Signed-off-by: Chris Metcalf <cmetcalf@ezchip.com>
  18. tile: map data region shadow of kernel as R/W

    Chris Metcalf authored
    This is necessary for things like reading /proc/kcore, doing ftrace,
    etc.  It happens by default when using huge pages to map the kernel
    data, but not when using small pages.
    
    Signed-off-by: Chris Metcalf <cmetcalf@ezchip.com>
  19. tile: support CONTEXT_TRACKING and thus NOHZ_FULL

    Chris Metcalf authored
    Add the TIF_NOHZ flag appropriately.
    
    Add call to user_exit() on entry to do_work_pending() and on entry
    to syscalls via do_syscall_trace_enter(), and also the top of
    do_syscall_trace_exit() just because it's done in x86.
    
    Add call to user_enter() at the bottom of do_work_pending() once we
    have no more work to do before returning to userspace.
    
    Wrap all the trap code in exception_enter() / exception_exit().
    
    Signed-off-by: Chris Metcalf <cmetcalf@ezchip.com>
    Acked-by: Frederic Weisbecker <fweisbec@gmail.com>
  20. @jmberg @davem330

    net: remove unused 'dev' argument from netif_needs_gso()

    jmberg authored davem330 committed
    In commit 04ffcb2 ("net: Add ndo_gso_check") Tom originally
    added the 'dev' argument to be able to call ndo_gso_check().
    
    Then later, when generalizing this in commit 5f35227
    ("net: Generalize ndo_gso_check to ndo_features_check")
    Jesse removed the call to ndo_gso_check() in netif_needs_gso()
    by calling the new ndo_features_check() in a different place.
    This made the 'dev' argument unused.
    
    Remove the unused argument and go back to the code as before.
    
    Cc: Tom Herbert <therbert@google.com>
    Cc: Jesse Gross <jesse@nicira.com>
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  21. @herbertx @davem330

    act_mirred: Fix bogus header when redirecting from VLAN

    herbertx authored davem330 committed
    When you redirect a VLAN device to any device, you end up with
    crap in af_packet on the xmit path because hard_header_len is
    not equal to skb->mac_len.  So the redirected packet contains
    four extra bytes at the start which then gets interpreted as
    part of the MAC address.
    
    This patch fixes this by only pushing skb->mac_len.  We also
    need to fix ifb because it tries to undo the pushing done by
    act_mirred.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Acked-by: Alexei Starovoitov <ast@plumgrid.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
Something went wrong with that request. Please try again.