An error occurred fetching the project authors.
- 19 Oct, 2004 1 commit
-
-
Peter Osterlund authored
This patch implements CDRW packet writing as a kernel block device. Usage instructions are in the packet-writing.txt file. A hint: If you don't want to wait for a complete disc format, you can format just a part of the disc. For example: cdrwtool -d /dev/hdc -m 10240 This will format 10240 blocks, ie 20MB. Signed-off-by: Peter Osterlund <petero2@telia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
- 06 Aug, 2004 1 commit
-
-
Pete Zaitcev authored
From: Pete Zaitcev <zaitcev@redhat.com> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
- 21 Jun, 2004 1 commit
-
-
Jeff Garzik authored
Requested by Promise. The hardware isn't widely deployed yet, with almost all users being early evaluators, so this should be OK.
-
- 12 Apr, 2004 1 commit
-
-
Andrew Morton authored
From: Jens Axboe <axboe@suse.de> CFQ I/O scheduler
-
- 12 Mar, 2004 1 commit
-
-
Jeff Garzik authored
-
- 26 Feb, 2004 1 commit
-
-
Andrew Morton authored
From: Stephen Rothwell <sfr@canb.auug.org.au> Add the PPC64 iSeries virtual disk driver
-
- 16 Oct, 2003 1 commit
-
-
Andrew Morton authored
From: viro@parcelfarce.linux.theplanet.co.uk * drivers/block/initrd.c gone * chunk of memory where the current tree would look for intird image is checked for being a valid initramfs image first; then, it is either unpacked (in addition to normal built-in image) or, if it wasn't a valid image, copied into a regular file on rootfs called /dev/initrd. Then memory is freed. Result: a) we can put initramfs image in place of initrd one and kernel will DTRT. b) initrd images still work as usual; code that shoves the thing to ramdisk, etc. doesn't care whether it reads from a block device or regular file. c) initrd.c is gone, so is fake block device and a lot of irregularities with it. It has been in -mm for almost two weeks with no reported problems.
-
- 14 Aug, 2003 1 commit
-
-
Andrew Morton authored
From: Nick Piggin <piggin@cyberone.com.au> Following patch seperates elevator noop, and allows it to be treated like the other schedulers.
-
- 26 Jul, 2003 1 commit
-
-
Bernardo Innocenti authored
Add kconfig options to allow excluding either or both the I/O schedulers. This can be useful for embedded systems (saves about ~13KB). All schedulers are enabled by default for non-embedded.
-
- 10 Jul, 2003 1 commit
-
-
Andries E. Brouwer authored
util-linux is waiting for this: it needs to update "struct loop_info64" to add the encryption policy name.
-
- 05 Jul, 2003 2 commits
-
-
Andrew Morton authored
From: Nick Piggin <piggin@cyberone.com.au> This is the core anticipatory IO scheduler. There are nearly 100 changesets in this and five months work. I really cannot describe it fully here. Major points: - It works by recognising that reads are dependent: we don't know where the next read will occur, but it's probably close-by the previous one. So once a read has completed we leave the disk idle, anticipating that a request for a nearby read will come in. - There is read batching and write batching logic. - when we're servicing a batch of writes we will refuse to seek away for a read for some tens of milliseconds. Then the write stream is preempted. - when we're servicing a batch of reads (via anticipation) we'll do that for some tens of milliseconds, then preempt. - There are request deadlines, for latency and fairness. The oldest outstanding request is examined at regular intervals. If this request is older than a specific deadline, it will be the next one dispatched. This gives a good fairness heuristic while being simple because processes tend to have localised IO. Just about all of the rest of the complexity involves an array of fixups which prevent most of teh obvious failure modes with anticipation: trying to not leave the disk head pointlessly idle. Some of these algorithms are: - Process tracking. If the process whose read we are anticipating submits a write, abandon anticipation. - Process exit tracking. If the process whose read we are anticipating exits, abandon anticipation. - Process IO history. We accumulate statistical info on the process's recent IO patterns to aid in making decisions about how long to anticipate new reads. Currently thinktime and seek distance are tracked. Thinktime is the time between when a process's last request has completed and when it submits another one. Seek distance is simply the number of sectors between each read request. If either statistic becomes too high, the it isn't anticipated that the process will submit another read. The above all means that we need a per-process "io context". This is a fully refcounted structure. In this patch it is AS-only. later we generalise it a little so other IO schedulers could use the same framework. - Requests are grouped as synchronous and asynchronous whereas deadline scheduler groups requests as reads and writes. This can provide better sync write performance, and may give better responsiveness with journalling filesystems (although we haven't done that yet). We currently detect synchronous writes by nastily setting PF_SYNCWRITE in current->flags. The plan is to remove this later, and to propagate the sync hint from writeback_contol.sync_mode into bio->bi_flags thence into request->flags. Once that is done, direct-io needs to set the BIO sync hint as well. - There is also quite a bit of complexity gone into bashing TCQ into submission. Timing for a read batch is not started until the first read request actually completes. A read batch also does not start until all outstanding writes have completed. AS is the default IO scheduler. deadline may be chosen by booting with "elevator=deadline". There are a few reasons for retaining deadline: - AS is often slower than deadline in random IO loads with large TCQ windows. The usual real world task here is OLTP database loads. - deadline is presumably more stable. - deadline is much simpler. The tunable per-queue entries under /sys/block/*/iosched/ are all in milliseconds: * read_expire Controls how long until a request becomes "expired". It also controls the interval between which expired requests are served, so set to 50, a request might take anywhere < 100ms to be serviced _if_ it is the next on the expired list. Obviously it can't make the disk go faster. Result is basically the timeslice a reader gets in the presence of other IO. 100*((seek time / read_expire) + 1) is very roughly the % streaming read efficiency your disk should get in the presence of multiple readers. * read_batch_expire Controls how much time a batch of reads is given before pending writes are served. Higher value is more efficient. Shouldn't really be below read_expire. * write_ versions of the above * antic_expire Controls the maximum amount of time we can anticipate a good read before giving up. Many other factors may cause anticipation to be stopped early, or some processes will not be "anticipated" at all. Should be a bit higher for big seek time devices though not a linear correspondance - most processes have only a few ms thinktime.
-
Andrew Morton authored
keventd is inappropriate for running block request queues because keventd itself can get blocked on disk I/O. Via call_usermodehelper()'s vfork and, presumably, GFP_KERNEL allocations. So create a new gang of kernel threads whose mandate is for running low-level disk operations. It must ever block on disk IO, so any memory allocations should be GFP_NOIO. We mainly use it for running unplug operations from interrupt context.
-
- 23 Apr, 2003 1 commit
-
-
Christoph Hellwig authored
They don't have any code in common, so the initrd support can go into a separate file and not require ramdisk support. Lots of ifdefs gone and smaller kernel images for initrd users.
-
- 08 Apr, 2003 1 commit
-
-
Alan Cox authored
-
- 03 Feb, 2003 1 commit
-
-
Kai Germaschewski authored
One of the goals of the whole new modversions implementation: export-objs is gone for good!
-
- 15 Dec, 2002 1 commit
-
-
Brian Gerst authored
Makefiles no longer need to include Rules.make, which is currently an empty file. This patch removes it from the drivers tree Makefiles.
-
- 15 Oct, 2002 2 commits
-
-
Alexander Viro authored
guts of blkpg.c and blkdev_ioctl() sanitized up and moved into a new file - drivers/block/ioctl.c. blkpg.c is gone.
-
Linus Torvalds authored
Rename old "block_ioctl()" function: it's "scsi_cmd_ioctl()", as that is what the function does. Rename the whole file "scsi_ioctl.c"
-
- 25 Sep, 2002 1 commit
-
-
Jens Axboe authored
This introduces the deadline-ioscheduler, making it the default. 2nd patch coming that deletes elevator_linus in a minute. This one has read_expire at 500ms, and writes_starved at 2.
-
- 02 Sep, 2002 1 commit
-
-
Kai Germaschewski authored
Fix various Makefiles to really list the objects which use EXPORT_SYMBOL. Patch by "Lightweight Patch Manager".
-
- 27 Jul, 2002 1 commit
-
-
Kai Germaschewski authored
This patch cleans up most of the Makefile's to list the correct files (i.e. the ones which do have "EXPORT_SYMBOL" in them) in $(export-objs) Contributed by "Lightweight patch manager"
-
- 28 May, 2002 1 commit
-
-
Kai Germaschewski authored
We currently decide whether we need to descend into the subdirs of drivers/ in drivers/Makefile, but link the resulting objects from the top-level Makefile. Making these two decisions at the same time (in drivers/Makefile) cleans up the top-level Makefile quite a bit. Link order does not change at all apart from sound/, which is now linked last.
-
- 17 May, 2002 1 commit
-
-
Neil Brown authored
New driver for Micro Memory NVRAM module This driver handles up to 16 PCI based NVRAM cards from MicroMemory. Each card appears like a block device, and can be partitioned using any standard partitioning tool. Upto 15 partitions are supported. This driver needs its own major device number and so allocates one using register_blkdev.
-
- 26 Feb, 2002 1 commit
-
-
Dave Jones authored
Updated maintainers list from Ingo's last ping, various changed email addresses in code headers.
-
- 05 Feb, 2002 4 commits
-
-
Linus Torvalds authored
- Jens Axboe: more bio stuff - Coda compile fixes - Nathan Laredo: stradis driver update
-
Linus Torvalds authored
- Greg KH: USB update - Richard Gooch: refcounting for devfs - Jens Axboe: start of new block IO layer
-
Linus Torvalds authored
- Alan Cox: big driver/mips sync - Andries Brouwer, Christoph Hellwig: more gendisk fixups - Tobias Ringstrom: tulip driver workaround for DC21143 erratum
-
Linus Torvalds authored
-