1. 30 Sep, 2002 1 commit
    • Andrew Morton's avatar
      scsi_initialise_merge_fn() will only set highio if ->type == TYPE_DISK. · 2b562242
      Andrew Morton authored
      But it's called from scsi_add_lun()->scsi_alloc_sdev() before the type
      is known.  The type is -1 all the time in scsi_initialise_merge_fn()
      and scsi always bounces.
      
      This patch makes it do the right thing - just enable block-highmem for
      all scsi devices.
      
      Jens had this to say:
      
      "I guess that block-highmem has been around long enough, that I can
       use the term 'historically' at least in the kernel sense :-)
      
       This extra check was added for IDE because each device type driver
       (ide-disk, ide-cd, etc) needed to be updated to not assume virtual
       mappings of request data was valid.  I only did that for ide-disk,
       since this is the only one where bounce buffering really hurt
       performance wise.  So while ide-cd and ide-tape etc could have been
       updated, I deemed it uninteresting and not worthwhile.
      
       Now, this was just carried straight into the scsi counter parts,
       conveniently, because of laziness.  A quick glance at sr shows that it
       too can aviod bouncing easily (no changes needed).  st may need some
       changes, though.  So again, for scsi it was a matter of not impacting
       existing code in 2.4 too much.
      
       So TYPE_DISK check can be killed in 2.5 if someone does the work of
       checking that it is safe.  I'm not so sure it will make eg your SCSI
       CD-ROM that much faster :-)"
      
      2b562242
  2. 27 Sep, 2002 26 commits
  3. 26 Sep, 2002 13 commits