summaryrefslogtreecommitdiff
path: root/include/linux/loop.h
AgeCommit message (Collapse)Author
2003-08-06[PATCH] Proper block queue reference countingJens Axboe
To be able to properly be able to keep references to block queues, we make blk_init_queue() return the queue that it initialized, and let it be independently allocated and then cleaned up on the last reference. I have grepped high and low, and there really shouldn't be any broken uses of blk_init_queue() in the kernel drivers left. The added bonus being blk_init_queue() error checking is explicit now, most of the drivers were broken in this regard (even IDE/SCSI). No drivers have embedded request queue structures. Drivers that don't use blk_init_queue() but blk_queue_make_request(), should allocate the queue with blk_alloc_queue(gfp_mask). I've converted all of them to do that, too. They can call blk_cleanup_queue() now too, using the define blk_put_queue() is probably cleaner though.
2003-07-16[PATCH] remove all #include <blk.h>'sAdrian Bunk
This causes blk.h to print a warning and removes all uses of blk.h. I've tested the compilation in 2.6.0-test1 with a .config that tries to compile as many drivers as possible.
2003-07-10[PATCH] cryptoloopAndries E. Brouwer
util-linux is waiting for this: it needs to update "struct loop_info64" to add the encryption policy name.
2003-06-24[PATCH] loop.c - part 2 of NAndries E. Brouwer
This does the following: - IV value is current 512-byte sector relative to start of loop container file. This is what all cryptoloop people have done, if I am not mistaken. Andi or others - if you can demonstrate the need for a more flexible setup an additional ioctl field may be needed. I hope we can do without. - made some things static - made lo_offset a loff_t - added lo_sizelimit If one wanted a (crypto)loop somewhere inside a container file, the old code allowed a starting offset, but no size, so that the cryptoloop always extended to the end of the container file. This field allows one to select an arbitrary interval. Note that this changes struct loop_info64. - improve error handling of loop_init() - removed the unused typedef transfer_proc_t. - added a define for LO_CRYPT_CRYPTOAPI
2003-06-22[PATCH] loop.c cleanupsAndries E. Brouwer
This does the following: - remove trailing spaces - make loop.h independent by including bio.h, blk.h, spinlock.h - replace the lock/unlock functions by module_get/module_put; in struct loop this is the change - void (*lock)(struct loop_device *); - void (*unlock)(struct loop_device *); + struct module *owner; - replace the integer lo_encrypt_type by the pointer lo_encryption; there was a race with loop_unregister_transfer - fixed an off-by-one in loop_register_transfer This is Step 1 of a series of half a dozen or so. Half of the above is from Jari. Anything that is wrong is mine.
2003-06-11[PATCH] loop: remove LO_FLAGS_BH_REMAPAndrew Morton
From: Hugh Dickins <hugh@veritas.com> Jonah Sherman <jsherman@stuy.edu> pointed out back in February how LO_FLAGS_BH_REMAP is never actually set, since loop_init_xfer only calls the init for non-0 encryption type. Fix that or scrap it? Let's scrap it for now, that path (hacking values in bio instead of copying data) seems never to have been tested, and adds to the number of paths through loop: leave that optimization to some other occasion.
2003-04-18[PATCH] struct loop_info64 with __u64Andries E. Brouwer
(i) Replace in struct loop_info the dev_t field by __kernel_old_dev_t, where this type is defined in <asm/posix_types.h>, so that problems with a differently sized dev_t in userspace are avoided. (ii) Introduce a new loop_info64, with __u64 device, inode and offset fields.
2002-10-29[PATCH] loop/shmfs fixesAlexander Viro
- add lo->lo_blocksize - kill lo_get_bs() - great name, but... - set ->lo_device only if we do have a block device - pull determination of ->lo_blocksize into both branches - bdev variant gets it from lo_device and file one uses ->i_blocksize. - switched the ioctl getting information about underlying object to lo->lo_device ? stat.rdev : stat.dev - i.e. st_rdev of underlying object if it's a device and st_dev - if it's a file. - reverted the bogosity in shmem.c
2002-10-08[PATCH] 64-bit sector_t - driver changesAndrew Morton
From Peter Chubb Compaq Smart array sector_t cleanup: prepare for possible 64-bit sector_t Clean up loop device to allow huge backing files. MD transition to 64-bit sector_t. - Hold sizes and offsets as sector_t not int; - use 64-bit arithmetic if necessary to map block-in-raid to zone and block-in-zone
2002-09-29[PATCH] make loop set right queue restrictionsJens Axboe
This makes loop honor the queue restrictions by basically stacking all of those, and mirroring the merge_bvec_fn() on the target queue. It also switches loop to use per-loop device queues, since that is the only sane way to do this from a performance POV. Also, in principle I find it to be much nicer if every distinct block device has its own queue.
2002-06-17[PATCH] fix loop driver for large BIOsAndrew Morton
Fix the loop driver for loop-on-blockdev setups. When presented with a multipage BIO, loop_make_request overindexes the first page and corrupts kernel memory. Fix it to walk the individual pages. BTW, I suspect the IV handling in loop may be incorrect for multipage BIOs. Should we not be recalculating the IV for each page in the BIOs, or incrementing the offset by the size of the preceding pages, or such?
2002-04-24[PATCH] (12/15) big struct block_device * push (first series)Alexander Viro
- block/loop.c - switch ->lo_device to struct block_device *.
2002-02-04v2.5.0.1 -> v2.5.0.2Linus Torvalds
- Greg KH: USB update - Richard Gooch: refcounting for devfs - Jens Axboe: start of new block IO layer
2002-02-04v2.4.9.10 -> v2.4.9.11Linus Torvalds
- Neil Brown: md cleanups/fixes - Andrew Morton: console locking merge - Andrea Arkangeli: major VM merge
2002-02-04v2.4.7 -> v2.4.7.1Linus Torvalds
- Anton Altaparmakov: NTFS error checking - Johannes Erdfelt: USB updates - OGAWA Hirofumi: FAT update - Alan Cox: driver + s390 update merge - Richard Henderson: fix alpha sigsuspend error return value - Marcelo Tosatti: per-zone VM shortage - Daniel Phillips: generic use-once optimization instead of drop-behind - Bjorn Wesen: Cris architecture update - Anton Altaparmakov: support for Windows Dynamic Disks - James Washer: LDT loading SMP bug fix
2002-02-04v2.4.2.2 -> v2.4.2.3Linus Torvalds
- Alan Cox: continued merging - Urban Widmark: smbfs fix (d_add on already hashed dentry - no-no). - Andrew Morton: 3c59x update - Jeff Garzik: network driver cleanups and fixes - Gérard Roudier: sym-ncr drivers update - Jens Axboe: more loop cleanups and fixes - David Miller: sparc update, some networking fixes
2002-02-04v2.4.2.1 -> v2.4.2.2Linus Torvalds
- Jens Axboe: fix loop device deadlocks - Greg KH: USB updates - Alan Cox: continued merging - Tim Waugh: parport and documentation updates - Cort Dougan: PowerPC merge - Jeff Garzik: network driver updates - Justin Gibbs: new and much improved aic7xxx driver 6.1.5
2002-02-04Import changesetLinus Torvalds