1. 22 4月, 2015 8 次提交
    • M
      parisc: Eliminate sg_virt_addr() and private scatterlist.h · 8bf8a1d1
      Matthew Wilcox 提交于
      The only reason to keep parisc's private asm/scatterlist.h was that it
      had the macro sg_virt_addr().  Convert all callers to use something else
      (sometimes just sg->offset was enough, others should use sg_virt()), and
      we can just use the asm-generic scatterlist.h instead.
      Signed-off-by: NMatthew Wilcox <willy@linux.intel.com>
      Signed-off-by: NDave Anglin <dave.anglin@bell.net>
      Signed-off-by: NHelge Deller <deller@gmx.de>
      8bf8a1d1
    • L
      media: remove unused variable that causes a warning · 1d11437f
      Linus Torvalds 提交于
      My 'allmodconfig' build is _almost_ free of warnings, and most of the
      remaining ones are for legacy drivers that just do bad things that I
      can't find it in my black heart to care too much about.  But this one
      was just annoying me:
      
         drivers/media/v4l2-core/videobuf2-core.c:3256:26: warning: unused variable ‘fileio’ [-Wunused-variable]
      
      because commit 0e661006 ("[media] vb2: fix 'UNBALANCED' warnings
      when calling vb2_thread_stop()") removed all users of 'fileio' and
      instead calls "__vb2_cleanup_fileio(q)" to clean up q->fileio.  But the
      now unused 'fileio' variable was left around.
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      1d11437f
    • L
      Merge tag 'media/v4.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · 0c8027d5
      Linus Torvalds 提交于
      Pull media updates from Mauro Carvalho Chehab:
      
       - a new frontend driver for new ATSC devices: lgdt3306a
      
       - a new sensor driver: ov2659
      
       - a new platform driver: xilinx
      
       - the m88ts2022 tuner driver was merged at ts2020 driver
      
       - the media controller gained experimental support for DVB and hybrid
         devices
      
       - lots of random cleanups, fixes and improvements on media drivers
      
      * tag 'media/v4.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (404 commits)
        [media] uvcvideo: add support for VIDIOC_QUERY_EXT_CTRL
        [media] uvcvideo: fix cropcap v4l2-compliance failure
        [media] media: omap3isp: remove unused clkdev
        [media] coda: Add tracing support
        [media] coda: drop dma_sync_single_for_device in coda_bitstream_queue
        [media] coda: fix fill bitstream errors in nonstreaming case
        [media] coda: call SEQ_END when the first queue is stopped
        [media] coda: fail to start streaming if userspace set invalid formats
        [media] coda: remove duplicate error messages for buffer allocations
        [media] coda: move parameter buffer in together with context buffer allocation
        [media] coda: allocate bitstream buffer from REQBUFS, size depends on the format
        [media] coda: allocate per-context buffers from REQBUFS
        [media] coda: use strlcpy instead of snprintf
        [media] coda: bitstream payload is unsigned
        [media] coda: fix double call to debugfs_remove
        [media] coda: check kasprintf return value in coda_open
        [media] coda: bitrate can only be set in kbps steps
        [media] v4l2-mem2mem: no need to initialize b in v4l2_m2m_next_buf and v4l2_m2m_buf_remove
        [media] s5p-mfc: set allow_zero_bytesused flag for vb2_queue_init
        [media] coda: set allow_zero_bytesused flag for vb2_queue_init
        ...
      0c8027d5
    • L
      Merge tag 'char-misc-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 1fc14993
      Linus Torvalds 提交于
      Pull char/misc driver updates from Greg KH:
       "Here's the big char/misc driver patchset for 4.1-rc1.
      
        Lots of different driver subsystem updates here, nothing major, full
        details are in the shortlog.
      
        All of this has been in linux-next for a while"
      
      * tag 'char-misc-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (133 commits)
        mei: trace: remove unused TRACE_SYSTEM_STRING
        DTS: ARM: OMAP3-N900: Add lis3lv02d support
        Documentation: DT: lis302: update wakeup binding
        lis3lv02d: DT: add wakeup unit 2 and wakeup threshold
        lis3lv02d: DT: use s32 to support negative values
        Drivers: hv: hv_balloon: correctly handle num_pages>INT_MAX case
        Drivers: hv: hv_balloon: correctly handle val.freeram<num_pages case
        mei: replace check for connection instead of transitioning
        mei: use mei_cl_is_connected consistently
        mei: fix mei_poll operation
        hv_vmbus: Add gradually increased delay for retries in vmbus_post_msg()
        Drivers: hv: hv_balloon: survive ballooning request with num_pages=0
        Drivers: hv: hv_balloon: eliminate jumps in piecewiese linear floor function
        Drivers: hv: hv_balloon: do not online pages in offline blocks
        hv: remove the per-channel workqueue
        hv: don't schedule new works in vmbus_onoffer()/vmbus_onoffer_rescind()
        hv: run non-blocking message handlers in the dispatch tasklet
        coresight: moving to new "hwtracing" directory
        coresight-tmc: Adding a status interface to sysfs
        coresight: remove the unnecessary configuration coresight-default-sink
        ...
      1fc14993
    • L
      Merge tag 'tty-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 41d5e08e
      Linus Torvalds 提交于
      Pull tty/serial updates from Greg KH:
       "Here's the big tty/serial driver update for 4.1-rc1.
      
        It was delayed for a bit due to some questions surrounding some of the
        console command line parsing changes that are in here.  There's still
        one tiny regression for people who were previously putting multiple
        console command lines and expecting them all to be ignored for some
        odd reason, but Peter is working on fixing that.  If not, I'll send a
        revert for the offending patch, but I have faith that Peter can
        address it.
      
        Other than the console work here, there's the usual serial driver
        updates and changes, and a buch of 8250 reworks to try to make that
        driver easier to maintain over time, and have it support more devices
        in the future.
      
        All of these have been in linux-next for a while"
      
      * tag 'tty-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (119 commits)
        n_gsm: Drop unneeded cast on netdev_priv
        sc16is7xx: expose RTS inversion in RS-485 mode
        serial: 8250_pci: port failed after wakeup from S3
        earlycon: 8250: Document kernel command line options
        earlycon: 8250: Fix command line regression
        earlycon: Fix __earlycon_table stride
        tty: clean up the tty time logic a bit
        serial: 8250_dw: only get the clock rate in one place
        serial: 8250_dw: remove useless ACPI ID check
        dmaengine: hsu: move memory allocation to GFP_NOWAIT
        dmaengine: hsu: remove redundant pieces of code
        serial: 8250_pci: add Intel Tangier support
        dmaengine: hsu: add Intel Tangier PCI ID
        serial: 8250_pci: replace switch-case by formula for Intel MID
        serial: 8250_pci: replace switch-case by formula
        tty: cpm_uart: replace CONFIG_8xx by CONFIG_CPM1
        serial: jsm: some off by one bugs
        serial: xuartps: Fix check in console_setup().
        serial: xuartps: Get rid of register access macros.
        serial: xuartps: Fix iobase use.
        ...
      41d5e08e
    • L
      Merge tag 'pinctrl-v4.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · 8d582b94
      Linus Torvalds 提交于
      Pull pincontrol Kconfig fix from Linus Walleij:
       "This fixes the annoying Kconfig noise from pin control.  Mea Culpa"
      
      * tag 'pinctrl-v4.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
        pinctrl: fix allmodconfig noise
      8d582b94
    • L
      Merge tag 'clk-for-linus-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · e98bf5ce
      Linus Torvalds 提交于
      Pull clock framework updates from Michael Turquette:
       "The changes to the common clock framework for 4.0 are mostly new clock
        drivers and updates to existing ones for feature enhancements and bug
        fixes.
      
        There is more churn than usual in the framework core due to the change
        to introduce per-user unique struct clk pointers in 4.0.  This caused
        several regressions to surface, some of which were sent as fixes to
        4.0.  New generic clock drivers were added for GPIO- and PWM-based
        clock controllers.
      
        Additionally the common clk-divider code recieved several fixes to the
        way it rounds rates"
      
      * tag 'clk-for-linus-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (91 commits)
        clk: check ->determine/round_rate() return value in clk_calc_new_rates
        clk: at91: usb: propagate rate modification to the parent clk
        clk: samsung: exynos4: Disable ARMCLK down feature on Exynos4210 SoC
        clk: don't use __initconst for non-const arrays
        clk: at91: change to using endian agnositc IO
        clk: clk-gpio-gate: Fix active low
        clk: Add PWM clock driver
        clk: Add clock driver for mb86s7x
        clk: pxa: pxa3xx: add missing os timer clock
        clk: tegra: Use the proper parent for plld_dsi
        clk: tegra: Use generic tegra_osc_clk_init() on Tegra114
        clk: tegra: Model oscillator as clock
        clk: tegra: Add peripheral registers for bank Y
        clk: tegra: Register the proper number of resets
        clk: tegra: Remove needless initializations
        clk: tegra: Use consistent indentation
        clk: tegra: Various whitespace cleanups
        clk: tegra: Enable HDA to HDMI clocks on Tegra124
        clk: tegra: Fix a bunch of sparse warnings
        clk: tegra: Fix typo tabel -> table
        ...
      e98bf5ce
    • L
      Revert "ocfs2: incorrect check for debugfs returns" · 8f443e23
      Linus Torvalds 提交于
      This reverts commit e2ac55b6.
      
      Huang Ying reports that this causes a hang at boot with debugfs disabled.
      
      It is true that the debugfs error checks are kind of confusing, and this
      code certainly merits more cleanup and thinking about it, but there's
      something wrong with the trivial "check not just for NULL, but for error
      pointers too" patch.
      
      Yes, with debugfs disabled, we will end up setting the o2hb_debug_dir
      pointer variable to an error pointer (-ENODEV), and then continue as if
      everything was fine.  But since debugfs is disabled, all the _users_ of
      that pointer end up being compiled away, so even though the pointer can
      not be dereferenced, that's still fine.
      
      So it's confusing and somewhat questionable, but the "more correct"
      error checks end up causing more trouble than they fix.
      Reported-by: NHuang Ying <ying.huang@intel.com>
      Acked-by: NAndrew Morton <akpm@linux-foundation.org>
      Acked-by: NChengyu Song <csong84@gatech.edu>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      8f443e23
  2. 21 4月, 2015 12 次提交
    • M
      Merge branch 'drm-next-merged' of git://people.freedesktop.org/~airlied/linux into v4l_for_linus · 64131a87
      Mauro Carvalho Chehab 提交于
      * 'drm-next-merged' of git://people.freedesktop.org/~airlied/linux: (9717 commits)
        media-bus: Fixup RGB444_1X12, RGB565_1X16, and YUV8_1X24 media bus format
        hexdump: avoid warning in test function
        fs: take i_mutex during prepare_binprm for set[ug]id executables
        smp: Fix error case handling in smp_call_function_*()
        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
        Break up monolithic iommu table/lock into finer graularity pools and lock
        sparc: Revert generic IOMMU allocator.
        tools/power turbostat: correct dumped pkg-cstate-limit value
        tools/power turbostat: calculate TSC frequency from CPUID(0x15) on SKL
        tools/power turbostat: correct DRAM RAPL units on recent Xeon processors
        tools/power turbostat: Initial Skylake support
        tools/power turbostat: Use $(CURDIR) instead of $(PWD) and add support for O= option in Makefile
        tools/power turbostat: modprobe msr, if needed
        tools/power turbostat: dump MSR_TURBO_RATIO_LIMIT2
        tools/power turbostat: use new MSR_TURBO_RATIO_LIMIT names
        Bluetooth: hidp: Fix regression with older userspace and flags validation
        config: Enable NEED_DMA_MAP_STATE by default when SWIOTLB is selected
        perf/x86/intel/pt: Fix and clean up error handling in pt_event_add()
        ...
      
      That solves several merge conflicts:
      	Documentation/DocBook/media/v4l/subdev-formats.xml
      	Documentation/devicetree/bindings/vendor-prefixes.txt
      	drivers/staging/media/mn88473/mn88473.c
      	include/linux/kconfig.h
      	include/uapi/linux/media-bus-format.h
      
      The ones at subdev-formats.xml and media-bus-format.h are not trivial.
      That's why we opted to merge from DRM.
      64131a87
    • M
      Merge branch 'patchwork' into v4l_for_linus · 676ee36b
      Mauro Carvalho Chehab 提交于
      * patchwork: (404 commits)
        [media] uvcvideo: add support for VIDIOC_QUERY_EXT_CTRL
        [media] uvcvideo: fix cropcap v4l2-compliance failure
        [media] media: omap3isp: remove unused clkdev
        [media] coda: Add tracing support
        [media] coda: drop dma_sync_single_for_device in coda_bitstream_queue
        [media] coda: fix fill bitstream errors in nonstreaming case
        [media] coda: call SEQ_END when the first queue is stopped
        [media] coda: fail to start streaming if userspace set invalid formats
        [media] coda: remove duplicate error messages for buffer allocations
        [media] coda: move parameter buffer in together with context buffer allocation
        [media] coda: allocate bitstream buffer from REQBUFS, size depends on the format
        [media] coda: allocate per-context buffers from REQBUFS
        [media] coda: use strlcpy instead of snprintf
        [media] coda: bitstream payload is unsigned
        [media] coda: fix double call to debugfs_remove
        [media] coda: check kasprintf return value in coda_open
        [media] coda: bitrate can only be set in kbps steps
        [media] v4l2-mem2mem: no need to initialize b in v4l2_m2m_next_buf and v4l2_m2m_buf_remove
        [media] s5p-mfc: set allow_zero_bytesused flag for vb2_queue_init
        [media] coda: set allow_zero_bytesused flag for vb2_queue_init
        ...
      676ee36b
    • L
      Merge tag 'remoteproc-4.1-next' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/remoteproc · 646da631
      Linus Torvalds 提交于
      Pull remoteproc update from Ohad Ben-Cohen:
       "Suman Anna is adding remoteproc support for processors not behind
        IOMMUs"
      
      * tag 'remoteproc-4.1-next' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/remoteproc:
        remoteproc: add IOMMU hardware capability flag
      646da631
    • L
      Merge branch 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild · 8f49309a
      Linus Torvalds 提交于
      Pull misc kbuild updates:
       "This is the remaining part of kbuild stuff for v4.1-rc1:
      
         - One wew coccinelle script and a clarification of the proposed fix
           in bugon.coccinelle
      
         - CONFIG_KERNEL_LZ4 support for extract-ikconfig"
      
      * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
        scripts/coccinelle/misc/bugon.cocci: update bug_on conversion warning
        scripts/extract-ikconfig: Support LZ4-compressed images.
        irqf_oneshot.cocci: add check of devm_request_threaded_irq()
      8f49309a
    • L
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · b153f1d3
      Linus Torvalds 提交于
      Pull SCSI fixes from James Bottomley:
       "I'd like to say these were a set of regressions for the recent merge
        window code.  Unfortunately, they all predate the merge window code
        (stable cc'd).
      
        There are two fixes for data integrity (mostly only showing up on
        module removal), an mvsas crash with expander attached SATA devices
        which goes back to the dawn of the driver but is only just being
        picked up as sas expanders become a standard item in low end server
        hardware, an am53c974 one because the interrupt data isn't fully
        initialised before the line is and a megaraid_sas one because it uses
        smp_processor_id() to select MSI-X queues and that now triggers a
        WARN_ON()"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        mvsas: fix panic on expander attached SATA devices
        am53c974: Fix crash during modprobe
        megaraid_sas: use raw_smp_processor_id()
        sd: Fix missing ATO tag check
        sd: Unregister integrity profile
      b153f1d3
    • L
      Merge tag 'fbdev-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux · bf2ae5d3
      Linus Torvalds 提交于
      Pull fbdev updates from Tomi Valkeinen:
       "Small fixes and improvements to various fbdev drivers"
      
      * tag 'fbdev-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux: (24 commits)
        omapdss: extend pm notifier to handle hibernation
        OMAPDSS: Correct video ports description file path in DT binding doc
        OMAPDSS: disable VT switch
        fbdev: sh_mobile_lcdc: Fix destruction of uninitialized mutex
        video: fbdev: sh_mobile_lcdcfb: Fix ROP3 sysfs attribute parsing
        fbdev: pm3fb: cleanup some confusing indenting
        hyperv: hyperv_fb: match wait_for_completion_timeout return type
        video: fbdev: use msecs_to_jiffies for time conversions
        fbdev: via/via_clock: fix sparse warning
        video: fbdev: make of_device_id array const
        fbdev: sm501fb: use memset_io
        OMAPDSS: workaround for MFLAG + NV12 issue
        OMAPDSS: Add support for MFLAG
        OMAPDSS: setup default fifo thresholds
        OMAPDSS: DISPC: lock access to DISPC_CONTROL & DISPC_CONFIG
        OMAPDSS: DISPC: fix div by zero issue in overlay scaling
        OMAPDSS: DISPC: change sync_pclk_edge default value
        OMAPDSS: change signal_level & signal_edge enum values
        OMAPDSS: DISPC: explicit handling for sync and de levels
        OMAPDSS: DISPC: remove OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES
        ...
      bf2ae5d3
    • L
      Merge branch 'drm-next-merged' of git://people.freedesktop.org/~airlied/linux · 14aa0244
      Linus Torvalds 提交于
      Pull drm updates from Dave Airlie:
       "Highlights:
      
        Core:
         - Virtual GEM layer merged, this has been around for a long time, and
           it provides a software backed device that allows userspace to use
           it as a GEM shared memory handler.  This makes it a lot easier to
           do certain things when you have no GPU but still have to deal with
           DRI expectations.
         - atomic helper updates.
         - framebuffer modifier interface added.
         - i2c over auxch displayport fixes.
         - fb width/height confusion fixes.
         - new driver for ps8622/ps8625 bridge chips
         - lots of new panels
      
        i915:
         - more plane atomic conversion
         - vGPU guest support for XenGT
         - Skylake workarounds and fixes
         - Y-tiling support
         - work on dynamic pagetable allocation
         - EU count report param for gen9+
         - CHV fixes (no longer prelim)
         - remove ilk rc6
         - frontbuffer tracking for fbc
         - Displayport link rate refactoring
         - sprite colorkey refactor
      
        radeon:
         - Displayport MST support (not enabled by default)
         - non-ATOM native hw auxch support (DCE5+)
         - output csc support
         - new queries for userspace debug support
         - new VCE packet
      
        nouveau:
         - gk20a iommu support
         - gm107 graphics support
         - more gm20x bringup (waiting on signed nvidia fw).
      
        amdkfd:
         - multiple kgd instance support
         - use 64-bit time accessors
      
        msm:
         - stolen memory support
         - DSI and dual-DSI support
         - snapdragon 410 support
      
        exynos:
         - cleanups for atomic and pageflip
      
        imx-drm:
         - more media-bus formats
         - TV output prep
         - drm panel support
      
        tegra:
         - hw vblank counter using host1x syncpoints
      
        omap:
         - universal plane support
         - prep work for atomic modesetting
      
        rcar-du:
         - ported to atomic modesetting
      
        atmel-hlcdc:
         - ported to atomic modesetting
         - added suspend/resume support
      
        sti:
         - ported to atomic modesetting
      
        dwhdmi:
         - more compliant audio support
         - update rockchip phy support
      
        tda998x:
         - DT probing for attached crtcs
         - simplified EDID reading
      
        rockchip:
         - fixes
      
        adv7511:
         - fixes"
      
      * 'drm-next-merged' of git://people.freedesktop.org/~airlied/linux: (689 commits)
        media-bus: Fixup RGB444_1X12, RGB565_1X16, and YUV8_1X24 media bus format
        drm/i915: Dont enable CS_PARSER_ERROR interrupts at all
        drm/i915: Move drm_framebuffer_unreference out of struct_mutex for takeover
        drm: fix trivial typo mistake
        drm: Make integer overflow checking cover universal cursor updates (v2)
        drm/nouveau/bios: fix fetching from acpi on certain systems
        drm/nouveau/gr/gm206: initial init+ctx code
        drm/nouveau/ce/gm206: enable support via gm204 code
        drm/nouveau/fifo/gm206: enable support via gm204 code
        drm/nouveau/gr/gm204: initial init+ctx code
        drm/nouveau: support for buffer moves via MaxwellDmaCopyA
        drm/nouveau/ce/gm204: initial support
        drm/nouveau: add support for gm20x fifo channels
        drm/nouveau/fifo/gm204: initial support
        drm/nouveau/gr/gk104-: prevent reading non-existent regs in intr handler
        drm/nouveau/gr/gm107: very slightly demagic part of attrib cb setup
        drm/nouveau/gr/gk104-: correct crop/zrop num_active_fbps setting
        drm/nouveau/gr/gf100-: add symbolic names for classes
        drm/nouveau/gr/gm107: support tpc "strand" ctxsw in gpccs ucode
        drm/nouveau/gr/gf100-: support mmio access with gpc offset from gpccs ucode
        ...
      14aa0244
    • L
      Merge tag 'iommu-updates-v4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · 79319a05
      Linus Torvalds 提交于
      Pull IOMMU updates from Joerg Roedel:
       "Not much this time, but the changes include:
      
         - moving domain allocation into the iommu drivers to prepare for the
           introduction of default domains for devices
      
         - fixing the IO page-table code in the AMD IOMMU driver to correctly
           encode large page sizes
      
         - extension of the PCI support in the ARM-SMMU driver
      
         - various fixes and cleanups"
      
      * tag 'iommu-updates-v4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (34 commits)
        iommu/amd: Correctly encode huge pages in iommu page tables
        iommu/amd: Optimize amd_iommu_iova_to_phys for new fetch_pte interface
        iommu/amd: Optimize alloc_new_range for new fetch_pte interface
        iommu/amd: Optimize iommu_unmap_page for new fetch_pte interface
        iommu/amd: Return the pte page-size in fetch_pte
        iommu/amd: Add support for contiguous dma allocator
        iommu/amd: Don't allocate with __GFP_ZERO in alloc_coherent
        iommu/amd: Ignore BUS_NOTIFY_UNBOUND_DRIVER event
        iommu/amd: Use BUS_NOTIFY_REMOVED_DEVICE
        iommu/tegra: smmu: Compute PFN mask at runtime
        iommu/tegra: gart: Set aperture at domain initialization time
        iommu/tegra: Setup aperture
        iommu: Remove domain_init and domain_free iommu_ops
        iommu/fsl: Make use of domain_alloc and domain_free
        iommu/rockchip: Make use of domain_alloc and domain_free
        iommu/ipmmu-vmsa: Make use of domain_alloc and domain_free
        iommu/shmobile: Make use of domain_alloc and domain_free
        iommu/msm: Make use of domain_alloc and domain_free
        iommu/tegra-gart: Make use of domain_alloc and domain_free
        iommu/tegra-smmu: Make use of domain_alloc and domain_free
        ...
      79319a05
    • L
      Merge tag 'cpumask-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux · 6496edfc
      Linus Torvalds 提交于
      Pull final removal of deprecated cpus_* cpumask functions from Rusty Russell:
       "This is the final removal (after several years!) of the obsolete
        cpus_* functions, prompted by their mis-use in staging.
      
        With these function removed, all cpu functions should only iterate to
        nr_cpu_ids, so we finally only allocate that many bits when cpumasks
        are allocated offstack"
      
      * tag 'cpumask-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux: (25 commits)
        cpumask: remove __first_cpu / __next_cpu
        cpumask: resurrect CPU_MASK_CPU0
        linux/cpumask.h: add typechecking to cpumask_test_cpu
        cpumask: only allocate nr_cpumask_bits.
        Fix weird uses of num_online_cpus().
        cpumask: remove deprecated functions.
        mips: fix obsolete cpumask_of_cpu usage.
        x86: fix more deprecated cpu function usage.
        ia64: remove deprecated cpus_ usage.
        powerpc: fix deprecated CPU_MASK_CPU0 usage.
        CPU_MASK_ALL/CPU_MASK_NONE: remove from deprecated region.
        staging/lustre/o2iblnd: Don't use cpus_weight
        staging/lustre/libcfs: replace deprecated cpus_ calls with cpumask_
        staging/lustre/ptlrpc: Do not use deprecated cpus_* functions
        blackfin: fix up obsolete cpu function usage.
        parisc: fix up obsolete cpu function usage.
        tile: fix up obsolete cpu function usage.
        arm64: fix up obsolete cpu function usage.
        mips: fix up obsolete cpu function usage.
        x86: fix up obsolete cpu function usage.
        ...
      6496edfc
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · b19a42e3
      Linus Torvalds 提交于
      Pull more s390 updates from Martin Schwidefsky:
       "The big thing in this second merge for s390 is the new eBPF JIT from
        Michael which replaces the old 32-bit backend.
      
        The remaining commits are bug fixes"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390/pci: add locking for fmb access
        s390/pci: extract software counters from fmb
        s390/dasd: Fix unresumed device after suspend/resume having no paths
        s390/dasd: fix unresumed device after suspend/resume
        s390/dasd: fix inability to set a DASD device offline
        s390/mm: Fix memory hotplug for unaligned standby memory
        s390/bpf: Add s390x eBPF JIT compiler backend
        s390: Use bool function return values of true/false not 1/0
      b19a42e3
    • L
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu · 5ca08a82
      Linus Torvalds 提交于
      Pull m68k fixes from Greg Ungerer:
       "Nothing big, spelling fixes and fix/cleanup for ColdFire eth device setup"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
        m68knommu: fix fec setup warning for ColdFire 5271 builds
        m68knommu: ColdFire 5271 only has a single FEC controller
        m68k: Fix trivial typos in comments
      5ca08a82
    • L
      smp: don't use 16-bit words for atomic accesses · f4d03bd1
      Linus Torvalds 提交于
      Yes, it should work, but it's a bad idea.  Not only did ARM64 not have
      the 16-bit access code (there's a separate patch to add it), it's just
      not a good atomic type.  Some architectures fundamentally don't do
      atomic accesses in them (alpha), and it's not like it saves any space
      here anyway because of structure packing issues.
      
      We normally should aim for flags to be "unsigned int" or "unsigned
      long".  And if space is at a premium, use a single byte (although that
      causes problems on alpha again).  There might be very special cases
      where a 16-byte entity is really wanted, but this is not one of them.
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      f4d03bd1
  3. 20 4月, 2015 11 次提交
  4. 19 4月, 2015 9 次提交
    • R
      cpumask: remove __first_cpu / __next_cpu · e4afa120
      Rusty Russell 提交于
      They were for use by the deprecated first_cpu() and next_cpu() wrappers,
      but sparc used them directly.
      
      They're now replaced by cpumask_first / cpumask_next.  And __next_cpu_nr
      is completely obsolete.
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      Acked-by: NDavid S. Miller <davem@davemloft.net>
      e4afa120
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc · 64fb1d0e
      Linus Torvalds 提交于
      Pull sparc fixes from David Miller
       "Unfortunately, I brown paper bagged the generic iommu pool allocator
        by applying the wrong revision of the patch series.
      
        This reverts the bad one, and puts the right one in"
      
      * 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
        Break up monolithic iommu table/lock into finer graularity pools and lock
        sparc: Revert generic IOMMU allocator.
      64fb1d0e
    • L
      Merge tag 'for-linus-4.1-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs · dba94f21
      Linus Torvalds 提交于
      Pull 9pfs updates from Eric Van Hensbergen:
       "Some accumulated cleanup patches for kerneldoc and unused variables as
        well as some lock bug fixes and adding privateport option for RDMA"
      
      * tag 'for-linus-4.1-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:
        net/9p: add a privport option for RDMA transport.
        fs/9p: Initialize status in v9fs_file_do_lock.
        net/9p: Initialize opts->privport as it should be.
        net/9p: use memcpy() instead of snprintf() in p9_mount_tag_show()
        9p: use unsigned integers for nwqid/count
        9p: do not crash on unknown lock status code
        9p: fix error handling in v9fs_file_do_lock
        9p: remove unused variable in p9_fd_create()
        9p: kerneldoc warning fixes
      dba94f21
    • D
      Merge branch 'iommu-generic-allocator' · ccb30186
      David S. Miller 提交于
      Sowmini Varadhan says:
      
      ====================
      Generic IOMMU pooled allocator
      
      Investigation of network performance on Sparc shows a high
      degree of locking contention in the IOMMU allocator, and it
      was noticed that the PowerPC code has a better locking model.
      
      This patch series tries to extract the generic parts of the
      PowerPC code so that it can be shared across multiple PCI
      devices and architectures.
      
      v10: resend patchv9 without RFC tag, and a new mail Message-Id,
      (previous non-RFC attempt did not show up on the patchwork queue?)
      
      Full revision history below:
      v2 changes:
        - incorporate David Miller editorial comments: sparc specific
          fields moved from iommu-common into sparc's iommu_64.h
        - make the npools value an input parameter, for the case when
          the iommu map size is not very large
        - cookie_to_index mapping, and optimizations for span-boundary
          check, for use case such as LDC.
      
      v3: eliminate iommu_sparc, rearrange the ->demap indirection to
          be invoked under the pool lock.
      
      v4: David Miller review changes:
        - s/IOMMU_ERROR_CODE/DMA_ERROR_CODE
        - page_table_map_base and page_table_shift are unsigned long, not u32.
      
      v5: removed ->cookie_to_index and ->demap indirection from the
          iommu_tbl_ops The caller needs to call these functions as needed,
          before invoking the generic arena allocator functions.
          Added the "skip_span_boundary" argument to iommu_tbl_pool_init() for
          those callers like LDC which do no care about span boundary checks.
      
      v6: removed iommu_tbl_ops, and instead pass the ->flush_all as
          an indirection to iommu_tbl_pool_init(); only invoke ->flush_all
          when there is no large_pool, based on the assumption that large-pool
          usage is infrequently encountered
      
      v7: moved pool_hash initialization to lib/iommu-common.c and cleaned up
          code duplication from sun4v/sun4u/ldc.
      
      v8: Addresses BenH comments with one exception: I've left the
          IOMMU_POOL_HASH as is, so that powerpc can tailor it to their
          convenience.  Discard trylock for simple spin_lock to acquire pool
      
      v9: Addresses latest BenH comments: need_flush checks, add support
          for dma mask and align_order.
      
      v10: resend without RFC tag, and new mail Message-Id.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ccb30186
    • S
      iommu-common: Fix PARISC compile-time warnings · 2f0c0fdc
      Sowmini Varadhan 提交于
      Fixes warnings due to
      - no DMA_ERROR_CODE on PARISC,
      - sizeof (unsigned long) == 4 bytes on PARISC.
      Signed-off-by: NSowmini Varadhan <sowmini.varadhan@oracle.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2f0c0fdc
    • S
      sparc: Make LDC use common iommu poll management functions · 0ae53ed1
      Sowmini Varadhan 提交于
      Note that this conversion is only being done to consolidate the
      code and ensure that the common code provides the sufficient
      abstraction. It is not expected to result in any noticeable
      performance improvement, as there is typically one ldc_iommu
      per vnet_port, and each one has 8k entries, with a typical
      request for 1-4 pages.  Thus LDC uses npools == 1.
      Signed-off-by: NSowmini Varadhan <sowmini.varadhan@oracle.com>
      Acked-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      0ae53ed1
    • S
      sparc: Make sparc64 use scalable lib/iommu-common.c functions · bb620c3d
      Sowmini Varadhan 提交于
      In iperf experiments running linux as the Tx side (TCP client) with
      10 threads results in a severe performance drop when TSO is disabled,
      indicating a weakness in the software that can be avoided by using
      the scalable IOMMU arena DMA allocation.
      
      Baseline numbers before this patch:
         with default settings (TSO enabled) :    9-9.5 Gbps
         Disable TSO using ethtool- drops badly:  2-3 Gbps.
      
      After this patch, iperf client with 10 threads, can give a
      throughput of at least 8.5 Gbps, even when TSO is disabled.
      Signed-off-by: NSowmini Varadhan <sowmini.varadhan@oracle.com>
      Acked-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      bb620c3d
    • S
      Break up monolithic iommu table/lock into finer graularity pools and lock · ff7d37a5
      Sowmini Varadhan 提交于
      Investigation of multithreaded iperf experiments on an ethernet
      interface show the iommu->lock as the hottest lock identified by
      lockstat, with something of the order of  21M contentions out of
      27M acquisitions, and an average wait time of 26 us for the lock.
      This is not efficient. A more scalable design is to follow the ppc
      model, where the iommu_map_table has multiple pools, each stretching
      over a segment of the map, and with a separate lock for each pool.
      This model allows for better parallelization of the iommu map search.
      
      This patch adds the iommu range alloc/free function infrastructure.
      Signed-off-by: NSowmini Varadhan <sowmini.varadhan@oracle.com>
      Acked-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ff7d37a5
    • D
      sparc: Revert generic IOMMU allocator. · c12f048f
      David S. Miller 提交于
      I applied the wrong version of this patch series, V4 instead
      of V10, due to a patchwork bundling snafu.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c12f048f