- 16 Jul, 2002 7 commits
-
-
Trond Myklebust authored
- Divorce the allocation of free request slots and the congestion control. Make the congestion control apply only to when we actually send data over the wire. This means that we *do* apply congestion control to resent requests: if a timeout has occured, and there are too many requests on the wire, delay resending until the congestion algorithm allows it. - Improve spinlocking by putting the congestion avoidance algoritm under xprt->sock_lock. This lock has to be taken *anyway* in (almost) all cases where we are updating the congestion control data.
-
Trond Myklebust authored
Eliminate the arbitrary timeouts in xprt_adjust_cwnd(). Strict enforcement of the congestion avoidance algorithm as detailed in Van Jacobson's 1998 paper http://www-nrg.ee.lbl.gov/nrg-papers.html Congestion Avoidance and Control.
-
Trond Myklebust authored
Clean up the Van Jacobson network congestion control code.
-
Trond Myklebust authored
Cleanups for the socket locking mechanism. Improve RPC request ordering by ensuring that RPC tasks that are already queued on xprt->sending get sent before tasks that happen to get scheduled just when there is a free slot. In case the socket send buffer is full, queue the tasks on xprt->pending rather than xprt->sending in order to eliminate the risk of accidental wakeups from xprt_release_write() and xprt_write_space().
-
Trond Myklebust authored
Improve the response to timeouts. As requests time out, we delay timing out the remaining requests (in fact we follow exponential backoff). This is done because we assume either that the round trip time has been underestimated, or that the network/server is congested, and we need to back off the resending of new requests.
-
Trond Myklebust authored
Implement a count of the number of timeouts that have occured since we last recorded a successful reply from the server. For the moment this information is merely used in order to improve the estimate of whether or not the server is down. It will be used in patch 3/8 in order to improve the timeout backoff algorithm.
-
Trond Myklebust authored
Implement the basic round trip timing algorithm in order to adapt the timeout values for the most common NFS operations to the server's rate of response. Algorithm is described in Van Jacobson's paper 1998 paper on http://www-nrg.ee.lbl.gov/nrg-papers.html, and is the same as is used for most TCP stacks. Following the *BSD code, we implement separate rtt timers for GETATTR, LOOKUP, READ/READDIR/READLINK, and WRITE. In addition to this, there is one extra timer for the COMMIT operation. All the remaining RPC calls use the current system in which a fixed timeout value gets set by the 'timeo' mount option. In case of a timeout, the current exponential backoff algoritm is implemented. Subsequent patches will improve this...
-
- 15 Jul, 2002 33 commits
-
-
Trond Myklebust authored
The following patch fixes a bug in xdr_kunmap() that has been known to deadlock TCP mounts on highmem systems. It also removes an unnecessary call to flush_page_to_ram().
-
http://linuxusb.bkbits.net/linus-2.5Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Greg Kroah-Hartman authored
-
David Brownell authored
This patch includes the innocuous bits from a larger one that I'm still working on (mostly unlink fixes): - updates comments - flags TDs that were seen in the donelist - removes some bogus whitespace (at EOL etc) and tabs - checks for an enumeration issue that might cause trouble - delays IRQs a bit more aggressively - shortens TD submit paths a smidgeon (smaller ".o") - updates some of the debug output - sanitizes usb_make_path() output on the SA-1111
-
Vojtech Pavlik authored
Get rid of #ifdefs in hid-core again. (For you, Greg.) Move the uref generation code from hid-core to hiddev to make things cleaner.
-
Matthew Dharm authored
The purpose of this patch is to trap all commands which have a bogus request_bufflen. Much logic is devoted to calculating the proper length of the transfer, but according to discussions I've had on linux-scsi, this is really a bug in whatever is originating the bad command. Hopefully, after people use this patch for a while, we'll eliminate all the offending sources and can remove quite a bit of logic from the driver.
-
Vojtech Pavlik authored
One of my earlier patches backed out a change that fixed all copy_to_user calls to properly return -EFAULT if needed. This puts the change back in.
-
Vojtech Pavlik authored
I've merged a patch Paul Stewart sent me some time ago, which should make life easier for the guys writing UPS daemons.
-
Linus Torvalds authored
-
http://linux-ntfs.bkbits.net/ntfs-tng-2.5Linus Torvalds authored
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
-
Anton Altaparmakov authored
- Limit volume size at mount time to 2TiB on architectures where unsigned long is 32-bits (fs/ntfs/super.c::parse_ntfs_boot_sector()). This is the most we can do without overflowing the 32-bit limit of the block device size imposed on us by sb_bread() and sb_getblk() for the time being. - Limit file/directory size at open() time to 16TiB on architectures where unsigned long is 32-bits (fs/ntfs/file.c::ntfs_file_open() and fs/ntfs/dir.c::ntfs_dir_open()). This is the most we can do without overflowing the page cache page index.
-
James Mayer authored
-
James Mayer authored
-
Marcus Alanen authored
Doesn't check request_region and doesn't release region on failed kmalloc.
-
James Mayer authored
-
James Mayer authored
-
Thomas 'Dent' Mirlacher authored
this one slipped through the last fix for the redeclarations i sent, please apply this on to of the other one. description: umount_tree() is just used in namespace.[ch], so it declaration belongs into namespace.h and not fs.h
-
James Mayer authored
-
Greg Banks authored
Use of the $ARCH variable is undocumented; the sparc and sparc64 ports define the bool constants CONFIG_SPARC32 and CONFIG_SPARC64 respectively for this purpose.
-
Greg Banks authored
Use of the $ARCH variable is undocumented; the alpha port defines the bool constant CONFIG_ALPHA for this purpose.
-
Greg Banks authored
Use of the $ARCH variable is undocumented; the sparc and sparc64 ports define the bool constants CONFIG_SPARC32 and CONFIG_SPARC64 respectively for this purpose.
-
Greg Banks authored
Use of the $ARCH variable is undocumented; the sparc and sparc64 ports define the bool constants CONFIG_SPARC32 and CONFIG_SPARC64 respectively for this purpose.
-
Greg Banks authored
1/14 definitions of CONFIG_SOUND have trivially different banners.
-
Greg Banks authored
The word EXPERIMENTAL in the banner for symbol CONFIG_HPT34X_AUTODMA was almost spelled right. [Rusty: this is a resend of 'PATCH 2.5: kconfig EXPERIMENTAL misspelled' with context trimmed to try to avoid spurious patch failure]
-
Greg Banks authored
Use of the $ARCH variable is undocumented; the sparc and sparc64 ports define the bool constants CONFIG_SPARC32 and CONFIG_SPARC64 respectively for this purpose.
-
James Mayer authored
-
Greg Banks authored
Some instances of the "bool" statement have what appear to be dependencies like "dep_bool" after the 2nd argument, which are silently ignored by all current parsers. I have either trimmed the arguments or converted the "bool" to "dep_bool" as seemed appropriate.
-
James Mayer authored
-
Stephen Rothwell authored
This patch just makes some stuff in ipc/ static.
-
James Mayer authored
-
Jeff Dike authored
This is needed for things running on the host which want to know when UML panics, and what the panic message was.
-
Greg Banks authored
Use of the $ARCH variable is undocumented; the alpha and i386 ports define the bool constants CONFIG_ALPHA and CONFIG_X86 for this purpose.
-
Greg Banks authored
Use of the $ARCH variable is undocumented; the sparc and sparc64 ports define the bool constants CONFIG_SPARC32 and CONFIG_SPARC64 respectively for this purpose.
-