1. 07 Sep, 2011 8 commits
  2. 06 Sep, 2011 9 commits
  3. 04 Sep, 2011 1 commit
  4. 02 Sep, 2011 4 commits
  5. 01 Sep, 2011 4 commits
  6. 31 Aug, 2011 12 commits
    • Christoph Hellwig's avatar
      xfs: fix xfs_mark_inode_dirty during umount · 866e4ed7
      Christoph Hellwig authored
      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: default avatarChristoph Hellwig <hch@lst.de>
      Reviewed-by: default avatarDave Chinner <dchinner@redhat.com>
      Signed-off-by: default avatarAlex Elder <aelder@sgi.com>
      (cherry picked from commit da6742a5a4cc844a9982fdd936ddb537c0747856)
      Signed-off-by: default avatarAlex Elder <aelder@sgi.com>
      866e4ed7
    • Linus Torvalds's avatar
      Merge tag 'for_linus-20110831' of git://github.com/tytso/ext4 · b79c4f75
      Linus Torvalds authored
      * tag 'for_linus-20110831' of git://github.com/tytso/ext4:
        ext4: remove i_mutex lock in ext4_evict_inode to fix lockdep complaining
      b79c4f75
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://neil.brown.name/md · fd53f7d8
      Linus Torvalds authored
      * '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.
      fd53f7d8
    • Linus Torvalds's avatar
      Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc · e9208a4e
      Linus Torvalds authored
      * '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
      e9208a4e
    • Jiaying Zhang's avatar
      ext4: remove i_mutex lock in ext4_evict_inode to fix lockdep complaining · 8c0bec21
      Jiaying Zhang authored
      The i_mutex lock and flush_completed_IO() added by commit 2581fdc8
      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 2581fdc8 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: default avatarJiaying Zhang <jiayingz@google.com>
      Signed-off-by: default avatar"Theodore Ts'o" <tytso@mit.edu>
      8c0bec21
    • Andrey Vagin's avatar
      x86, perf: Check that current->mm is alive before getting user callchain · 20afc60f
      Andrey Vagin authored
      An event may occur when an mm is already released.
      
      I added an event in dequeue_entity() and caught a panic with
      the following backtrace:
      
      [  434.421110] BUG: unable to handle kernel NULL pointer dereference at 0000000000000050
      [  434.421258] IP: [<ffffffff810464ac>] __get_user_pages_fast+0x9c/0x120
      ...
      [  434.421258] Call Trace:
      [  434.421258]  [<ffffffff8101ae81>] copy_from_user_nmi+0x51/0xf0
      [  434.421258]  [<ffffffff8109a0d5>] ? sched_clock_local+0x25/0x90
      [  434.421258]  [<ffffffff8101b048>] perf_callchain_user+0x128/0x170
      [  434.421258]  [<ffffffff811154cd>] ? __perf_event_header__init_id+0xed/0x100
      [  434.421258]  [<ffffffff81116690>] perf_prepare_sample+0x200/0x280
      [  434.421258]  [<ffffffff81118da8>] __perf_event_overflow+0x1b8/0x290
      [  434.421258]  [<ffffffff81065240>] ? tg_shares_up+0x0/0x670
      [  434.421258]  [<ffffffff8104fe1a>] ? walk_tg_tree+0x6a/0xb0
      [  434.421258]  [<ffffffff81118f44>] perf_swevent_overflow+0xc4/0xf0
      [  434.421258]  [<ffffffff81119150>] do_perf_sw_event+0x1e0/0x250
      [  434.421258]  [<ffffffff81119204>] perf_tp_event+0x44/0x70
      [  434.421258]  [<ffffffff8105701f>] ftrace_profile_sched_block+0xdf/0x110
      [  434.421258]  [<ffffffff8106121d>] dequeue_entity+0x2ad/0x2d0
      [  434.421258]  [<ffffffff810614ec>] dequeue_task_fair+0x1c/0x60
      [  434.421258]  [<ffffffff8105818a>] dequeue_task+0x9a/0xb0
      [  434.421258]  [<ffffffff810581e2>] deactivate_task+0x42/0xe0
      [  434.421258]  [<ffffffff814bc019>] thread_return+0x191/0x808
      [  434.421258]  [<ffffffff81098a44>] ? switch_task_namespaces+0x24/0x60
      [  434.421258]  [<ffffffff8106f4c4>] do_exit+0x464/0x910
      [  434.421258]  [<ffffffff8106f9c8>] do_group_exit+0x58/0xd0
      [  434.421258]  [<ffffffff8106fa57>] sys_exit_group+0x17/0x20
      [  434.421258]  [<ffffffff8100b202>] system_call_fastpath+0x16/0x1b
      Signed-off-by: default avatarAndrey Vagin <avagin@openvz.org>
      Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: stable@kernel.org
      Link: http://lkml.kernel.org/r/1314693156-24131-1-git-send-email-avagin@openvz.orgSigned-off-by: default avatarIngo Molnar <mingo@elte.hu>
      20afc60f
    • Eric B Munson's avatar
      perf_event: Fix broken calc_timer_values() · 7f310a5d
      Eric B Munson authored
      We detected a serious issue with PERF_SAMPLE_READ and
      timing information when events were being multiplexing.
      
      Samples would have time_running > time_enabled. That
      was easy to reproduce with a libpfm4 example (ran 3
      times to cause multiplexing on Core 2):
      
       $ syst_smpl -e uops_retired:freq=1 &
       $ syst_smpl -e uops_retired:freq=1 &
       $ syst_smpl -e uops_retired:freq=1 &
       IIP:0x0000000040062d ... PERIOD:2355332948 ENA=40144625315 RUN=60014875184
       syst_smpl: WARNING: time_running > time_enabled
      	63277537998 uops_retired:freq=1 , scaled
      
      The bug was not present in kernel up to (and including) 3.0. It turns
      out the bug was introduced by the following commit:
      
      commit c4794295
      
          events: Move lockless timer calculation into helper function
      
      The parameters of the function got reversed yet the call sites
      were not updated to reflect the change. That lead to time_running
      and time_enabled being swapped. That had no effect when there was
      no multiplexing because in that case time_running = time_enabled
      but it would show up in any other scenario.
      Signed-off-by: default avatarStephane Eranian <eranian@google.com>
      Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
      Link: http://lkml.kernel.org/r/20110829124112.GA4828@quadSigned-off-by: default avatarIngo Molnar <mingo@elte.hu>
      7f310a5d
    • Dave Airlie's avatar
      drm/radeon/kms: set a default max_pixel_clock · 9adceaa5
      Dave Airlie authored
      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: default avatarDave Airlie <airlied@redhat.com>
      Cc: stable@kernel.org
      Reviewed-by: default avatarAlex Deucher <alexdeucher@gmail.com>
      Reviewed-by: default avatarJerome Glisse <jglisse@redhat.com>
      9adceaa5
    • NeilBrown's avatar
      md/raid5: fix a hang on device failure. · 43220aa0
      NeilBrown authored
      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: default avatarNeilBrown <neilb@suse.de>
      43220aa0
    • Chunhe Lan's avatar
      powerpc/p1023rds: Fix the error of bank-width of nor flash · 0c81e4b4
      Chunhe Lan authored
      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: default avatarChunhe Lan <Chunhe.Lan@freescale.com>
      Signed-off-by: default avatarKumar Gala <galak@kernel.crashing.org>
      0c81e4b4
    • Kim Phillips's avatar
      powerpc/85xx: enable caam crypto driver by default · e09e2fb5
      Kim Phillips authored
      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: default avatarKim Phillips <kim.phillips@freescale.com>
      Signed-off-by: default avatarKumar Gala <galak@kernel.crashing.org>
      e09e2fb5
    • Timur Tabi's avatar
      powerpc/85xx: enable the audio drivers in the defconfigs · 39c428f7
      Timur Tabi authored
      Enable the audio drivers in the non-corenet 85xx defconfigs so that audio
      is enabled on the Freescale P1022DS reference board.
      Signed-off-by: default avatarTimur Tabi <timur@freescale.com>
      Signed-off-by: default avatarKumar Gala <galak@kernel.crashing.org>
      39c428f7
  7. 30 Aug, 2011 2 commits