1. 23 8月, 2007 5 次提交
  2. 22 8月, 2007 1 次提交
  3. 21 8月, 2007 2 次提交
    • B
      ide: add cable detection for early UDMA66 devices (take 3) · a5b7e70d
      Bartlomiej Zolnierkiewicz 提交于
      * Move ide_in_drive_list() from ide-dma.c to ide-iops.c.
      
      * Add ivb_list[] table for listening early UDMA66 devices which don't conform
        to ATA4 standard wrt cable detection (bit14 is zero, only bit13 is valid)
        and use only device side cable detection for them since host side cable
        detection may be unreliable.
      
      * Add model "QUANTUM FIREBALLlct10 05" with firwmare "A03.0900" to the list
        (from Craig's bugreport).
      
      v2:
      * Improve kernel message basing on suggestion from Sergei.
      
      v3:
      * Don't print kernel message when no device side cable detection is done,
        plus some minor fixes.  (Noticed by Sergei)
      
      Thanks to Craig for testing this patch.
      
      Cc: Craig Block <chblock3@yahoo.com>
      Acked-by: NSergei Shtylyov <sshtylyov@ru.mvista.com>
      Signed-off-by: NBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      a5b7e70d
    • B
      ide: config_drive_for_dma() fixes · 1116fae5
      Bartlomiej Zolnierkiewicz 提交于
      * Add DMA blacklist checking (->ide_dma_on check probably can go now).
      
      * Add ->atapi_dma flag checking and remove no longer needed
        ns87415_ide_dma_check() from ns87415 host driver.
      
      * Remove now needless __ide_dma_check() wrapper and symbol export.
      
      * Check drive->autodma instead of hwif->autodma (there should be no changes in
        behavior as all users of config_drive_for_dma() set both ->autodma flags).
      Signed-off-by: NBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      1116fae5
  4. 20 8月, 2007 1 次提交
  5. 18 8月, 2007 1 次提交
  6. 14 8月, 2007 1 次提交
  7. 13 8月, 2007 1 次提交
  8. 12 8月, 2007 9 次提交
  9. 09 8月, 2007 9 次提交
    • A
      hexdump: use const notation · 6a0ed91e
      Artem Bityutskiy 提交于
      Trivial fix: mark the buffer to hexdump as const so callers could avoid
      casting their const buffers when calling print_hex_dump().
      
      The patch is really trivial and I suggest to consider it as a fix
      (it fixes GCC warnings) and push it to current tree.
      Signed-off-by: NArtem Bityutskiy <Artem.Bityutskiy@nokia.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      6a0ed91e
    • I
      sched: remove the 'u64 now' parameter from ->task_new() · ee0827d8
      Ingo Molnar 提交于
      remove the 'u64 now' parameter from ->task_new().
      
      ( identity transformation that causes no change in functionality. )
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      ee0827d8
    • I
      sched: remove the 'u64 now' parameter from ->put_prev_task() · 31ee529c
      Ingo Molnar 提交于
      remove the 'u64 now' parameter from ->put_prev_task().
      
      ( identity transformation that causes no change in functionality. )
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      31ee529c
    • I
      sched: remove the 'u64 now' parameter from ->pick_next_task() · fb8d4724
      Ingo Molnar 提交于
      remove the 'u64 now' parameter from ->pick_next_task().
      
      ( identity transformation that causes no change in functionality. )
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      fb8d4724
    • I
      sched: remove the 'u64 now' parameter from ->dequeue_task() · f02231e5
      Ingo Molnar 提交于
      remove the 'u64 now' parameter from ->dequeue_task().
      
      ( identity transformation that causes no change in functionality. )
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      f02231e5
    • I
      sched: remove the 'u64 now' parameter from ->enqueue_task() · fd390f6a
      Ingo Molnar 提交于
      remove the 'u64 now' parameter from ->enqueue_task().
      
      ( identity transformation that causes no change in functionality. )
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      fd390f6a
    • I
      sched: remove the 'u64 now' parameter from print_cfs_rq() · 5cef9eca
      Ingo Molnar 提交于
      remove the 'u64 now' parameter from print_cfs_rq().
      
      ( identity transformation that causes no change in functionality. )
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      5cef9eca
    • P
      sched: fix bug in balance_tasks() · a4ac01c3
      Peter Williams 提交于
      There are two problems with balance_tasks() and how it used:
      
      1. The variables best_prio and best_prio_seen (inherited from the old
      move_tasks()) were only required to handle problems caused by the
      active/expired arrays, the order in which they were processed and the
      possibility that the task with the highest priority could be on either.
        These issues are no longer present and the extra overhead associated
      with their use is unnecessary (and possibly wrong).
      
      2. In the absence of CONFIG_FAIR_GROUP_SCHED being set, the same
      this_best_prio variable needs to be used by all scheduling classes or
      there is a risk of moving too much load.  E.g. if the highest priority
      task on this at the beginning is a fairly low priority task and the rt
      class migrates a task (during its turn) then that moved task becomes the
      new highest priority task on this_rq but when the sched_fair class
      initializes its copy of this_best_prio it will get the priority of the
      original highest priority task as, due to the run queue locks being
      held, the reschedule triggered by pull_task() will not have taken place.
        This could result in inappropriate overriding of skip_for_load and
      excessive load being moved.
      
      The attached patch addresses these problems by deleting all reference to
      best_prio and best_prio_seen and making this_best_prio a reference
      parameter to the various functions involved.
      
      load_balance_fair() has also been modified so that this_best_prio is
      only reset (in the loop) if CONFIG_FAIR_GROUP_SCHED is set.  This should
      preserve the effect of helping spread groups' higher priority tasks
      around the available CPUs while improving system performance when
      CONFIG_FAIR_GROUP_SCHED isn't set.
      Signed-off-by: NPeter Williams <pwil3058@bigpond.net.au>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      a4ac01c3
    • P
      sched: simplify move_tasks() · 43010659
      Peter Williams 提交于
      The move_tasks() function is currently multiplexed with two distinct
      capabilities:
      
      1. attempt to move a specified amount of weighted load from one run
      queue to another; and
      2. attempt to move a specified number of tasks from one run queue to
      another.
      
      The first of these capabilities is used in two places, load_balance()
      and load_balance_idle(), and in both of these cases the return value of
      move_tasks() is used purely to decide if tasks/load were moved and no
      notice of the actual number of tasks moved is taken.
      
      The second capability is used in exactly one place,
      active_load_balance(), to attempt to move exactly one task and, as
      before, the return value is only used as an indicator of success or failure.
      
      This multiplexing of sched_task() was introduced, by me, as part of the
      smpnice patches and was motivated by the fact that the alternative, one
      function to move specified load and one to move a single task, would
      have led to two functions of roughly the same complexity as the old
      move_tasks() (or the new balance_tasks()).  However, the new modular
      design of the new CFS scheduler allows a simpler solution to be adopted
      and this patch addresses that solution by:
      
      1. adding a new function, move_one_task(), to be used by
      active_load_balance(); and
      2. making move_tasks() a single purpose function that tries to move a
      specified weighted load and returns 1 for success and 0 for failure.
      
      One of the consequences of these changes is that neither move_one_task()
      or the new move_tasks() care how many tasks sched_class.load_balance()
      moves and this enables its interface to be simplified by returning the
      amount of load moved as its result and removing the load_moved pointer
      from the argument list.  This helps simplify the new move_tasks() and
      slightly reduces the amount of work done in each of
      sched_class.load_balance()'s implementations.
      
      Further simplification, e.g. changes to balance_tasks(), are possible
      but (slightly) complicated by the special needs of load_balance_fair()
      so I've left them to a later patch (if this one gets accepted).
      
      NB Since move_tasks() gets called with two run queue locks held even
      small reductions in overhead are worthwhile.
      
      [ mingo@elte.hu ]
      
      this change also reduces code size nicely:
      
         text    data     bss     dec     hex filename
         39216    3618      24   42858    a76a sched.o.before
         39173    3618      24   42815    a73f sched.o.after
      Signed-off-by: NPeter Williams <pwil3058@bigpond.net.au>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      43010659
  10. 08 8月, 2007 1 次提交
    • T
      NFS: Fix put_nfs_open_context · 5e11934d
      Trond Myklebust 提交于
      We need to grab the inode->i_lock atomically with the last reference put in
      order to remove the open context that is being freed from the
      nfsi->open_files list.
      
      Fix by converting the kref to a standard atomic counter and then using
      atomic_dec_and_lock()...
      
      Thanks to Arnd Bergmann for pointing out the problem.
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      5e11934d
  11. 05 8月, 2007 1 次提交
  12. 02 8月, 2007 3 次提交
  13. 01 8月, 2007 5 次提交