1. 18 Oct, 2002 31 commits
    • Alexander Viro's avatar
      [PATCH] acorn floppy · d74a3894
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue and ->private_data
      	* switched to new methods
      	* compile fixes
      
      NOTE: it still has b0rken locking - hadn't been updated in 2.5.1
      d74a3894
    • Alexander Viro's avatar
      [PATCH] swim3 · a7fb3d08
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue and ->private_data
      	* switched to new methods
      	* switched to use of ->bd_disk
      a7fb3d08
    • Alexander Viro's avatar
      [PATCH] swim_iop · 2b0f3d03
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue and ->private_data
      	* switched to new methods
      	* switched to use of ->bd_disk
      	* fixed the idiocy I'd introduced there during end_request()
      	  reshuffling - too many places got hit by search-and-replace ;-/
      
      NOTE: swim_iop (and swim3) are broken for situations when several drives
      are present.  Failure mode is rather amusing - the thing does a sort of
      load-balancing and if you have two drives even requests end up sent to
      the first and odd - to the second ;-) Had been there since they went
      into the tree.  Swim3 mentions that support of multiple drives needs to
      be fixed, swim_iop (derived from it) had lost even that warning. 
      2b0f3d03
    • Alexander Viro's avatar
      [PATCH] umem · a01154a6
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue and ->private_data
      	* switched to new methods
      	* switched to use of ->bd_disk
      a01154a6
    • Alexander Viro's avatar
      [PATCH] cciss · 54c10328
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue and ->private_data
      	* switched to new methods
      	* switched to use of ->rq_disk
      
      NOTE: we still have mess in open(), release() and ioctl().
      54c10328
    • Alexander Viro's avatar
      [PATCH] ubd · b9580dbf
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue and ->private_data
      	* switched to new methods
      	* switched to use of ->bd_disk and ->rq_disk
      b9580dbf
    • Alexander Viro's avatar
      [PATCH] acsi.c · 00fd370c
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue and ->private_data
      	* switched to new methods
      	* cleaned up
      	* switched to use of ->bd_disk and ->rq_disk
      00fd370c
    • Alexander Viro's avatar
      [PATCH] sonycd535.c · 57175350
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue
      	* switched to new methods
      	* slightly cleaned up
      57175350
    • Alexander Viro's avatar
      [PATCH] sjcd.c · fe6ffad0
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue
      	* switched to new methods
      fe6ffad0
    • Alexander Viro's avatar
      [PATCH] sbpcd.c · fb6bf18d
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue
      	* switched to use of ->rq_disk
      fb6bf18d
    • Alexander Viro's avatar
      [PATCH] optcd.c · 4efaa1e8
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue
      	* switched to new methods
      4efaa1e8
    • Alexander Viro's avatar
      [PATCH] mcdx.c · c15584df
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue
      	* switched to use of ->rq_disk
      c15584df
    • Alexander Viro's avatar
      [PATCH] mcd.c · 14149d7e
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue
      14149d7e
    • Alexander Viro's avatar
      [PATCH] gscd.c · 06869782
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue
      	* switched to new methods
      06869782
    • Alexander Viro's avatar
      [PATCH] cm206.c · 4ecbc558
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue
      4ecbc558
    • Alexander Viro's avatar
      [PATCH] cdu31a.c · 411d439b
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue
      	* slightly cleaned up
      411d439b
    • Alexander Viro's avatar
      [PATCH] aztcd.c · 61320eeb
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue
      	* switched to new methods
      61320eeb
    • Alexander Viro's avatar
      [PATCH] ftl.c · bee3b2c5
      Alexander Viro authored
      	* switched to private queue
      	* set ->queue and ->private_data
      	* switched to new methods
      	* switched ->open() and friends to use of ->bd_disk
      	* switched request handling to use of ->rq_disk
      	* cleaned up
      bee3b2c5
    • Alexander Viro's avatar
      [PATCH] sd.c · 53780b94
      Alexander Viro authored
      	* set ->queue and ->private_data
      	* removed DEVICE_NR and SD_PARTITION
      	* switched to new methods
      	* switched ->open() and friends to use of ->bd_disk
      	* switched request handling to use of ->rq_disk
      	* slightly cleaned up
      53780b94
    • Alexander Viro's avatar
      [PATCH] sr.c · c40bcba2
      Alexander Viro authored
      	* set ->queue
      	* removed DEVICE_NR()
      	* switched request handling to ->rq_disk
      c40bcba2
    • Alexander Viro's avatar
      [PATCH] loop.c · 41e18abb
      Alexander Viro authored
      	* set ->private_data and ->queue
      	* ->open() and friends are using ->bd_disk->private_data instead of
      	  messing with DEVICE_NR(inode->i_rdev)
      41e18abb
    • Alexander Viro's avatar
      [PATCH] mfmhd.c · 2d4200be
      Alexander Viro authored
      	* set ->private_data and ->queue
      	* removed DEVICE_NR
      	* switched to private queue
      	* (partial) compile fixes - it still misses stuff from 2.5.1...
      2d4200be
    • Alexander Viro's avatar
      [PATCH] md.c · 62da9e6b
      Alexander Viro authored
      AAAARGH.  OK, I've got it to work with the current tree, but...  I don't
      like the lifetime rules - both old and new ones.  Summary:
      
      	* we create a gendisk upon attempt to open or upon successful
      	  attempt to run (which _can_ happen without open).
      	* we never remove them until the rmmod (or ever).
      	* mddev is held by gendisk.
      
      The source of trouble is our API - ioctls on possibly unconfigured
      devices when no IO is possible, potentially setting up this (or another,
      or many other) devices.  I _think_ we can get the old rules (mddev
      exists when somebody holds it open or when it runs or when somebody is
      looking at it funny), but the way I see will take more messing with
      driverfs objects than I want right now. 
      
      Notice that current API is, was and will be ripe with interesting races
      - it really ought to be replaced with something saner, but that would
      take serious modifications of userland tools.  I'll talk with Neil about
      possible solution, this patch just gets it back to life. 
      62da9e6b
    • Alexander Viro's avatar
      [PATCH] ide.c cleaned up · 6dc95b4c
      Alexander Viro authored
      	* got ->private_data and ->queue set
      	* got blk_register_region() done in ide-probe.c
      	* module loading removed from ide_open() (and taken to probe)
      	* ->open() and friends are using ->bd_disk->private_data instead of
      	  messing with get_info_ptr(inode->i_rdev)
      	* request handler uses ->rq_disk->private_data instead of DEVICE_NR(...)
      	* DEVICE_NR() removed.
      	* switched to new methods.
      	* get_info_ptr() killed.
      	* ide_xlate_1024() switched to struct block_device * (probably should
      	  simply die).
      
      NOTE: ide-tape pulls mind-boggling crap - it can be opened as a block
      device, but you can't do any IO on it; only IDE ioctls.  It happens to
      work (almost by accident), but I'd really prefer to take said ioctls to
      driverfs and be done with that. 
      
      NOTE: WTF are ide{disk,cd,tape,scsi,floppy} lists? They are defined,
      exported and never touched by anything. 
      6dc95b4c
    • Alexander Viro's avatar
      [PATCH] probes · 48149ec3
      Alexander Viro authored
      	introduced blk_register_region() and blk_unregister_region()
      	removed blk_set_probe()
      	switched to almost final variant of get_gendisk()
      48149ec3
    • Alexander Viro's avatar
      [PATCH] pf.c cleaned up · 177d3b13
      Alexander Viro authored
      	* switched to private queue
      	* got ->queue set
      	* ->open() and friends are using ->bd_disk->private_data instead of
      	  messing with DEVICE_NR(inode->i_rdev)
      	* request handler uses ->rq_disk->private_data instead of DEVICE_NR(...)
      	* DEVICE_NR() removed.
      	* switched to new methods.
      	* got rid of CURRENT
      177d3b13
    • Alexander Viro's avatar
      [PATCH] pcd.c cleaned up · c4b2e85f
      Alexander Viro authored
      	* switched to private queue
      	* got ->queue set
      	* ->open() and friends are using ->bd_disk->private_data instead of
      	  messing with DEVICE_NR(inode->i_rdev)
      	* request handler uses ->rq_disk->private_data instead of DEVICE_NR(...)
      	* DEVICE_NR() removed.
      	* switched to new methods.
      	* got rid of CURRENT
      c4b2e85f
    • Alexander Viro's avatar
      [PATCH] pd.c cleaned up · 710a8ae9
      Alexander Viro authored
      	* switched to private queue
      	* got ->private_data and ->queue set
      	* ->open() and friends are using ->bd_disk->private_data instead of
      	  messing with DEVICE_NR(inode->i_rdev)
      	* request handler uses ->rq_disk->private_data instead of DEVICE_NR(...)
      	* DEVICE_NR() removed.
      	* switched to new methods.
      710a8ae9
    • Alexander Viro's avatar
      [PATCH] compile fixes · 850c11cf
      Alexander Viro authored
      DaveM spotted bogus cast sprintf in checks.c.  Fixed.  Several places
      that unregistered device called put_device() instead.
      850c11cf
    • Alexander Viro's avatar
      [PATCH] cdrom helpers · 2988ef57
      Alexander Viro authored
      	cdrom_open(), cdrom_release(), cdrom_ioctl() and cdrom_media_changed()
      got an additional argument - struct cdrom_device_info *.  Drivers that used
      to have them as methods are using wrappers that pass right cdrom_device_info.
      Existing callers (in ide-cd.c) updated.  pcd.c, mcdx.c, sbpcd.c and sr.c
      got ->private_data in their disks pointing to relevant objects.  Since all
      callers of cdrom_find_device() are gone, it got removed.  Since all users
      of cdrom_device_info->dev are gone, it's not set anymore (and got removed).
      2988ef57
    • Alexander Viro's avatar
      [PATCH] infrastructure · 6b388653
      Alexander Viro authored
      	* added ->media_changed(disk).  Callers of ->check_media_changed()
      are using that one if present
      	* added ->revaldiate_disk(disk).  Callers of ->revalidate()
      are using that one if present
      	* added disk->queue.  do_open() uses it if non-NULL
      	* added disk->private_data
      	* removed assignments to inode->i_data.backing_... - it belongs to
      filesystem that contains device node and we don't care about it;
      inode->i_mapping points to ->i_data of bdev inode and there we should
      (and do) set that field.
      6b388653
  2. 17 Oct, 2002 9 commits