1. 07 10月, 2012 2 次提交
  2. 03 10月, 2012 36 次提交
    • L
      Merge tag 'stable/for-linus-3.7-x86-tag' of... · 56d92aa5
      Linus Torvalds 提交于
      Merge tag 'stable/for-linus-3.7-x86-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen
      
      Pull Xen update from Konrad Rzeszutek Wilk:
       "Features:
         - When hotplugging PCI devices in a PV guest we can allocate
           Xen-SWIOTLB later.
         - Cleanup Xen SWIOTLB.
         - Support pages out grants from HVM domains in the backends.
         - Support wild cards in xen-pciback.hide=(BDF) arguments.
         - Update grant status updates with upstream hypervisor.
         - Boot PV guests with more than 128GB.
         - Cleanup Xen MMU code/add comments.
         - Obtain XENVERS using a preferred method.
         - Lay out generic changes to support Xen ARM.
         - Allow privcmd ioctl for HVM (used to do only PV).
         - Do v2 of mmap_batch for privcmd ioctls.
         - If hypervisor saves the LED keyboard light - we will now instruct
           the kernel about its state.
        Fixes:
         - More fixes to Xen PCI backend for various calls/FLR/etc.
         - With more than 4GB in a 64-bit PV guest disable native SWIOTLB.
         - Fix up smatch warnings.
         - Fix up various return values in privmcmd and mm."
      
      * tag 'stable/for-linus-3.7-x86-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: (48 commits)
        xen/pciback: Restore the PCI config space after an FLR.
        xen-pciback: properly clean up after calling pcistub_device_find()
        xen/vga: add the xen EFI video mode support
        xen/x86: retrieve keyboard shift status flags from hypervisor.
        xen/gndev: Xen backend support for paged out grant targets V4.
        xen-pciback: support wild cards in slot specifications
        xen/swiotlb: Fix compile warnings when using plain integer instead of NULL pointer.
        xen/swiotlb: Remove functions not needed anymore.
        xen/pcifront: Use Xen-SWIOTLB when initting if required.
        xen/swiotlb: For early initialization, return zero on success.
        xen/swiotlb: Use the swiotlb_late_init_with_tbl to init Xen-SWIOTLB late when PV PCI is used.
        xen/swiotlb: Move the error strings to its own function.
        xen/swiotlb: Move the nr_tbl determination in its own function.
        xen/arm: compile and run xenbus
        xen: resynchronise grant table status codes with upstream
        xen/privcmd: return -EFAULT on error
        xen/privcmd: Fix mmap batch ioctl error status copy back.
        xen/privcmd: add PRIVCMD_MMAPBATCH_V2 ioctl
        xen/mm: return more precise error from xen_remap_domain_range()
        xen/mmu: If the revector fails, don't attempt to revector anything else.
        ...
      56d92aa5
    • L
      Merge tag 'stable/for-linus-3.7-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/mm · 33c2a174
      Linus Torvalds 提交于
      Pull frontswap update from Konrad Rzeszutek Wilk:
       "Features:
         - Support exlusive get if backend is capable.
        Bug-fixes:
         - Fix compile warnings
         - Add comments/cleanup doc
         - Fix wrong if condition"
      
      * tag 'stable/for-linus-3.7-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/mm:
        frontswap: support exclusive gets if tmem backend is capable
        mm: frontswap: fix a wrong if condition in frontswap_shrink
        mm/frontswap: fix uninit'ed variable warning
        mm/frontswap: cleanup doc and comment error
        mm: frontswap: remove unneeded headers
      33c2a174
    • L
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · 88265322
      Linus Torvalds 提交于
      Pull security subsystem updates from James Morris:
       "Highlights:
      
         - Integrity: add local fs integrity verification to detect offline
           attacks
         - Integrity: add digital signature verification
         - Simple stacking of Yama with other LSMs (per LSS discussions)
         - IBM vTPM support on ppc64
         - Add new driver for Infineon I2C TIS TPM
         - Smack: add rule revocation for subject labels"
      
      Fixed conflicts with the user namespace support in kernel/auditsc.c and
      security/integrity/ima/ima_policy.c.
      
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: (39 commits)
        Documentation: Update git repository URL for Smack userland tools
        ima: change flags container data type
        Smack: setprocattr memory leak fix
        Smack: implement revoking all rules for a subject label
        Smack: remove task_wait() hook.
        ima: audit log hashes
        ima: generic IMA action flag handling
        ima: rename ima_must_appraise_or_measure
        audit: export audit_log_task_info
        tpm: fix tpm_acpi sparse warning on different address spaces
        samples/seccomp: fix 31 bit build on s390
        ima: digital signature verification support
        ima: add support for different security.ima data types
        ima: add ima_inode_setxattr/removexattr function and calls
        ima: add inode_post_setattr call
        ima: replace iint spinblock with rwlock/read_lock
        ima: allocating iint improvements
        ima: add appraise action keywords and default rules
        ima: integrity appraisal extension
        vfs: move ima_file_free before releasing the file
        ...
      88265322
    • L
      Merge tag 'upstream-3.7-rc1' of git://git.infradead.org/linux-ubi · 65b99c74
      Linus Torvalds 提交于
      Pull UBI changes from Artem Bityutskiy:
       "The main change is the way we reserve eraseblocks for bad blocks
        handling.  We used to reserve 2% of the partition, but now we are more
        aggressive and we reserve 2% of the entire chip, which is what
        actually manufacturers specify in data sheets.  We introduced an
        option to users to override the default, though.
      
        There are a couple of fixes as well, and a number of cleanups."
      
      * tag 'upstream-3.7-rc1' of git://git.infradead.org/linux-ubi: (24 commits)
        UBI: fix trivial typo 'it' => 'is'
        UBI: load after mtd device drivers
        UBI: print less
        UBI: use pr_ helper instead of printk
        UBI: comply with coding style
        UBI: erase free PEB with bitflip in EC header
        UBI: fix autoresize handling in R/O mode
        UBI: add max_beb_per1024 to attach ioctl
        UBI: allow specifying bad PEBs limit using module parameter
        UBI: check max_beb_per1024 value in ubi_attach_mtd_dev
        UBI: prepare for max_beb_per1024 module parameter addition
        UBI: introduce MTD_PARAM_MAX_COUNT
        UBI: separate bad_peb_limit in a function
        arm: sam9_l9260_defconfig: correct CONFIG_MTD_UBI_BEB_LIMIT
        UBI: use the whole MTD device size to get bad_peb_limit
        mtd: mtdparts: introduce mtd_get_device_size
        mtd: mark mtd_is_partition argument as constant
        arm: sam9_l9260_defconfig: remove non-existing config option
        UBI: kill CONFIG_MTD_UBI_BEB_RESERVE
        UBI: limit amount of reserved eraseblocks for bad PEB handling
        ...
      65b99c74
    • L
      Merge tag 'upstream-3.7-rc1' of git://git.infradead.org/linux-ubifs · 782c3fb2
      Linus Torvalds 提交于
      Pull ubifs changes from Artem Bityutskiy:
       "No big changes for 3.7 in UBIFS:
         - Error reporting and debug printing improvements
         - Power cut emulation fixes
         - Minor cleanups"
      
      Fix trivial conflict in fs/ubifs/debug.c due to the user namespace
      changes.
      
      * tag 'upstream-3.7-rc1' of git://git.infradead.org/linux-ubifs:
        UBIFS: print less
        UBIFS: use pr_ helper instead of printk
        UBIFS: comply with coding style
        UBIFS: use __aligned() attribute
        UBIFS: remove __DATE__ and __TIME__
        UBIFS: fix power cut emulation for mtdram
        UBIFS: improve scanning debug output
        UBIFS: always print full error reports
        UBIFS: print PID in debug messages
      782c3fb2
    • L
      Merge tag 'for-linus-v3.7-rc1' of git://oss.sgi.com/xfs/xfs · 60c7b4df
      Linus Torvalds 提交于
      Pull xfs update from Ben Myers:
       "Several enhancements and cleanups:
      
         - make inode32 and inode64 remountable options
         - SEEK_HOLE/SEEK_DATA enhancements
         - cleanup struct declarations in xfs_mount.h"
      
      * tag 'for-linus-v3.7-rc1' of git://oss.sgi.com/xfs/xfs:
        xfs: Make inode32 a remountable option
        xfs: add inode64->inode32 transition into xfs_set_inode32()
        xfs: Fix mp->m_maxagi update during inode64 remount
        xfs: reduce code duplication handling inode32/64 options
        xfs: make inode64 as the default allocation mode
        xfs: Fix m_agirotor reset during AG selection
        Make inode64 a remountable option
        xfs: stop the sync worker before xfs_unmountfs
        xfs: xfs_seek_hole() refinement with hole searching from page cache for unwritten extents
        xfs: xfs_seek_data() refinement with unwritten extents check up from page cache
        xfs: Introduce a helper routine to probe data or hole offset from page cache
        xfs: Remove type argument from xfs_seek_data()/xfs_seek_hole()
        xfs: fix race while discarding buffers [V4]
        xfs: check for possible overflow in xfs_ioc_trim
        xfs: unlock the AGI buffer when looping in xfs_dialloc
        xfs: kill struct declarations in xfs_mount.h
        xfs: fix uninitialised variable in xfs_rtbuf_get()
      60c7b4df
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · aab174f0
      Linus Torvalds 提交于
      Pull vfs update from Al Viro:
      
       - big one - consolidation of descriptor-related logics; almost all of
         that is moved to fs/file.c
      
         (BTW, I'm seriously tempted to rename the result to fd.c.  As it is,
         we have a situation when file_table.c is about handling of struct
         file and file.c is about handling of descriptor tables; the reasons
         are historical - file_table.c used to be about a static array of
         struct file we used to have way back).
      
         A lot of stray ends got cleaned up and converted to saner primitives,
         disgusting mess in android/binder.c is still disgusting, but at least
         doesn't poke so much in descriptor table guts anymore.  A bunch of
         relatively minor races got fixed in process, plus an ext4 struct file
         leak.
      
       - related thing - fget_light() partially unuglified; see fdget() in
         there (and yes, it generates the code as good as we used to have).
      
       - also related - bits of Cyrill's procfs stuff that got entangled into
         that work; _not_ all of it, just the initial move to fs/proc/fd.c and
         switch of fdinfo to seq_file.
      
       - Alex's fs/coredump.c spiltoff - the same story, had been easier to
         take that commit than mess with conflicts.  The rest is a separate
         pile, this was just a mechanical code movement.
      
       - a few misc patches all over the place.  Not all for this cycle,
         there'll be more (and quite a few currently sit in akpm's tree)."
      
      Fix up trivial conflicts in the android binder driver, and some fairly
      simple conflicts due to two different changes to the sock_alloc_file()
      interface ("take descriptor handling from sock_alloc_file() to callers"
      vs "net: Providing protocol type via system.sockprotoname xattr of
      /proc/PID/fd entries" adding a dentry name to the socket)
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (72 commits)
        MAX_LFS_FILESIZE should be a loff_t
        compat: fs: Generic compat_sys_sendfile implementation
        fs: push rcu_barrier() from deactivate_locked_super() to filesystems
        btrfs: reada_extent doesn't need kref for refcount
        coredump: move core dump functionality into its own file
        coredump: prevent double-free on an error path in core dumper
        usb/gadget: fix misannotations
        fcntl: fix misannotations
        ceph: don't abuse d_delete() on failure exits
        hypfs: ->d_parent is never NULL or negative
        vfs: delete surplus inode NULL check
        switch simple cases of fget_light to fdget
        new helpers: fdget()/fdput()
        switch o2hb_region_dev_write() to fget_light()
        proc_map_files_readdir(): don't bother with grabbing files
        make get_file() return its argument
        vhost_set_vring(): turn pollstart/pollstop into bool
        switch prctl_set_mm_exe_file() to fget_light()
        switch xfs_find_handle() to fget_light()
        switch xfs_swapext() to fget_light()
        ...
      aab174f0
    • L
      Merge branch 'for-v3.7' of git://git.linaro.org/people/mszyprowski/linux-dma-mapping · ca41cc96
      Linus Torvalds 提交于
      Pull CMA and DMA-mapping updates from Marek Szyprowski:
       "This time the pull request is rather small, because the further
        redesign patches were not ready on time.
      
        This pull request consists of the patches which extend ARM DMA-mapping
        subsystem with support for CPU coherent (ACP) DMA busses.  The first
        client of the new version is HighBank SATA driver.  The second part of
        the pull request includes various cleanup for both CMA common code and
        ARM DMA-mapping subsystem."
      
      Fix up trivial add-add conflict due to the "dma-coherent" DT property
      being added next to the "calxeda,port-phys" property for the Calxeda
      AHCI controller.
      
      * 'for-v3.7' of git://git.linaro.org/people/mszyprowski/linux-dma-mapping:
        ARM: dma-mapping: Remove unsed var at arm_coherent_iommu_unmap_page
        ARM: highbank: add coherent DMA setup
        ARM: kill off arch_is_coherent
        ARM: add coherent iommu dma ops
        ARM: add coherent dma ops
        ARM: dma-mapping: Refrain noisy console message
        ARM: dma-mapping: Small logical clean up
        drivers: dma-contiguous: refactor dma_alloc_from_contiguous()
      ca41cc96
    • L
      Merge tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 3151367f
      Linus Torvalds 提交于
      Pull first round of SCSI updates from James Bottomley:
       "This is a large set of updates, mostly for drivers (qla2xxx [including
        support for new 83xx based card], qla4xxx, mpt2sas, bfa, zfcp, hpsa,
        be2iscsi, isci, lpfc, ipr, ibmvfc, ibmvscsi, megaraid_sas).
      
        There's also a rework for tape adding virtually unlimited numbers of
        tape drives plus a set of dif fixes for sd and a fix for a live lock
        on hot remove of SCSI devices.
      
        This round includes a signed tag pull of isci-for-3.6
      
        Signed-off-by: James Bottomley <JBottomley@Parallels.com>"
      
      Fix up trivial conflict in drivers/scsi/qla2xxx/qla_nx.c due to new PCI
      helper function use in a function that was removed by this pull.
      
      * tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (198 commits)
        [SCSI] st: remove st_mutex
        [SCSI] sd: Ensure we correctly disable devices with unknown protection type
        [SCSI] hpsa: gen8plus Smart Array IDs
        [SCSI] qla4xxx: Update driver version to 5.03.00-k1
        [SCSI] qla4xxx: Disable generating pause frames for ISP83XX
        [SCSI] qla4xxx: Fix double clearing of risc_intr for ISP83XX
        [SCSI] qla4xxx: IDC implementation for Loopback
        [SCSI] qla4xxx: update copyrights in LICENSE.qla4xxx
        [SCSI] qla4xxx: Fix panic while rmmod
        [SCSI] qla4xxx: Fail probe_adapter if IRQ allocation fails
        [SCSI] qla4xxx: Prevent MSI/MSI-X falling back to INTx for ISP82XX
        [SCSI] qla4xxx: Update idc reg in case of PCI AER
        [SCSI] qla4xxx: Fix double IDC locking in qla4_8xxx_error_recovery
        [SCSI] qla4xxx: Clear interrupt while unloading driver for ISP83XX
        [SCSI] qla4xxx: Print correct IDC version
        [SCSI] qla4xxx: Added new mbox cmd to pass driver version to FW
        [SCSI] scsi_dh_alua: Enable STPG for unavailable ports
        [SCSI] scsi_remove_target: fix softlockup regression on hot remove
        [SCSI] ibmvscsi: Fix host config length field overflow
        [SCSI] ibmvscsi: Remove backend abstraction
        ...
      3151367f
    • C
      MAX_LFS_FILESIZE should be a loff_t · 2bd2c194
      Chuck Lever 提交于
      fs/nfs/internal.h: In function ‘nfs_super_set_maxbytes’:
      fs/nfs/internal.h:547:21: warning: comparison between signed and
          unsigned integer expressions [-Wsign-compare]
      
      Seen with gcc (GCC) 4.6.3 20120306 (Red Hat 4.6.3-2).
      
      Commit 42cb56ae made s_maxbytes a loff_t, thus the type of
      MAX_LFS_FILESIZE should also be a loff_t.
      Signed-off-by: NChuck Lever <chuck.lever@oracle.com>
      Acked-by: NJeff Layton <jlayton@redhat.com>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      2bd2c194
    • C
      compat: fs: Generic compat_sys_sendfile implementation · 8f9c0119
      Catalin Marinas 提交于
      This function is used by sparc, powerpc and arm64 for compat support.
      The patch adds a generic implementation which calls do_sendfile()
      directly and avoids set_fs().
      
      The sparc architecture has wrappers for the sign extensions while
      powerpc relies on the compiler to do the this. The patch adds wrappers
      for powerpc to handle the u32->int type conversion.
      
      compat_sys_sendfile64() can be replaced by a sys_sendfile() call since
      compat_loff_t has the same size as off_t on a 64-bit system.
      
      On powerpc, the patch also changes the 64-bit sendfile call from
      sys_sendile64 to sys_sendfile.
      Signed-off-by: NCatalin Marinas <catalin.marinas@arm.com>
      Acked-by: NDavid S. Miller <davem@davemloft.net>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Alexander Viro <viro@zeniv.linux.org.uk>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      8f9c0119
    • K
      fs: push rcu_barrier() from deactivate_locked_super() to filesystems · 8c0a8537
      Kirill A. Shutemov 提交于
      There's no reason to call rcu_barrier() on every
      deactivate_locked_super().  We only need to make sure that all delayed rcu
      free inodes are flushed before we destroy related cache.
      
      Removing rcu_barrier() from deactivate_locked_super() affects some fast
      paths.  E.g.  on my machine exit_group() of a last process in IPC
      namespace takes 0.07538s.  rcu_barrier() takes 0.05188s of that time.
      Signed-off-by: NKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      8c0a8537
    • A
      btrfs: reada_extent doesn't need kref for refcount · 99621b44
      Al Viro 提交于
      All increments and decrements are under the same spinlock - have to be,
      since they need to protect the radix_tree it's found in.  Just use
      int, no need to wank with kref...
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      99621b44
    • A
      coredump: move core dump functionality into its own file · 10c28d93
      Alex Kelly 提交于
      This prepares for making core dump functionality optional.
      
      The variable "suid_dumpable" and associated functions are left in fs/exec.c
      because they're used elsewhere, such as in ptrace.
      Signed-off-by: NAlex Kelly <alex.page.kelly@gmail.com>
      Reviewed-by: NJosh Triplett <josh@joshtriplett.org>
      Acked-by: NSerge Hallyn <serge.hallyn@canonical.com>
      Acked-by: NKees Cook <keescook@chromium.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      10c28d93
    • L
      Merge tag 'pm-for-3.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 16642a2e
      Linus Torvalds 提交于
      Pull power management updates from Rafael J Wysocki:
      
       - Improved system suspend/resume and runtime PM handling for the SH
         TMU, CMT and MTU2 clock event devices (also used by ARM/shmobile).
      
       - Generic PM domains framework extensions related to cpuidle support
         and domain objects lookup using names.
      
       - ARM/shmobile power management updates including improved support for
         the SH7372's A4S power domain containing the CPU core.
      
       - cpufreq changes related to AMD CPUs support from Matthew Garrett,
         Andre Przywara and Borislav Petkov.
      
       - cpu0 cpufreq driver from Shawn Guo.
      
       - cpufreq governor fixes related to the relaxing of limit from Michal
         Pecio.
      
       - OMAP cpufreq updates from Axel Lin and Richard Zhao.
      
       - cpuidle ladder governor fixes related to the disabling of states from
         Carsten Emde and me.
      
       - Runtime PM core updates related to the interactions with the system
         suspend core from Alan Stern and Kevin Hilman.
      
       - Wakeup sources modification allowing more helper functions to be
         called from interrupt context from John Stultz and additional
         diagnostic code from Todd Poynor.
      
       - System suspend error code path fix from Feng Hong.
      
      Fixed up conflicts in cpufreq/powernow-k8 that stemmed from the
      workqueue fixes conflicting fairly badly with the removal of support for
      hardware P-state chips.  The changes were independent but somewhat
      intertwined.
      
      * tag 'pm-for-3.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (76 commits)
        Revert "PM QoS: Use spinlock in the per-device PM QoS constraints code"
        PM / Runtime: let rpm_resume() succeed if RPM_ACTIVE, even when disabled, v2
        cpuidle: rename function name "__cpuidle_register_driver", v2
        cpufreq: OMAP: Check IS_ERR() instead of NULL for omap_device_get_by_hwmod_name
        cpuidle: remove some empty lines
        PM: Prevent runtime suspend during system resume
        PM QoS: Use spinlock in the per-device PM QoS constraints code
        PM / Sleep: use resume event when call dpm_resume_early
        cpuidle / ACPI : move cpuidle_device field out of the acpi_processor_power structure
        ACPI / processor: remove pointless variable initialization
        ACPI / processor: remove unused function parameter
        cpufreq: OMAP: remove loops_per_jiffy recalculate for smp
        sections: fix section conflicts in drivers/cpufreq
        cpufreq: conservative: update frequency when limits are relaxed
        cpufreq / ondemand: update frequency when limits are relaxed
        properly __init-annotate pm_sysrq_init()
        cpufreq: Add a generic cpufreq-cpu0 driver
        PM / OPP: Initialize OPP table from device tree
        ARM: add cpufreq transiton notifier to adjust loops_per_jiffy for smp
        cpufreq: Remove support for hardware P-state chips from powernow-k8
        ...
      16642a2e
    • L
      Merge tag 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev · 51562cba
      Linus Torvalds 提交于
      Pull libata changes from Jeff Garzik:
       "Minor libata updates, nothing notable.
      
         1) Apply -- and then revert -- the FUA feature.  Caused disk
            corruption in linux-next, proving it cannot be turned on by
            default.
      
            Net effect to upstream tree:  zero
      
         2) New AHCI platform driver sata_highbank
      
         3) Improve SCSI MODE SENSE handling; support MODE SELECT
      
         4) AHCI: support aggressive device sleep (power mgmt)
      
         5) sata_fsl: minor fix
      
         6) pata_arasan: clk support"
      
      * tag 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
        sata_mv: Fix warnings when no PCI
        [libata] Makefile: Fix build error in sata_highbank
        [libata] export ata_dev_set_feature()
        libata-core: use ATA_LBA in ata_build_rw_tf()
        ata/ahci_platform: Add clock framework support
        pata_arasan: add Device Tree probing capability
        pata_arasan: Add clk_{un}prepare() support
        ata: add platform driver for Calxeda AHCI controller
        sata_fsl: add workaround for data length mismatch on freescale V2 controller
        ahci: implement aggressive SATA device sleep support
        ata: define enum constants for IDENTIFY DEVICE
        Revert "libata: enable SATA disk fua detection on default"
        [libata] scsi: implement MODE SELECT command
        [libata] scsi: support MODE SENSE request for changeable and default parameters
        [libata] scsi: Remove unlikely() from FUA check
        libata: enable SATA disk fua detection on default
      51562cba
    • L
      Merge tag 'spi-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/misc · 7fe0b14b
      Linus Torvalds 提交于
      Pull spi updates from Mark Brown:
       "No framework work here, only a bunch of driver updates of varying
        sizes:
      
         - Factoring out of the core hardware support from the MXS MMC driver
           by Marek Vasut to allow the hardware to also be used for SPI.
         - Lots of error handling cleanups from Guenter Roeck
         - Removal of the existing Tegra driver which is quite comprehensively
           broken as detailed in the changelog for the removal.
         - DT suppport for the PL022 and GPIO drivers.
         - pinctrl support for OMAP and PL022."
      
      Pulling from Mark Brown as Grant Likely is still busy moving.
      
      * tag 'spi-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/misc: (53 commits)
        spi: remove completely broken Tegra driver
        spi/imx: set the inactive state of the clock according to the clock polarity
        spi/pl022: get/put resources on suspend/resume
        spi/pl022: use more managed resources
        spi/pl022: Devicetree support w/o platform data
        spi/s3c64xx: Don't free controller_data on non-dt platforms
        spi: omap2-mcspi: add pinctrl support
        spi/pl022: adopt pinctrl support
        spi: omap2-mcspi: Cleanup the omap2_mcspi_txrx_dma function
        spi/gpio: Fix stub for spi_gpio_probe_dt()
        spi/mxs: Make the SPI block clock speed configurable via DT
        spi: spi-sh-hspi: drop frees of devm_ alloc'd data
        spi/pl022: Fix chipselects pointer computation
        spi: spi-tle62x0: Use module_spi_driver macro
        mxs/spi: Rework the mxs_ssp_timeout to be more readable
        mxs/spi: Decrement the DMA/PIO border
        mxs/spi: Increment the transfer length only if transfer succeeded
        mxs/spi: Fix issues when doing long continuous transfer
        spi: spi-gpio: Add DT bindings
        spi: spi-gpio: store chipselect information in private structure
        ...
      7fe0b14b
    • L
      Merge tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband · 7a9a2970
      Linus Torvalds 提交于
      Pull infiniband updates from Roland Dreier:
       "First batch of InfiniBand/RDMA changes for the 3.7 merge window:
         - mlx4 IB support for SR-IOV
         - A couple of SRP initiator fixes
         - Batch of nes hardware driver fixes
         - Fix for long-standing use-after-free crash in IPoIB
         - Other miscellaneous fixes"
      
      This merge also removes a new use of __cancel_delayed_work(), and
      replaces it with the regular cancel_delayed_work() that is now irq-safe
      thanks to the workqueue updates.
      
      That said, I suspect the sequence in question should probably use
      "mod_delayed_work()".  I just did the minimal "don't use deprecated
      functions" fixup, though.
      
      * tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (45 commits)
        IB/qib: Fix local access validation for user MRs
        mlx4_core: Disable SENSE_PORT for multifunction devices
        mlx4_core: Clean up enabling of SENSE_PORT for older (ConnectX-1/-2) HCAs
        mlx4_core: Stash PCI ID driver_data in mlx4_priv structure
        IB/srp: Avoid having aborted requests hang
        IB/srp: Fix use-after-free in srp_reset_req()
        IB/qib: Add a qib driver version
        RDMA/nes: Fix compilation error when nes_debug is enabled
        RDMA/nes: Print hardware resource type
        RDMA/nes: Fix for crash when TX checksum offload is off
        RDMA/nes: Cosmetic changes
        RDMA/nes: Fix for incorrect MSS when TSO is on
        RDMA/nes: Fix incorrect resolving of the loopback MAC address
        mlx4_core: Fix crash on uninitialized priv->cmd.slave_sem
        mlx4_core: Trivial cleanups to driver log messages
        mlx4_core: Trivial readability fix: "0X30" -> "0x30"
        IB/mlx4: Create paravirt contexts for VFs when master IB driver initializes
        mlx4: Modify proxy/tunnel QP mechanism so that guests do no calculations
        mlx4: Paravirtualize Node Guids for slaves
        mlx4: Activate SR-IOV mode for IB
        ...
      7a9a2970
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · fc47912d
      Linus Torvalds 提交于
      Pull input updates from Dmitry Torokhov:
       "A few drivers were updated with device tree bindings and others got a
        few small cleanups and fixes."
      
      Fix trivial conflict in drivers/input/keyboard/omap-keypad.c due to
      changes clashing with a whitespace cleanup.
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (28 commits)
        Input: wacom - mark Intuos5 pad as in-prox when touching buttons
        Input: synaptics - adjust threshold for treating position values as negative
        Input: hgpk - use %*ph to dump small buffer
        Input: gpio_keys_polled - fix dt pdata->nbuttons
        Input: Add KD[GS]KBDIACRUC ioctls to the compatible list
        Input: omap-keypad - fixed formatting
        Input: tegra - move platform data header
        Input: wacom - add support for EMR on Cintiq 24HD touch
        Input: s3c2410_ts - make s3c_ts_pmops const
        Input: samsung-keypad - use of_get_child_count() helper
        Input: samsung-keypad - use of_match_ptr()
        Input: uinput - fix formatting
        Input: uinput - specify exact bit sizes on userspace APIs
        Input: uinput - mark failed submission requests as free
        Input: uinput - fix race that can block nonblocking read
        Input: uinput - return -EINVAL when read buffer size is too small
        Input: uinput - take event lock when fetching events from buffer
        Input: get rid of MATCH_BIT() macro
        Input: rotary-encoder - add DT bindings
        Input: rotary-encoder - constify platform data pointers
        ...
      fc47912d
    • L
      Merge tag 'pinctrl-for-v3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · 06fe918e
      Linus Torvalds 提交于
      Pull pinctrl changes from Linus Walleij:
       "Some of this stuff is hitting arch/arm/* and have been ACKed by the
        ARM SoC folks, or it's device tree bindings pertaining to the specific
        driver.
      
        These are the bulk pinctrl changes for kernel v3.7:
         - Add subdrivers for the DB8540 and NHK8815 Nomadik-type ASICs,
           provide platform config for the Nomadik.
         - Add a driver for the i.MX35.
         - Add a driver for the BCM2835, an advanced GPIO expander.
         - Various fixes and clean-ups and minor improvements for the core,
           Nomadik, pinctr-single, sirf drivers.
         - Some platform config for the ux500."
      
      * tag 'pinctrl-for-v3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (27 commits)
        pinctrl: add bcm2835 driver
        pinctrl: clarify idle vs sleep states
        pinctrl/nomadik: use irq_find_mapping()
        pinctrl: sirf: add lost chained_irq_enter and exit in sirfsoc_gpio_handle_irq
        pinctrl: sirf: initialize the irq_chip pointer of pinctrl_gpio_range
        pinctrl: sirf: fix spinlock deadlock in sirfsoc_gpio_set_input
        pinctrl: sirf: add missing pins to pinctrl list
        pinctrl: sirf: fix a typo in sirfsoc_gpio_probe
        pinctrl: pinctrl-single: add debugfs pin h/w state info
        ARM: ux500: 8500: update I2C sleep states pinctrl
        pinctrl: Fix potential memory leak in pinctrl_register_one_pin()
        ARM: ux500: tidy up pin sleep modes
        ARM: ux500: fix spi2 pin group
        pinctrl: imx: remove duplicated const
        pinctrl: document semantics vs GPIO
        ARM: ux500: 8500: use hsit_a_2 group for HSI
        pinctrl: use kasprintf() in pinmux_request_gpio()
        pinctrl: pinctrl-single: Add pinctrl-single,bits type of mux
        pinctrl/nomadik : add MC1_a_2 pin MC1 function group list
        pinctrl: pinctrl-single: Make sure we do not change bits outside of mask
        ...
      06fe918e
    • L
      Merge tag 'gpio-for-v3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio · dff8360a
      Linus Torvalds 提交于
      Pull GPIO changes from Linus Walleij:
       "So this is the LW GPIO patch stack for v3.7:
         - refactoring from Thierry Redding at Arnd Bergmann's request to use
           the seq_file iterator interface in gpiolib.
         - A new driver for Avionic Design's N-bit GPIO expander.
         - Two instances of mutexes replaced by spinlocks from Axel Lin to
           code that is supposed to be fastpath compliant.
         - IRQ demuxer and gpio_to_irq() support for pcf857x by Kuninori
           Morimoto.
         - Dynamic GPIO numbers, device tree support, daisy chaining and some
           other fixes for the 74x164 driver by Maxime Ripard.
         - IRQ domain and device tree support for the tc3589x driver by Lee
           Jones.
         - Some conversion to use managed resources devm_* code.
         - Some instances of clk_prepare() or clk_prepare_enable() added to
           support the new, stricter common clock framework.
         - Some for_each_set_bit() simplifications.
         - Then a lot of fixes as we fixed up all of the above tripping over
           our own shoelaces and that kind of thing."
      
      * tag 'gpio-for-v3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (34 commits)
        gpio: pcf857x: select IRQ_DOMAIN
        gpio: Document device_node's det_debounce
        gpio-lpc32xx: Add GPI_28
        gpio: adnp: dt: Reference generic interrupt binding
        gpio: Add Avionic Design N-bit GPIO expander support
        gpio: pxa: using for_each_set_bit to simplify the code
        gpio_msm: using for_each_set_bit to simplify the code
        gpio: Enable the tc3298x GPIO expander driver for Device Tree
        gpio: Provide the tc3589x GPIO expander driver with an IRQ domain
        ARM: shmobile: kzm9g: use gpio-keys instead of gpio-keys-polled
        gpio: pcf857x: fixup smatch WARNING
        gpio: 74x164: Add support for the daisy-chaining
        gpio: 74x164: dts: Add documentation for the dt binding
        dt: Fix incorrect reference in gpio-led documentation
        gpio: 74x164: Add device tree support
        gpio: 74x164: Use dynamic gpio number assignment if no pdata is present
        gpio: 74x164: Use devm_kzalloc
        gpio: 74x164: Use module_spi_driver boiler plate function
        gpio: sx150x: Use irq_data_get_irq_chip_data() at appropriate places
        gpio: em: Use irq_data_get_irq_chip_data() at appropriate places
        ...
      dff8360a
    • L
      workqueue: avoid using deprecated functions · 916082b0
      Linus Torvalds 提交于
      The network merge brought in a few users of functions that got
      deprecated by the workqueue cleanups: the 'system_nrt_wq' is now the
      same as the regular system_wq, since all workqueues are now non-
      reentrant.
      
      Similarly, remove one use of flush_work_sync() - the regular
      flush_work() has become synchronous, and the "_sync()" version is thus
      deprecated as being superfluous.
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      916082b0
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next · aecdc33e
      Linus Torvalds 提交于
      Pull networking changes from David Miller:
      
       1) GRE now works over ipv6, from Dmitry Kozlov.
      
       2) Make SCTP more network namespace aware, from Eric Biederman.
      
       3) TEAM driver now works with non-ethernet devices, from Jiri Pirko.
      
       4) Make openvswitch network namespace aware, from Pravin B Shelar.
      
       5) IPV6 NAT implementation, from Patrick McHardy.
      
       6) Server side support for TCP Fast Open, from Jerry Chu and others.
      
       7) Packet BPF filter supports MOD and XOR, from Eric Dumazet and Daniel
          Borkmann.
      
       8) Increate the loopback default MTU to 64K, from Eric Dumazet.
      
       9) Use a per-task rather than per-socket page fragment allocator for
          outgoing networking traffic.  This benefits processes that have very
          many mostly idle sockets, which is quite common.
      
          From Eric Dumazet.
      
      10) Use up to 32K for page fragment allocations, with fallbacks to
          smaller sizes when higher order page allocations fail.  Benefits are
          a) less segments for driver to process b) less calls to page
          allocator c) less waste of space.
      
          From Eric Dumazet.
      
      11) Allow GRO to be used on GRE tunnels, from Eric Dumazet.
      
      12) VXLAN device driver, one way to handle VLAN issues such as the
          limitation of 4096 VLAN IDs yet still have some level of isolation.
          From Stephen Hemminger.
      
      13) As usual there is a large boatload of driver changes, with the scale
          perhaps tilted towards the wireless side this time around.
      
      Fix up various fairly trivial conflicts, mostly caused by the user
      namespace changes.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1012 commits)
        hyperv: Add buffer for extended info after the RNDIS response message.
        hyperv: Report actual status in receive completion packet
        hyperv: Remove extra allocated space for recv_pkt_list elements
        hyperv: Fix page buffer handling in rndis_filter_send_request()
        hyperv: Fix the missing return value in rndis_filter_set_packet_filter()
        hyperv: Fix the max_xfer_size in RNDIS initialization
        vxlan: put UDP socket in correct namespace
        vxlan: Depend on CONFIG_INET
        sfc: Fix the reported priorities of different filter types
        sfc: Remove EFX_FILTER_FLAG_RX_OVERRIDE_IP
        sfc: Fix loopback self-test with separate_tx_channels=1
        sfc: Fix MCDI structure field lookup
        sfc: Add parentheses around use of bitfield macro arguments
        sfc: Fix null function pointer in efx_sriov_channel_type
        vxlan: virtual extensible lan
        igmp: export symbol ip_mc_leave_group
        netlink: add attributes to fdb interface
        tg3: unconditionally select HWMON support when tg3 is enabled.
        Revert "net: ti cpsw ethernet: allow reading phy interface mode from DT"
        gre: fix sparse warning
        ...
      aecdc33e
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next · a20acf99
      Linus Torvalds 提交于
      Pull sparc updates from David Miller:
       "Largely this is simply adding support for the Niagara 4 cpu.
      
        Major areas are perf events (chip now supports 4 counters and can
        monitor any event on each counter), crypto (opcodes are availble for
        sha1, sha256, sha512, md5, crc32c, AES, DES, CAMELLIA, and Kasumi
        although the last is unsupported since we lack a generic crypto layer
        Kasumi implementation), and an optimized memcpy.
      
        Finally some cleanups by Peter Senna Tschudin."
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next: (47 commits)
        sparc64: Fix trailing whitespace in NG4 memcpy.
        sparc64: Fix comment type in NG4 copy from user.
        sparc64: Add SPARC-T4 optimized memcpy.
        drivers/sbus/char: removes unnecessary semicolon
        arch/sparc/kernel/pci_sun4v.c: removes unnecessary semicolon
        sparc64: Fix function argument comment in camellia_sparc64_key_expand asm.
        sparc64: Fix IV handling bug in des_sparc64_cbc_decrypt
        sparc64: Add auto-loading mechanism to crypto-opcode drivers.
        sparc64: Add missing pr_fmt define to crypto opcode drivers.
        sparc64: Adjust crypto priorities.
        sparc64: Use cpu_pgsz_mask for linear kernel mapping config.
        sparc64: Probe cpu page size support more portably.
        sparc64: Support 2GB and 16GB page sizes for kernel linear mappings.
        sparc64: Fix bugs in unrolled 256-bit loops.
        sparc64: Avoid code duplication in crypto assembler.
        sparc64: Unroll CTR crypt loops in AES driver.
        sparc64: Unroll ECB decryption loops in AES driver.
        sparc64: Unroll ECB encryption loops in AES driver.
        sparc64: Add ctr mode support to AES driver.
        sparc64: Move AES driver over to a methods based implementation.
        ...
      a20acf99
    • H
      hyperv: Add buffer for extended info after the RNDIS response message. · a3a6cab5
      Haiyang Zhang 提交于
      In some response messages, there may be some extended info after the
      message.
      Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com>
      Reviewed-by: NK. Y. Srinivasan <kys@microsoft.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a3a6cab5
    • H
      hyperv: Report actual status in receive completion packet · 63f6921d
      Haiyang Zhang 提交于
      The existing code always reports NVSP_STAT_SUCCESS. This patch adds the
      mechanism to report failure when it happens.
      Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com>
      Reviewed-by: NK. Y. Srinivasan <kys@microsoft.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      63f6921d
    • H
      hyperv: Remove extra allocated space for recv_pkt_list elements · 6562640b
      Haiyang Zhang 提交于
      The receive code path doesn't use the page buffer, so remove the
      extra allocated space here.
      Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com>
      Reviewed-by: NK. Y. Srinivasan <kys@microsoft.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6562640b
    • H
      hyperv: Fix page buffer handling in rndis_filter_send_request() · 99e3fcfa
      Haiyang Zhang 提交于
      To prevent possible data corruption in RNDIS requests, add another
      page buffer if the request message crossed page boundary.
      Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com>
      Reviewed-by: NK. Y. Srinivasan <kys@microsoft.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      99e3fcfa
    • H
      hyperv: Fix the missing return value in rndis_filter_set_packet_filter() · ea496374
      Haiyang Zhang 提交于
      Return ETIMEDOUT when the reply message is not received in time.
      Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com>
      Reviewed-by: NK. Y. Srinivasan <kys@microsoft.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ea496374
    • H
      hyperv: Fix the max_xfer_size in RNDIS initialization · fb1d074e
      Haiyang Zhang 提交于
      According to RNDIS specs, Windows sets this size to
      0x4000. I use the same value here.
      Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com>
      Reviewed-by: NK. Y. Srinivasan <kys@microsoft.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      fb1d074e
    • S
      vxlan: put UDP socket in correct namespace · bfe1b9b1
      stephen hemminger 提交于
      Move vxlan UDP socket to correct network namespace
      Signed-off-by: NStephen Hemminger <shemminger@vyatta.com>
      Acked-by: N"Eric W. Biederman" <ebiederm@xmission.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      bfe1b9b1
    • D
      vxlan: Depend on CONFIG_INET · aaba1f58
      David S. Miller 提交于
      Reported-by: NRandy Dunlap <rdunlap@xenotime.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      aaba1f58
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace · 437589a7
      Linus Torvalds 提交于
      Pull user namespace changes from Eric Biederman:
       "This is a mostly modest set of changes to enable basic user namespace
        support.  This allows the code to code to compile with user namespaces
        enabled and removes the assumption there is only the initial user
        namespace.  Everything is converted except for the most complex of the
        filesystems: autofs4, 9p, afs, ceph, cifs, coda, fuse, gfs2, ncpfs,
        nfs, ocfs2 and xfs as those patches need a bit more review.
      
        The strategy is to push kuid_t and kgid_t values are far down into
        subsystems and filesystems as reasonable.  Leaving the make_kuid and
        from_kuid operations to happen at the edge of userspace, as the values
        come off the disk, and as the values come in from the network.
        Letting compile type incompatible compile errors (present when user
        namespaces are enabled) guide me to find the issues.
      
        The most tricky areas have been the places where we had an implicit
        union of uid and gid values and were storing them in an unsigned int.
        Those places were converted into explicit unions.  I made certain to
        handle those places with simple trivial patches.
      
        Out of that work I discovered we have generic interfaces for storing
        quota by projid.  I had never heard of the project identifiers before.
        Adding full user namespace support for project identifiers accounts
        for most of the code size growth in my git tree.
      
        Ultimately there will be work to relax privlige checks from
        "capable(FOO)" to "ns_capable(user_ns, FOO)" where it is safe allowing
        root in a user names to do those things that today we only forbid to
        non-root users because it will confuse suid root applications.
      
        While I was pushing kuid_t and kgid_t changes deep into the audit code
        I made a few other cleanups.  I capitalized on the fact we process
        netlink messages in the context of the message sender.  I removed
        usage of NETLINK_CRED, and started directly using current->tty.
      
        Some of these patches have also made it into maintainer trees, with no
        problems from identical code from different trees showing up in
        linux-next.
      
        After reading through all of this code I feel like I might be able to
        win a game of kernel trivial pursuit."
      
      Fix up some fairly trivial conflicts in netfilter uid/git logging code.
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace: (107 commits)
        userns: Convert the ufs filesystem to use kuid/kgid where appropriate
        userns: Convert the udf filesystem to use kuid/kgid where appropriate
        userns: Convert ubifs to use kuid/kgid
        userns: Convert squashfs to use kuid/kgid where appropriate
        userns: Convert reiserfs to use kuid and kgid where appropriate
        userns: Convert jfs to use kuid/kgid where appropriate
        userns: Convert jffs2 to use kuid and kgid where appropriate
        userns: Convert hpfs to use kuid and kgid where appropriate
        userns: Convert btrfs to use kuid/kgid where appropriate
        userns: Convert bfs to use kuid/kgid where appropriate
        userns: Convert affs to use kuid/kgid wherwe appropriate
        userns: On alpha modify linux_to_osf_stat to use convert from kuids and kgids
        userns: On ia64 deal with current_uid and current_gid being kuid and kgid
        userns: On ppc convert current_uid from a kuid before printing.
        userns: Convert s390 getting uid and gid system calls to use kuid and kgid
        userns: Convert s390 hypfs to use kuid and kgid where appropriate
        userns: Convert binder ipc to use kuids
        userns: Teach security_path_chown to take kuids and kgids
        userns: Add user namespace support to IMA
        userns: Convert EVM to deal with kuids and kgids in it's hmac computation
        ...
      437589a7
    • L
      Merge branch 'for-3.7-hierarchy' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 68d47a13
      Linus Torvalds 提交于
      Pull cgroup hierarchy update from Tejun Heo:
       "Currently, different cgroup subsystems handle nested cgroups
        completely differently.  There's no consistency among subsystems and
        the behaviors often are outright broken.
      
        People at least seem to agree that the broken hierarhcy behaviors need
        to be weeded out if any progress is gonna be made on this front and
        that the fallouts from deprecating the broken behaviors should be
        acceptable especially given that the current behaviors don't make much
        sense when nested.
      
        This patch makes cgroup emit warning messages if cgroups for
        subsystems with broken hierarchy behavior are nested to prepare for
        fixing them in the future.  This was put in a separate branch because
        more related changes were expected (didn't make it this round) and the
        memory cgroup wanted to pull in this and make changes on top."
      
      * 'for-3.7-hierarchy' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cgroup: mark subsystems with broken hierarchy support and whine if cgroups are nested for them
      68d47a13
    • L
      Merge branch 'for-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · c0e8a139
      Linus Torvalds 提交于
      Pull cgroup updates from Tejun Heo:
      
       - xattr support added.  The implementation is shared with tmpfs.  The
         usage is restricted and intended to be used to manage per-cgroup
         metadata by system software.  tmpfs changes are routed through this
         branch with Hugh's permission.
      
       - cgroup subsystem ID handling simplified.
      
      * 'for-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cgroup: Define CGROUP_SUBSYS_COUNT according the configuration
        cgroup: Assign subsystem IDs during compile time
        cgroup: Do not depend on a given order when populating the subsys array
        cgroup: Wrap subsystem selection macro
        cgroup: Remove CGROUP_BUILTIN_SUBSYS_COUNT
        cgroup: net_prio: Do not define task_netpioidx() when not selected
        cgroup: net_cls: Do not define task_cls_classid() when not selected
        cgroup: net_cls: Move sock_update_classid() declaration to cls_cgroup.h
        cgroup: trivial fixes for Documentation/cgroups/cgroups.txt
        xattr: mark variable as uninitialized to make both gcc and smatch happy
        fs: add missing documentation to simple_xattr functions
        cgroup: add documentation on extended attributes usage
        cgroup: rename subsys_bits to subsys_mask
        cgroup: add xattr support
        cgroup: revise how we re-populate root directory
        xattr: extract simple_xattr code from tmpfs
      c0e8a139
    • L
      Merge branch 'for-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · 033d9959
      Linus Torvalds 提交于
      Pull workqueue changes from Tejun Heo:
       "This is workqueue updates for v3.7-rc1.  A lot of activities this
        round including considerable API and behavior cleanups.
      
         * delayed_work combines a timer and a work item.  The handling of the
           timer part has always been a bit clunky leading to confusing
           cancelation API with weird corner-case behaviors.  delayed_work is
           updated to use new IRQ safe timer and cancelation now works as
           expected.
      
         * Another deficiency of delayed_work was lack of the counterpart of
           mod_timer() which led to cancel+queue combinations or open-coded
           timer+work usages.  mod_delayed_work[_on]() are added.
      
           These two delayed_work changes make delayed_work provide interface
           and behave like timer which is executed with process context.
      
         * A work item could be executed concurrently on multiple CPUs, which
           is rather unintuitive and made flush_work() behavior confusing and
           half-broken under certain circumstances.  This problem doesn't
           exist for non-reentrant workqueues.  While non-reentrancy check
           isn't free, the overhead is incurred only when a work item bounces
           across different CPUs and even in simulated pathological scenario
           the overhead isn't too high.
      
           All workqueues are made non-reentrant.  This removes the
           distinction between flush_[delayed_]work() and
           flush_[delayed_]_work_sync().  The former is now as strong as the
           latter and the specified work item is guaranteed to have finished
           execution of any previous queueing on return.
      
         * In addition to the various bug fixes, Lai redid and simplified CPU
           hotplug handling significantly.
      
         * Joonsoo introduced system_highpri_wq and used it during CPU
           hotplug.
      
        There are two merge commits - one to pull in IRQ safe timer from
        tip/timers/core and the other to pull in CPU hotplug fixes from
        wq/for-3.6-fixes as Lai's hotplug restructuring depended on them."
      
      Fixed a number of trivial conflicts, but the more interesting conflicts
      were silent ones where the deprecated interfaces had been used by new
      code in the merge window, and thus didn't cause any real data conflicts.
      
      Tejun pointed out a few of them, I fixed a couple more.
      
      * 'for-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: (46 commits)
        workqueue: remove spurious WARN_ON_ONCE(in_irq()) from try_to_grab_pending()
        workqueue: use cwq_set_max_active() helper for workqueue_set_max_active()
        workqueue: introduce cwq_set_max_active() helper for thaw_workqueues()
        workqueue: remove @delayed from cwq_dec_nr_in_flight()
        workqueue: fix possible stall on try_to_grab_pending() of a delayed work item
        workqueue: use hotcpu_notifier() for workqueue_cpu_down_callback()
        workqueue: use __cpuinit instead of __devinit for cpu callbacks
        workqueue: rename manager_mutex to assoc_mutex
        workqueue: WORKER_REBIND is no longer necessary for idle rebinding
        workqueue: WORKER_REBIND is no longer necessary for busy rebinding
        workqueue: reimplement idle worker rebinding
        workqueue: deprecate __cancel_delayed_work()
        workqueue: reimplement cancel_delayed_work() using try_to_grab_pending()
        workqueue: use mod_delayed_work() instead of __cancel + queue
        workqueue: use irqsafe timer for delayed_work
        workqueue: clean up delayed_work initializers and add missing one
        workqueue: make deferrable delayed_work initializer names consistent
        workqueue: cosmetic whitespace updates for macro definitions
        workqueue: deprecate system_nrt[_freezable]_wq
        workqueue: deprecate flush[_delayed]_work_sync()
        ...
      033d9959
  3. 02 10月, 2012 2 次提交