David Howells [Thu, 7 Feb 2002 06:56:27 +0000 (22:56 -0800)]
[PATCH] thread information block
syscall latency improvement
* There's now an asm/thread_info.h header file with the basic structure
def and asm offsets in it.
* There's now a linux/thread_info.h header file which includes the asm
version and wraps some bitops calls to make convenience functions for
accessing the low-level flags.
* The task_struct has had some fields removed (and some flags), and has
acquired a pointer to the thread_info struct.
* task_struct's are now allocated on slabs in kernel/fork.c, whereas
thread_info structs are allocated at the bottom of the stack pages.
* Some more convenience functions are provided at the end of linux/sched.h to
access flags in other tasks (these are here because they need to access the
task_struct).
typo fix, fixing a compile time bug due to the change over to the new
filesystem definition patches in -pre2 (changes pcihpfs_fs_type to
pcihpfs_type).
Matt Domsch [Thu, 7 Feb 2002 02:19:32 +0000 (18:19 -0800)]
[PATCH] BLKGETSIZE64 (bytes not sectors)
Linus, below is a patch to return the size of a device in bytes, not
in units of 512-byte sectors (which is incorrect per function
definition). Tim Pepper submitted an equivalent patch for 2.4.x, now
included in 2.4.18-pre4. Please apply.
Vojtech Pavlik [Thu, 7 Feb 2002 01:46:57 +0000 (17:46 -0800)]
[PATCH] Input drivers, step #3
This patch updates the input core to the current version, fixing a bunch
of bugs, adding hotplug support and a listing of available input devices
in /proc. The later is very useful for troubleshooting.
Jeff Garzik [Thu, 7 Feb 2002 00:14:36 +0000 (19:14 -0500)]
Remove deprecated SIOCDEVPRIVATE ioctls from several net drivers. The same capabilities have been accessible via SIOCxMIIxxx ioctls
since their introduction in 2.4.x, and it's DaveM's intention to
eventually remove SIOCDEVPRIVATE during the 2.5.x series.
Jeff Garzik [Thu, 7 Feb 2002 00:07:28 +0000 (19:07 -0500)]
8139too net driver updates:
* Support new clone board.
* Count rx-lost-in-ring events.
* Support ethtool-compatible bitmapped printk message enable number.
* Support MII ethtool helper interface, and associated ioctls.
* Replace some MII-related magic numbers with linux/mii.h constants.
* Add in optional (and hopefully preferred... after testing) code
for resetting RX DMA engine on error.
Jeff Garzik [Wed, 6 Feb 2002 23:58:37 +0000 (18:58 -0500)]
fealnx net driver updates:
* Support MII ethtool helper interface, and associated ioctls.
* Replace some MII-related magic numbers with constants from linux/mii.h.
* Remove deprecated SIOCDEVPRIVATE ioctls, SIOCxMIIxxx ioctl replacements
have been in place since 2.4.x.
Jeff Garzik [Wed, 6 Feb 2002 23:53:50 +0000 (18:53 -0500)]
8139cp net driver updates:
* Support MII ethtool helper interface, and associated ioctls.
* Remove unused CP_CHIP_VERSION constant.
* Update to-do list in driver header.
Jeff Garzik [Wed, 6 Feb 2002 23:40:57 +0000 (18:40 -0500)]
via-rhine net driver updates:
* Support MII ethtool helper library, and associated ioctls.
* Replace some MII-related magic numbers with constants from linux/mii.h.
* Remove deprecated SIOCDEVPRIVATE ioctl usage, SIOCxMIIxxx is the
supported (and already present) replacement.
Jeff Garzik [Wed, 6 Feb 2002 23:35:55 +0000 (18:35 -0500)]
winbond-840 (tulip clone) net driver updates:
* Support MII ethtool helper interface, and related ioctls.
* Replace some MII-related magic numbers with constants.
Jeff Garzik [Wed, 6 Feb 2002 23:31:49 +0000 (18:31 -0500)]
sundance net driver updates:
* Properly identify 4-port server NIC.
* Add new NIC to PCI ids list.
* Fix multicast bug.
Contributed by the vendor, D-Link.
Jeff Garzik [Wed, 6 Feb 2002 22:43:39 +0000 (17:43 -0500)]
Obvious updates to the alpha port, for recent 2.5.[123] API changes.
More changes are needed to the task struct/scheduler area before
the alpha port will boot again; this flushes the easy stuff.
Alexander Viro [Wed, 6 Feb 2002 14:34:55 +0000 (06:34 -0800)]
[PATCH] (9/9) more ->get_sb() stuff
More ->get_sb() patches: nfs. It still acts as nodev - what we want to
(and can) do now is to give it enough smarts to recognize that same tree
might be already mounted.
Andi Kleen [Wed, 6 Feb 2002 14:13:48 +0000 (06:13 -0800)]
[PATCH] Fix page cache limit wrapping in filesystems
Several file systems in tree that nominally support files >2GB set their
s_maxbytes value to ~0ULL. This has the nasty side effect on 32bit machines
that when a file write reaches the page cache limit (e.g. 2^43) it'll silently
wrap and destroy data at the beginning of the file.
This patch changes the file systems in question to fill in a proper limit.
I also have an alternate patch that adds a check for this generically
in super.c, but preliminary comments from Al suggested that he prefered
to do it in the file systems, so it is done this way way.
Andi Kleen [Wed, 6 Feb 2002 14:13:41 +0000 (06:13 -0800)]
[PATCH] Automatic file-max sizing
The default for NR_FILES of 8192 is far too low for many workloads. This
patch does dynamic sizing for it instead. It assumes file+inode+dentry
are roughly 1K and will use upto 10% of the memory for it.
Andi Kleen [Wed, 6 Feb 2002 14:13:35 +0000 (06:13 -0800)]
[PATCH] Bootmem speedup
This patch speeds the bootmem freeing up a bit. Not particularly important,
but helps on some slow simulators where the loop can chew up significant
CPU time.
Andi Kleen [Wed, 6 Feb 2002 14:13:29 +0000 (06:13 -0800)]
[PATCH] Slab name cleanup - last try
Hallo Linus,
This is the slab name cleanup you originally requested when the reiserfs
slab name too long boot bug was introduced. It replaces the static
name limit for slab cache names with the requirement for the caller
to supply a stable name. This version addresses all concerns that were given
over earlier versions of the patch.
As I do not feel very strongly about the slab cache name limit and you
also do not seem to be interested in it and the original bug of reiserfs
not booting anymore has been long fixed in your tree with the patch
you originally rejected from me I will not resend this patch after this
try.
Alexander Viro [Wed, 6 Feb 2002 13:58:02 +0000 (05:58 -0800)]
[PATCH] (4/8) ->get_sb() switchover
convert procfs to ->get_sb(). Similar to ext2, except that we use
get_sb_single() instead of get_sb_bdev(). Notice the we _don't_ keep
FS_SINGLE in flags - as the matter of fact, with ->get_sb() FS_SINGLE is
useless.
Alexander Viro [Wed, 6 Feb 2002 13:58:00 +0000 (05:58 -0800)]
[PATCH] (3/8) ->get_sb() switchover
ext2 switched to ->get_sb(). For that we had
a) turned ext2_read_super() into ext2_fill_super() (instead of
"return NULL if failed and sb if succeeded" it's "return error value or
0").
b) added ext2_get_sb(type, flags, dev, data) - all it does is
return get_sb_bdev(type, flags, dev, data, ext2_fill_super);
c) replaced DECLARE_...() with explicit initializer.
That's it.
Alexander Viro [Wed, 6 Feb 2002 13:57:56 +0000 (05:57 -0800)]
[PATCH] (1/8) ->get_sb() switchover
OK, here comes the long-promised switchover to ->get_sb().
New method added - ->get_sb(type, flags, dev, data). At this point we
still keep ->read_super(), but it will go away in the end of series.
->get_sb() is a generalization of get_sb_{bdev,nodev,single}() - as the
matter of fact, these will become common helpers used by filesystems in
their ->get_sb().
patch from dimitry for the usb ibmcam driver that does:
- Updates the documentation
- Adds Veo Stingray support
- Fixes hotplug table dependency upon now-defunct symbol
- deletes drivers/usb/ibmcam.h
patch from Wolfgang Mües <wmues@nexgo.de> for the usb auerswald.c driver:
- Code-Review from Oliver Neukum: remove SMP races.
- Added some wake_up calls after auerbuf_releasebuf to wake up tasks waiting
for cp buffers.
- Change the module count handling to automatic (owner: THIS_MODULE).
Hans Reiser [Wed, 6 Feb 2002 02:57:18 +0000 (18:57 -0800)]
[PATCH] reiserfs fix for inodes with wrong item versions (2.5)
This is hopefully last bugfix for a bug introduced by struct inode splitting.
Because of setting i_flags to some value and then cleaning the i_flags
contents later, on-disk items received wrong item version ob v3.6 filesystems
Robert Love [Wed, 6 Feb 2002 02:46:45 +0000 (18:46 -0800)]
[PATCH] 2.5.4-pre1: further llseek cleanup (3/3)
The previous patch did not provide protection for device lseek methods
(drivers/* stuff). This patch pushes the BKL into each of the remaining
lseek methods -- without them we have a race.
I'd much prefer to have a a better lock to push down than the BKL, but
that will have to wait.
Before you balk at the size, remember patch #2 in this series which
removed much code ;-)
Thanks to Al for assistance, especially a listing of affected files.
Robert Love [Wed, 6 Feb 2002 02:46:42 +0000 (18:46 -0800)]
[PATCH] 2.5.4-pre1: further llseek cleanup (2/3)
This is the second patch of three implementing further llseek cleanups,
against 2.5.4-pre1. It does not depend on the other patches.
This patch cleans up various code and quite nicely removes much more
code than it adds. Specifically:
- remove static lseek method which merely reimplements
the standard no_llseek in the following seven files:
hci_vhci.c, ite8172.c, nec_vrc5477.c, auerswald.c,
pipe.c, netlink_dev.c, and socket.c
- remove fs/ufs/file.c::ufs_file_lseek -- Al says it is
reimplementing generic_file_llseek, so let's use that
instead (the comment about 32-bit sizes shouldn't be
an issue, the generic method checks size)
- include smp_lock.h in 3 files missed from previous
'remove bkl' patch
Robert Love [Wed, 6 Feb 2002 02:46:40 +0000 (18:46 -0800)]
[PATCH] 2.5.4-pre1: further llseek cleanup (1/3)
This is the first of three patches implementing further llseek cleanup,
against 2.5.4-pre1.
The 'push locking into llseek methods' patch was integrated into 2.5.3.
The networking filesystems, however, do not protect i_size and can not
rely on the inode semaphore used in generic_file_llseek.
This patch implements a remote_llseek method, which is basically the
pre-2.5.3 version of generic_file_llseek. Locking is done via the BKL.
When we have a saner locking system in place, we can push it into this
function in lieu.
Ncpfs, nfs, and smbfs have been converted to use this new llseek.
Note this is updated over the previous posted patch.