- 30 Sep, 2002 28 commits
-
-
James Bottomley authored
into mulgrave.(none):/home/jejb/BK/scsi-for-linus-2.5
-
Mike Anderson authored
-
Rolf Fokkens authored
Hi! Since the introduction of USER_HZ the SG_[GS]ET_TIMEOUT ioctls may have a serious BUG as userspace uses a different HZ from the HZ in kernelspace. In x86 HZ=1000 and USER_HZ=100, resulting in confusing timouts as the kernel measures time 10 times as fast as userspace. This patch is an attempt to fix this by transforming USER_HZ based timing to HZ based timing before storing it in timeout. To make sure that SG_GET_TIMEOUT and SG_SET_TIMEOUT behave consistently a field timeout_user is added which stores the exact value that's passed by SG_SET_TIMEOUT and it's returned on SG_GET_TIMEOUT. Rolf Fokkens fokkensr@fokkensr.vertis.nl P.S. this is the second post of this patch
-
James Bottomley authored
-
Andrew Morton authored
But it's called from scsi_add_lun()->scsi_alloc_sdev() before the type is known. The type is -1 all the time in scsi_initialise_merge_fn() and scsi always bounces. This patch makes it do the right thing - just enable block-highmem for all scsi devices. Jens had this to say: "I guess that block-highmem has been around long enough, that I can use the term 'historically' at least in the kernel sense :-) This extra check was added for IDE because each device type driver (ide-disk, ide-cd, etc) needed to be updated to not assume virtual mappings of request data was valid. I only did that for ide-disk, since this is the only one where bounce buffering really hurt performance wise. So while ide-cd and ide-tape etc could have been updated, I deemed it uninteresting and not worthwhile. Now, this was just carried straight into the scsi counter parts, conveniently, because of laziness. A quick glance at sr shows that it too can aviod bouncing easily (no changes needed). st may need some changes, though. So again, for scsi it was a matter of not impacting existing code in 2.4 too much. So TYPE_DISK check can be killed in 2.5 if someone does the work of checking that it is safe. I'm not so sure it will make eg your SCSI CD-ROM that much faster :-)"
-
Dominik Brodowski authored
In two drivers a wrong size of memory was allocated for cpufreq_driver: as it must include NR_CPUS times a struct cpufreq_policy (and not struct cpufreq_freqs). Thanks to Petr Vandrovec for this patch.
-
Matthew Wilcox authored
QDIO_BH was never actually used anyway, and won't do much good now BHs are gone.
-
Alexander Viro authored
Beginning of proper refcounting. New helpers introduced, several drivers switched to using them for dynamic allocation of gendisks. Once everything is switched (and that will be way easier than per-drive gendisks series) we will be able to add sane reference counts on gendisk, at which point we can safely put pointer to gendisk in struct block_device / struct request and we had pretty much won - from that point it's pretty straightforward crapectomy in drivers.
-
Alexander Viro authored
char *major_name replaced with char disk_name[16]; All uses of ->major_name replaced with those of ->disk_name and (obviously) simplified big way. Bunch of arrays, kmallocs, etc. is gone.
-
Alexander Viro authored
... now it can be done. We also drop almost all arguments - there is only one caller and everything is determined by the first argument.
-
Alexander Viro authored
Cleans the handling of partitioning up. More or less the same story as with other drivers...
-
Alexander Viro authored
corrected handling of sizes. Ugh.
-
Alexander Viro authored
get_gendisk() now takes dev_t (instead of kdev_t) and gets an additional argument - int *part. Set to 0 for non-partitioned, partition number for partititoned. Callers updated. Yes, I hate passing return values that way ;-/ We need that since old "minor(dev) - disk->first_minor" doesn't work for stuff with non-trivial numbers (e.g. floppy) and get_gendisk() really has to return both gendisk and partition number. Fortunately, amount of callers of gendisk() is about to drop RSN big way...
-
Alexander Viro authored
The list used to generate /proc/partitions turned into list_head one; we also restore the old order of elements (originally we added to the end of list; recent changes had reverted that, now we are back to original order).
-
Jens Axboe authored
Make IDE set the dma mask to full 32-bit dma.
-
Jens Axboe authored
Just for niceness, loop should clear queue queuedata when it exits.
-
Jens Axboe authored
These days we only require a clear of BIO_UPTODATE on -EIO, we don't set it on success. This breaks raid5. It appears to clear BIO_UPTODATE fine but doesn't start out with it set.
-
Jens Axboe authored
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.
-
Jens Axboe authored
There's really no reason to BUG() out on a bio that is too big, the gentleman thing to do would be to print a warning and just end the bio with -EIO quietly.
-
Jens Axboe authored
Add a function to set queue merge_bvec_fn to mimic the rest of the api, and also add documentation for that and blk_queue_prep_rq().
-
Jens Axboe authored
The might_sleep() thing caught ide, which calls request_irq() with a lock held. It can be argued that this is a bad thing, however I think it can also validly be argued that requesting an irq should not be a blocking operation. This might even remove some driver bugs where usage count is not incremented during init... It can also be argued, that the very first irq requests cannot be blocking for io anyways, for good reason :-)
-
Björn A. Zeeb authored
Too trivial to see the first time when debugging on weekends ;-))
-
http://jdike.stearns.org:5000/highmem-2.5Linus Torvalds authored
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
-
Jeff Dike authored
into uml.karaya.com:/home/jdike/linux/2.5/highmem-2.5
-
http://jdike.stearns.org:5000/updates-2.5Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Ingo Molnar authored
This fixes a procfs crash noticed by Anton Blanchard. The procfs code can have a reference even to an already exited task, so it needs to follow special rules accessing p->sig. The atomic-signals patch made this bug happen at a much higher frequency, but procfs i believe was buggy ever since, it potentially used the freed signal structure - which just did not result in a crash like it does today. The proper fix is to take the tasklist read-lock in collect_sigign_sigcatch(), this excludes __exit_sighand() freeing the signal structure prematurely.
-
- 29 Sep, 2002 11 commits
-
-
Jeff Garzik authored
due to synchronize_irq() becoming a no-op when !CONFIG_SMP.
-
Jeff Dike authored
-
Jeff Dike authored
uml.ld.S.
-
David S. Miller authored
-
Jeff Dike authored
-
David S. Miller authored
-
David S. Miller authored
-
Jeff Dike authored
-
David S. Miller authored
-
David S. Miller authored
into nuts.ninka.net:/home/davem/src/BK/net-2.5
-
David S. Miller authored
into nuts.ninka.net:/home/davem/src/BK/net-2.5
-
- 30 Sep, 2002 1 commit
-
-
Arnaldo Carvalho de Melo authored
With this we avoid doing skb_clone on skbs that will not be kept on unacked lists.
-