- 07 Sep, 2002 35 commits
-
-
Randy Hron authored
This patch is based on changes I've used for 2.5.31, 2.5.31-mm1, 2.5.32-mm1, 2.5.32-mm2, and 2.5.33-mm1. Without the patch, 2.5.x during heavy benchmark/stress testing eventually locks up with these final messages: kernel: qlogicfc0 : no handle slots, this should not happen. kernel: hostdata->queued is 6, in_ptr: 7d This is a combination of Doug Ledford's patch: http://marc.theaimsgroup.com/?l=linux-kernel&m=103005703808312&w=2 and Eric Weigle's patch: http://marc.theaimsgroup.com/?l=linux-kernel&m=103005790509079&w=2 2.5.33 (and all predecessors i've tested) locked up without it.
-
Linus Torvalds authored
-
Linus Torvalds authored
but it does...
-
Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Alexander Viro authored
* we remove the paritition 0 from ->part[] and put the old contents of ->part[0] into gendisk itself; indexes are shifted, obviously. * ->part is allocated at add_gendisk() time and freed at del_gendisk() according to value of ->minor_shift; static arrays of hd_struct are gone from drivers, ditto for manual allocations a-la ide. As the matter of fact, none of the drivers know about struct hd_struct now.
-
Alexander Viro authored
new helpers - get_capacity(gendisk)/set_capacity(gendisk, sectors). Drivers switched to these; that eliminates most of the accesses to disk->part[]... in the drivers (and makes code more readable, while we are at it). That had caught several bugs when minor had been used in place of minor>>minor_shift (acsi.c is especially nasty in that respect; I don't know if it had ever been used with multiple devices...)
-
Alexander Viro authored
ide switched from hwif->gd[i] to hwif->drive[i]->disk - IOW, instead of array of two pointers to gendisks refered from hwif, we keep these pointers in relevant drives. Cleaned up.
-
Alexander Viro authored
SCSI cdroms got gendisks.
-
Alexander Viro authored
invalidate_buffers() pulled from cdrom ->reset() into its caller. At that point only cdrom.c using cdi->dev. That will play a bit later.
-
Alexander Viro authored
minor cleanup in cdu31a.c
-
Alexander Viro authored
mcdx.c cleaned up, uses of cdi->dev eliminated
-
Alexander Viro authored
pcd.c cleaned up, uses of cdi->dev eliminated, abuse of macros killed (it used to have #define PCD pcd[unit] #define PI PCD.pi and expected 'unit' to be local variable in each function that used these (== almost every function in there)).
-
Alexander Viro authored
Lindent pcd.c.
-
Alexander Viro authored
pcd.c - killed RR and WR macros (replaced with inlines without hidden arguments; the first step in cleanup, they were monstrous).
-
Alexander Viro authored
sbpcd.c - d eliminated, ditto for uses of cdi->dev (we set cdi->handle pointing to structure we neeed). Cleaned up a bit.
-
Alexander Viro authored
sbpcd.[c,h] - uses of D_S[d] replaced with uses of *current_drive.
-
Alexander Viro authored
sbpcd.c - sigh... It used to have a global variable inventively called 'd'. Current disk number. Tons of uses, 99% of them being D_S[d].<blah>. Added a new variable - current_drive. Said animal is equal to D_S + d - it's reassigned at the same place as d.
-
Alexander Viro authored
killed passing minors around; we always pass a pointer to structure; scsi_CDs made static. That killed uses of cdi->dev in sr.c and friends.
-
Alexander Viro authored
Global search'n'replace job - 'SCp' (Scsi_CD pointer - I'm not kidding; and yes, they spell it "Scsi") replaced with 'cd' (sr.c, sr_ioctl.c, sr_vendor.c).
-
Alexander Viro authored
sr.c: we set SCp->cdi.name from the very beginning, which allows to kill passing minors in many cases (we can use "%s...", SCp->cd.name instead of "sr%d...", minor and that turns out to be the majority of places where we use minors at all).
-
Alexander Viro authored
new helper - update_partition(disk, partition_number); does the right thing wrt devfs and driverfs (un)registration of partition entries. BLKPG ioctls fixed - now they call that beast rather than calling only devfs side. New helper - rescan_partitions(disk, bdev); does all work with wiping/rereading/etc. and fs/block_dev.c now uses it instead of check_partition(). The latter became static.
-
Alexander Viro authored
similar to ->flags and ->driverfs_dev_arr, ->de_arr[] got replaced with its (single) element + flag.
-
Alexander Viro authored
Each hd_struct used to have int number; in it. It's used _only_ in disk->part[0] - disk->part[n].number is never assigned/checked for any positive n. Moved from hd_struct to gendisk (disk->part[0].number to disk->number).
-
Alexander Viro authored
disk->driverfs_dev_arr is either NULL or consists of exactly one element. Same change as above (struct device ** -> struct device *); old "is the pointer to array itself NULL or not?" replaced with a flag (in disk->flags).
-
Alexander Viro authored
Seeing that now disk->flags[] always consists of one element, we replace char *flags with int flags, remove the junk from places that used to allocate these "arrays" and do obvious updates of the code (s/->flags[0]/->flags/).
-
Alexander Viro authored
call of driverfs_remove_partitions() pulled into del_gendisk(); function isn't exported anymore. Both it and driverfs_create_partitions() cleaned up.
-
Alexander Viro authored
driverfs_remove_partitions(), devfs_register_partitions(), driverfs_create_partitions(), devfs_register_partition(), devfs_register_disc(), had lost 'minor' argument - it's always disk->first_minor these days. disk_name() takes partition number instead of minor now. Callers of wipe_partitions() in fs/block_dev.c expanded. Remaining caller passes gendisk instead of kdev_t now.
-
Alexander Viro authored
Since ->nr_real is always 1 now, we can remove that field completely. Removed the last remnants of switch in disk_name() (it could be killed a long time ago, I just forgot to remove the last two cases when md and i2o got converted). Collapsed several instances of disk->part[minor - disk->first_minor] - in cases when we know that we deal with disk->part[0].
-
Alexander Viro authored
wipe_partitions() and driverfs_register_partitions(..., 1) (i.e. unregistering them) pulled into del_gendisk() and removed from callers. grok_partitions() merged with register_disk(). devfs_register_partitions(), grok_partitions() and wipe_partitions() not exported anymore.
-
Ivan Kokshaysky authored
Patch set from Jay Estabrook: - include/asm-alpha/dma.h: Add MAX_DMA_ADDR for SABLE and ALCOR - include/asm-alpha/floppy.h: enable the full CROSS_64KB macro for all platforms - include/asm-alpha/core_t2.h: fix HAE usage - arch/alpha/kernel/pci.c: fiddle with quirk_cypress - arch/alpha/kernel/traps.c: prevent opDEC_check() from multiple calls (EV4 SMP SABLEs) - arch/alpha/kernel/proto.h: make t2_pci_tbi() real - arch/alpha/kernel/time.c: shorten timeout delay - arch/alpha/kernel/sys_alcor.c: use ALCOR_MAX_DMA_ADDR because of the 1GB limit on ISA devices - arch/alpha/kernel/core_t2.c: add S/G support and allow direct-map to handle 2GB of memory - arch/alpha/kernel/core_tsunami.c: rework alignment requirements for ISA DMA, esp. for ACER platforms - arch/alpha/kernel/sys_sable.c: fix MAX_DMA_ADDR for the 1GB limitation - arch/alpha/kernel/pci_impl.h: add T2_DEFAULT_MEM_BASE to help avoid HAE use - arch/alpha/kernel/pci_iommu.c: fix ISA_DMA_MASK calculation, and force ISA alignment to 64KB
-
Ivan Kokshaysky authored
- add another argument to do_fork(); - assorted compile fixes.
-
Ivan Kokshaysky authored
Tested on CIA (sparse config space) and Irongate (dense config space); other platforms should work as they are similar to these two. Access config space directly on rx164.
-
Daniel Jacobowitz authored
Here are the changes I have - Fix some bugs I introduced in zap_thread - Improve the check for traced children in sys_wait4 - Fix parent links when using CLONE_PTRACE My thanks to OGAWA Hirofumi for pointing out the first bit. The only other issue I know of is something else Hirofumi pointed out earlier; there are problems when a tracing process dies unexpectedly. I'll come back to that later.
-
Ingo Molnar authored
I've done the attached patch to collect & clean up all the things that happened since yesterday.
-
Linus Torvalds authored
-
- 05 Sep, 2002 5 commits
-
-
Petr Vandrovec authored
It is nice that blkdev_ioctl calls blk_ioctl itself, but unfortunately it does that only if driver's ioctl returns -EINVAL - and IDE returns -EIO :-( Patch below is tested for disks - I do not have IDE floppy nor IDE tape.
-
Linus Torvalds authored
of something arch-dependent and usually less. We may want to do value limiting in generic_fillattr() if people end up caring.
-
Ingo Molnar authored
This is the pid-max patch, the one i sent for 2.5.31 was botched. I have removed the 'once' debugging stupidity - now PIDs start at 0 again. Also, for an unknown reason the previous patch missed the hunk that had the declaration of 'DEFAULT_PID_MAX' which made it not compile ...
-
Ingo Molnar authored
This contains Daniel's suggested fix that allows a parent to PTRACE_ATTACH to a child it forked. That fixes the incorrect BUG_ON() assert that Ogawa's patch was intended to fix, and we thus undo Ogawa's patch. I've tested various ptrace uses and they appear to work just fine.
-
http://linux-isdn.bkbits.net/linux-2.5.makeLinus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-