1. 02 Nov, 2005 14 commits
  2. 01 Nov, 2005 21 commits
  3. 31 Oct, 2005 5 commits
    • Andrea Arcangeli's avatar
      [PATCH] fix __writeback_single_inode WARN_ON · 659603ef
      Andrea Arcangeli authored
      When the inode count is zero in inode writeback, the
      
      	WARN_ON(!(inode->i_state & I_WILL_FREE));
      
      is broken, and needs to test for either I_WILL_FREE|I_FREEING.
      
      When the inode is in I_FREEING state, it's already out of the visibility
      of the vm so it can't be freed so it doesn't require the __iget and the
      generic_delete_inode path can call the sync internally to the lowlevel
      fs callback during the last iput. So the inode being in I_FREEING is
      also a valid condition for calling the sync with i_count == 0.
      
      The specific stack trace is this:
      
        0xc00000007b8fb6e0  0xc00000000010118c  .__writeback_single_inode +0x5c
        0xc00000007b8fb6e0  0xc0000000001014dc (lr) .sync_inode +0x3c
        0xc00000007b8fb790  0xc0000000001014dc  .sync_inode +0x3c
        0xc00000007b8fb820  0xc0000000001a5020  .ext2_sync_inode +0x64
        0xc00000007b8fb8f0  0xc0000000001a65b4  .ext2_truncate +0x3f8
        0xc00000007b8fba40  0xc0000000001a6940  .ext2_delete_inode +0xdc
        0xc00000007b8fbac0  0xc0000000000f7a5c  .generic_delete_inode +0x124
        0xc00000007b8fbb50  0xc0000000000f5fe0  .iput +0xb8
        0xc00000007b8fbbe0  0xc0000000000e9fd4  .sys_unlink +0x2a8
        0xc00000007b8fbd10  0xc00000000001048c  .ret_from_syscall_1 +0x0
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      659603ef
    • Andrew Morton's avatar
      [PATCH] revert ide-scsi highmem cleanup · a717f773
      Andrew Morton authored
      Jeff Garzik <jgarzik@pobox.com> points out that this was wrong: we need to
      disable local interrupts while holding KM_IRQ0 due to IRQ sharing.
      
      And holding interrupts off during a big PIO opration is expensive, so we only
      want to do that if we know the page was highmem.
      
      So revert commit 17fd47abSigned-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      a717f773
    • Arthur Othieno's avatar
      [PATCH] i386: CONFIG_PC removal · f2c84c0e
      Arthur Othieno authored
      CONFIG_PC is left-over cruft after the introduction of CONFIG_X86_PC with
      the subarch split.  Remove it, and fixup the remaining users to depend on
      CONFIG_X86_PC instead.
      Signed-off-by: default avatarArthur Othieno <a.othieno@bluewin.ch>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      f2c84c0e
    • Jens Axboe's avatar
      [PATCH] noop-iosched: avoid corrupted request merging · 581c1b14
      Jens Axboe authored
      Tejun Heo notes:
      
         "I'm currently debugging this.  The problem is that we are using the
          generic dispatch queue directly in the noop sched and merging is NOT
          allowed on dispatch queues but generic handling of last_merge tries
          to merge requests.  I'm still trying to verify this, so I'll be back
          with results soon."
      
      In the meantime, disable merging for noop by setting REQ_NOMERGE in
      elevator_noop_add_request().
      
      Eventually, we should add a noop_list and do the dispatching like in the
      other io schedulers.  Merging is still beneficial for noop (and it has
      always done it).
      Signed-off-by: default avatarJens Axboe <axboe@suse.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      581c1b14
    • Jens Axboe's avatar
      [PATCH] Fix on-the-fly switch from cfq i/o scheduler · 4fc20741
      Jens Axboe authored
      Don't clear ->elevator_data on exit, if we are switching queues we are
      overwriting the data of the new io scheduler.
      Signed-off-by: default avatarJens Axboe <axboe@suse.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      4fc20741