25 Oct, 2014

1 commit

  • Fix a typo error, the "emi" names refer to the eim clocks.

    The change fixes typo in EIM and EIM_SLOW pre-output dividers and
    selectors clock names. Notably EIM_SLOW clock itself is named correctly.

    Signed-off-by: Steve Longerbeam
    [vladimir_zapolskiy@mentor.com: ported to v3.17]
    Signed-off-by: Vladimir Zapolskiy
    Cc: Sascha Hauer
    Signed-off-by: Shawn Guo

    Steve Longerbeam
     

20 Oct, 2014

4 commits

  • Pull audit updates from Eric Paris:
    "So this change across a whole bunch of arches really solves one basic
    problem. We want to audit when seccomp is killing a process. seccomp
    hooks in before the audit syscall entry code. audit_syscall_entry
    took as an argument the arch of the given syscall. Since the arch is
    part of what makes a syscall number meaningful it's an important part
    of the record, but it isn't available when seccomp shoots the
    syscall...

    For most arch's we have a better way to get the arch (syscall_get_arch)
    So the solution was two fold: Implement syscall_get_arch() everywhere
    there is audit which didn't have it. Use syscall_get_arch() in the
    seccomp audit code. Having syscall_get_arch() everywhere meant it was
    a useless flag on the stack and we could get rid of it for the typical
    syscall entry.

    The other changes inside the audit system aren't grand, fixed some
    records that had invalid spaces. Better locking around the task comm
    field. Removing some dead functions and structs. Make some things
    static. Really minor stuff"

    * git://git.infradead.org/users/eparis/audit: (31 commits)
    audit: rename audit_log_remove_rule to disambiguate for trees
    audit: cull redundancy in audit_rule_change
    audit: WARN if audit_rule_change called illegally
    audit: put rule existence check in canonical order
    next: openrisc: Fix build
    audit: get comm using lock to avoid race in string printing
    audit: remove open_arg() function that is never used
    audit: correct AUDIT_GET_FEATURE return message type
    audit: set nlmsg_len for multicast messages.
    audit: use union for audit_field values since they are mutually exclusive
    audit: invalid op= values for rules
    audit: use atomic_t to simplify audit_serial()
    kernel/audit.c: use ARRAY_SIZE instead of sizeof/sizeof[0]
    audit: reduce scope of audit_log_fcaps
    audit: reduce scope of audit_net_id
    audit: arm64: Remove the audit arch argument to audit_syscall_entry
    arm64: audit: Add audit hook in syscall_trace_enter/exit()
    audit: x86: drop arch from __audit_syscall_entry() interface
    sparc: implement is_32bit_task
    sparc: properly conditionalize use of TIF_32BIT
    ...

    Linus Torvalds
     
  • Pull i2c updates from Wolfram Sang:
    "Highlights from the I2C subsystem for 3.18:

    - new drivers for Axxia AM55xx, and Hisilicon hix5hd2 SoC.

    - designware driver gained AMD support, exynos gained exynos7 support

    The rest is usual driver stuff. Hopefully no lowlights this time"

    * 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
    i2c: i801: Add Device IDs for Intel Sunrise Point PCH
    i2c: hix5hd2: add i2c controller driver
    i2c-imx: Disable the clock on probe failure
    i2c: designware: Add support for AMD I2C controller
    i2c: designware: Rework probe() to get clock a bit later
    i2c: designware: Default to fast mode in case of ACPI
    i2c: axxia: Add I2C driver for AXM55xx
    i2c: exynos: add support for HSI2C module on Exynos7
    i2c: mxs: detect No Slave Ack on SELECT in PIO mode
    i2c: cros_ec: Remove EC_I2C_FLAG_10BIT
    i2c: cros-ec-tunnel: Add of match table
    i2c: rcar: remove sign-compare flaw
    i2c: ismt: Use minimum descriptor size
    i2c: imx: Add arbitration lost check
    i2c: rk3x: Remove unlikely() annotations
    i2c: rcar: check for no IRQ in rcar_i2c_irq()
    i2c: rcar: make rcar_i2c_prepare_msg() *void*
    i2c: rcar: simplify check for last message
    i2c: designware: add support of platform data to set I2C mode
    i2c: designware: add support of I2C standard mode

    Linus Torvalds
     
  • Pull infiniband/RDMA updates from Roland Dreier:
    - large set of iSER initiator improvements
    - hardware driver fixes for cxgb4, mlx5 and ocrdma
    - small fixes to core midlayer

    * tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (47 commits)
    RDMA/cxgb4: Fix ntuple calculation for ipv6 and remove duplicate line
    RDMA/cxgb4: Add missing neigh_release in find_route
    RDMA/cxgb4: Take IPv6 into account for best_mtu and set_emss
    RDMA/cxgb4: Make c4iw_wr_log_size_order static
    IB/core: Fix XRC race condition in ib_uverbs_open_qp
    IB/core: Clear AH attr variable to prevent garbage data
    RDMA/ocrdma: Save the bit environment, spare unncessary parenthesis
    RDMA/ocrdma: The kernel has a perfectly good BIT() macro - use it
    RDMA/ocrdma: Don't memset() buffers we just allocated with kzalloc()
    RDMA/ocrdma: Remove a unused-label warning
    RDMA/ocrdma: Convert kernel VA to PA for mmap in user
    RDMA/ocrdma: Get vlan tag from ib_qp_attrs
    RDMA/ocrdma: Add default GID at index 0
    IB/mlx5, iser, isert: Add Signature API additions
    Target/iser: Centralize ib_sig_domain setting
    IB/iser: Centralize ib_sig_domain settings
    IB/mlx5: Use extended internal signature layout
    IB/iser: Set IP_CSUM as default guard type
    IB/iser: Remove redundant assignment
    IB/mlx5: Use enumerations for PI copy mask
    ...

    Linus Torvalds
     
  • Pull networking fixes from David Miller:
    "A quick batch of bug fixes:

    1) Fix build with IPV6 disabled, from Eric Dumazet.

    2) Several more cases of caching SKB data pointers across calls to
    pskb_may_pull(), thus referencing potentially free'd memory. From
    Li RongQing.

    3) DSA phy code tests operation presence improperly, instead of going:

    if (x->ops->foo)
    r = x->ops->foo(args);

    it was going:

    if (x->ops->foo(args))
    r = x->ops->foo(args);

    Fix from Andew Lunn"

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
    Net: DSA: Fix checking for get_phy_flags function
    ipv6: fix a potential use after free in sit.c
    ipv6: fix a potential use after free in ip6_offload.c
    ipv4: fix a potential use after free in gre_offload.c
    tcp: fix build error if IPv6 is not enabled

    Linus Torvalds
     

19 Oct, 2014

12 commits

  • Pull slave-dmaengine updates from Vinod Koul:
    "For dmaengine contributions we have:
    - designware cleanup by Andy
    - my series moving device_control users to dmanegine_xxx APIs for
    later removal of device_control API
    - minor fixes spread over drivers mainly mv_xor, pl330, mmp, imx-sdma
    etc"

    * 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma: (60 commits)
    serial: atmel: add missing dmaengine header
    dmaengine: remove FSLDMA_EXTERNAL_START
    dmaengine: freescale: remove FSLDMA_EXTERNAL_START control method
    carma-fpga: move to fsl_dma_external_start()
    carma-fpga: use dmaengine_xxx() API
    dmaengine: freescale: add and export fsl_dma_external_start()
    dmaengine: add dmaengine_prep_dma_sg() helper
    video: mx3fb: use dmaengine_terminate_all() API
    serial: sh-sci: use dmaengine_terminate_all() API
    net: ks8842: use dmaengine_terminate_all() API
    mtd: sh_flctl: use dmaengine_terminate_all() API
    mtd: fsmc_nand: use dmaengine_terminate_all() API
    V4L2: mx3_camer: use dmaengine_pause() API
    dmaengine: coh901318: use dmaengine_terminate_all() API
    pata_arasan_cf: use dmaengine_terminate_all() API
    dmaengine: edma: check for echan->edesc => NULL in edma_dma_pause()
    dmaengine: dw: export probe()/remove() and Co to users
    dmaengine: dw: enable and disable controller when needed
    dmaengine: dw: always export dw_dma_{en,dis}able
    dmaengine: dw: introduce dw_dma_on() helper
    ...

    Linus Torvalds
     
  • Pull fbdev updates from Tomi Valkeinen:
    - new 6x10 font
    - various small fixes and cleanups

    * tag 'fbdev-3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux: (30 commits)
    fonts: Add 6x10 font
    videomode: provide dummy inline functions for !CONFIG_OF
    video/atmel_lcdfb: Introduce regulator support
    fbdev: sh_mobile_hdmi: Re-init regs before irq re-enable on resume
    framebuffer: fix screen corruption when copying
    framebuffer: fix border color
    arm, fbdev, omap2, LLVMLinux: Remove nested function from omapfb
    arm, fbdev, omap2, LLVMLinux: Remove nested function from omap2 dss
    video: fbdev: valkyriefb.c: use container_of to resolve fb_info_valkyrie from fb_info
    video: fbdev: pxafb.c: use container_of to resolve pxafb_info/layer from fb_info
    video: fbdev: cyber2000fb.c: use container_of to resolve cfb_info from fb_info
    video: fbdev: controlfb.c: use container_of to resolve fb_info_control from fb_info
    video: fbdev: sa1100fb.c: use container_of to resolve sa1100fb_info from fb_info
    video: fbdev: stifb.c: use container_of to resolve stifb_info from fb_info
    video: fbdev: sis: sis_main.c: Cleaning up missing null-terminate in conjunction with strncpy
    video: valkyriefb: Fix unused variable warning in set_valkyrie_clock()
    video: fbdev: use %*ph specifier to dump small buffers
    video: mx3fb: always enable BACKLIGHT_LCD_SUPPORT
    video: fbdev: au1200fb: delete double assignment
    video: fbdev: sis: delete double assignment
    ...

    Linus Torvalds
     
  • Pull second batch of changes for KVM/{arm,arm64} from Marc Zyngier:
    "The most obvious thing is the sizeable MMU changes to support 48bit
    VAs on arm64.

    Summary:

    - support for 48bit IPA and VA (EL2)
    - a number of fixes for devices mapped into guests
    - yet another VGIC fix for BE
    - a fix for CPU hotplug
    - a few compile fixes (disabled VGIC, strict mm checks)"

    [ I'm pulling directly from Marc at the request of Paolo Bonzini, whose
    backpack was stolen at Düsseldorf airport and will do new keys and
    rebuild his web of trust. - Linus ]

    * tag 'kvm-arm-for-3.18-take-2' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm:
    arm/arm64: KVM: Fix BE accesses to GICv2 EISR and ELRSR regs
    arm: kvm: STRICT_MM_TYPECHECKS fix for user_mem_abort
    arm/arm64: KVM: Ensure memslots are within KVM_PHYS_SIZE
    arm64: KVM: Implement 48 VA support for KVM EL2 and Stage-2
    arm/arm64: KVM: map MMIO regions at creation time
    arm64: kvm: define PAGE_S2_DEVICE as read-only by default
    ARM: kvm: define PAGE_S2_DEVICE as read-only by default
    arm/arm64: KVM: add 'writable' parameter to kvm_phys_addr_ioremap
    arm/arm64: KVM: fix potential NULL dereference in user_mem_abort()
    arm/arm64: KVM: use __GFP_ZERO not memset() to get zeroed pages
    ARM: KVM: fix vgic-disabled build
    arm: kvm: fix CPU hotplug

    Linus Torvalds
     
  • Pull MIPS updates from Ralf Baechle:
    "This is the MIPS pull request for the next kernel:

    - Zubair's patch series adds CMA support for MIPS. Doing so it also
    touches ARM64 and x86.
    - remove the last instance of IRQF_DISABLED from arch/mips
    - updates to two of the MIPS defconfig files.
    - cleanup of how cache coherency bits are handled on MIPS and
    implement support for write-combining.
    - platform upgrades for Alchemy
    - move MIPS DTS files to arch/mips/boot/dts/"

    * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (24 commits)
    MIPS: ralink: remove deprecated IRQF_DISABLED
    MIPS: pgtable.h: Implement the pgprot_writecombine function for MIPS
    MIPS: cpu-probe: Set the write-combine CCA value on per core basis
    MIPS: pgtable-bits: Define the CCA bit for WC writes on Ingenic cores
    MIPS: pgtable-bits: Move the CCA bits out of the core's ifdef blocks
    MIPS: DMA: Add cma support
    x86: use generic dma-contiguous.h
    arm64: use generic dma-contiguous.h
    asm-generic: Add dma-contiguous.h
    MIPS: BPF: Add new emit_long_instr macro
    MIPS: ralink: Move device-trees to arch/mips/boot/dts/
    MIPS: Netlogic: Move device-trees to arch/mips/boot/dts/
    MIPS: sead3: Move device-trees to arch/mips/boot/dts/
    MIPS: Lantiq: Move device-trees to arch/mips/boot/dts/
    MIPS: Octeon: Move device-trees to arch/mips/boot/dts/
    MIPS: Add support for building device-tree binaries
    MIPS: Create common infrastructure for building built-in device-trees
    MIPS: SEAD3: Enable DEVTMPFS
    MIPS: SEAD3: Regenerate defconfigs
    MIPS: Alchemy: DB1300: Add touch penirq support
    ...

    Linus Torvalds
     
  • Pull NFS client updates from Trond Myklebust:
    "Highlights include:

    Stable fixes:
    - fix an uninitialised pointer Oops in the writeback error path
    - fix a bogus warning (and early exit from the loop) in nfs_generic_pgio()

    Features:
    - Add NFSv4.2 SEEK feature and client support for lseek(SEEK_HOLE/SEEK_DATA)

    Other fixes:
    - pnfs: replace broken pnfs_put_lseg_async
    - Remove dead prototype for nfs4_insert_deviceid_node"

    * tag 'nfs-for-3.18-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
    NFS: Fix a bogus warning in nfs_generic_pgio
    NFS: Fix an uninitialised pointer Oops in the writeback error path
    NFSv4.1/pnfs: replace broken pnfs_put_lseg_async
    NFSv4: Remove dead prototype for nfs4_insert_deviceid_node()
    NFS: Implement SEEK

    Linus Torvalds
     
  • Pull device-mapper updates from Mike Snitzer:
    "I rebased the DM tree ontop of linux-block.git's 'for-3.18/core' at
    the beginning of October because DM core now depends on the newly
    introduced bioset_create_nobvec() interface.

    Summary:

    - fix DM's long-standing excessive use of memory by leveraging the
    new bioset_create_nobvec() interface when creating the DM's bioset

    - fix a few bugs in dm-bufio and dm-log-userspace

    - add DM core support for a DM multipath use-case that requires
    loading DM tables that contain devices that have failed (by
    allowing active and inactive DM tables to share dm_devs)

    - add discard support to the DM raid target; like MD raid456 the user
    must opt-in to raid456 discard support be specifying the
    devices_handle_discard_safely=Y module param"

    * tag 'dm-3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
    dm log userspace: fix memory leak in dm_ulog_tfr_init failure path
    dm bufio: when done scanning return from __scan immediately
    dm bufio: update last_accessed when relinking a buffer
    dm raid: add discard support for RAID levels 4, 5 and 6
    dm raid: add discard support for RAID levels 1 and 10
    dm: allow active and inactive tables to share dm_devs
    dm mpath: stop queueing IO when no valid paths exist
    dm: use bioset_create_nobvec()
    dm: remove nr_iovecs parameter from alloc_tio()

    Linus Torvalds
     
  • Pull core block layer changes from Jens Axboe:
    "This is the core block IO pull request for 3.18. Apart from the new
    and improved flush machinery for blk-mq, this is all mostly bug fixes
    and cleanups.

    - blk-mq timeout updates and fixes from Christoph.

    - Removal of REQ_END, also from Christoph. We pass it through the
    ->queue_rq() hook for blk-mq instead, freeing up one of the request
    bits. The space was overly tight on 32-bit, so Martin also killed
    REQ_KERNEL since it's no longer used.

    - blk integrity updates and fixes from Martin and Gu Zheng.

    - Update to the flush machinery for blk-mq from Ming Lei. Now we
    have a per hardware context flush request, which both cleans up the
    code should scale better for flush intensive workloads on blk-mq.

    - Improve the error printing, from Rob Elliott.

    - Backing device improvements and cleanups from Tejun.

    - Fixup of a misplaced rq_complete() tracepoint from Hannes.

    - Make blk_get_request() return error pointers, fixing up issues
    where we NULL deref when a device goes bad or missing. From Joe
    Lawrence.

    - Prep work for drastically reducing the memory consumption of dm
    devices from Junichi Nomura. This allows creating clone bio sets
    without preallocating a lot of memory.

    - Fix a blk-mq hang on certain combinations of queue depths and
    hardware queues from me.

    - Limit memory consumption for blk-mq devices for crash dump
    scenarios and drivers that use crazy high depths (certain SCSI
    shared tag setups). We now just use a single queue and limited
    depth for that"

    * 'for-3.18/core' of git://git.kernel.dk/linux-block: (58 commits)
    block: Remove REQ_KERNEL
    blk-mq: allocate cpumask on the home node
    bio-integrity: remove the needless fail handle of bip_slab creating
    block: include func name in __get_request prints
    block: make blk_update_request print prefix match ratelimited prefix
    blk-merge: don't compute bi_phys_segments from bi_vcnt for cloned bio
    block: fix alignment_offset math that assumes io_min is a power-of-2
    blk-mq: Make bt_clear_tag() easier to read
    blk-mq: fix potential hang if rolling wakeup depth is too high
    block: add bioset_create_nobvec()
    block: use bio_clone_fast() in blk_rq_prep_clone()
    block: misplaced rq_complete tracepoint
    sd: Honor block layer integrity handling flags
    block: Replace strnicmp with strncasecmp
    block: Add T10 Protection Information functions
    block: Don't merge requests if integrity flags differ
    block: Integrity checksum flag
    block: Relocate bio integrity flags
    block: Add a disk flag to block integrity profile
    block: Add prefix to block integrity profile flags
    ...

    Linus Torvalds
     
  • Pull MTD update from Brian Norris:
    "Sorry for delaying this a bit later than usual. There's one mild
    regression from 3.16 that was noticed during the 3.17 cycle, and I
    meant to send a fix for it along with this pull request. I'll
    probably try to queue it up for a later pull request once I've had a
    better look at it, hopefully by -rc2 at the latest.

    Summary for this pull:

    NAND
    - Cleanup for Denali driver
    - Atmel: add support for new page sizes
    - Atmel: fix up 'raw' mode support
    - Atmel: miscellaneous cleanups
    - New timing mode helpers for non-ONFI NAND
    - OMAP: allow driver to be (properly) built as a module
    - bcm47xx: RESET support and other cleanups

    SPI NOR
    - Miscellaneous cleanups, to prepare framework for wider use (some
    further work still pending)
    - Compile-time configuration to select 4K vs. 64K support for flash
    that support both (necessary for using UBIFS on some SPI NOR)

    A few scattered code quality fixes, detected by Coverity

    See the changesets for more"

    * tag 'for-linus-20141015' of git://git.infradead.org/linux-mtd: (59 commits)
    mtd: nand: omap: Correct CONFIG_MTD_NAND_OMAP_BCH help message
    mtd: nand: Force omap_elm to be built as a module if omap2_nand is a module
    mtd: move support for struct flash_platform_data into m25p80
    mtd: spi-nor: add Kconfig option to disable 4K sectors
    mtd: nand: Move ELM driver and rename as omap_elm
    nand: omap2: Replace pr_err with dev_err
    nand: omap2: Remove horrible ifdefs to fix module probe
    mtd: nand: add Hynix's H27UCG8T2ATR-BC to nand_ids table
    mtd: nand: support ONFI timing mode retrieval for non-ONFI NANDs
    mtd: physmap_of: Add non-obsolete map_rom probe
    mtd: physmap_of: Fix ROM support via OF
    MAINTAINERS: add l2-mtd.git, 'next' tree for MTD
    mtd: denali: fix indents and other trivial things
    mtd: denali: remove unnecessary parentheses
    mtd: denali: remove another set-but-unused variable
    mtd: denali: fix include guard and license block of denali.h
    mtd: nand: don't break long print messages
    mtd: bcm47xxnflash: replace some magic numbers
    mtd: bcm47xxnflash: NAND_CMD_RESET support
    mtd: bcm47xxnflash: add cmd_ctrl handler
    ...

    Linus Torvalds
     
  • Pull md updates from Neil Brown:
    - a few minor bug fixes
    - quite a lot of code tidy-up and simplification
    - remove PRINT_RAID_DEBUG ioctl. I'm fairly sure it is unused, and it
    isn't particularly useful.

    * tag 'md/3.18' of git://neil.brown.name/md: (21 commits)
    lib/raid6: Add log level to printks
    md: move EXPORT_SYMBOL to after function in md.c
    md: discard PRINT_RAID_DEBUG ioctl
    md: remove MD_BUG()
    md: clean up 'exit' labels in md_ioctl().
    md: remove unnecessary test for MD_MAJOR in md_ioctl()
    md: don't allow "-sync" to be set for device in an active array.
    md: remove unwanted white space from md.c
    md: don't start resync thread directly from md thread.
    md: Just use RCU when checking for overlap between arrays.
    md: avoid potential long delay under pers_lock
    md: simplify export_array()
    md: discard find_rdev_nr in favour of find_rdev_nr_rcu
    md: use wait_event() to simplify md_super_wait()
    md: be more relaxed about stopping an array which isn't started.
    md/raid1: process_checks doesn't use its return value.
    md/raid5: fix init_stripe() inconsistencies
    md/raid10: another memory leak due to reshape.
    md: use set_bit/clear_bit instead of shift/mask for bi_flags changes.
    md/raid1: minor typos and reformatting.
    ...

    Linus Torvalds
     
  • Pull virtio updates from Rusty Russell:
    "One cc: stable commit, the rest are a series of minor cleanups which
    have been sitting in MST's tree during my vacation. I changed a
    function name and made one trivial change, then they spent two days in
    linux-next"

    * tag 'virtio-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux: (25 commits)
    virtio-rng: refactor probe error handling
    virtio_scsi: drop scan callback
    virtio_balloon: enable VQs early on restore
    virtio_scsi: fix race on device removal
    virito_scsi: use freezable WQ for events
    virtio_net: enable VQs early on restore
    virtio_console: enable VQs early on restore
    virtio_scsi: enable VQs early on restore
    virtio_blk: enable VQs early on restore
    virtio_scsi: move kick event out from virtscsi_init
    virtio_net: fix use after free on allocation failure
    9p/trans_virtio: enable VQs early
    virtio_console: enable VQs early
    virtio_blk: enable VQs early
    virtio_net: enable VQs early
    virtio: add API to enable VQs early
    virtio_net: minor cleanup
    virtio-net: drop config_mutex
    virtio_net: drop config_enable
    virtio-blk: drop config_mutex
    ...

    Linus Torvalds
     
  • $ make M=net/ipv4
    CC net/ipv4/route.o
    In file included from net/ipv4/route.c:102:0:
    include/net/tcp.h: In function ‘tcp_v6_iif’:
    include/net/tcp.h:738:32: error: ‘union ’ has no member named ‘h6’
    return TCP_SKB_CB(skb)->header.h6.iif;

    Signed-off-by: Eric Dumazet
    Fixes: 870c3151382c ("ipv6: introduce tcp_v6_iif()")
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • Pull networking fixes from David Miller:

    1) Include fixes for netrom and dsa (Fabian Frederick and Florian
    Fainelli)

    2) Fix FIXED_PHY support in stmmac, from Giuseppe CAVALLARO.

    3) Several SKB use after free fixes (vxlan, openvswitch, vxlan,
    ip_tunnel, fou), from Li ROngQing.

    4) fec driver PTP support fixes from Luwei Zhou and Nimrod Andy.

    5) Use after free in virtio_net, from Michael S Tsirkin.

    6) Fix flow mask handling for megaflows in openvswitch, from Pravin B
    Shelar.

    7) ISDN gigaset and capi bug fixes from Tilman Schmidt.

    8) Fix route leak in ip_send_unicast_reply(), from Vasily Averin.

    9) Fix two eBPF JIT bugs on x86, from Alexei Starovoitov.

    10) TCP_SKB_CB() reorganization caused a few regressions, fixed by Cong
    Wang and Eric Dumazet.

    11) Don't overwrite end of SKB when parsing malformed sctp ASCONF
    chunks, from Daniel Borkmann.

    12) Don't call sock_kfree_s() with NULL pointers, this function also has
    the side effect of adjusting the socket memory usage. From Cong Wang.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (90 commits)
    bna: fix skb->truesize underestimation
    net: dsa: add includes for ethtool and phy_fixed definitions
    openvswitch: Set flow-key members.
    netrom: use linux/uaccess.h
    dsa: Fix conversion from host device to mii bus
    tipc: fix bug in bundled buffer reception
    ipv6: introduce tcp_v6_iif()
    sfc: add support for skb->xmit_more
    r8152: return -EBUSY for runtime suspend
    ipv4: fix a potential use after free in fou.c
    ipv4: fix a potential use after free in ip_tunnel_core.c
    hyperv: Add handling of IP header with option field in netvsc_set_hash()
    openvswitch: Create right mask with disabled megaflows
    vxlan: fix a free after use
    openvswitch: fix a use after free
    ipv4: dst_entry leak in ip_send_unicast_reply()
    ipv4: clean up cookie_v4_check()
    ipv4: share tcp_v4_save_options() with cookie_v4_check()
    ipv4: call __ip_options_echo() in cookie_v4_check()
    atm: simplify lanai.c by using module_pci_driver
    ...

    Linus Torvalds
     

18 Oct, 2014

4 commits

  • net/dsa/slave.c uses functions and structures declared in phy_fixed.h
    but does not explicitely include it, while dsa.h needs structure
    declarations for 'struct ethtool_wolinfo' and 'struct ethtool_eee', fix
    those by including the correct header files.

    Fixes: ec9436baedb6 ("net: dsa: allow drivers to do link adjustment")
    Fixes: ce31b31c68e7 ("net: dsa: allow updating fixed PHY link information")
    Signed-off-by: Florian Fainelli
    Signed-off-by: David S. Miller

    Florian Fainelli
     
  • Commit 971f10eca186 ("tcp: better TCP_SKB_CB layout to reduce cache line
    misses") added a regression for SO_BINDTODEVICE on IPv6.

    This is because we still use inet6_iif() which expects that IP6 control
    block is still at the beginning of skb->cb[]

    This patch adds tcp_v6_iif() helper and uses it where necessary.

    Because __inet6_lookup_skb() is used by TCP and DCCP, we add an iif
    parameter to it.

    Signed-off-by: Eric Dumazet
    Fixes: 971f10eca186 ("tcp: better TCP_SKB_CB layout to reduce cache line misses")
    Acked-by: Cong Wang
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • We can retrieve opt from skb, no need to pass it as a parameter.
    And opt should always be non-NULL, no need to check.

    Cc: Krzysztof Kolasa
    Cc: Eric Dumazet
    Tested-by: Krzysztof Kolasa
    Signed-off-by: Cong Wang
    Signed-off-by: Cong Wang
    Acked-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Cong Wang
     
  • cookie_v4_check() allocates ip_options_rcu in the same way
    with tcp_v4_save_options(), we can just make it a helper function.

    Cc: Krzysztof Kolasa
    Cc: Eric Dumazet
    Signed-off-by: Cong Wang
    Signed-off-by: Cong Wang
    Acked-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Cong Wang
     

17 Oct, 2014

1 commit


16 Oct, 2014

6 commits


15 Oct, 2014

12 commits

  • The driver library functions can be used directly by the compound devices such
    as ADSP or serial driver where DesignWare DMA IP is privately attached to the
    main hardware.

    Instead of creating a new platform device leaf they may call dw_dma_probe()
    with given struct dw_dma_chip directly and make sure that the main device is
    DMA capable.

    Signed-off-by: Andy Shevchenko
    Signed-off-by: Vinod Koul

    Andy Shevchenko
     
  • The introduced include/linux/dma/dw.h is going to contain the private
    extensions and structures which are shared for dw_dmac users in the kernel.
    Meanwhile include/linux/platform_data/dma-dw.h keeps only platform related data
    types and definitions.

    Signed-off-by: Andy Shevchenko
    Signed-off-by: Vinod Koul

    Andy Shevchenko
     
  • Since we don't allow user to set registers directly through private slave
    configuration we may move definitions to the regs.h because they are not used
    anywhere except core.c part.

    Signed-off-by: Andy Shevchenko
    Signed-off-by: Vinod Koul

    Andy Shevchenko
     
  • Pull percpu consistent-ops changes from Tejun Heo:
    "Way back, before the current percpu allocator was implemented, static
    and dynamic percpu memory areas were allocated and handled separately
    and had their own accessors. The distinction has been gone for many
    years now; however, the now duplicate two sets of accessors remained
    with the pointer based ones - this_cpu_*() - evolving various other
    operations over time. During the process, we also accumulated other
    inconsistent operations.

    This pull request contains Christoph's patches to clean up the
    duplicate accessor situation. __get_cpu_var() uses are replaced with
    with this_cpu_ptr() and __this_cpu_ptr() with raw_cpu_ptr().

    Unfortunately, the former sometimes is tricky thanks to C being a bit
    messy with the distinction between lvalues and pointers, which led to
    a rather ugly solution for cpumask_var_t involving the introduction of
    this_cpu_cpumask_var_ptr().

    This converts most of the uses but not all. Christoph will follow up
    with the remaining conversions in this merge window and hopefully
    remove the obsolete accessors"

    * 'for-3.18-consistent-ops' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: (38 commits)
    irqchip: Properly fetch the per cpu offset
    percpu: Resolve ambiguities in __get_cpu_var/cpumask_var_t -fix
    ia64: sn_nodepda cannot be assigned to after this_cpu conversion. Use __this_cpu_write.
    percpu: Resolve ambiguities in __get_cpu_var/cpumask_var_t
    Revert "powerpc: Replace __get_cpu_var uses"
    percpu: Remove __this_cpu_ptr
    clocksource: Replace __this_cpu_ptr with raw_cpu_ptr
    sparc: Replace __get_cpu_var uses
    avr32: Replace __get_cpu_var with __this_cpu_write
    blackfin: Replace __get_cpu_var uses
    tile: Use this_cpu_ptr() for hardware counters
    tile: Replace __get_cpu_var uses
    powerpc: Replace __get_cpu_var uses
    alpha: Replace __get_cpu_var
    ia64: Replace __get_cpu_var uses
    s390: cio driver &__get_cpu_var replacements
    s390: Replace __get_cpu_var uses
    mips: Replace __get_cpu_var uses
    MIPS: Replace __get_cpu_var uses in FPU emulator.
    arm: Replace __this_cpu_ptr with raw_cpu_ptr
    ...

    Linus Torvalds
     
  • Pull LLVM updates from Behan Webster:
    "These patches remove the use of VLAIS using a new SHASH_DESC_ON_STACK
    macro.

    Some of the previously accepted VLAIS removal patches haven't used
    this macro. I will push new patches to consistently use this macro in
    all those older cases for 3.19"

    [ More LLVM patches coming in through subsystem trees, and LLVM itself
    needs some fixes that are already in many distributions but not in
    released versions of LLVM. Some day this will all "just work" - Linus ]

    * tag 'llvmlinux-for-v3.18' of git://git.linuxfoundation.org/llvmlinux/kernel:
    crypto: LLVMLinux: Remove VLAIS usage from crypto/testmgr.c
    security, crypto: LLVMLinux: Remove VLAIS from ima_crypto.c
    crypto: LLVMLinux: Remove VLAIS usage from libcrc32c.c
    crypto: LLVMLinux: Remove VLAIS usage from crypto/hmac.c
    crypto, dm: LLVMLinux: Remove VLAIS usage from dm-crypt
    crypto: LLVMLinux: Remove VLAIS from crypto/.../qat_algs.c
    crypto: LLVMLinux: Remove VLAIS from crypto/omap_sham.c
    crypto: LLVMLinux: Remove VLAIS from crypto/n2_core.c
    crypto: LLVMLinux: Remove VLAIS from crypto/mv_cesa.c
    crypto: LLVMLinux: Remove VLAIS from crypto/ccp/ccp-crypto-sha.c
    btrfs: LLVMLinux: Remove VLAIS
    crypto: LLVMLinux: Add macro to remove use of VLAIS in crypto code

    Linus Torvalds
     
  • Pull IOMMU updates from Joerg Roedel:
    "This pull-request includes:

    - change in the IOMMU-API to convert the former iommu_domain_capable
    function to just iommu_capable

    - various fixes in handling RMRR ranges for the VT-d driver (one fix
    requires a device driver core change which was acked by Greg KH)

    - the AMD IOMMU driver now assigns and deassigns complete alias
    groups to fix issues with devices using the wrong PCI request-id

    - MMU-401 support for the ARM SMMU driver

    - multi-master IOMMU group support for the ARM SMMU driver

    - various other small fixes all over the place"

    * tag 'iommu-updates-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (41 commits)
    iommu/vt-d: Work around broken RMRR firmware entries
    iommu/vt-d: Store bus information in RMRR PCI device path
    iommu/vt-d: Only remove domain when device is removed
    driver core: Add BUS_NOTIFY_REMOVED_DEVICE event
    iommu/amd: Fix devid mapping for ivrs_ioapic override
    iommu/irq_remapping: Fix the regression of hpet irq remapping
    iommu: Fix bus notifier breakage
    iommu/amd: Split init_iommu_group() from iommu_init_device()
    iommu: Rework iommu_group_get_for_pci_dev()
    iommu: Make of_device_id array const
    amd_iommu: do not dereference a NULL pointer address.
    iommu/omap: Remove omap_iommu unused owner field
    iommu: Remove iommu_domain_has_cap() API function
    IB/usnic: Convert to use new iommu_capable() API function
    vfio: Convert to use new iommu_capable() API function
    kvm: iommu: Convert to use new iommu_capable() API function
    iommu/tegra: Convert to iommu_capable() API function
    iommu/msm: Convert to iommu_capable() API function
    iommu/vt-d: Convert to iommu_capable() API function
    iommu/fsl: Convert to iommu_capable() API function
    ...

    Linus Torvalds
     
  • Pull clock tree updates from Mike Turquette:
    "The clk tree changes for 3.18 are dominated by clock drivers. Mostly
    fixes and enhancements to existing drivers as well as new drivers.
    This tag contains a bit more arch code than I usually take due to some
    OMAP2+ changes. Additionally it contains the restart notifier
    handlers which are merged as a dependency into several trees.

    The PXA changes are the only messy part. Due to having a stable tree
    I had to revert one patch and follow up with one more fix near the tip
    of this tag. Some dead code is introduced but it will soon become
    live code after 3.18-rc1 is released as the rest of the PXA family is
    converted over to the common clock framework.

    Another trend in this tag is that multiple vendors have started to
    push the complexity of changing their CPU frequency into the clock
    driver, whereas this used to be done in CPUfreq drivers.

    Changes to the clk core include a generic gpio-clock type and a
    clk_set_phase() function added to the top-level clk.h api. Due to
    some confusion on the fbdev mailing list the kernel boot parameters
    documentation was updated to further explain the clk_ignore_unused
    parameter, which is often required by users of the simplefb driver.

    Finally some fixes to the locking around the clock debugfs stuff was
    done to prevent deadlocks when interacting with other subsystems."

    * tag 'clk-for-linus-3.18' of git://git.linaro.org/people/mike.turquette/linux: (99 commits)
    clk: pxa clocks build system fix
    Revert "arm: pxa: Transition pxa27x to clk framework"
    clk: samsung: register restart handlers for s3c2412 and s3c2443
    clk: rockchip: add restart handler
    clk: rockchip: rk3288: i2s_frac adds flag to set parent's rate
    doc/kernel-parameters.txt: clarify clk_ignore_unused
    arm: pxa: Transition pxa27x to clk framework
    dts: add devicetree bindings for pxa27x clocks
    clk: add pxa27x clock drivers
    arm: pxa: add clock pll selection bits
    clk: dts: document pxa clock binding
    clk: add pxa clocks infrastructure
    clk: gpio-gate: Ensure gpiod_ APIs are prototyped
    clk: ti: dra7-atl-clock: Mark the device as pm_runtime_irq_safe
    clk: ti: LLVMLinux: Move __init outside of type definition
    clk: ti: consider the fact that of_clk_get() might return an error
    clk: ti: dra7-atl-clock: fix a memory leak
    clk: ti: change clock init to use generic of_clk_init
    clk: hix5hd2: add I2C clocks
    clk: hix5hd2: add watchdog0 clocks
    ...

    Linus Torvalds
     
  • Pull MFD updates from Lee Jones:
    "Changes to existing drivers:
    - DT clean-ups in da9055-core, max14577, rn5t618, arizona, hi6421, stmpe, twl4030
    - Export symbols for use in modules in max14577
    - Plenty of static code analysis/Coccinelle fixes throughout the SS
    - Regmap clean-ups in arizona, wm5102, wm5110, da9052, tps65217, rk808
    - Remove unused/duplicate code in da9052, 88pm860x, ti_ssp, lpc_sch, arizona
    - Bug fixes in ti_am335x_tscadc, da9052, ti_am335x_tscadc, rtsx_pcr
    - IRQ fixups in arizona, stmpe, max14577
    - Regulator related changes in axp20x
    - Pass DMA coherency information from parent => child in MFD core
    - Rename DT document files for consistency
    - Add ACPI support to the MFD core
    - Add Andreas Werner to MAINTAINERS for MEN F21BMC

    New drivers/supported devices:
    - New driver for MEN 14F021P00 Board Management Controller
    - New driver for Ricoh RN5T618 PMIC
    - New driver for Rockchip RK808
    - New driver for HiSilicon Hi6421 PMIC
    - New driver for Qualcomm SPMI PMICs
    - Add support for Intel Braswell in lpc_ich
    - Add support for Intel 9 Series PCH in lpc_ich
    - Add support for Intel Quark ILB in lpc_sch"

    [ Delayed to after the poweer/reset pull due to Kconfig problems with
    recursive Kconfig select/depends-on chains. - Linus ]

    * tag 'mfd-for-linus-3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (79 commits)
    mfd: cros_ec: wait for completion of commands that return IN_PROGRESS
    i2c: i2c-cros-ec-tunnel: Set retries to 3
    mfd: cros_ec: move locking into cros_ec_cmd_xfer
    mfd: cros_ec: stop calling ->cmd_xfer() directly
    mfd: cros_ec: Delay for 50ms when we see EC_CMD_REBOOT_EC
    MAINTAINERS: Adds Andreas Werner to maintainers list for MEN F21BMC
    mfd: arizona: Correct mask to allow setting micbias external cap
    mfd: Add ACPI support
    Revert "mfd: wm5102: Manually apply register patch"
    mfd: ti_am335x_tscadc: Update logic in CTRL register for 5-wire TS
    mfd: dt-bindings: atmel-gpbr: Rename doc file to conform to naming convention
    mfd: dt-bindings: qcom-pm8xxx: Rename doc file to conform to naming convention
    mfd: Inherit coherent_dma_mask from parent device
    mfd: Document DT bindings for Qualcomm SPMI PMICs
    mfd: Add support for Qualcomm SPMI PMICs
    mfd: dt-bindings: pm8xxx: Add new compatible string
    mfd: axp209x: Drop the parent supplies field
    mfd: twl4030-power: Use 'ti,system-power-controller' as alternative way to support system power off
    mfd: dt-bindings: twl4030-power: Use the standard property to mark power control
    mfd: syscon: Add Atmel GPBR DT bindings documention
    ...

    Linus Torvalds
     
  • Pull power supply and reset updates from Sebastian Reichel:
    - Initial support for the following chips
    * max77836 (charger)
    * max14577 (charger)
    * bq27742 (battery gauge)
    * ltc2952 (poweroff)
    * stih416 (restart)
    * syscon-reboot (restart)
    * gpio-restart (restart)
    - cleanup of power supply core
    - misc fixes in power supply and reset drivers

    * tag 'for-v3.18' of git://git.infradead.org/battery-2.6: (48 commits)
    power: ab8500_fg: Fix build warning
    Documentation: charger: max14577: Update the date of introducing ABI
    power: reset: corrections for simple syscon reboot driver
    Documentation: power: reset: Add documentation for generic SYSCON reboot driver
    power: reset: Add generic SYSCON register mapped reset
    bq27x00_battery: Fix flag reading for bq27742
    power: reset: use restart_notifier mechanism for msm-poweroff
    power: Add simple gpio-restart driver
    power: reset: st: Provide DT bindings for ST's Power Reset driver
    power: reset: Add restart functionality for STiH41x platforms
    power: charger-manager: Fix NULL pointer exception with missing cm-fuel-gauge
    power: max14577: Fix circular config SYSFS dependency
    power: gpio-charger: do not use gpio value directly
    power: max8925: Use of_get_child_by_name
    power: max8925: Fix NULL ptr dereference on memory allocation failure
    bq27x00_battery: Add support to bq27742
    Documentation: charger: max14577: Document exported sysfs entry
    devicetree: mfd: max14577: Add device tree bindings document
    power: max17040: Add ID for MAX77836 Fuel Gauge block
    charger: max14577: Configure battery-dependent settings from DTS and sysfs
    ...

    Conflicts:
    drivers/power/reset/Kconfig
    drivers/power/reset/Makefile

    Linus Torvalds
     
  • Pull Ceph updates from Sage Weil:
    "There is the long-awaited discard support for RBD (Guangliang Zhao,
    Josh Durgin), a pile of RBD bug fixes that didn't belong in late -rc's
    (Ilya Dryomov, Li RongQing), a pile of fs/ceph bug fixes and
    performance and debugging improvements (Yan, Zheng, John Spray), and a
    smattering of cleanups (Chao Yu, Fabian Frederick, Joe Perches)"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client: (40 commits)
    ceph: fix divide-by-zero in __validate_layout()
    rbd: rbd workqueues need a resque worker
    libceph: ceph-msgr workqueue needs a resque worker
    ceph: fix bool assignments
    libceph: separate multiple ops with commas in debugfs output
    libceph: sync osd op definitions in rados.h
    libceph: remove redundant declaration
    ceph: additional debugfs output
    ceph: export ceph_session_state_name function
    ceph: include the initial ACL in create/mkdir/mknod MDS requests
    ceph: use pagelist to present MDS request data
    libceph: reference counting pagelist
    ceph: fix llistxattr on symlink
    ceph: send client metadata to MDS
    ceph: remove redundant code for max file size verification
    ceph: remove redundant io_iter_advance()
    ceph: move ceph_find_inode() outside the s_mutex
    ceph: request xattrs if xattr_version is zero
    rbd: set the remaining discard properties to enable support
    rbd: use helpers to handle discard for layered images correctly
    ...

    Linus Torvalds
     
  • virtio spec 0.9.X requires DRIVER_OK to be set before
    VQs are used, but some drivers use VQs before probe
    function returns.
    Since DRIVER_OK is set after probe, this violates the spec.

    Even though under virtio 1.0 transitional devices support this
    behaviour, we want to make it possible for those early callers to become
    spec compliant and eventually support non-transitional devices.

    Add API for drivers to call before using VQs.

    Sets DRIVER_OK internally.

    Signed-off-by: Michael S. Tsirkin
    Reviewed-by: Cornelia Huck
    Signed-off-by: Rusty Russell

    Michael S. Tsirkin
     
  • Defer config changed notifications that arrive during
    probe/scan/freeze/restore.

    This will allow drivers to set DRIVER_OK earlier, without worrying about
    racing with config change interrupts.

    This change will also benefit old hypervisors (before 2009)
    that send interrupts without checking DRIVER_OK: previously,
    the callback could race with driver-specific initialization.

    This will also help simplify drivers.

    Signed-off-by: Michael S. Tsirkin
    Reviewed-by: Cornelia Huck
    Signed-off-by: Rusty Russell (cosmetic changes)

    Michael S. Tsirkin