2005-04-17 00:20:36 +02:00
|
|
|
#
|
|
|
|
# Block device driver configuration
|
|
|
|
#
|
|
|
|
|
[PATCH] BLOCK: Make it possible to disable the block layer [try #6]
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: David Howells <dhowells@redhat.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2006-09-30 20:45:40 +02:00
|
|
|
if BLOCK
|
|
|
|
|
2005-04-17 00:20:36 +02:00
|
|
|
menu "Block devices"
|
|
|
|
|
|
|
|
config BLK_DEV_FD
|
|
|
|
tristate "Normal floppy disk support"
|
2005-09-06 02:48:42 +02:00
|
|
|
depends on ARCH_MAY_HAVE_PC_FDC
|
2005-04-17 00:20:36 +02:00
|
|
|
---help---
|
|
|
|
If you want to use the floppy disk drive(s) of your PC under Linux,
|
|
|
|
say Y. Information about this driver, especially important for IBM
|
|
|
|
Thinkpad users, is contained in <file:Documentation/floppy.txt>.
|
|
|
|
That file also contains the location of the Floppy driver FAQ as
|
|
|
|
well as location of the fdutils package used to configure additional
|
|
|
|
parameters of the driver at run time.
|
|
|
|
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
|
|
module will be called floppy.
|
|
|
|
|
|
|
|
config AMIGA_FLOPPY
|
|
|
|
tristate "Amiga floppy support"
|
|
|
|
depends on AMIGA
|
|
|
|
|
|
|
|
config ATARI_FLOPPY
|
|
|
|
tristate "Atari floppy support"
|
|
|
|
depends on ATARI
|
|
|
|
|
|
|
|
config MAC_FLOPPY
|
|
|
|
tristate "Support for PowerMac floppy"
|
|
|
|
depends on PPC_PMAC && !PPC_PMAC64
|
|
|
|
help
|
|
|
|
If you have a SWIM-3 (Super Woz Integrated Machine 3; from Apple)
|
|
|
|
floppy controller, say Y here. Most commonly found in PowerMacs.
|
|
|
|
|
|
|
|
config BLK_DEV_PS2
|
|
|
|
tristate "PS/2 ESDI hard disk support"
|
|
|
|
depends on MCA && MCA_LEGACY && BROKEN
|
|
|
|
help
|
|
|
|
Say Y here if you have a PS/2 machine with a MCA bus and an ESDI
|
|
|
|
hard disk.
|
|
|
|
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
|
|
module will be called ps2esdi.
|
|
|
|
|
|
|
|
config AMIGA_Z2RAM
|
|
|
|
tristate "Amiga Zorro II ramdisk support"
|
|
|
|
depends on ZORRO
|
|
|
|
help
|
|
|
|
This enables support for using Chip RAM and Zorro II RAM as a
|
|
|
|
ramdisk or as a swap partition. Say Y if you want to include this
|
|
|
|
driver in the kernel.
|
|
|
|
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
|
|
module will be called z2ram.
|
|
|
|
|
|
|
|
config ATARI_ACSI
|
|
|
|
tristate "Atari ACSI support"
|
|
|
|
depends on ATARI && BROKEN
|
|
|
|
---help---
|
|
|
|
This enables support for the Atari ACSI interface. The driver
|
|
|
|
supports hard disks and CD-ROMs, which have 512-byte sectors, or can
|
|
|
|
be switched to that mode. Due to the ACSI command format, only disks
|
|
|
|
up to 1 GB are supported. Special support for certain ACSI to SCSI
|
|
|
|
adapters, which could relax that, isn't included yet. The ACSI
|
|
|
|
driver is also the basis for certain other drivers for devices
|
|
|
|
attached to the ACSI bus: Atari SLM laser printer, BioNet-100
|
|
|
|
Ethernet, and PAMsNet Ethernet. If you want to use one of these
|
|
|
|
devices, you need ACSI support, too.
|
|
|
|
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
|
|
module will be called acsi.
|
|
|
|
|
|
|
|
comment "Some devices (e.g. CD jukebox) support multiple LUNs"
|
|
|
|
depends on ATARI && ATARI_ACSI
|
|
|
|
|
|
|
|
config ACSI_MULTI_LUN
|
|
|
|
bool "Probe all LUNs on each ACSI device"
|
|
|
|
depends on ATARI_ACSI
|
|
|
|
help
|
|
|
|
If you have a ACSI device that supports more than one LUN (Logical
|
|
|
|
Unit Number), e.g. a CD jukebox, you should say Y here so that all
|
|
|
|
will be found by the ACSI driver. An ACSI device with multiple LUNs
|
|
|
|
acts logically like multiple ACSI devices. The vast majority of ACSI
|
|
|
|
devices have only one LUN, and so most people can say N here and
|
|
|
|
should in fact do so, because it is safer.
|
|
|
|
|
|
|
|
config ATARI_SLM
|
|
|
|
tristate "Atari SLM laser printer support"
|
|
|
|
depends on ATARI && ATARI_ACSI!=n
|
|
|
|
help
|
|
|
|
If you have an Atari SLM laser printer, say Y to include support for
|
|
|
|
it in the kernel. Otherwise, say N. This driver is also available as
|
|
|
|
a module ( = code which can be inserted in and removed from the
|
|
|
|
running kernel whenever you want). The module will be called
|
|
|
|
acsi_slm. Be warned: the driver needs much ST-RAM and can cause
|
|
|
|
problems due to that fact!
|
|
|
|
|
|
|
|
config BLK_DEV_XD
|
|
|
|
tristate "XT hard disk support"
|
2005-05-04 06:39:42 +02:00
|
|
|
depends on ISA && ISA_DMA_API
|
2005-04-17 00:20:36 +02:00
|
|
|
help
|
|
|
|
Very old 8 bit hard disk controllers used in the IBM XT computer
|
|
|
|
will be supported if you say Y here.
|
|
|
|
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
|
|
module will be called xd.
|
|
|
|
|
|
|
|
It's pretty unlikely that you have one of these: say N.
|
|
|
|
|
|
|
|
config PARIDE
|
|
|
|
tristate "Parallel port IDE device support"
|
2006-01-06 09:19:49 +01:00
|
|
|
depends on PARPORT_PC
|
2005-04-17 00:20:36 +02:00
|
|
|
---help---
|
|
|
|
There are many external CD-ROM and disk devices that connect through
|
|
|
|
your computer's parallel port. Most of them are actually IDE devices
|
|
|
|
using a parallel port IDE adapter. This option enables the PARIDE
|
|
|
|
subsystem which contains drivers for many of these external drives.
|
|
|
|
Read <file:Documentation/paride.txt> for more information.
|
|
|
|
|
|
|
|
If you have said Y to the "Parallel-port support" configuration
|
|
|
|
option, you may share a single port between your printer and other
|
|
|
|
parallel port devices. Answer Y to build PARIDE support into your
|
|
|
|
kernel, or M if you would like to build it as a loadable module. If
|
|
|
|
your parallel port support is in a loadable module, you must build
|
|
|
|
PARIDE as a module. If you built PARIDE support into your kernel,
|
|
|
|
you may still build the individual protocol modules and high-level
|
|
|
|
drivers as loadable modules. If you build this support as a module,
|
|
|
|
it will be called paride.
|
|
|
|
|
|
|
|
To use the PARIDE support, you must say Y or M here and also to at
|
|
|
|
least one high-level driver (e.g. "Parallel port IDE disks",
|
|
|
|
"Parallel port ATAPI CD-ROMs", "Parallel port ATAPI disks" etc.) and
|
|
|
|
to at least one protocol driver (e.g. "ATEN EH-100 protocol",
|
|
|
|
"MicroSolutions backpack protocol", "DataStor Commuter protocol"
|
|
|
|
etc.).
|
|
|
|
|
|
|
|
source "drivers/block/paride/Kconfig"
|
|
|
|
|
|
|
|
config BLK_CPQ_DA
|
|
|
|
tristate "Compaq SMART2 support"
|
|
|
|
depends on PCI
|
|
|
|
help
|
|
|
|
This is the driver for Compaq Smart Array controllers. Everyone
|
|
|
|
using these boards should say Y here. See the file
|
|
|
|
<file:Documentation/cpqarray.txt> for the current list of boards
|
|
|
|
supported by this driver, and for further information on the use of
|
|
|
|
this driver.
|
|
|
|
|
|
|
|
config BLK_CPQ_CISS_DA
|
|
|
|
tristate "Compaq Smart Array 5xxx support"
|
|
|
|
depends on PCI
|
|
|
|
help
|
|
|
|
This is the driver for Compaq Smart Array 5xxx controllers.
|
|
|
|
Everyone using these boards should say Y here.
|
|
|
|
See <file:Documentation/cciss.txt> for the current list of
|
|
|
|
boards supported by this driver, and for further information
|
|
|
|
on the use of this driver.
|
|
|
|
|
|
|
|
config CISS_SCSI_TAPE
|
|
|
|
bool "SCSI tape drive support for Smart Array 5xxx"
|
2006-12-07 05:38:40 +01:00
|
|
|
depends on BLK_CPQ_CISS_DA && PROC_FS
|
|
|
|
depends on SCSI=y || SCSI=BLK_CPQ_CISS_DA
|
2005-04-17 00:20:36 +02:00
|
|
|
help
|
|
|
|
When enabled (Y), this option allows SCSI tape drives and SCSI medium
|
|
|
|
changers (tape robots) to be accessed via a Compaq 5xxx array
|
|
|
|
controller. (See <file:Documentation/cciss.txt> for more details.)
|
|
|
|
|
|
|
|
"SCSI support" and "SCSI tape support" must also be enabled for this
|
|
|
|
option to work.
|
|
|
|
|
|
|
|
When this option is disabled (N), the SCSI portion of the driver
|
|
|
|
is not compiled.
|
|
|
|
|
|
|
|
config BLK_DEV_DAC960
|
|
|
|
tristate "Mylex DAC960/DAC1100 PCI RAID Controller support"
|
|
|
|
depends on PCI
|
|
|
|
help
|
|
|
|
This driver adds support for the Mylex DAC960, AcceleRAID, and
|
|
|
|
eXtremeRAID PCI RAID controllers. See the file
|
|
|
|
<file:Documentation/README.DAC960> for further information about
|
|
|
|
this driver.
|
|
|
|
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
|
|
module will be called DAC960.
|
|
|
|
|
|
|
|
config BLK_DEV_UMEM
|
|
|
|
tristate "Micro Memory MM5415 Battery Backed RAM support (EXPERIMENTAL)"
|
|
|
|
depends on PCI && EXPERIMENTAL
|
|
|
|
---help---
|
|
|
|
Saying Y here will include support for the MM5415 family of
|
|
|
|
battery backed (Non-volatile) RAM cards.
|
|
|
|
<http://www.umem.com/>
|
|
|
|
|
|
|
|
The cards appear as block devices that can be partitioned into
|
|
|
|
as many as 15 partitions.
|
|
|
|
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
|
|
module will be called umem.
|
|
|
|
|
|
|
|
The umem driver has not yet been allocated a MAJOR number, so
|
2006-10-03 22:17:48 +02:00
|
|
|
one is chosen dynamically.
|
2005-04-17 00:20:36 +02:00
|
|
|
|
|
|
|
config BLK_DEV_UBD
|
|
|
|
bool "Virtual block device"
|
|
|
|
depends on UML
|
|
|
|
---help---
|
|
|
|
The User-Mode Linux port includes a driver called UBD which will let
|
|
|
|
you access arbitrary files on the host computer as block devices.
|
|
|
|
Unless you know that you do not need such virtual block devices say
|
|
|
|
Y here.
|
|
|
|
|
|
|
|
config BLK_DEV_UBD_SYNC
|
|
|
|
bool "Always do synchronous disk IO for UBD"
|
|
|
|
depends on BLK_DEV_UBD
|
|
|
|
---help---
|
|
|
|
Writes to the virtual block device are not immediately written to the
|
|
|
|
host's disk; this may cause problems if, for example, the User-Mode
|
|
|
|
Linux 'Virtual Machine' uses a journalling filesystem and the host
|
|
|
|
computer crashes.
|
|
|
|
|
|
|
|
Synchronous operation (i.e. always writing data to the host's disk
|
|
|
|
immediately) is configurable on a per-UBD basis by using a special
|
|
|
|
kernel command line option. Alternatively, you can say Y here to
|
|
|
|
turn on synchronous operation by default for all block devices.
|
|
|
|
|
|
|
|
If you're running a journalling file system (like reiserfs, for
|
|
|
|
example) in your virtual machine, you will want to say Y here. If
|
|
|
|
you care for the safety of the data in your virtual machine, Y is a
|
|
|
|
wise choice too. In all other cases (for example, if you're just
|
|
|
|
playing around with User-Mode Linux) you can choose N.
|
|
|
|
|
|
|
|
config BLK_DEV_COW_COMMON
|
|
|
|
bool
|
|
|
|
default BLK_DEV_UBD
|
|
|
|
|
|
|
|
config MMAPPER
|
|
|
|
tristate "Example IO memory driver (BROKEN)"
|
|
|
|
depends on UML && BROKEN
|
|
|
|
---help---
|
|
|
|
The User-Mode Linux port can provide support for IO Memory
|
|
|
|
emulation with this option. This allows a host file to be
|
|
|
|
specified as an I/O region on the kernel command line. That file
|
|
|
|
will be mapped into UML's kernel address space where a driver can
|
|
|
|
locate it and do whatever it wants with the memory, including
|
|
|
|
providing an interface to it for UML processes to use.
|
|
|
|
|
|
|
|
For more information, see
|
|
|
|
<http://user-mode-linux.sourceforge.net/iomem.html>.
|
|
|
|
|
|
|
|
If you'd like to be able to provide a simulated IO port space for
|
|
|
|
User-Mode Linux processes, say Y. If unsure, say N.
|
|
|
|
|
|
|
|
config BLK_DEV_LOOP
|
|
|
|
tristate "Loopback device support"
|
|
|
|
---help---
|
|
|
|
Saying Y here will allow you to use a regular file as a block
|
|
|
|
device; you can then create a file system on that block device and
|
|
|
|
mount it just as you would mount other block devices such as hard
|
|
|
|
drive partitions, CD-ROM drives or floppy drives. The loop devices
|
|
|
|
are block special device files with major number 7 and typically
|
|
|
|
called /dev/loop0, /dev/loop1 etc.
|
|
|
|
|
|
|
|
This is useful if you want to check an ISO 9660 file system before
|
|
|
|
burning the CD, or if you want to use floppy images without first
|
|
|
|
writing them to floppy. Furthermore, some Linux distributions avoid
|
|
|
|
the need for a dedicated Linux partition by keeping their complete
|
|
|
|
root file system inside a DOS FAT file using this loop device
|
|
|
|
driver.
|
|
|
|
|
|
|
|
To use the loop device, you need the losetup utility, found in the
|
|
|
|
util-linux package, see
|
|
|
|
<ftp://ftp.kernel.org/pub/linux/utils/util-linux/>.
|
|
|
|
|
|
|
|
The loop device driver can also be used to "hide" a file system in
|
|
|
|
a disk partition, floppy, or regular file, either using encryption
|
|
|
|
(scrambling the data) or steganography (hiding the data in the low
|
|
|
|
bits of, say, a sound file). This is also safe if the file resides
|
|
|
|
on a remote file server.
|
|
|
|
|
|
|
|
There are several ways of encrypting disks. Some of these require
|
|
|
|
kernel patches. The vanilla kernel offers the cryptoloop option
|
|
|
|
and a Device Mapper target (which is superior, as it supports all
|
|
|
|
file systems). If you want to use the cryptoloop, say Y to both
|
|
|
|
LOOP and CRYPTOLOOP, and make sure you have a recent (version 2.12
|
|
|
|
or later) version of util-linux. Additionally, be aware that
|
|
|
|
the cryptoloop is not safe for storing journaled filesystems.
|
|
|
|
|
|
|
|
Note that this loop device has nothing to do with the loopback
|
|
|
|
device used for network connections from the machine to itself.
|
|
|
|
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
|
|
module will be called loop.
|
|
|
|
|
|
|
|
Most users will answer N here.
|
|
|
|
|
|
|
|
config BLK_DEV_CRYPTOLOOP
|
|
|
|
tristate "Cryptoloop Support"
|
|
|
|
select CRYPTO
|
2006-12-02 04:36:03 +01:00
|
|
|
select CRYPTO_CBC
|
2005-04-17 00:20:36 +02:00
|
|
|
depends on BLK_DEV_LOOP
|
|
|
|
---help---
|
|
|
|
Say Y here if you want to be able to use the ciphers that are
|
|
|
|
provided by the CryptoAPI as loop transformation. This might be
|
|
|
|
used as hard disk encryption.
|
|
|
|
|
|
|
|
WARNING: This device is not safe for journaled file systems like
|
|
|
|
ext3 or Reiserfs. Please use the Device Mapper crypto module
|
|
|
|
instead, which can be configured to be on-disk compatible with the
|
|
|
|
cryptoloop device.
|
|
|
|
|
|
|
|
config BLK_DEV_NBD
|
|
|
|
tristate "Network block device support"
|
|
|
|
depends on NET
|
|
|
|
---help---
|
|
|
|
Saying Y here will allow your computer to be a client for network
|
|
|
|
block devices, i.e. it will be able to use block devices exported by
|
|
|
|
servers (mount file systems on them etc.). Communication between
|
|
|
|
client and server works over TCP/IP networking, but to the client
|
|
|
|
program this is hidden: it looks like a regular local file access to
|
|
|
|
a block device special file such as /dev/nd0.
|
|
|
|
|
|
|
|
Network block devices also allows you to run a block-device in
|
|
|
|
userland (making server and client physically the same computer,
|
|
|
|
communicating using the loopback network device).
|
|
|
|
|
|
|
|
Read <file:Documentation/nbd.txt> for more information, especially
|
|
|
|
about where to find the server code, which runs in user space and
|
|
|
|
does not need special kernel support.
|
|
|
|
|
|
|
|
Note that this has nothing to do with the network file systems NFS
|
|
|
|
or Coda; you can say N here even if you intend to use NFS or Coda.
|
|
|
|
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
|
|
module will be called nbd.
|
|
|
|
|
|
|
|
If unsure, say N.
|
|
|
|
|
|
|
|
config BLK_DEV_SX8
|
|
|
|
tristate "Promise SATA SX8 support"
|
|
|
|
depends on PCI
|
|
|
|
---help---
|
|
|
|
Saying Y or M here will enable support for the
|
|
|
|
Promise SATA SX8 controllers.
|
|
|
|
|
|
|
|
Use devices /dev/sx8/$N and /dev/sx8/$Np$M.
|
|
|
|
|
|
|
|
config BLK_DEV_UB
|
|
|
|
tristate "Low Performance USB Block driver"
|
|
|
|
depends on USB
|
|
|
|
help
|
|
|
|
This driver supports certain USB attached storage devices
|
|
|
|
such as flash keys.
|
|
|
|
|
2005-10-23 05:15:09 +02:00
|
|
|
If you enable this driver, it is recommended to avoid conflicts
|
|
|
|
with usb-storage by enabling USB_LIBUSUAL.
|
2005-04-17 00:20:36 +02:00
|
|
|
|
|
|
|
If unsure, say N.
|
|
|
|
|
|
|
|
config BLK_DEV_RAM
|
|
|
|
tristate "RAM disk support"
|
|
|
|
---help---
|
|
|
|
Saying Y here will allow you to use a portion of your RAM memory as
|
|
|
|
a block device, so that you can make file systems on it, read and
|
|
|
|
write to it and do all the other things that you can do with normal
|
|
|
|
block devices (such as hard drives). It is usually used to load and
|
|
|
|
store a copy of a minimal root file system off of a floppy into RAM
|
|
|
|
during the initial install of Linux.
|
|
|
|
|
|
|
|
Note that the kernel command line option "ramdisk=XX" is now
|
|
|
|
obsolete. For details, read <file:Documentation/ramdisk.txt>.
|
|
|
|
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
|
|
module will be called rd.
|
|
|
|
|
|
|
|
Most normal users won't need the RAM disk functionality, and can
|
|
|
|
thus say N here.
|
|
|
|
|
|
|
|
config BLK_DEV_RAM_COUNT
|
2006-03-28 11:56:17 +02:00
|
|
|
int "Default number of RAM disks"
|
2005-04-17 00:20:36 +02:00
|
|
|
default "16"
|
2006-03-28 11:56:17 +02:00
|
|
|
depends on BLK_DEV_RAM
|
2005-04-17 00:20:36 +02:00
|
|
|
help
|
|
|
|
The default value is 16 RAM disks. Change this if you know what
|
|
|
|
are doing. If you boot from a filesystem that needs to be extracted
|
|
|
|
in memory, you will need at least one RAM disk (e.g. root on cramfs).
|
|
|
|
|
|
|
|
config BLK_DEV_RAM_SIZE
|
|
|
|
int "Default RAM disk size (kbytes)"
|
|
|
|
depends on BLK_DEV_RAM
|
|
|
|
default "4096"
|
|
|
|
help
|
|
|
|
The default value is 4096 kilobytes. Only change this if you know
|
|
|
|
what are you doing. If you are using IBM S/390, then set this to
|
|
|
|
8192.
|
|
|
|
|
2006-07-14 09:24:10 +02:00
|
|
|
config BLK_DEV_RAM_BLOCKSIZE
|
|
|
|
int "Default RAM disk block size (bytes)"
|
|
|
|
depends on BLK_DEV_RAM
|
|
|
|
default "1024"
|
|
|
|
help
|
2006-10-03 23:40:34 +02:00
|
|
|
The default value is 1024 bytes. PAGE_SIZE is a much more
|
2006-07-14 09:24:10 +02:00
|
|
|
efficient choice however. The default is kept to ensure initrd
|
|
|
|
setups function - apparently needed by the rd_load_image routine
|
|
|
|
that supposes the filesystem in the image uses a 1024 blocksize.
|
|
|
|
|
2005-04-17 00:20:36 +02:00
|
|
|
config CDROM_PKTCDVD
|
|
|
|
tristate "Packet writing on CD/DVD media"
|
|
|
|
depends on !UML
|
|
|
|
help
|
2006-12-08 11:36:10 +01:00
|
|
|
If you have a CDROM/DVD drive that supports packet writing, say
|
|
|
|
Y to include support. It should work with any MMC/Mt Fuji
|
|
|
|
compliant ATAPI or SCSI drive, which is just about any newer
|
|
|
|
DVD/CD writer.
|
2005-04-17 00:20:36 +02:00
|
|
|
|
2006-12-08 11:36:10 +01:00
|
|
|
Currently only writing to CD-RW, DVD-RW, DVD+RW and DVDRAM discs
|
|
|
|
is possible.
|
2005-04-17 00:20:36 +02:00
|
|
|
DVD-RW disks must be in restricted overwrite mode.
|
|
|
|
|
2006-12-08 11:36:10 +01:00
|
|
|
See the file <file:Documentation/cdrom/packet-writing.txt>
|
|
|
|
for further information on the use of this driver.
|
|
|
|
|
2005-04-17 00:20:36 +02:00
|
|
|
To compile this driver as a module, choose M here: the
|
|
|
|
module will be called pktcdvd.
|
|
|
|
|
|
|
|
config CDROM_PKTCDVD_BUFFERS
|
|
|
|
int "Free buffers for data gathering"
|
|
|
|
depends on CDROM_PKTCDVD
|
|
|
|
default "8"
|
|
|
|
help
|
|
|
|
This controls the maximum number of active concurrent packets. More
|
|
|
|
concurrent packets can increase write performance, but also require
|
|
|
|
more memory. Each concurrent packet will require approximately 64Kb
|
2006-02-05 08:27:47 +01:00
|
|
|
of non-swappable kernel memory, memory which will be allocated when
|
|
|
|
a disc is opened for writing.
|
2005-04-17 00:20:36 +02:00
|
|
|
|
|
|
|
config CDROM_PKTCDVD_WCACHE
|
2006-02-05 08:27:45 +01:00
|
|
|
bool "Enable write caching (EXPERIMENTAL)"
|
|
|
|
depends on CDROM_PKTCDVD && EXPERIMENTAL
|
2005-04-17 00:20:36 +02:00
|
|
|
help
|
|
|
|
If enabled, write caching will be set for the CD-R/W device. For now
|
|
|
|
this option is dangerous unless the CD-RW media is known good, as we
|
|
|
|
don't do deferred write error handling yet.
|
|
|
|
|
|
|
|
source "drivers/s390/block/Kconfig"
|
|
|
|
|
|
|
|
config ATA_OVER_ETH
|
|
|
|
tristate "ATA over Ethernet support"
|
|
|
|
depends on NET
|
|
|
|
help
|
|
|
|
This driver provides Support for ATA over Ethernet block
|
|
|
|
devices like the Coraid EtherDrive (R) Storage Blade.
|
|
|
|
|
|
|
|
endmenu
|
[PATCH] BLOCK: Make it possible to disable the block layer [try #6]
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: David Howells <dhowells@redhat.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2006-09-30 20:45:40 +02:00
|
|
|
|
|
|
|
endif
|