summaryrefslogtreecommitdiff
path: root/include/linux
AgeCommit message (Collapse)Author
2002-03-11Merge master.kernel.org:/home/davem/BK/net-2.5Linus Torvalds
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
2002-03-11[PATCH] videodev redesignGerd Knorr
This patch is a redesign for videodev.[ch]. Changes: - drop the function pointers (read/write/mmap/poll/...) from struct video_device, use struct file_operations directly instead. Dispatching to different drivers by minor number is done the same way soundcore.o handles this: swap file->f_fops at open() time. - also drop the now obsolete video_red/write/mmap/poll/... functions from videodev.c - Stop using the BKL, use a mutex to protect open,register+unregister calls against races. - provide a video_generic_ioctl() function which can (and should) be used by v4l drivers to handle copying from and to userspace. - provide video_exclusive_open/release functions which can be used by v4l drivers to make sure only one process at a time opens the device. They can be hooked directly into struct file_operations if some driver has nothing to initialize at open time (which is true for many drivers in drivers/media/radio/). The move from function pointers in struct video_device to struct file_operations does break all existing v4l drivers. Thus I have a large number of patches for the drivers in the kernel tree. Most of it is just the adoption to the videodev.[ch] changes, but I've also fixed a small bug there and there while walking througth the source files.
2002-03-11Merge master.kernel.org:/home/dwmw2/BK/jffs2-for-linus-2.5Linus Torvalds
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
2002-03-12Update to 2002-03-12 JFFS2 development tree. Main features:David Woodhouse
- Preliminary version of NAND flash support. - Locking documentation and fixes (including BKL removal because it's superfluous). - Performance improvements - especially for mount time. - Annoying stuff like i_nlink on directories fixed. - Portability cleanups.
2002-03-11[PATCH] struct super_block cleanup - cramfsBrian Gerst
Seperates cramfs_sb_info from struct super_block.
2002-03-11[PATCH] (2/2) fs/super.c cleanupsAlexander Viro
kill_super() and deactivate_super() merged. Next step will be to export these suckers - after that we will be finally done with infrastructure for filesystems with nontrivial ->get_sb().
2002-03-11[PATCH] struct superblock cleanup - minixfsBrian Gerst
Switch to using kmalloc to allocate the minix superblock structure.
2002-03-11[PATCH] struct superblock cleanup - minixfsBrian Gerst
Start of cleaning up the union of filesystem-specific structures in struct super_block. The goal is to remove dependence on filesystem headers in fs.h. This patch abstracts the access to the minix_sb_info structure through the function minix_sb().
2002-03-11[PATCH] dnotifyStephen Rothwell
The following patch makes directory notifications per thread group instead of per process tree as they are now. This means, in particular, that if a child closes a file descriptor that has a directory open with notifies enabled, the notification will not be removed. Thanks to Andrea for the push in the right direction.
2002-03-11[PATCH] PATCH - knfsd in 2.5.6 - fsid= export optionNeil Brown
Support fsid=<number> export option to be device number independent This patch was largely supplied by Steven Whitehouse <steve@gw.chygwyn.com> A new export option "NFSEXP_FSID" indicates that the ex_dev passed down is a user specified number, not a device number. It should be used in fsid_type==1 filehandles to identify the the exportpoint rather than the devid and inode (as in fsid_type == 0). This allows filehandles to be device-number independent so that when Linux changes device numbers on you (after reboot), your filesystems wont go stale. User-space support for this is in the nfs-utils CVS and will be in the next release (any release > 1.0).
2002-03-11Merge penguin:v2.5/linuxLinus Torvalds
into home.transmeta.com:/home/torvalds/v2.5/linux
2002-03-10[PATCH] (2/4) ->kill_sb() switchoverAlexander Viro
FS_LITTER filesystems (ramfs-like) switched to use of ->kill_sb(). FS_LITTER is gone.
2002-03-10[PATCH] (1/4) ->kill_sb() switchoverAlexander Viro
New method - ->kill_sb(). It will eventually replace current fs/super.c::shutdown_super() - i.e. it's called when fs driver must shut the superblock down, remove it from all lists, etc.
2002-03-10Merge bk://lia64.bkbits.net/to-linus-2.5Linus Torvalds
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
2002-03-10[PATCH] My AMD IDE driver, v2.7Vojtech Pavlik
This patch replaces the current AMD IDE driver (by Andre Hedrick) by mine. Myself I think my implementation is much cleaner, but I'll leave upon others to judge that. My driver also additionally supports the AMD-8111 IDE. It's well tested, and I'd like to have this in the kernel instead of what's there now.
2002-03-10[PATCH] New wireless driver API part 2Jean Tourrilhes
Quick summary : this patch build on the first part to offer two important new features : o Wireless Events o Wireless Cell Scanning Wireless Events are events generated by device, driver or the wireless subsystem. It allows for example a device to notify user space when it register to a new cell (roaming) or loose contact with the current Access Points. Currently, the other defined events include some configuration changes and packet drop due to excessive retries, more may come in the future. All those events are useful for MobileIP, V-Handoff and Ad-Hoc routing. Wireless Cell Scanning is a generic API to allow device/drive to report Wireless Cells discovered (including ESSID, frequency and QoS). This is similar to what is available in WindowsXP (except that it's compliant to Wireless Extensions). This patch has been submitted for review on this list a couple of time in January, has been on my web page since and used intensively by other people. It was rediffed to 2.5.6. Driver patches have been submitted to maintainers.
2002-03-10[PATCH] 2.5.6 IDE 19Martin Dalecki
- Fix oversight in replacement of sti() cli() pairs for data structure access protection. This finally resolvs my problems with the 2.5.6 kernel series. Now I'm in fact quite puzzled how it was even possible for the system to get into the init stage without this fix.. - Fix usage of CONFIG_BLK_DEV_IDE_MODULES instead of CONFIG_BLK_DEV_IDE_MODULE. - Make idescsi_init global for usage in systems without module support enabled. - Apply Pavels Macheks patch for suspend support. Whatever some persons argue that it's not fully implemented, I think that we are in development series right now. I don't buy the mock-up examples for problems with either outdated or broken hardware. Micro Drives are for example expected to be drop in replacements for CF cards in digital cameras and I would rather expect them to be very tolerant about the driver in front of them. And then the WB caches of IDE devices are not caches in the sense of a MESI cache, they are more like buffer caches and should therefore flush them self after s short period of inactivity without the application of any special flush command. The upcoming explicit flushing commands in the ATA standard are about data integrity guarantees in high reliability systems, like DB servers for example, and not about simple cache validity. - Apply Vojtech Pavliks fix to the VIA host chip initialization code. - Add missing if-defs around PIO timing tables. - Fix max() min() related compile warnings in IDE-scsi.
2002-03-10[PATCH] 2.5.6 IDE 18Martin Dalecki
No fixes for new problems which occured since today, just syncup. - Remove help text about suitable compiler versions, which is obsoleted by the overall kernel reality. - Remove traces of not progressing work in progress code for the CONFIG_BLK_DEV_ADMA option as well as the empty ide-adma.c file as well as CONFIG_BLK_DEV_IDEDMA_TCQ. - Remove redundant CONFIG_BLK_DEV_IDE != n check in ide/Config.in. Hugh, this is a tricky one... - Add EXPORT_SYMBOL(ide_fops) again, since it's used in ide-cd.c add a note there that this is actually possibly adding the same device twice to the devfs stuff. - Finally change the MAINTAINER entry. Just too many persons bogged me about it and it doesn't take me too much time apparently. - Apply sis.patch.20020304_1. - Don't call ide_release_dma twice in cleanup_ata, since ide_unregister is already calling it for us. Change prototype of ide_unregister to take a hwif as parameter and disable an ioctl for removing/scanning hwif from the list of handled interfaces. I see no reasons for having it and doing it is the fastest DOS attack on my home system I know about it. Contrary to the comments found here and there, hdparm doesn't use it. There are better hot plugging interfaces coming to the kernel right now anyway. - Wrap invalidate_drives in ide_unregister under the ide_lock instead of disabling and enabling interrupts during this operation. There are plenty of other places where the IDE drivers are enabling and disabling interrupts just to protect some data structures. - Don't call destroy_proc_ide_drives(hwif) for every single drive out there.This routine takes a hwif as a parameter. - Resync with the instable 2.5.6...
2002-03-10Major revamp of VLAN layer:David S. Miller
1) Add hw acceleration hooks for device drivers. 2) Move private declarations out of public includes. 3) Mark file local functions and data as static. 4) Use a small hash table for VLAN group lookups. 5) Correct all the locking and device ref counting. 6) No longer mark it as CONFIG_EXPERIMENTAL.
2002-03-10Export ip_net_protocol_{register,unregister}David S. Miller
and ip_nat_used_tuple. Minor cleanups to conntrack/irc modules/configuration. From Harald Welte and the netfilter team.
2002-03-10Move IP-specific identity informationDavid S. Miller
out of struct sock. Fix -EFAULT handling in TCP direct user copy handling. Use struct initializers in IPV6 ndisc code.
2002-03-09[PATCH] Futexes IV (Fast Lightweight Userspace Semaphores)Rusty Russell
Fast user-space mutex implementation, allowing user space to do all of the normal handling, with a minimal fallback to kernel space for when there is lock contention. The kernel space implementation does not keep any per-lock data structures, but instead does a fast hash on the physical page and offset of the user-space lock when contended. Thus no build/teardown costs, or any scalability costs wrt metadata. Updated syscall numbers for 2.5.6, and changed FUTEX_UP/DOWN definitions to be more logical for future expansions (eg. r/w).
2002-03-08Sync up with Linus's tree and resolve conflicts in perfmon.c.David Mosberger
2002-03-08This patch got dropped from the VM_DATA_DEFAULT_FLAGS patch sent earlier.David Mosberger
2002-03-07Remove circular header file dependencyLinus Torvalds
2002-03-07Merge bk://are.twiddle.net:8080/axp-2.5Linus Torvalds
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
2002-03-07[PATCH] cramfs updates for 2.5.6-pre2Daniel Quinlan
Documentation/filesystems/cramfs.txt - remove comment about ROM size limit - fix up magic - update location of tools fs/cramfs/README - add note about sorted directory entries - mkcramfs compile-time DO_HOLES option replaced by run-time -z option - update tools section - add note about PAGE_CACHE_SIZE possibly changing on arm and ia64 fs/cramfs/inode.c - statfs->f_namelen = CRAMFS_MAXPATHLEN include/linux/cramfs_fs.h - add CRAMFS_MAXPATHLEN (252) - clarify CRAMFS_SUPPORTED_FLAGS definition scripts/cramfs - directory removed, the cramfs user-space tools are now located at <http://sourceforge.net/projects/cramfs/>.
2002-03-07[PATCH] smbfs unicode supportUrban Widmark
This patch adds unicode support and wants to be applied on top of the LFS one. It uses a fake nls module to do the (little endian) unicode translation.
2002-03-07[PATCH] smbfs LFSUrban Widmark
This patch adds LFS and moves some smb operations into per-protocol level structs. It wants the nls patch to applied already.
2002-03-07[PATCH] pnpbios compilation warning fixKai Germaschewski
Declare pnpbios_init as returning int, as __initcalls are supposed to.
2002-03-06Merge http://gkernel.bkbits.net/net-drivers-2.5Linus Torvalds
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
2002-03-06Merge new tg3 version 0.96 gigabit ethernet driver.Jeff Garzik
2002-03-06WAN drivers update 5/5:François Romieu
New file and directory include/linux/hdlc/ioctl.h, containing only WAN ioctl-related definitions. Update include/linux/if.h to reference these structures, providing us with complete type safety, including through ioctls.
2002-03-06WAN drivers update 2/5:François Romieu
s/SIOCDEVICE/SIOCWANDEV/
2002-03-06WAN drivers update 1/5:François Romieu
Add new HDLC interface, split up huge hdlc.c driver into multiple files based on hardware type. Convert WAN drivers to new interface.
2002-03-06Hand merge.Jeff Garzik
2002-03-06Add new architecture PCI API function helper, pdev_set_mwi().Jeff Garzik
Add new PCI API functions pci_set_mwi(), pci_clear_mwi().
2002-03-06Typo fix for linux/compiler.h.Jeff Garzik
(a few csets later on this is auto-merged away)
2002-03-06[PATCH] IDE 17 (not just cleanup)Martin Dalecki
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...)
2002-03-06Merge bk://linuxvm.bkbits.net/linux-2.5-vmtidbitsLinus Torvalds
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
2002-03-06Fix percpu patch breakageLinus Torvalds
2002-03-04[PATCH] 2.5.6-pre2 IDE cleanup 16Martin Dalecki
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.
2002-03-04[PATCH] per-cpu areasRusty Russell
This is the Richard Henderson-approved, cleaner, brighter per-cpu patch.
2002-03-04[PATCH] Remove SWP_BLOCKDEVAlexander Viro
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.
2002-03-04[PATCH] death of is_mounted() and aother fixesAlexander Viro
* 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.
2002-03-04[PATCH] (2/3) more kdev_t removalsAlexander Viro
2002-03-01[PATCH] 2.5.6-pre2 - Coda fixes and cleanupsJan Harkes
Here is a batch of accumulated bugfixes and cleanups for the Coda kernel module. Patch is against 2.5.6-pre2, I could also send these as separate patches. bugfix: Fix coda_dentry_revalidate bug Due to a bad test, coda_dentry_revalidate was forcing revalidation of cacheable inodes, and allowed caching of non-cacheable inodes. bugfix: Corrected i_mtime/i_ctime setting i_mtime and i_ctime were not always updated when writing to a file, or when modifying inode attributes. cleanup/optimization: Avoid getattr upcalls We can use coda_iget directly instead of coda_cnode_make when an upcall returns attributes and avoid the getattr upcall altogether. cleanup: Removed debugging messages CDEBUG macros haven't been useful ever since the initial development when they were introduced. They are too verbose for debugging purposes. Removing these saves about a third of the compiled size of the module. Removed print_entry variable that was used by ENTRY/EXIT macros which are already gone. cleanup/optimization: Readdir simplification Relying on the fact that the pagecache is already buffering far more efficiently, simplified coda_readdir implementation. We can now fill the complete userbuffer instead of returning after reading only 2KB. Passing dir entry types that are present in the venus_dirent structure to the user as well. cleanup: Removed redundant permissions statistics counters. The permission check count is about identical to the 'permission' field in the VFS stats, and the permission hit counter can trivially be derived from upcall_stats.access - vfs_stats.permission. Removed these redundant counters. cleanup: Removed useless test for c_flags in coda_revalidate_inode. We already know c_flags is set due to earlier tests.
2002-03-01[PATCH] 2.5.6-pre2 III: spellingRusty Russell
These are all in the 2.4.19-pre2. "Jahn Veach" <V64@V64.net>: [PATCH 2.5.4] Typo corrections. Pavel Machek <pavel@ucw.cz>: Whitespace PCI cleanups (fwd). quinlan@transmeta.com: [PATCH] take COPYING into new century: These mods are directly from the FSF version.
2002-03-01[PATCH] 2.5.6-pre2 II: rd cleanupRusty Russell
From: Dave Jones <davej@suse.de> kernel builds and boots with patch (with CONFIG_BLK_DEV_INITRD disabled). (Trivial because CONFIG_BLK_DEV_RAM is Y if CONFIG_BLK_DEV_INITRD is Y)
2002-03-01[PATCH] path_lookup()Alexander Viro
New helper: path_lookup(name, flags, nd) { int err = 0; if (path_init(name, flags, nd)) err = path_walk(name, nd); return err; } Places doing that by hand converted to calling it. Actually, quite a few of them were doing equivalent of __user_walk() (getname() and if it was successful - call path_lookup() and putname()). Converted to calling __user_walk().