15 Aug, 2012

2 commits


10 Aug, 2012

3 commits

  • Reported-by: Olaf Hering
    Signed-off-by: Haiyang Zhang
    Signed-off-by: David S. Miller

    Haiyang Zhang
     
  • As pointed out, there are places, that access net->loopback_dev->ifindex
    and after ifindex generation is made per-net this value becomes constant
    equals 1. So go ahead and introduce the LOOPBACK_IFINDEX constant and use
    it where appropriate.

    Signed-off-by: Pavel Emelyanov
    Acked-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Pavel Emelyanov
     
  • The ifinfomsg is in there (thanks kaber@ for foreseeing this long time ago),
    so take the given ifidex and register netdev with it.

    Ben noticed, that this code path previously ignored ifmp->ifi_index and
    userland could be passing in garbage. Thus it may now fail occasionally
    because the value clashes with an existing interface.

    To address this it's assumed that if the caller specifies the ifindex for
    the veth master device, then it's aware of this possibility and should
    explicitly specify (or set to 0 for auto-assignment) the peer's ifindex as
    well. With this the compatibility with old tools not setting ifindex is
    preserved.

    Signed-off-by: Pavel Emelyanov
    Signed-off-by: David S. Miller

    Pavel Emelyanov
     

08 Aug, 2012

1 commit


04 Aug, 2012

14 commits


03 Aug, 2012

7 commits

  • AR1111 is same as AR9485. The h/w
    difference between them is quite insignificant,
    Felix suggests only very few baseband features
    may not be available in AR1111. The h/w code for
    AR9485 is already present, so AR1111 should
    work fine with the addition of its PID/VID.

    Cc: stable@vger.kernel.org [2.6.39+]
    Cc: Felix Bitterli
    Reported-by: Tim Bentley
    Signed-off-by: Mohammed Shafi Shajakhan
    Tested-by: Tim Bentley
    Signed-off-by: John W. Linville

    Mohammed Shafi Shajakhan
     
  • brcmsmac cannot call freq_reg_info() during channel changes as it does
    not hold cfg80211_lock, and as a result it generates a lockdep warning.
    freq_reg_info() is being used to determine whether OFDM is allowed on
    the current channel, so we can avoid the errant call by using the new
    IEEE80211_CHAN_NO_OFDM for this purpose instead.

    Reported-by: Josh Boyer
    Signed-off-by: Seth Forshee
    Signed-off-by: John W. Linville

    Seth Forshee
     
  • The if_sdio_card structure was never being freed, and neither
    was the command structure used for association.

    Signed-off-by: Daniel Drake
    Signed-off-by: John W. Linville

    Daniel Drake
     
  • This patch is going to fix the resuming failed from S3/S4
    for rt3290 chip.

    Signed-off-by: Woody Hung
    Cc: Kevin Chou
    Signed-off-by: Chen, Chien-Chia
    Reviewed-by: Stanislaw Gruszka
    Signed-off-by: John W. Linville

    Woody Hung
     
  • On an OLPC XO-1.5 we have seen the following situation:
    - the system starts going into suspend
    - no wake params are set, so the mmc layer removes the card
    - during remove, we send a command to the card
    - that command fails, causing if_sdio's reset method to try and remove
    the mmc card in attempt to reset it
    - the mmc layer is not happy about being asked to remove a card that
    it is already removing, and the kernel crashes

    While the MMC layer could possibly be taught to behave better here,
    it also seems sensible for libertas not to try and reset a card if
    we're in the process of removing it anyway.

    Signed-off-by: Daniel Drake
    Acked-by: Dan Williams
    Signed-off-by: John W. Linville

    Daniel Drake
     
  • Add some comments by the way

    Signed-off-by: Rafał Miłecki
    Signed-off-by: John W. Linville

    Rafał Miłecki
     
  • Signed-off-by: Rafał Miłecki
    Signed-off-by: John W. Linville

    Rafał Miłecki
     

02 Aug, 2012

8 commits

  • In bnx2x_mcast_enqueue_cmd() we'll leak the memory allocated to
    'new_cmd' if we hit the deafault case of the 'switch (cmd)'.
    Add a 'kfree(new_cmd)' to that case to avoid the leak.

    Signed-off-by: Jesper Juhl
    Acked-by: Dmitry Kravkov
    Signed-off-by: David S. Miller

    Jesper Juhl
     
  • Currently an skb requiring TSO may not fit within a minimum-size TX
    queue. The TX queue selected for the skb may stall and trigger the TX
    watchdog repeatedly (since the problem skb will be retried after the
    TX reset). This issue is designated as CVE-2012-3412.

    Set the maximum number of TSO segments for our devices to 100. This
    should make no difference to behaviour unless the actual MSS is less
    than about 700. Increase the minimum TX queue size accordingly to
    allow for 2 worst-case skbs, so that there will definitely be space
    to add an skb after we wake a queue.

    To avoid invalidating existing configurations, change
    efx_ethtool_set_ringparam() to fix up values that are too small rather
    than returning -EINVAL.

    Signed-off-by: Ben Hutchings
    Signed-off-by: David S. Miller

    Ben Hutchings
     
  • Pull ARM DMA engine updates from Russell King:
    "This looks scary at first glance, but what it is is:
    - a rework of the sa11x0 DMA engine driver merged during the previous
    cycle, to extract a common set of helper functions for DMA engine
    implementations.
    - conversion of amba-pl08x.c to use these helper functions.
    - addition of OMAP DMA engine driver (using these helper functions),
    and conversion of some of the OMAP DMA users to use DMA engine.

    Nothing in the helper functions is ARM specific, so I hope that other
    implementations can consolidate some of their code by making use of
    these helpers.

    This has been sitting in linux-next most of the merge cycle, and has
    been tested by several OMAP folk. I've tested it on sa11x0 platforms,
    and given it my best shot on my broken platforms which have the
    amba-pl08x controller.

    The last point is the addition to feature-removal-schedule.txt, which
    will have a merge conflict. Between myself and TI, we're planning to
    remove the old TI DMA implementation next year."

    Fix up trivial add/add conflicts in Documentation/feature-removal-schedule.txt
    and drivers/dma/{Kconfig,Makefile}

    * 'dmaengine' of git://git.linaro.org/people/rmk/linux-arm: (53 commits)
    ARM: 7481/1: OMAP2+: omap2plus_defconfig: enable OMAP DMA engine
    ARM: 7464/1: mmc: omap_hsmmc: ensure probe returns error if DMA channel request fails
    Add feature removal of old OMAP private DMA implementation
    mtd: omap2: remove private DMA API implementation
    mtd: omap2: add DMA engine support
    spi: omap2-mcspi: remove private DMA API implementation
    spi: omap2-mcspi: add DMA engine support
    ARM: omap: remove mmc platform data dma_mask and initialization
    mmc: omap: remove private DMA API implementation
    mmc: omap: add DMA engine support
    mmc: omap_hsmmc: remove private DMA API implementation
    mmc: omap_hsmmc: add DMA engine support
    dmaengine: omap: add support for cyclic DMA
    dmaengine: omap: add support for setting fi
    dmaengine: omap: add support for returning residue in tx_state method
    dmaengine: add OMAP DMA engine driver
    dmaengine: sa11x0-dma: add cyclic DMA support
    dmaengine: sa11x0-dma: fix DMA residue support
    dmaengine: PL08x: ensure all descriptors are freed when channel is released
    dmaengine: PL08x: get rid of write only pool_ctr and free_txd locking
    ...

    Linus Torvalds
     
  • Pull fbdev updates from Florian Tobias Schandinat:
    - large updates for OMAP
    - support for LCD3 overlay manager (omap5)
    - omapdss output cleanup
    - removal of passive matrix LCD support as there are no drivers for
    such panels for DSS or DSS2 and nobody complained (cleanup)
    - large updates for SH Mobile
    - overlay support
    - separating MERAM (cache) from framebuffer driver
    - some updates for Exynos and da8xx-fb
    - various other small patches

    * tag 'fbdev-updates-for-3.6' of git://github.com/schandinat/linux-2.6: (78 commits)
    da8xx-fb: fix compile issue due to missing include
    fbdev: Make pixel_to_pat() failure mode more friendly
    da8xx-fb: do not turn ON LCD backlight unless LCDC is enabled
    fbdev: sh_mobile_lcdc: Fix vertical panning step
    video: exynos mipi dsi: Fix mipi dsi regulators handling issue
    video: da8xx-fb: do clock reset of revision 2 LCDC before enabling
    arm: da850: configure LCDC fifo threshold
    video: da8xx-fb: configure FIFO threshold to reduce underflow errors
    video: da8xx-fb: fix flicker due to 1 frame delay in updated frame
    video: da8xx-fb rev2: fix disabling of palette completion interrupt
    da8xx-fb: add missing FB_BLANK operations
    video: exynos_dp: use usleep_range instead of delay
    video: exynos_dp: check the only INTERLANE_ALIGN_DONE bit during Link Training
    fb: epson1355fb: Fix section mismatch
    video: exynos_dp: fix wrong DPCD address during Link Training
    video/smscufx: fix line counting in fb_write
    aty128fb: Fix coding style issues
    fbdev: sh_mobile_lcdc: Fix pan offset computation in YUV mode
    fbdev: sh_mobile_lcdc: Fix overlay registers update during pan operation
    fbdev: sh_mobile_lcdc: Support horizontal panning
    ...

    Linus Torvalds
     
  • Pull second vfs pile from Al Viro:
    "The stuff in there: fsfreeze deadlock fixes by Jan (essentially, the
    deadlock reproduced by xfstests 068), symlink and hardlink restriction
    patches, plus assorted cleanups and fixes.

    Note that another fsfreeze deadlock (emergency thaw one) is *not*
    dealt with - the series by Fernando conflicts a lot with Jan's, breaks
    userland ABI (FIFREEZE semantics gets changed) and trades the deadlock
    for massive vfsmount leak; this is going to be handled next cycle.
    There probably will be another pull request, but that stuff won't be
    in it."

    Fix up trivial conflicts due to unrelated changes next to each other in
    drivers/{staging/gdm72xx/usb_boot.c, usb/gadget/storage_common.c}

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (54 commits)
    delousing target_core_file a bit
    Documentation: Correct s_umount state for freeze_fs/unfreeze_fs
    fs: Remove old freezing mechanism
    ext2: Implement freezing
    btrfs: Convert to new freezing mechanism
    nilfs2: Convert to new freezing mechanism
    ntfs: Convert to new freezing mechanism
    fuse: Convert to new freezing mechanism
    gfs2: Convert to new freezing mechanism
    ocfs2: Convert to new freezing mechanism
    xfs: Convert to new freezing code
    ext4: Convert to new freezing mechanism
    fs: Protect write paths by sb_start_write - sb_end_write
    fs: Skip atime update on frozen filesystem
    fs: Add freezing handling to mnt_want_write() / mnt_drop_write()
    fs: Improve filesystem freezing handling
    switch the protection of percpu_counter list to spinlock
    nfsd: Push mnt_want_write() outside of i_mutex
    btrfs: Push mnt_want_write() outside of i_mutex
    fat: Push mnt_want_write() outside of i_mutex
    ...

    Linus Torvalds
     
  • Pull block driver changes from Jens Axboe:

    - Making the plugging support for drivers a bit more sane from Neil.
    This supersedes the plugging change from Shaohua as well.

    - The usual round of drbd updates.

    - Using a tail add instead of a head add in the request completion for
    ndb, making us find the most completed request more quickly.

    - A few floppy changes, getting rid of a duplicated flag and also
    running the floppy init async (since it takes forever in boot terms)
    from Andi.

    * 'for-3.6/drivers' of git://git.kernel.dk/linux-block:
    floppy: remove duplicated flag FD_RAW_NEED_DISK
    blk: pass from_schedule to non-request unplug functions.
    block: stack unplug
    blk: centralize non-request unplug handling.
    md: remove plug_cnt feature of plugging.
    block/nbd: micro-optimization in nbd request completion
    drbd: announce FLUSH/FUA capability to upper layers
    drbd: fix max_bio_size to be unsigned
    drbd: flush drbd work queue before invalidate/invalidate remote
    drbd: fix potential access after free
    drbd: call local-io-error handler early
    drbd: do not reset rs_pending_cnt too early
    drbd: reset congestion information before reporting it in /proc/drbd
    drbd: report congestion if we are waiting for some userland callback
    drbd: differentiate between normal and forced detach
    drbd: cleanup, remove two unused global flags
    floppy: Run floppy initialization asynchronous

    Linus Torvalds
     
  • Pull core block IO bits from Jens Axboe:
    "The most complicated part if this is the request allocation rework by
    Tejun, which has been queued up for a long time and has been in
    for-next ditto as well.

    There are a few commits from yesterday and today, mostly trivial and
    obvious fixes. So I'm pretty confident that it is sound. It's also
    smaller than usual."

    * 'for-3.6/core' of git://git.kernel.dk/linux-block:
    block: remove dead func declaration
    block: add partition resize function to blkpg ioctl
    block: uninitialized ioc->nr_tasks triggers WARN_ON
    block: do not artificially constrain max_sectors for stacking drivers
    blkcg: implement per-blkg request allocation
    block: prepare for multiple request_lists
    block: add q->nr_rqs[] and move q->rq.elvpriv to q->nr_rqs_elvpriv
    blkcg: inline bio_blkcg() and friends
    block: allocate io_context upfront
    block: refactor get_request[_wait]()
    block: drop custom queue draining used by scsi_transport_{iscsi|fc}
    mempool: add @gfp_mask to mempool_create_node()
    blkcg: make root blkcg allocation use %GFP_KERNEL
    blkcg: __blkg_lookup_create() doesn't need radix preload

    Linus Torvalds
     
  • Pull md updates from NeilBrown.

    * 'for-next' of git://neil.brown.name/md:
    DM RAID: Add support for MD RAID10
    md/RAID1: Add missing case for attempting to repair known bad blocks.
    md/raid5: For odirect-write performance, do not set STRIPE_PREREAD_ACTIVE.
    md/raid1: don't abort a resync on the first badblock.
    md: remove duplicated test on ->openers when calling do_md_stop()
    raid5: Add R5_ReadNoMerge flag which prevent bio from merging at block layer
    md/raid1: prevent merging too large request
    md/raid1: read balance chooses idlest disk for SSD
    md/raid1: make sequential read detection per disk based
    MD RAID10: Export md_raid10_congested
    MD: Move macros from raid1*.h to raid1*.c
    MD RAID1: rename mirror_info structure
    MD RAID10: rename mirror_info structure
    MD RAID10: Fix compiler warning.
    raid5: add a per-stripe lock
    raid5: remove unnecessary bitmap write optimization
    raid5: lockless access raid5 overrided bi_phys_segments
    raid5: reduce chance release_stripe() taking device_lock

    Linus Torvalds
     

01 Aug, 2012

5 commits

  • * set_fs(KERNEL_DS) + getname() is probably the weirdest implementation
    of strdup() I've seen. Especially since they don't to copy it at all...
    * filp_open() never returns NULL; it's ERR_PTR(-E...) on failure.
    * file->f_dentry is never going to be NULL, TYVM.
    * match_strdup() + snprintf() + kfree() is a bloody weird way to spell
    match_strlcpy().

    Pox on cargo-cult programmers...

    Signed-off-by: Al Viro

    Al Viro
     
  • Support the MD RAID10 personality through dm-raid.c

    Signed-off-by: Jonathan Brassow
    Signed-off-by: NeilBrown

    Jonathan Brassow
     
  • Pull in pre-requisites for adding raid10 support to dm-raid.

    NeilBrown
     
  • Merge Andrew's second set of patches:
    - MM
    - a few random fixes
    - a couple of RTC leftovers

    * emailed patches from Andrew Morton : (120 commits)
    rtc/rtc-88pm80x: remove unneed devm_kfree
    rtc/rtc-88pm80x: assign ret only when rtc_register_driver fails
    mm: hugetlbfs: close race during teardown of hugetlbfs shared page tables
    tmpfs: distribute interleave better across nodes
    mm: remove redundant initialization
    mm: warn if pg_data_t isn't initialized with zero
    mips: zero out pg_data_t when it's allocated
    memcg: gix memory accounting scalability in shrink_page_list
    mm/sparse: remove index_init_lock
    mm/sparse: more checks on mem_section number
    mm/sparse: optimize sparse_index_alloc
    memcg: add mem_cgroup_from_css() helper
    memcg: further prevent OOM with too many dirty pages
    memcg: prevent OOM with too many dirty pages
    mm: mmu_notifier: fix freed page still mapped in secondary MMU
    mm: memcg: only check anon swapin page charges for swap cache
    mm: memcg: only check swap cache pages for repeated charging
    mm: memcg: split swapin charge function into private and public part
    mm: memcg: remove needless !mm fixup to init_mm when charging
    mm: memcg: remove unneeded shmem charge type
    ...

    Linus Torvalds
     
  • Pull VFIO core from Alex Williamson:
    "This series includes the VFIO userspace driver interface for the 3.6
    kernel merge window. This driver is intended to provide a secure
    interface for device access using IOMMU protection for applications
    like assignment of physical devices to virtual machines.

    Qemu will be the first user of this interface, enabling assignment of
    PCI devices to Qemu guests. This interface is intended to eventually
    replace the x86-specific assignment mechanism currently available in
    KVM.

    This interface has the advantage of being more secure, by working with
    IOMMU groups to ensure device isolation and providing it's own
    filtered resource access mechanism, and also more flexible, in not
    being x86 or KVM specific (extensions to enable POWER are already
    working).

    This driver is originally the work of Tom Lyon, but has since been
    handed over to me and gone through a complete overhaul thanks to the
    input from David Gibson, Ben Herrenschmidt, Chris Wright, Joerg
    Roedel, and others. This driver has been available in linux-next for
    the last month."

    Paul Mackerras says:
    "I would be glad to see it go in since we want to use it with KVM on
    PowerPC. If possible we'd like the PowerPC bits for it to go in as
    well."

    * tag 'vfio-for-v3.6' of git://github.com/awilliam/linux-vfio:
    vfio: Add PCI device driver
    vfio: Type1 IOMMU implementation
    vfio: Add documentation
    vfio: VFIO core

    Linus Torvalds