1. 01 10月, 2006 4 次提交
    • D
      [PATCH] BLOCK: Make it possible to disable the block layer [try #6] · 9361401e
      David Howells 提交于
      Make it possible to disable the block layer.  Not all embedded devices require
      it, some can make do with just JFFS2, NFS, ramfs, etc - none of which require
      the block layer to be present.
      
      This patch does the following:
      
       (*) Introduces CONFIG_BLOCK to disable the block layer, buffering and blockdev
           support.
      
       (*) Adds dependencies on CONFIG_BLOCK to any configuration item that controls
           an item that uses the block layer.  This includes:
      
           (*) Block I/O tracing.
      
           (*) Disk partition code.
      
           (*) All filesystems that are block based, eg: Ext3, ReiserFS, ISOFS.
      
           (*) The SCSI layer.  As far as I can tell, even SCSI chardevs use the
           	 block layer to do scheduling.  Some drivers that use SCSI facilities -
           	 such as USB storage - end up disabled indirectly from this.
      
           (*) Various block-based device drivers, such as IDE and the old CDROM
           	 drivers.
      
           (*) MTD blockdev handling and FTL.
      
           (*) JFFS - which uses set_bdev_super(), something it could avoid doing by
           	 taking a leaf out of JFFS2's book.
      
       (*) Makes most of the contents of linux/blkdev.h, linux/buffer_head.h and
           linux/elevator.h contingent on CONFIG_BLOCK being set.  sector_div() is,
           however, still used in places, and so is still available.
      
       (*) Also made contingent are the contents of linux/mpage.h, linux/genhd.h and
           parts of linux/fs.h.
      
       (*) Makes a number of files in fs/ contingent on CONFIG_BLOCK.
      
       (*) Makes mm/bounce.c (bounce buffering) contingent on CONFIG_BLOCK.
      
       (*) set_page_dirty() doesn't call __set_page_dirty_buffers() if CONFIG_BLOCK
           is not enabled.
      
       (*) fs/no-block.c is created to hold out-of-line stubs and things that are
           required when CONFIG_BLOCK is not set:
      
           (*) Default blockdev file operations (to give error ENODEV on opening).
      
       (*) Makes some /proc changes:
      
           (*) /proc/devices does not list any blockdevs.
      
           (*) /proc/diskstats and /proc/partitions are contingent on CONFIG_BLOCK.
      
       (*) Makes some compat ioctl handling contingent on CONFIG_BLOCK.
      
       (*) If CONFIG_BLOCK is not defined, makes sys_quotactl() return -ENODEV if
           given command other than Q_SYNC or if a special device is specified.
      
       (*) In init/do_mounts.c, no reference is made to the blockdev routines if
           CONFIG_BLOCK is not defined.  This does not prohibit NFS roots or JFFS2.
      
       (*) The bdflush, ioprio_set and ioprio_get syscalls can now be absent (return
           error ENOSYS by way of cond_syscall if so).
      
       (*) The seclvl_bd_claim() and seclvl_bd_release() security calls do nothing if
           CONFIG_BLOCK is not set, since they can't then happen.
      Signed-Off-By: NDavid Howells <dhowells@redhat.com>
      Signed-off-by: NJens Axboe <axboe@kernel.dk>
      9361401e
    • J
      [PATCH] Remove ->rq_status from struct request · cdd60262
      Jens Axboe 提交于
      After Christophs SCSI change, the only usage left is RQ_ACTIVE
      and RQ_INACTIVE. The block layer sets RQ_INACTIVE right before freeing
      the request, so any check for RQ_INACTIVE in a driver is a bug and
      indicates use-after-free.
      
      So kill/clean the remaining users, straight forward.
      Signed-off-by: NJens Axboe <axboe@suse.de>
      cdd60262
    • J
      [PATCH] Remove ->waiting member from struct request · c00895ab
      Jens Axboe 提交于
      As the comments indicates in blkdev.h, we can fold it into ->end_io_data
      usage as that is really what ->waiting is. Fixup the users of
      blk_end_sync_rq().
      Signed-off-by: NJens Axboe <axboe@kernel.dk>
      c00895ab
    • J
      [PATCH] Split struct request ->flags into two parts · 4aff5e23
      Jens Axboe 提交于
      Right now ->flags is a bit of a mess: some are request types, and
      others are just modifiers. Clean this up by splitting it into
      ->cmd_type and ->cmd_flags. This allows introduction of generic
      Linux block message types, useful for sending generic Linux commands
      to block devices.
      Signed-off-by: NJens Axboe <axboe@suse.de>
      4aff5e23
  2. 30 9月, 2006 1 次提交
  3. 26 9月, 2006 3 次提交
  4. 22 9月, 2006 1 次提交
  5. 13 9月, 2006 1 次提交
  6. 11 9月, 2006 1 次提交
  7. 09 9月, 2006 2 次提交
  8. 02 9月, 2006 1 次提交
  9. 31 8月, 2006 1 次提交
    • A
      [PATCH] Missing PCI id update for VIA IDE · a7dec1e0
      Alan Cox 提交于
      The following change from -mm is important to 2.6.18 (actually to 2.6.17
      but its too late for that). This was contributed over three months ago
      by VIA to Bartlomiej and nothing happened. As a result the new chipset
      is now out and Linux won't run on it. By the time 2.6.18 is finalised
      this will be the defacto standard VIA chipset so support would be a good
      plan.
      
      Tested in -mm for a while, its essentially a PCI ident update but for
      the bridge chip because VIA do things in weird ways.
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      a7dec1e0
  10. 10 8月, 2006 1 次提交
  11. 01 8月, 2006 2 次提交
  12. 31 7月, 2006 1 次提交
  13. 28 7月, 2006 3 次提交
  14. 25 7月, 2006 1 次提交
  15. 13 7月, 2006 2 次提交
    • L
      Revert "[PATCH] pcmcia: Make ide_cs work with the memory space of CF-Cards if... · 2f1b9250
      Linus Torvalds 提交于
      Revert "[PATCH] pcmcia: Make ide_cs work with the memory space of CF-Cards if IO space is not available"
      
      This reverts commit 5040cb8b.
      
      It breaks previously working ide-cs PIO configurations, causing problems
      like
      
      	ide2: I/O resource 0xF883200E-0xF883200E not free.
      	ide2: ports already in use, skipping probe
      
      rather than a working kernel.
      
      Cc: Thomas Kleffel <tk@maintech.de>
      Cc: Dominik Brodowski <linux@dominikbrodowski.net>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      2f1b9250
    • A
      [PATCH] ide: fix Jmicron support · 15e0c694
      Alan Cox 提交于
      Prior to 2.6.18rc1 you could install with devices on a JMicron chipset
      using the "all-generic-ide" option. As of this kernel the AHCI driver
      grabs the controller and rams it into AHCI mode losing the PATA ports
      and making CD drives and the like vanish. The all-generic-ide option
      fails because the AHCI driver grabbed the PCI device and reconfigured
      it.
      
      To fix this three things are needed.
      
      #1 We must put the chip into dual function mode
      #2 The AHCI driver must grab only function 0 (already in your rc1 tree)
      #3 Something must grab the PATA ports
      
      The attached patch is the minimal risk edition of this. It puts the chip
      into dual function mode so that AHCI will grab the SATA ports without
      losing the PATA ports. To keep the risk as low as possible the third
      patch adds the PCI identifiers for the PATA port and the FN check to the
      ide-generic driver. There is a more featured jmicron driver on its way
      but that adds risk and the ide-generic support is sufficient to install
      and run a system.
      
      The actual chip setup done by the quirk is the precise setup recommended
      by the vendor.
      
      (The JMB368 appears only in the ide-generic entry as it has no AHCI so
      does not need the quirk)
      Signed-off-by: NAlan Cox <alan@redhat.com>
      Acked-by: NJeff Garzik <jgarzik@pobox.com>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      15e0c694
  16. 07 7月, 2006 1 次提交
  17. 04 7月, 2006 2 次提交
  18. 03 7月, 2006 1 次提交
  19. 02 7月, 2006 1 次提交
  20. 01 7月, 2006 2 次提交
  21. 29 6月, 2006 7 次提交
  22. 28 6月, 2006 1 次提交