05 Sep, 2011

1 commit


02 Sep, 2011

3 commits


01 Sep, 2011

4 commits

  • Currently we always redirty an inode that was attempted to be written out
    synchronously but has been cleaned by an AIL pushed internall, which is
    rather bogus. Fix that by doing the i_update_core check early on and
    return 0 for it. Also include async calls for it, as doing any work for
    those is just as pointless. While we're at it also fix the sign for the
    EIO return in case of a filesystem shutdown, and fix the completely
    non-sensical locking around xfs_log_inode.

    Signed-off-by: Christoph Hellwig
    Reviewed-by: Dave Chinner
    Signed-off-by: Alex Elder
    (cherry picked from commit 297db93bb74cf687510313eb235a7aec14d67e97)

    Signed-off-by: Alex Elder

    Christoph Hellwig
     
  • During umount we do not add a dirty inode to the lru and wait for it to
    become clean first, but force writeback of data and metadata with
    I_WILL_FREE set. Currently there is no way for XFS to detect that the
    inode has been redirtied for metadata operations, as we skip the
    mark_inode_dirty call during teardown. Fix this by setting i_update_core
    nanually in that case, so that the inode gets flushed during inode reclaim.

    Alternatively we could enable calling mark_inode_dirty for inodes in
    I_WILL_FREE state, and let the VFS dirty tracking handle this. I decided
    against this as we will get better I/O patterns from reclaim compared to
    the synchronous writeout in write_inode_now, and always marking the inode
    dirty in some way from xfs_mark_inode_dirty is a better safetly net in
    either case.

    Signed-off-by: Christoph Hellwig
    Reviewed-by: Dave Chinner
    Signed-off-by: Alex Elder
    (cherry picked from commit da6742a5a4cc844a9982fdd936ddb537c0747856)

    Signed-off-by: Alex Elder

    Christoph Hellwig
     
  • * tag 'for_linus-20110831' of git://github.com/tytso/ext4:
    ext4: remove i_mutex lock in ext4_evict_inode to fix lockdep complaining

    Linus Torvalds
     
  • * 'for-linus' of git://neil.brown.name/md:
    md/raid5: fix a hang on device failure.
    md: fix clearing of 'blocked' flag in the presence of bad blocks.
    md/linear: avoid corrupting structure while waiting for rcu_free to complete.
    md: use REQ_NOIDLE flag in md_super_write()
    md: ensure changes to 'write-mostly' are reflected in metadata.
    md: report failure if a 'set faulty' request doesn't.

    Linus Torvalds
     

31 Aug, 2011

10 commits

  • * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
    powerpc/p1023rds: Fix the error of bank-width of nor flash
    powerpc/85xx: enable caam crypto driver by default
    powerpc/85xx: enable the audio drivers in the defconfigs

    Linus Torvalds
     
  • The i_mutex lock and flush_completed_IO() added by commit 2581fdc810
    in ext4_evict_inode() causes lockdep complaining about potential
    deadlock in several places. In most/all of these LOCKDEP complaints
    it looks like it's a false positive, since many of the potential
    circular locking cases can't take place by the time the
    ext4_evict_inode() is called; but since at the very least it may mask
    real problems, we need to address this.

    This change removes the flush_completed_IO() and i_mutex lock in
    ext4_evict_inode(). Instead, we take a different approach to resolve
    the software lockup that commit 2581fdc810 intends to fix. Rather
    than having ext4-dio-unwritten thread wait for grabing the i_mutex
    lock of an inode, we use mutex_trylock() instead, and simply requeue
    the work item if we fail to grab the inode's i_mutex lock.

    This should speed up work queue processing in general and also
    prevents the following deadlock scenario: During page fault,
    shrink_icache_memory is called that in turn evicts another inode B.
    Inode B has some pending io_end work so it calls ext4_ioend_wait()
    that waits for inode B's i_ioend_count to become zero. However, inode
    B's ioend work was queued behind some of inode A's ioend work on the
    same cpu's ext4-dio-unwritten workqueue. As the ext4-dio-unwritten
    thread on that cpu is processing inode A's ioend work, it tries to
    grab inode A's i_mutex lock. Since the i_mutex lock of inode A is
    still hold before the page fault happened, we enter a deadlock.

    Signed-off-by: Jiaying Zhang
    Signed-off-by: "Theodore Ts'o"

    Jiaying Zhang
     
  • On some Power rv100 cards, we have no ATY OF table, but we have
    no combios table either, and hence we refuse all modes on VGA-0
    since we end up with a 0 max pixel clock.

    Signed-off-by: Dave Airlie
    Cc: stable@kernel.org
    Reviewed-by: Alex Deucher
    Reviewed-by: Jerome Glisse

    Dave Airlie
     
  • Waiting for a 'blocked' rdev to become unblocked in the raid5d thread
    cannot work with internal metadata as it is the raid5d thread which
    will clear the blocked flag.
    This wasn't a problem in 3.0 and earlier as we only set the blocked
    flag when external metadata was used then.
    However we now set it always, so we need to be more careful.

    Signed-off-by: NeilBrown

    NeilBrown
     
  • In the p1023rds, a physical bus of nor flash is 16 bits width.
    The bank-width is width (in bytes) of the bus width. So, the
    value of bank-width of nor flash is not one, and it should be
    two.

    Signed-off-by: Chunhe Lan
    Signed-off-by: Kumar Gala

    Chunhe Lan
     
  • corenet based SoCs have SEC4 h/w, so enable the SEC4 driver,
    caam, and the algorithms it supports, and disable the
    SEC2/3 driver, talitos.

    Signed-off-by: Kim Phillips
    Signed-off-by: Kumar Gala

    Kim Phillips
     
  • Enable the audio drivers in the non-corenet 85xx defconfigs so that audio
    is enabled on the Freescale P1022DS reference board.

    Signed-off-by: Timur Tabi
    Signed-off-by: Kumar Gala

    Timur Tabi
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
    sparc64: Only Panther cheetah+ chips have POPC.

    Linus Torvalds
     
  • * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
    drm/radeon/kms: add s/r quirk for Compaq Presario V5245EU
    drm/radeon/kms: evergreen & ni reset SPI block on CP resume
    drm: Fix the number of connector and encoder to cleanup functions

    Linus Torvalds
     
  • If there are no builtin users of find_next_bit_le() and
    find_next_zero_bit_le(), these functions are not present in the kernel
    image, causing m68k allmodconfig to fail with:

    ERROR: "find_next_zero_bit_le" [fs/ufs/ufs.ko] undefined!
    ERROR: "find_next_bit_le" [fs/udf/udf.ko] undefined!
    ...

    This started to happen after commit 171d809df189 ("m68k: merge mmu and
    non-mmu bitops.h"), as m68k had its own inline versions before.

    commit 63e424c84429 ("arch: remove CONFIG_GENERIC_FIND_{NEXT_BIT,
    BIT_LE, LAST_BIT}") added find_last_bit.o to obj-y (so it's always
    included), but find_next_bit.o to lib-y (so it gets removed by the
    linker if there are no builtin users).

    Signed-off-by: Geert Uytterhoeven
    Cc: Akinobu Mita
    Cc: Greg Ungerer
    Cc: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     

30 Aug, 2011

14 commits

  • Fixes resume on Compaq Presario V5245EU.

    Fixes:
    https://bugzilla.kernel.org/show_bug.cgi?id=41642

    Signed-off-by: Alex Deucher
    Cc: stable@kernel.org
    Signed-off-by: Dave Airlie

    Alex Deucher
     
  • For some reason SPI block is in broken state after module
    unloading. This lead to broken rendering after reloading
    module. Fix this by reseting SPI block in CP resume function

    Signed-off-by: Jerome Glisse
    Cc: stable@kernel.org
    Signed-off-by: Dave Airlie

    Jerome Glisse
     
  • When the 'blocked' flag on a device is cleared while there are
    unacknowledged bad blocks we must fail the device. This is needed for
    backwards compatability of the interface.

    The code currently uses the wrong test for "unacknowledged bad blocks
    exist". Change it to the right test.

    Signed-off-by: NeilBrown

    NeilBrown
     
  • Signed-off-by: David S. Miller

    David S. Miller
     
  • * 'fixes' of master.kernel.org:/home/rmk/linux-2.6-arm:
    ARM: pm: avoid writing the auxillary control register for ARMv7
    ARM: pm: some ARMv7 requires a dsb in resume to ensure correctness
    ARM: pm: arm920/926: fix number of registers saved
    ARM: pm: CPU specific code should not overwrite r1 (v:p offset)
    ARM: 7066/1: proc-v7: disable SCTLR.TE when disabling MMU
    ARM: 7065/1: kexec: ensure new kernel is entered in ARM state
    ARM: 7003/1: vexpress: Add clock definition for the SP805.
    ARM: 7051/1: cpuimx* boards: fix mach-types errors
    ARM: 7019/1: Footbridge: select CLKEVT_I8253 for ARCH_NETWINDER
    ARM: 7015/1: ARM errata: Possible cache data corruption with hit-under-miss enabled
    ARM: 7014/1: cache-l2x0: Fix L2 Cache size calculation.
    ARM: 6967/1: ep93xx: ts72xx: fix board model detection
    ARM: 6965/1: ep93xx: add model detection for ts-7300 and ts-7400 boards
    ARM: cache: detect VIPT aliasing I-cache on ARMv6
    ARM: twd: register clockevents device before enabling PPI
    ARM: realview: ensure visibility of writes during reset
    ARM: perf: make name of arm_pmu_type consistent
    ARM: perf: fix prototype of release_pmu
    ARM: fix perf build with uclibc toolchains

    Linus Torvalds
     
  • * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc:
    ARM: mach-footbridge: add missing header file
    ARM: mach-orion5x: add missing header file
    arm: fix compile failure in orion5x/dns323-setup.c
    at91: at91sam9261.c: fix typo in t2_clk alias for atmel_tcb.0
    ARM: S5P: fix bug in spdif_clk_get_rate
    ARM: EXYNOS4: Add restart hook for proper reboot
    ARM: EXYNOS4: Increase reset delay for USB HOST PHY
    ARM: S5P: add required chained_irq_enter/exit to gpio-int code
    ARM: EXYNOS4: add required chained_irq_enter/exit to eint code
    ARM: SAMSUNG: Add chained enrty/exit call to timer interrupt handler
    ARM: S3C64XX: Fix build break in PM debug
    ARM: S5PV210: Fix build warning
    ARM: EXYNOS4: Fix the IRQ definitions for MIPI CSIS device
    ARM: EXYNOS4: remove duplicated inclusion
    ARM: EXYNOS4: Fix wrong devname to support clkdev
    ARM: EXYNOS4: Use the correct regulator names on universal_c210
    ARM: SAMSUNG: Fix Section mismatch in samsung_bl_set()
    ARM: S5P64X0: Replace irq_gc_ack() with irq_gc_ack_set_bit()

    Linus Torvalds
     
  • These were missed in commit f5b940997397 "All Arch: remove linkage
    for sys_nfsservctl system call" due to them having no sys_ prefix
    (presumably).

    Cc: NeilBrown
    Cc: linuxppc-dev@lists.ozlabs.org
    Cc: linux-parisc@vger.kernel.org
    Signed-off-by: Stephen Rothwell
    Acked-by: James Bottomley
    Signed-off-by: Linus Torvalds

    Stephen Rothwell
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (42 commits)
    netpoll: fix incorrect access to skb data in __netpoll_rx
    cassini: init before use in cas_interruptN.
    can: ti_hecc: Fix uninitialized spinlock in probe
    can: ti_hecc: Fix unintialized variable
    net: sh_eth: fix the compile error
    net/phy: fix DP83865 phy interrupt handler
    sendmmsg/sendmsg: fix unsafe user pointer access
    ibmveth: Fix leak when recycling skb and hypervisor returns error
    arp: fix rcu lockdep splat in arp_process()
    bridge: fix a possible use after free
    bridge: Pseudo-header required for the checksum of ICMPv6
    mcast: Fix source address selection for multicast listener report
    MAINTAINERS: Update GIT trees for network development
    ath9k: Fix PS wrappers in ath9k_set_coverage_class
    carl9170: Fix mismatch in carl9170_op_set_key mutex lock-unlock
    wl12xx: add max_sched_scan_ssids value to the hw description
    wl12xx: Fix validation of pm_runtime_get_sync return value
    wl12xx: Remove obsolete testmode NVS push command
    bcma: add uevent to the bus, to autoload drivers
    ath9k_hw: Fix STA (AR9485) bringup issue due to incorrect MAC address
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
    sparc32,sun4d: Change IPI IRQ level to prevent collision between IPI and timer interrupt
    sparc: Remove another reference to nfsservctl

    Linus Torvalds
     
  • …nel/git/lethal/sh-3.x

    * 'rmobile-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x:
    ARM: mach-shmobile: sh7372 CMT3 and CMT4 clock support
    ARM: mach-shmobile: sh7372 MSIOF clock support
    ARM: mach-shmobile: clock-sh7372: fixup USB-DMAC1 settings
    ARM: mach-shmobile: clock-sh73a0: tidyup CKSCR main clock selecter
    ARM: mach-shmobile: Remove 3DG/SGX from sh7372 INTCS
    ARM: mach-shmobile: mackerel: Add USB-DMA ID
    mmc: sdhi, mmcif: zboot: Correct clock disable logic
    ARM: mach-shmobile: ag5evm: SDHI requires waiting for idle
    ARM: static should be at beginning of declaration
    ARM: mach-shmobile: Use CMT2 for timer on sh7372
    ARM: mach-shmobile: sh7372: Add USB-DMAC support

    Linus Torvalds
     
  • * 'sh-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x:
    sh: fix the compile error in setup-sh7757.c
    serial: sh-sci: report CTS as active for get_mctrl
    sh: Add unaligned memory access for PC relative intructions
    sh: Fix unaligned memory access for branches without delay slots
    sh: Fix up fallout from cpuidle changes.
    serial: sh-sci: console Runtime PM support
    sh: Fix conflicting definitions of ptrace_triggered
    serial: sh-sci: fix DMA build by including dma-mapping.h
    serial: sh-sci: Fix up default regtype probing.
    sh: intc: enable both edges GPIO interrupts on sh7372
    shwdt: fix usage of mod_timer
    clocksource: sh_cmt: wait for CMCNT on init V2

    Linus Torvalds
     
  • As Paul has not much time for it I take over maintaining the
    framebuffer subsystem.

    Signed-off-by: Florian Tobias Schandinat
    Acked-by: Paul Mundt
    Signed-off-by: Linus Torvalds

    Florian Tobias Schandinat
     
  • On Sun4d systems running in SMP mode, IRQ 14 is used for timer interrupts
    and has a specialized interrupt handler. IPI is currently set to use IRQ 14
    as well, which causes it to trigger the timer interrupt handler, and not the
    IPI interrupt handler.

    The IPI interrupt is therefore changed to IRQ 13, which is the highest
    normally handled interrupt. This IRQ is also used for SBUS interrupts,
    however there is nothing in the IPI/SBUS interrupt handlers that indicate
    that they will not handle sharing the interrupt.
    (IRQ 13 is indicated as audio interrupt, which is unlikely to be found in a
    sun4d system)

    Signed-off-by: Kjetil Oftedal
    Signed-off-by: David S. Miller

    Kjetil Oftedal
     
  • Signed-off-by: Stephen Rothwell
    Signed-off-by: David S. Miller

    Stephen Rothwell
     

29 Aug, 2011

8 commits

  • It is left out the code to decrease the number of connector and encoder
    to the cleanup functions.

    Signed-off-by: Joonyoung Shim
    Signed-off-by: Kyungmin Park
    Signed-off-by: Dave Airlie

    Joonyoung Shim
     
  • Add clock control support for sh7372 CMT hardware blocks.

    No upstream sh7372 boards are making use of CMT3 + CMT4,
    but the sh7372 hardware happens to come out of reset with
    all CMT MSTP clocks _enabled_, so to save power we need
    to implement a fix in software to shut down unused clocks.

    This patch relies on the recently merged

    794d78f drivers: sh: late disabling of clocks V2

    to make sure the unused clocks get disabled as expected.

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     
  • Add clock control support for sh7372 MSIOF hardware blocks.

    No upstream sh7372 boards are making use of MSIOF0->2,
    but the sh7372 hardware happens to come out of reset with
    all MSIOF MSTP clocks _enabled_, so to save power we need
    to implement a fix in software to shut down unused clocks.

    This patch relies on the recently merged

    794d78f drivers: sh: late disabling of clocks V2

    to make sure the unused clocks get disabled as expected.

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     
  • USB-DMAC1 needs SMSTPCR4/MSTP407 controls, not MSTP214
    this patch tested on mackerel board

    Reported-by: Magnus Damm
    Signed-off-by: Kuninori Morimoto
    Signed-off-by: Paul Mundt

    Kuninori Morimoto
     
  • MAINCKSEL is [29:28], not [27:24]

    Signed-off-by: Kuninori Morimoto
    Signed-off-by: Paul Mundt

    Kuninori Morimoto
     
  • This patch removes support for the SGX interrupt source in
    the sh7372 INTCS controller.

    The SGX hardware block included in sh7372 is already hooked
    up to the ARM Cortex-A8 core using the INTCA controller,
    so SGX users are encouraged to make use of that interrupt
    source instead.

    Removing support for the SGX interrupt source in INTCS
    simplifies the sh7372 power management code by allowing
    us to assume that only INTCA needs to be powered on to
    operate the SGX hardware.

    If the INTCS interrupt source would be kept then the kernel
    would be forced to deal with additional dependencies that does
    not follow the regular power domain hiearachy. With this
    patch in place we can safely power down INTCS while the
    SGX is operating.

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     
  • Paul Mundt
     
  • Fix the following build errors:

    CC arch/sh/kernel/cpu/sh4a/setup-sh7757.o
    arch/sh/kernel/cpu/sh4a/setup-sh7757.c:681: error: implicit declaration of function ‘DMA_BIT_MASK’
    arch/sh/kernel/cpu/sh4a/setup-sh7757.c:681: error: initializer element is not constant
    arch/sh/kernel/cpu/sh4a/setup-sh7757.c:681: error: (near initialization for ‘usb_ehci_device.dev.coherent_dma_mask’)
    arch/sh/kernel/cpu/sh4a/setup-sh7757.c:705: error: initializer element is not constant
    arch/sh/kernel/cpu/sh4a/setup-sh7757.c:705: error: (near initialization for ‘usb_ohci_device.dev.coherent_dma_mask’)
    make[3]: *** [arch/sh/kernel/cpu/sh4a/setup-sh7757.o] Error 1

    Signed-off-by: Yoshihiro Shimoda
    Signed-off-by: Paul Mundt

    Yoshihiro Shimoda