- 06 Mar, 2002 5 commits
-
-
Martin Dalecki authored
This is actually an attempt to remove some stall code from this driver. However if some *real* users complain (Not just the usuall: "Hey - if someone!" but the "Hey I'm using this!") I'm all open to reenable it. Since I prepared this patch yerstoday it doesn't contain the ide_module.h fixup. This will follow later. - Don't use the convoluted byte type in ide-pci.c. Just use the proper u8instead. - Move ide_get_or_set_dma_base to the only place where it's used and reorganize the code there by killing the unnecessary CONFIG_BLK_DEV_IDEDMA_FORCED configuration option. - Remove unfunctional CONFIG_PKT_TASK_IOCTL code. - Kill unused ALTSTAT_SCREW_UP code. - Tons of dead code removed from ide-taskfile.c (#if 0 #endif and friends) - Remove unused IDE_DEBUG macro as well as lots of other name space pollution from ide.h. - Start using the ide_lock spin-lock for protecting access to data structures instead of the excessive interrupt disabling games. - Shorten the proc ouput of the piix initialization module. - Remove special /proc tape "name" output from ide-tape.c. This was redundant data which should only show up on syslog anyway. - Kill the REALLY_FAST_IO undef from the ide.h. This was a mistake present since far too many years in this driver. The proper way to deal with broken systems is to define REALLY_SLOW_IO in system dependent headers or particular driver files. We can always reintroduce it easy if real users will complain, since OUT_BYTE() and similar can be used as hooks. But I don't expect anybody reporting about this. Even on the most broken IDE chip in the world (cmd640 at VLB) undefining this *always* worked for me. Nearly all the code pieces in the ide driver code *reverted* it's effects explicitly anyway. - Remove the obsolete CONFIG_BLK_DEV_4DRIVES support. This was supposed to support 4 drivers attached at one channel on some older chipsets, in esp. Tekram 690CD, in the last century. They where all supposed to work at a register set starting at the base address 0x1f0. Before complaining that this is removing functionality, please note that this must have been broken for already quite a long time, since the ide driver didn't contain the special device selection methods implicated by this any longer. It didn't scan this port too if PCI host chip support was enabled (as it is in all those distributions around there). On the other hand this is the most prominent case of incoherent use of the mate member in the struct hwif_s. And please think about how big the probability is, that there are systems out there, where there are actually 4 drivers on such a channel? - Streamline module initialization code by removing one shoot functions. - Make the WAIT_READY value used in case of CONFIG_APM or CONFIG_APM_MODULE the default, since this is what really reflects the behavior of modern drives. It won't hurt any other case and finally removing it is reducing the necessary coverage for overall driver code testing/analysis. - Move the IDE_LARGE_SEEK macro to the only place where it's actually used. Replace the IDE_MIN() and IDE_MAX() drivers with the obvious. Remove unused SPLIT_WORD and MAKE WORD from the local header. - Remove CMD640_DUMP_REGS from global scope, since there is no development done on this any longer. Finally, the way the host chip initialization routines are called changed in the time between allows this to remain fully local to the host chip driver in question. - Some spell checking of comments in the code. (Yeep I have extended my Vim to do this the "Word" way with nice undercurl lines... mozilla remains to be fixed...)
-
bk://linuxvm.bkbits.net/linux-2.5-vmtidbitsLinus Torvalds authored
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
-
Alexander Viro authored
The fix for rename broke "link()". Fixed.
-
Linus Torvalds authored
so we need to make init_idle() aware of it so that it gets the preempt_count initialization right.
-
Linus Torvalds authored
-
- 05 Mar, 2002 29 commits
-
-
Alexander Viro authored
I've found what's going on there. Basically, we should not use __user_walk() with LOOKUP_PARENT - nd->last.name is set to the last component of the name and freeing that name before we are done is not a good idea.
-
Linus Torvalds authored
-
Robert Love authored
On SMP systems, preempt_count is erroneously set to 1 for idle task's on all CPU besides CPU0. This patch sets preempt_count properly. Robert Love
-
Andries E. Brouwer authored
I see that this is fixed now in 2.2 and 2.4, but 2.5 still has broken BSD partition handling. Here a fix. Andries
-
Adam Radford authored
- Fix bug in tw_aen_complete() where aen's could be lost. Fix tw_aen_drain_queue() to display useful info at init. Set tw_host->max_id for 12 port cards. Add ioctl support for raw command packet post from userspace with sglist fragments (parameter and io). - Fix read capacity to under report by 1 sector to fix get last sector ioctl. - Fix bug where more AEN codes weren't coming out during driver initialization. Improved handling of PCI aborts. - Fix bug in tw_findcards() where AEN code could be lost. Increase timeout in tw_aen_drain_queue() to 30 seconds. - Re-write raw command post with data ioctl method. Remove raid5 bounce buffers for raid5 for 6XXX for kernel 2.5 Add tw_map/unmap_scsi_sg/single_data() for kernel 2.5 Replace io_request_lock with host_lock for kernel 2.5 Set max_cmd_len to 16 for 3dm for kernel 2.5 - Set host->max_sectors back up to 256. - Modified pci parity error handling/clearing from config space during initialization. - Better handling of request sense opcode and sense information for failed commands. Add tw_decode_sense(). Replace all mdelay()'s with scsi_sleep(). - Revert mdelay's and scsi_sleep's, this caused problems on some SMP systems. - Add pci_set_dma_mask(), rewrite kmalloc()/virt_to_bus() to pci_alloc/free_consistent().
-
bk://bcrlbits.bkbits.net/linux-2.5Linus Torvalds authored
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
-
Maciej W. Rozycki authored
There is a problem with the through-8259A mode for IRQ 0 on I/O APIC systems. Depending on correctness of an MP table, IRQ 0 routing is either not registered at all or registered at a wrong pin. As a result the 8254 timer IRQ only works by an accident (it's edge-triggered and never disabled/enabled so it happens to survive this incorrect configuration). A visible effect is you can't change the affinity for IRQ 0. Following is a patch that fixes both cases referred to above. The code looks obvious but it was additionally run-time tested just in case. The issue is serious -- please apply the patch ASAP. As no changes were done to io_apic.c since the development fork, the patch applies cleanly both to 2.4 and to 2.5. Credit goes to Joe for discovering the affinity problem and providing a fix proposal (incorporated in the final one). Maciej
-
Linus Torvalds authored
-
Linus Torvalds authored
-
Martin Dalecki authored
There is no such a thing like a ide-clean-15. Never was. But here comes what has been done in ide-clean-16: - Apply a patch for the initialization of the second PIIX channel. Found by Daniel Quinlan <quinlan@transmeta.com> - Apply a patch for the DMA initialization of the serverworks chip. Ken Brownfield <brownfld@irridia.com> - Make the ata_operations methods immune against device type drivers, which donot provide them by separating the access to them out. Audit them all. - Resynchronize with 2.5.6-pre1. - Remove unused IDE_DRIVE_CMD, IDE_DRIVE_TASK, IDE_DRIVE_TASK_MASK, IDE_DRIVE_TASKFILE macros. - Disable configuration of the task file stuff. It is going to go away and will be replaced by a truly abstract interface based on functionality and *not* direct mess-up of hardware. - Resync with 2.5.6-pre2. - Add HPT entries to the fall-back list, since otherwise the driver won'trecognize the drives. We will have to make this the default behavior for allnot recognized host chip types. - Fix compilation with no PCI host chip support enabled. - Apply the overflow fixes for HPT366 by Vojtech Pavlik. - Kill the one-shoot functions ide_wait_cmd_taks() ide_wait_cmd() by moving them to the places where they are actually used. Fix a potential buffer overflow on the way. - Fix usage of ide.c as module. Thanks to Adam J. Richter for figuring out what was wrong. - Various cleanups all along as well as removal of TONS of unfinished/dead code. I think it's sometimes better to remove stuff, which isn't there, instead of hoping for a "magical day" where it will be finished.
-
Rusty Russell authored
This is the Richard Henderson-approved, cleaner, brighter per-cpu patch.
-
Corey Minyard authored
Ok, I found it. The problem was in the decompression code. In inflate.c, in the routine zlib_inflate(), it reuses the passed-in "f" parameter as a return value, but the PPP packet compression stuff needs that return value later.
-
Brian Gerst authored
This patch adds two intermediate general cache sizes, 96 and 192 bytes. On my system this saves about 34k. size-256 63 180 256 5 12 1 size-192 95 120 192 5 6 1 size-128 213 240 128 8 8 1 size-96 1080 1120 96 28 28 1
-
Robert Love authored
During 2.5.5-pre schedule_tail was optimized away under UP. We need it for preempt-kernel, too, since it decrements the preempt_count to 0 coming off do_fork. Without this patch, CONFIG_PREEMPT + !CONFIG_SMP does not gain one very much. Robert Love
-
bk://bk.arm.linux.org.ukLinus Torvalds authored
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
-
bk://linuxusb.bkbits.net/linus-2.5Linus Torvalds authored
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
-
Alexander Viro authored
Below is a followup to bd_claim patch - it is the last one from the current series. Removes SWP_BLOCKDEV flag - it isn't needed anymore.
-
Alexander Viro authored
* new functions - bd_claim(bdev, holder) and bd_release(bdev). bd_claim(bdev, holder) fails is device is already claimed by somebody else; bd_release(bdev) gives device up. * get_sb_bdev() claims device for fs_type; it means that we don't need to look through entire least of superblocks anymore - just through the list of superblocks belonging to that type (i.e. the same thing we do for non-block filesystems; that will allow to merge quite a bit of code afterwards). * sys_swapon claims device for itself; free exclusion with mounting, end of problems with bogus set_blocksize(). * is_mounted() and is_swap_partition() are gone - what we actually wanted was "try to claim device for ourselves". Which we can do now - without races inherent to is_mounted()/is_swap_partition(). * RAID lock_rdev() claims device for itself. I.e. we get rid of is_mounted() in there (BTW, is_swap_partition() was missing) and we get protection both ways - not only RAID won't take an already mounted device, but mount won't stomp on a device claimed by RAID. There are other places that would benefit from the same (e.g. ext3 with external journal almost definitely wants to claim device for itself). Notice that it's a cooperative thing - neither open() nor raw device stuff claim the block device, so they don't care if device is mounted, etc. So we don't break fsck and friends - exclusion is between those who know that they want that exclusion.
-
Alexander Viro authored
-
Alexander Viro authored
-
Alexander Viro authored
1. moves a bunch of generic ioctls from sr_dev_ioctl() to cdrom_ioctl(). 2. switches blk_ioctl() to struct block_device * 3. ditto for blkpg_ioctl()
-
Alexander Viro authored
Missing export for dparent_lock.
-
Jean Tourrilhes authored
ir256_usb_cow_urballoc.diff : --------------------------- o [FEATURE] Don't use skb_cow() unless we really need to o [CORRECT] Reorder URB init to avoid races o [CORRECT] USB dealy adds processing time, not removes it <Following patch from Greg KH <greg@kroah.com> himself !!!> o [CRITICA] Use dynamically allocated URBs (instead of statically)
-
Jean Tourrilhes authored
ir256_lap_icmd_fix-4.diff : ------------------------- o [CORRECT] Fix Tx queue handling (remove race, keep packets in order) o [CORRECT] Synchronise window_size & line_capacity and make sure we never forget to increase them (would stall Tx queue) o [FEATURE] Group common code out of if-then-else o [FEATURE] Don't harcode LAP header size, use proper constant o [FEATURE] Inline irlap_next_state() to decrease bloat
-
Jean Tourrilhes authored
ir256_irnet_disc_ind.diff : ------------------------- o [CORRECT] Fix IrNET disconnection to not reconnect but instead to hangup pppd
-
Jean Tourrilhes authored
ir256_sock_connect_cli.diff : --------------------------- o [CRITICA] Fix socket connect to remove dangerous cli() <Tested on SMP>
-
Jean Tourrilhes authored
ir256_bus_to_virt.diff : ---------------------- o [CRITICA] Fix ISA FIR drivers for new DMA API <PCI FIR drivers are still broken and need fixing>
-
Russell King authored
into flint.arm.linux.org.uk:/usr/src/linux-bk-2.5/linux-2.5-rmk
-
Stefan Eletzhofer authored
This patch adds PCMCIA/CF support for the PT Digital Board (CONFIG_SA1100_PT_SYSTEM3). 2nd try .... :) Changed files: linux/drivers/pcmcia/Makefile linux/drivers/pcmcia/sa1100.h linux/drivers/pcmcia/sa1100_generic.c Added files: linux/drivers/pcmcia/sa1100_system3.c
-
- 04 Mar, 2002 5 commits
-
-
David Woodhouse authored
it's too big for kmalloc.
-
David Woodhouse authored
Use vmalloc for ppp_deflate workspace. It's 400KiB, and kmalloc strangely doesn't seem to work very well for that :) Use schedule_task to do a delayed cleanup, because the z_comp_free routine is called with spinlocks held, hence we can't just call vfree(). Fix double MOD_DEC_USE_COUNT when allocation fails, for both compression and decompression workspaces. Change licence text to one that insmod likes.
-
Mark W. McClelland authored
-
Vojtech Pavlik authored
- bug fix for lockup on SMP machines
-
Benjamin LaHaise authored
-
- 03 Mar, 2002 1 commit
-
-
Benjamin LaHaise authored
-