- 28 Apr, 2002 5 commits
-
-
Douglas Gilbert authored
Here's a patch for SCSI REPORT LUN scanning, including Douglas Gilbert's recent changes to support a short INQUIRY followed by a longer INQUIRY. Please apply, or let me know if you think it needs any modifications. It's against linux-2.5.4. It does _not_ change the size of the linux lun. A description of the 8 byte LUN layout can be found on page 35 of: ftp://ftp.t10.org/t10/drafts/scc2/scc2r04.pdf The above is a draft, but matches the layout seen on most disk arrays (including EMC, IBM, LSI, and Hitachi). Later drafts (post SCSI-3) have this information in the SCSI Architectural Model. Patch description: Adds REPORT LUN scanning. Adds Douglas Gilbert's INQUIRY modification so broken devices that cannot handlean INQUIRY of more than 36 bytes can be black-listed, plus saving the INQUIRY result in Scsi_Device. Adds scan_scsis_target function, replacing code in scan_scsis and parts of scan_scsis_single. This cleans up the scanning code, and removes a really ugly for loop. It would be difficult to add REPORT LUN scanning without this change. Adds missing scsi_release_commandblocks(). No longer sets max_dev_lun out of bounds for BLIST_FORCELUN devices. Fixes scanning past LUN 7 for SCSI-3 devices (the patch in 2.4.17 for that fix will not cleanly apply against this code). -- Patrick Mansfield
-
Douglas Gilbert authored
Changes since 3.5.24 (20020319) - use Scsi_Request::upper_private_data - zero buffers for non-root users Changes since 3.5.23 (20011231) - change EACCES to EPERM when O_RDONLY is insufficient - suppress newlines in host string - fix xfer direction, old interface, short reply_len [Travers Carter]
-
Jaroslav Kysela authored
Hello, this ALSA patch contains: - fixed sound_core.c - devfs names - added ARM driver for H3x00 iPaq handhelds from Compaq - added RME Digi32 driver - increased number of RawMidi devices per card to 8 - removed unimplemented IPC definitions from asequencer.h - compilation fixes for snd_printk/snd_printd - added snd_midi_event_no_status() function to seq_midi_event.c - used in OSS emulation code to follow OSS/Lite behaviour - fixed snd_pcm_playback_silence() function (possible memory leak) - fixed endless loop in snd_pcm_playback_drain() - OSS applications using mmap() should end correctly now - fixed autoloading of sequencer clients (oops) - fixed virmidi code (emu10k1) - improved OPL4 chip detection - fixed deadlock in sound/i2c.h - improved cs8427 chip support (proper initialization) - improved CMI8330 detection - improved S/PDIF detection in ENS1371 driver - fixed possible NULL pointer dereference in FM801 driver - added ICH4 to intel8x0 driver - fixed port names allocation in intel8x0 driver - fixed rate detection in intel8x0 driver - AC97 code - better initialization for wolfson codecs - improved CS4205 support (special S/PDIF handling) - emu10k1/audigy updates Jaroslav
-
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.
-
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.
-
- 26 Apr, 2002 3 commits
-
-
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...)
-
Linus Torvalds authored
-
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
-
- 25 Apr, 2002 31 commits
-
-
Linus Torvalds authored
-
http://linux-isdn.bkbits.net/linux-2.5.isdnLinus Torvalds authored
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
-
http://linux-isdn.bkbits.net/linux-2.5.makeLinus Torvalds authored
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
-
Kai Germaschewski authored
into tp1.ruhr-uni-bochum.de:/home/kai/kernel/v2.5/linux-2.5.make
-
Kai Germaschewski authored
Get rid of traces of the old-style ALL_MOBJS variable. This also fixes the following issue, which could cause a warning with certain configs: Makefiles (legally) do: obj-$(CONFIG_SND_AD1848) += snd-pcm.o snd-timer.o snd.o obj-$(CONFIG_SND_CS4231) += snd-pcm.o snd-timer.o snd.o snd-rawmidi.o so when the first option is set to y, the second to m, we have e.g. snd-pcm.o on both $(obj-y) and $(obj-m). We correctly don't build the modular version in this case. However, if snd-pcm.o was a multi-part object, we did automatically generate a link rule for both the modular and the built-in version, which caused a warning - that's now fixed.
-
Kai Germaschewski authored
-
Alexander Viro authored
- switch md_error() to struct block_device * - just cleaning up after ->bi_dev switch.
-
Alexander Viro authored
- bdevname() switched to struct block_device *. Old variant (taking kdev_t) renamed to __bdevname() (very few callers remain). This allow to drop ->b_dev conveniently - it's duplicated by ->b_bdev and most of remaining users were bdevname(bh->b_dev) in various places.
-
Alexander Viro authored
- *NOW* all places that (re)assign ->bi_dev have relevant struct block_device *. ->bi_bdev (struct block_device * equivalent of ->bi_dev) introduced, ->bi_dev removed, users updated.
-
Alexander Viro authored
- block/loop.c - switch ->lo_device to struct block_device *.
-
Alexander Viro authored
- (JFS) removes ->dev from struct jfs_log - it's duplicated by ->bdev. Old users of ->dev updated.
-
Alexander Viro authored
- md/linear.c - bring struct block_device * into private data.
-
Alexander Viro authored
- this one is interesting and will play in the next series as well; affected place is fs/block_dev.c::do_open(). We check if bdev is a partition (same way it is done in generic_make_request()) and if it is - open entire disk and put pointer to its bdev into a new field bdev->bd_contains. Otherwise (non-partition) we set bdev->bd_contains to bdev. Corresponding cleanup done in blkdev_put() (and failure path in do_open()) - when the last opener goes away we close bdev->bd_contains if bdev is a partition (i.e. not equal to its ->bd_contains) and set it to NULL. Immediate effect is that we can get from bdev of partition to bdev of disk when submitting a bio, but it also opens a way to handle partition-parsing in a sane way. That will be done in the next series.
-
Alexander Viro authored
- md/raid1.c - bring struct block_device * into private data.
-
Alexander Viro authored
- md/multipath.c convert to bio, compile fixes, bring struct block_device * into private data.
-
Alexander Viro authored
- switch loop_set_fd() to struct block_device
-
Alexander Viro authored
- switch blk_{get,set}_readahead() to struct block_device *
-
Alexander Viro authored
- switch block_ioctl() to struct block_device *
-
Alexander Viro authored
- new helpers: queue_hardsect_size() and bdev_hardsect_size(). Analogous to get_hardsect_size() for queue and struct block_device * respectively Most of get_hardsect_size() callers converted to these.
-
Alexander Viro authored
- remove abuses of blksize_size[] and (late) hardsect_size[]. Mostly drivers/s390/char/*, BTW...
-
Alexander Viro authored
- remove abuses of blksize_size[] and (late) hardsect_size[]. Mostly drivers/s390/char/*, BTW...
-
Hirofumi Ogawa authored
Remove unnecessary linux/bitops.h from fat/inode.c.
-
Hirofumi Ogawa authored
This patch cleans up fat_clusters_flush().
-
Hirofumi Ogawa authored
This patch does misc cleanup. OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
-
Hirofumi Ogawa authored
This patch makes detection of a FAT filesystem more exact by checking the first FAT entry.
-
Hirofumi Ogawa authored
Currently fatfs disregards most wrong cluster chains, and only continues processing. This fixes it. If a wrong cluster chain is detected, change filesystem to the read only, and return the error code.
-
Randy Dunlap authored
-
Martin Dalecki authored
- Revoke the TCQ stuff. Well having it for some time showed just nicely what has to be done before it can be included cleanly. But it's just not ready yet. For more explanations please simply track the usage of the special field of struct request - *both* in the generic request handling code and in overall driver code.
-
Linus Torvalds authored
-
Kai Germaschewski authored
The ABC extensions are not in the official kernel, so remove references to them.
-
Kai Germaschewski authored
No idea why that didn't hit me during testing ;-(
-
- 24 Apr, 2002 1 commit
-
-
Kai Germaschewski authored
-