14 Mar, 2011

8 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6:
    [SCSI] target: Fix t_transport_aborted handling in LUN_RESET + active I/O shutdown

    Linus Torvalds
     
  • Recent change to fixdep:

    commit b7bd182176960fdd139486cadb9962b39f8a2b50
    Author: Michal Marek
    Date: Thu Feb 17 15:13:54 2011 +0100

    fixdep: Do not record dependency on the source file itself

    changed the format of the *.cmd files without realizing that it is also
    used by modpost. Put the path to the source file to the file back, in a
    special variable, so that modpost sees all source files when calculating
    srcversion for modules.

    Reported-and-tested-by: Henrik Rydberg
    Signed-off-by: Michal Marek
    Signed-off-by: Linus Torvalds

    Michal Marek
     
  • * git://git.infradead.org/users/dwmw2/mtd-2.6.38:
    mtd: add "platform:" prefix for platform modalias
    mtd: mtd_blkdevs: fix double free on error path
    mtd: amd76xrom: fix oops at boot when resources are not available
    mtd: fix race in cfi_cmdset_0001 driver
    mtd: jedec_probe: initialise make sector erase command variable
    mtd: jedec_probe: Change variable name from cfi_p to cfi

    Linus Torvalds
     
  • * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
    drm/radeon: fix page flipping hangs on r300/r400
    drm/radeon: add pageflip hooks for fusion

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.dk/linux-2.6-block:
    block: fix mis-synchronisation in blkdev_issue_zeroout()

    Linus Torvalds
     
  • * 'fix/asoc' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
    ASoC: Ensure WM8958 gets all WM8994 late revision widgets
    ASoC: Fix typo in late revision WM8994 DAC2R name
    ASoC: Use the correct DAPM context when cleaning up final widget set
    ASoC: Fix broken bitfield definitions in WM8978
    ASoC: AM3517: Update codec name after multi-component update

    Linus Torvalds
     
  • The device table is required to load modules based on modaliases.

    After adding MODULE_DEVICE_TABLE, below entries will be added to
    modules.pcimap:

    pch_gpio 0x00008086 0x00008803 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0
    ml_ioh_gpio 0x000010db 0x0000802e 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0

    Signed-off-by: Axel Lin
    Cc: Tomoya MORINAGA
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Axel Lin
     
  • When vmscan.c calls page_referenced(), if an anon page was created
    before a process forked, rmap will search for it in both of the
    processes, even though one of them might have since broken COW.

    If the child process mlocks the vma where the COWed page belongs to,
    page_referenced() running on the page mapped by the parent would lead to
    *vm_flags getting VM_LOCKED set erroneously (leading to the references
    on the parent page being ignored and evicting the parent page too
    early).

    *mapcount would also be decremented by page_referenced_one even if the
    page wasn't found by page_check_address.

    This also lets pmdp_clear_flush_young_notify() go ahead on a
    pmd_trans_splitting() pmd.

    We hold the page_table_lock so __split_huge_page_map() must wait the
    pmdp_clear_flush_young_notify() to complete before it can modify the
    pmd. The pmd is also still mapped in userland so the young bit may
    materialize through a tlb miss before split_huge_page_map runs.

    This will provide a more accurate page_referenced() behavior during
    split_huge_page().

    Signed-off-by: Andrea Arcangeli
    Reported-by: Michel Lespinasse
    Reviewed-by: Michel Lespinasse
    Reviewed-by: Minchan Kim
    Reviewed-by: Johannes Weiner
    Reviewed-by: Rik van Riel
    Reviewed-by: KOSAKI Motohiro
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrea Arcangeli
     

13 Mar, 2011

1 commit

  • We've been getting reports of complete system lockups with rv3xx hw on
    AGP and PCIE when running gnome-shell or kwin with compositing.

    It appears the hw really doesn't like setting these registers while
    stuff is running, this moves the setting of the registers into the modeset
    since they aren't required to be changed anywhere else.

    fixes: https://bugs.freedesktop.org/show_bug.cgi?id=35183

    Reported-and-tested-by: Álmos

    Dave Airlie
     

11 Mar, 2011

20 commits

  • BZ29402
    https://bugzilla.kernel.org/show_bug.cgi?id=29402

    We can hit serious mis-synchronization in bio completion path of
    blkdev_issue_zeroout() leading to a panic.

    The problem is that when we are going to wait_for_completion() in
    blkdev_issue_zeroout() we check if the bb.done equals issued (number of
    submitted bios). If it does, we can skip the wait_for_completition()
    and just out of the function since there is nothing to wait for.
    However, there is a ordering problem because bio_batch_end_io() is
    calling atomic_inc(&bb->done) before complete(), hence it might seem to
    blkdev_issue_zeroout() that all bios has been completed and exit. At
    this point when bio_batch_end_io() is going to call complete(bb->wait),
    bb and wait does not longer exist since it was allocated on stack in
    blkdev_issue_zeroout() ==> panic!

    (thread 1) (thread 2)
    bio_batch_end_io() blkdev_issue_zeroout()
    if(bb) { ...
    if (bb->end_io) ...
    bb->end_io(bio, err); ...
    atomic_inc(&bb->done); ...
    ... while (issued != atomic_read(&bb.done))
    ... (let issued == bb.done)
    ... (do the rest of the function)
    ... return ret;
    complete(bb->wait);
    ^^^^^^^^
    panic

    We can fix this easily by simplifying bio_batch and completion counting.

    Also remove bio_end_io_t *end_io since it is not used.

    Signed-off-by: Lukas Czerner
    Reported-by: Eric Whitney
    Tested-by: Eric Whitney
    Reviewed-by: Jeff Moyer
    CC: Dmitry Monakhov
    Signed-off-by: Jens Axboe

    Lukas Czerner
     
  • Since 43cc71eed1250755986da4c0f9898f9a635cb3bf (platform: prefix MODALIAS
    with "platform:"), the platform modalias is prefixed with "platform:".

    Signed-off-by: Axel Lin
    Signed-off-by: Artem Bityutskiy
    Signed-off-by: David Woodhouse
    Cc: stable@kernel.org

    Axel Lin
     
  • This one liner patch fixes double free that will occur if add_mtd_blktrans_dev
    fails. On failure it frees the input argument, but all its users also free it
    on error which is natural thing to do. Thus don't free it.

    All credit for finding that bug belongs to reporters of the bug in the android bugzilla
    http://code.google.com/p/android/issues/detail?id=13761

    Commit message tweaked by Artem.

    Signed-off-by: Maxim Levitsky
    Signed-off-by: Artem Bityutskiy
    Signed-off-by: David Woodhouse
    Cc: stable@kernel.org

    Maxim Levitsky
     
  • For some unknown reasons resources needed by amd76xrom driver can be
    unavailable. And instead of returning an error, the driver keeps going
    and crash the kernel. This patch fixes the problem by making the driver
    return -EBUSY if the resources are not available.

    Commit messages tweaked by Artem.

    Reported-by: Russell Whitaker
    Signed-off-by: Stanislaw Gruszka
    Signed-off-by: Artem Bityutskiy
    Signed-off-by: David Woodhouse
    Cc: stable@kernel.org

    Stanislaw Gruszka
     
  • As inval_cache_and_wait_for_operation() drop and reclaim the lock
    to invalidate the cache, some other thread may suspend the operation
    before reaching the for(;;) loop. Therefore the loop must start with
    checking the chip->state before reading status from the chip.

    Signed-off-by: Joakim Tjernlund
    Acked-by: Michael Cashwell
    Acked-by: Stefan Bigler
    Signed-off-by: Artem Bityutskiy
    Signed-off-by: David Woodhouse
    Cc: stable@kernel.org

    Joakim Tjernlund
     
  • In the commit 08968041bef437ec363623cd3218c2b083537ada
    (mtd: cfi_cmdset_0002: make sector erase command variable)
    introdused a field sector_erase_cmd. In the same commit initialisation
    of cfi->sector_erase_cmd made in cfi_chip_setup()
    (file drivers/mtd/chips/cfi_probe.c), so the CFI chip has no problem:

    ...
    cfi->cfi_mode = CFI_MODE_CFI;
    cfi->sector_erase_cmd = CMD(0x30);
    ...

    But for the JEDEC chips this initialisation is not carried out,
    so the JEDEC chips have sector_erase_cmd == 0.

    This patch adds the missing initialisation.

    Signed-off-by: Antony Pavlov
    Acked-by: Guillaume LECERF
    Signed-off-by: David Woodhouse
    CC: stable@kernel.org

    Antony Pavlov
     
  • In the following commit, we'll need to use the CMD() macro in order to
    fix the initialisation of the sector_erase_cmd field. That requires the
    local variable to be called 'cfi', so change it first in a simple patch.

    Signed-off-by: Antony Pavlov
    Acked-by: Guillaume LECERF
    Signed-off-by: David Woodhouse
    CC: stable@kernel.org

    Antony Pavlov
     
  • Looks like these got passed over with both being merged at the same
    time but not quite meeting in the middle.

    should fix: https://bugs.freedesktop.org/show_bug.cgi?id=34137
    along with Michael's phoronix article.

    Reported-by: Chi-Thanh Christopher Nguyen
    Article-written-by: Michael Larabel @ phoronix
    Signed-off-by: Dave Airlie

    Dave Airlie
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
    ariadne: remove redundant NULL check
    ip6ip6: autoload ip6 tunnel
    net: bridge builtin vs. ipv6 modular
    ipv6: Don't create clones of host routes.
    pktgen: fix errata in show results
    ipv4: Fix erroneous uses of ifa_address.
    vxge: update MAINTAINERS
    r6040: bump to version 0.27 and date 23Feb2011
    r6040: fix multicast operations
    rds: prevent BUG_ON triggering on congestion map updates
    bonding 802.3ad: Rename rx_machine_lock to state_machine_lock
    bonding 802.3ad: Fix the state machine locking v2
    drivers/net/macvtap: fix error check
    net: fix multithreaded signal handling in unix recv routines
    net: Enter net/ipv6/ even if CONFIG_IPV6=n
    net/smsc911x.c: Set the VLAN1 register to fix VLAN MTU problem
    bnx2x: fix MaxBW configuration
    bnx2x: (NPAR) prevent HW access in D3 state
    bnx2x: fix link notification
    bnx2x: fix non-pmf device load flow

    Doing my first --no-ff merge here, to get the explicit merge commit.

    David did a back-merge in order to get commit 8909c9ad8ff0 ("net: don't
    allow CAP_NET_ADMIN to load non-netdev kernel modules") so that we can
    add Stephen Hemminger's fix to handle ip6 tunnels as well, which uses
    the MODULE_ALIAS_NETDEV() macro created by that change.

    Linus Torvalds
     
  • Simply remove redundant 'dev' NULL check.

    Signed-off-by: Jinqiu Yang
    Signed-off-by: David S. Miller

    j223yang@asset.uwaterloo.ca
     
  • Add necessary alias to autoload ip6ip6 tunnel module.

    Signed-off-by: Stephen Hemminger
    Signed-off-by: David S. Miller

    stephen hemminger
     
  • David S. Miller
     
  • When configs BRIDGE=y and IPV6=m, this build error occurs:

    br_multicast.c:(.text+0xa3341): undefined reference to `ipv6_dev_get_saddr'

    BRIDGE_IGMP_SNOOPING is boolean; if it were tristate, then adding
    depends on IPV6 || IPV6=n
    to BRIDGE_IGMP_SNOOPING would be a good fix. As it is currently,
    making BRIDGE depend on the IPV6 config works.

    Reported-by: Patrick Schaaf
    Signed-off-by: Randy Dunlap
    Signed-off-by: David S. Miller

    Randy Dunlap
     
  • * 'media_fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6:
    [media] mantis_pci: remove asm/pgtable.h include
    [media] tda829x: fix regression in probe functions
    [media] mceusb: don't claim multifunction device non-IR parts
    [media] nuvoton-cir: fix wake from suspend
    [media] cx18: Add support for Hauppauge HVR-1600 models with s5h1411
    [media] ivtv: Fix corrective action taken upon DMA ERR interrupt to avoid hang
    [media] cx25840: fix probing of cx2583x chips
    [media] cx23885: Remove unused 'err:' labels to quiet compiler warning
    [media] cx23885: Revert "Check for slave nack on all transactions"
    [media] DiB7000M: add pid filtering
    [media] Fix sysfs rc protocol lookup for rc-5-sz
    [media] au0828: fix VBI handling when in V4L2 streaming mode
    [media] ir-raw: Properly initialize the IR event (BZ#27202)
    [media] s2255drv: firmware re-loading changes
    [media] Fix double free of video_device in mem2mem_testdev
    [media] DM04/QQBOX memcpy to const char fix

    Linus Torvalds
     
  • This patch fixes an issue in OpenIPMI module where sometimes an ABORT command
    is sent after sending an IPMI request to BMC causing the IPMI request to fail.

    Signed-off-by: YiCheng Doe
    Signed-off-by: Corey Minyard
    Acked-by: Tom Mingarelli
    Tested-by: Andy Cress
    Tested-by: Mika Lansirine
    Tested-by: Brian De Wolf
    Cc: Jean Michel Audet
    Cc: Jozef Sudelsky
    Acked-by: Matthew Garrett
    Signed-off-by: Linus Torvalds

    Doe, YiCheng
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
    fs/dcache: allow d_obtain_alias() to return unhashed dentries
    Check for immutable/append flag in fallocate path
    sysctl: the include of rcupdate.h is only needed in the kernel
    fat: fix d_revalidate oopsen on NFS exports
    jfs: fix d_revalidate oopsen on NFS exports
    ocfs2: fix d_revalidate oopsen on NFS exports
    gfs2: fix d_revalidate oopsen on NFS exports
    fuse: fix d_revalidate oopsen on NFS exports
    ceph: fix d_revalidate oopsen on NFS exports
    reiserfs xattr ->d_revalidate() shouldn't care about RCU
    /proc/self is never going to be invalidated...

    Linus Torvalds
     
  • …git/tip/linux-2.6-tip

    * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    x86, UV: Initialize the broadcast assist unit base destination node id properly
    x86, numa: Fix numa_emulation code with memory-less node0
    x86, build: Make sure mkpiggy fails on read error

    Linus Torvalds
     
  • …l/git/tip/linux-2.6-tip

    * 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    sched: Fix sched rt group scheduling when hierachy is enabled

    Linus Torvalds
     
  • * 'perf/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    perf symbols: Avoid resolving [kernel.kallsyms] to real path for buildid cache
    perf symbols: Fix vmlinux path when not using --symfs

    Linus Torvalds
     
  • This reverts commit 951f3512dba5bd44cda3e5ee22b4b522e4bb09fb

    drm/i915: Do not handle backlight combination mode specially

    since this commit introduced other regressions due to untouched LBPC
    register, e.g. the backlight dimmed after resume.

    In addition to the revert, this patch includes a fix for the original
    issue (weird backlight levels) by removing the wrong bit shift for
    computing the current backlight level.
    Also, including typo fixes (lpbc -> lbpc).

    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=34524
    Acked-by: Indan Zupancic
    Reviewed-by: Keith Packard
    Reviewed-by: Jesse Barnes
    Cc:
    Signed-off-by: Takashi Iwai
    Signed-off-by: Linus Torvalds

    Takashi Iwai
     

10 Mar, 2011

11 commits