1. 28 Apr, 2002 3 commits
    • Anton Altaparmakov's avatar
    • Martin Dalecki's avatar
      [PATCH] 2.5.10 IDE 44 · 045c90fe
      Martin Dalecki authored
      Reduce the "rain forest" of pointers a bit.
      
      - Use the channel info from the drive instead of from hwgroup where possible.
         Since we have now a direct association between a channel and irq, we can fix
         the handler for unexpected interrupts to don't have to iterate over multiple
         possibilities.
      
      - Finally it was just possible to remove the circular list of channels
         associated with a hwif. The hwif member of struct hwgroup_s as well as
         next member if struct ata_channel are gone.
      
      - Unify ide_build_sglist() and raw_build_sglist() in to one function.  Use the
         queue associated with a request in the case of a CMD request there instead of
         referencing the device minor number. This will be pushed even further later.
      045c90fe
    • Martin Dalecki's avatar
      [PATCH] 2.5.10 IDE 43 · 5ef2759c
      Martin Dalecki authored
      Some of the following is a bit of sensitive... but anyway it has to be done.
      
      - Scarp "portability" macros ide_request_irq() and ide_free_irq().  What a
         great of a surprise in the face of a kernel nowadays ported to nearly any
         major CPU out there, but apparently no platform needs something special here.
         All of them are just using the normal request_irq() and free_irq(). If some
         unusual platform (read obsolete door blocker) I have overlooked intentionally
         needs something special - please just hack the platform specific
         request_irq() and free_irq()-  they are *far off* from being performance
         relevant. (Hint: You could use cooked default irq values to detect there
         whatever the caller was the ATA driver to decide what to do about it.)
      
      - Kill ide_check_region() ide_request_region() and ide_release_region()
         altogether. Add comments explaining the code there.  Same arguments as above
         apply. Additionally we want to be able at some time to do for example mmapped
         PCI address space access on IA32 instead of port IO.
      
      - Rewrite the initialization code to don't use check_region at all. Add some
         comments there, which explain what's actually happening.
      
      - Fix creeping in of a c99 construct.
      
      - Make the main interrupt handler take a channel as data instead of the
         hwgroup. This is the entity an interrupt is physically associated with. PCI
         interrupt sharing is handled in a generically anyway. Analogously the main
         data entity of a device request queue (q->queuedata) is the device and not
         the hwgroup.  However right now we are only able to push it down to the
         channel level. The intention is to advance the choose_drive() function to
         just check for equal interrupt values for serialization of request and
         thus to get rid of the hwgroup altogether.
      5ef2759c
  2. 27 Apr, 2002 2 commits
    • Anton Altaparmakov's avatar
      NTFS: 2.0.4 - Cleanups and updates for kernel 2.5.11. · dfeb4845
      Anton Altaparmakov authored
      - Add documentation on how to use the MD driver to be able to use NTFS
      stripe and volume sets in Linux and generally cleanup documentation
      a bit.
      
      Remove all uses of kdev_t in favour of struct block_device *:
      - Change compress.c::ntfs_file_read_compressed_block() to use sb_getblk()
      instead of getblk().
      - Change super.c::ntfs_fill_suoer() to use bdev_hardsect_size() instead
      of get_hardsect_size().
      - No need to get old blocksize in super.c::ntfs_fill_super() as
      fs/super.c::get_sb_bdev() already does this.
      - Set bh->b_bdev instead of bh->b_dev throughout aops.c.
      dfeb4845
    • Anton Altaparmakov's avatar
  3. 26 Apr, 2002 4 commits
    • Anton Altaparmakov's avatar
      NTFS 2.0.3: Small bug fixes, cleanups, and performance improvements. · eeb382a1
      Anton Altaparmakov authored
      - Remove some dead code from mft.c.
      - Optimize readpage and read_block functions throughout aops.c so that
        only initialized blocks are read. Non-initialized ones have their
        buffer head mapped, zeroed, and set up to date, without scheduling
        any i/o. Thanks to Al Viro for advice on how to avoid the device i/o.
      Thanks go to Andrew Morton for spotting the below:
      - Fix buglet in allocate_compression_buffers() error code path.
      - Call flush_dcache_page() after modifying page cache page contents in
        ntfs_file_readpage().
      - Check for existence of page buffers throughout aops.c before calling
        create_empty_buffers(). This happens when an I/O error occurs and the
        read is retried. (It also happens once writing is implemented so that
        needed doing anyway but I had left it for later...)
      - Don't BUG_ON() uptodate and/or mapped buffers throughout aops.c in
        readpage and read_block functions. Reasoning same as above (i.e. I/O
        error retries and future write code paths.)
      eeb382a1
    • Martin Dalecki's avatar
      [PATCH] 2.5.10 IDE 42 · 9dbf0015
      Martin Dalecki authored
      - Streamline the usage of sector_t over the strategy routines in question a
         bit. Streamline the do_request code in ide-disk.c.
      
      - Improve the readability of start_request in ide.c.
      
      - Remove obsolete/nowhere used stuff from hdreg.h.
      
      - Splitup special_t into classical flag field.
      
      - Use only a single field to determine the capacity of a drive.  Make this
         field and the code paths it follows as far as possible use the sector_t
         instead of a hard coded integer types.  This increases the chances that at
         some distant point in time we will indeed be able to use 64 bit wide sector_t
         entities. (Disks are getting huge those times now...)
      9dbf0015
    • Linus Torvalds's avatar
      f62e2b90
    • Andrew Morton's avatar
      [PATCH] permit zero-length readahead, and tidy up readahead · 92216226
      Andrew Morton authored
      - Initialise the per-request_queue readahead parameter properly,
        rather than the dopey "if it's zero you get the deafult"
        approach.
      
      - Permit zero-length readahead.
      
      - 80-columnify mm/readahead.c
      92216226
  4. 25 Apr, 2002 31 commits