1. 16 Mar, 2003 6 commits
    • Linus Torvalds's avatar
      Merge http://linux-scsi.bkbits.net/scsi-for-linus-2.5 · a2cf79d1
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      a2cf79d1
    • Ingo Molnar's avatar
      [PATCH] sched-2.5.64-bk10-D0 · 5d6893e6
      Ingo Molnar authored
      This removes/fixes a few whitespaces and removes the MAX_PRIO setting in
      the init task path which is unnecessary and which might even lead to
      bugs - MAX_PRIO is outside the valid range and technically the init
      thread is not an idle thread yet at this point.
      5d6893e6
    • Ingo Molnar's avatar
      [PATCH] sched-2.5.64-bk10-C4 · 51d38a67
      Ingo Molnar authored
      This fixes a fundamental (and long-standing) bug in the sleep-average
      estimator which is the root cause of the "contest process_load" problems
      reported by Mike Galbraith and Andrew Morton, and which problem is
      addressed by Mike's patch.
      
      The bug is the following: the sleep_time code in activate_task()
      over-estimates the true sleep time by 0.5 jiffies on average (0.5 msecs
      on recent 2.5 kernels).  Furthermore, for highly context-switch
      intensive and CPU-intensive workloads it means a constant 1 jiffy
      over-estimation.  This turns the balance of giving and removing ticks
      and nils the effect of the CPU busy-tick, catapulting the task(s) to
      highly interactive status - while in reality they are constantly burning
      CPU time.
      
      The fix is to round down sleep_time, not to round it up.  This slightly
      under-estimates the sleep time, but this is not a real problem, any task
      with a sleep time in the 1 jiffy range will see timekeeping granularity
      artifacts from various parts of the kernel anyway.  We could use rdtsc
      to estimate the sleep time, but i think that's unnecessary overhead.
      
      The fixups in Mike's scheduler patch (which is in -mm8) basically work
      around this bug.  The patch below definitely fixes the contest-load
      starvation bug, but it remains to be seen what other effects it has on
      interactivity.  In any case, this bug in the estimator is real and if
      there's any other interactivity problem around then we need to deal with
      it ontop of this patch.
      
      This bug has been in the O(1) scheduler from day 1 on basically, so i'm
      quite hopeful that a number of interactivity complaints are fixed by
      this patch.
      51d38a67
    • James Bottomley's avatar
      Merge raven.il.steeleye.com:/home/jejb/BK/scsi-misc-2.5 · 384cce6d
      James Bottomley authored
      into raven.il.steeleye.com:/home/jejb/BK/scsi-for-linus-2.5
      384cce6d
    • James Bottomley's avatar
    • Douglas Gilbert's avatar
      scsi_debug version 1.68 mark III · b4997f76
      Douglas Gilbert authored
      Changelog since version 1.68 mark II:
        - merge Mike Anderson's probe() cleanup
           - num_devs is now "per host"
           - num_devs is sysfs writeable
        - add slave_alloc skeleton code
      
      So to simulate 154 disks (for example) one might use:
        # modprobe scsi_debug add_host=11 num_devs=14
      
      With max_luns at its default value of 2, 14 is the
      maximum number of devices per host scsi_debug will
      respond to (i.e. 7 targets, each with 2 lus).
      
      Documentation updated at:
      http://www.torque.net/sg/sdebug25.html
      b4997f76
  2. 15 Mar, 2003 11 commits
  3. 16 Mar, 2003 5 commits
  4. 15 Mar, 2003 3 commits
  5. 16 Mar, 2003 6 commits
  6. 15 Mar, 2003 1 commit
  7. 14 Mar, 2003 8 commits
    • Anton Blanchard's avatar
      Merge samba.org:/scratch/anton/linux-2.5 · ae81f068
      Anton Blanchard authored
      into samba.org:/scratch/anton/sfr
      ae81f068
    • Douglas Gilbert's avatar
      [PATCH] sg version 3.5.28 for lk 2.5.64 · f9107051
      Douglas Gilbert authored
      Changelog:
         - remove hosts, host_strs and host_hdr from sg's
           procfs interface **
         - add sysfs interface for allow_dio, def_reserved_size
           and version ***
         - switch boot time and module parameters to Rusty's
           moduleparam.h interface. This means, for example,
           the boot time "sg_def_reserved_size" parameter
           changes to "sg.def_reserved_size".
      
      
      ** Christoph moved the host listing functionality into
          a more central sysfs position (i.e. not dependent on
          sg). However scsi_debug is the only LLD that I can
          get to post any "host" info under the new arrangement.
      
          Should devices, device_strs and device_hdrs also be
          moved out of sg's procfs interface?
      
      *** I find sg's "debug" in its procfs interface very
           useful for debugging (sg itself amongst other things).
           However it does not seem suitable for sysfs. Should
           it move?
      f9107051
    • Randy Dunlap's avatar
      [PATCH] reduce stack in qlogicfc.c · 4955a5c8
      Randy Dunlap authored
      This is a start on reducing the stack usage in qlogicfc.c::
      isp2x00_make_portdb().  I think that the stack reduction portion
      of it is fine, but I'm concerned about the function returning
      early due to kmalloc() failure, without making the port database.
      
      [reduces stack from 0xc38 to 0x34 bytes (P4 UP, gcc 2.96)]
      
      Can anyone suggest way(s) to have the isp2x00_make_portdb() function
      called over and over again until it gets its job done?
      Or does anyone even still use this driver?
      4955a5c8
    • Douglas Gilbert's avatar
      [PATCH] scsi_debug in 2.5.64 · 16b7fc66
      Douglas Gilbert authored
      Here is a second attempt to patch scsi_debug in
      2.5.64 . My reference version was out of sync in
      my previous posting.
      
      Changelog:
         - add recovered error injection (this is a bit
           different to the patch proposed by Kurt Garloff)
         - fix flakiness in scsi_cmnd::result when errors
           are being injected
         - fix medium error injection
         - make "every_nth" writeable in sysfs
         - small re-arrangement of error flags in "opts"
         - clean up some of the naming
      
      Updated http://www.torque.net/sg/sdebug25.html
      
      This patch does not include Mike Anderson's sysfs
      probe() cleanup.
      
      In 2.5.64 scsi error handling is flaky and sysfs is
      especially flaky in 2.5.64-bk3. I'll send some finding
      to the list when things stabilize a bit. [For anyone
      who is bored, try following the tortured sequence
      of scsi commands generated by the block/sd/mid-level
      layers in response to a persistent medium error.]
      16b7fc66
    • Mark Haverkamp's avatar
      [PATCH] aacraid driver for 2.5 · ca636121
      Mark Haverkamp authored
      This changes the cmd_per_lun element of the aacraid Scsi_Host_Template
      to 1.  The larger number is not needed and exceeds the depth limit for
      scsi_adjust_queue_depth.  Also updated struct initializers.
      ca636121
    • Alex Tomas's avatar
      [PATCH] Re: hot scsi disk resize · d685cc6d
      Alex Tomas authored
      Hi!
      
      Here is new version of the patch. All procfs-related stuff has been removed.
      One may rescan device size writing something to /sysfs/.../<scsi device>/rescan:
      
      root@zefir:~# echo 1 >/sysfs/bus/scsi/devices/0\:0\:1\:0/rescan
      root@zefir:~# dmesg
      scsi0:A:1:0: Tagged Queuing enabled.  Depth 64
      scsi: host 0 channel 0 id 1 lun16384 has a LUN larger than allowed by the host adapter
      SCSI device sda: 2097152 512-byte hdwr sectors (1074 MB)
      SCSI device sda: drive cache: write through
       sda: unknown partition table
      Attached scsi disk sda at scsi0, channel 0, id 1, lun 0
      SCSI device sda: 125829120 512-byte hdwr sectors (64425 MB)
      root@zefir:~#
      d685cc6d
    • Willem Riede's avatar
      fix jiffies compare warning in osst · 7fe8f35f
      Willem Riede authored
      On 2003.03.11 14:13 Christoph Hellwig wrote:
      > 
      > --- 1.39/drivers/scsi/osst.c	Sun Feb  2 17:50:23 2003
      > +++ edited/drivers/scsi/osst.c	Mon Mar 10 14:35:46 2003
      > @@ -777,7 +777,7 @@
      >  #define OSST_POLL_PER_SEC 10
      >  static int osst_wait_frame(OS_Scsi_Tape * STp, Scsi_Request ** aSRpnt, int curr, int minlast, int to)
      >  {
      > -	long	startwait     = jiffies;
      > +	unsigned long startwait = jiffies;
      >  	char  * name          = tape_name(STp);
      >  #if DEBUG
      >  	char	notyetprinted = 1;
      > @@ -1288,7 +1288,7 @@
      >  	int             logical_blk_num  = ntohl(STp->buffer->aux->logical_blk_num) 
      >  						- (nframes + pending - 1) * blks_per_frame;
      >  	char          * name             = tape_name(STp);
      > -	long		startwait        = jiffies;
      > +	unsigned long	startwait        = jiffies;
      >  #if DEBUG
      >  	int		dbg              = debugging;
      >  #endif
      > @@ -1477,7 +1477,7 @@
      >  	int		expected  = 0;
      >  	int		attempts  = 1000 / skip;
      >  	int		flag      = 1;
      > -	long		startwait = jiffies;
      > +	unsigned long	startwait = jiffies;
      >  #if DEBUG
      >  	int		dbg       = debugging;
      >  #endif
      > -
      
      There are five functions that use jiffies. You fixed three of them.
      If this change is done (and that's fine with me) it should be done
      with this patch:
      7fe8f35f
    • Luben Tuikov's avatar
      scsi_softirq queue is now list_head, eliminate bh_next · f1b28fd9
      Luben Tuikov authored
      The following patch gets rid of softscsi_data struct and
      array for the more manageable
      static struct list_head done_q[NR_CPUS] __cacheline_aligned;
      
      Thus, scsi_cmnd::bh_next is eliminated, since it was used only
      in the scsi softirq processing code.
      
      The comments are updated.
      
      80 chars per line for the affected functions: scsi_done()
      and scsi_softirq().
      
      Eliminated is the double loop in scsi_softirq() -- this is
      better handled in do_softirq() and gives the system a ``breather''.
      (There are pros and cons for either side and if you guys
      think that it was better with the double loop, I'll change it and
      resubmit the patch.)
      f1b28fd9