]> git.hungrycats.org Git - linux/log
linux
22 years ago[PATCH] Fix netpoll cleanup on abort without dev
Matt Mackall [Mon, 23 Aug 2004 06:05:13 +0000 (23:05 -0700)]
[PATCH] Fix netpoll cleanup on abort without dev

If netpoll attempts to use a device without polling support, it will oops
when shutting down.  This adds a check that we've actually attached to a
device.

Signed-off-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] IS_ERR() unlikeliness cleanup
Andrew Morton [Mon, 23 Aug 2004 06:05:01 +0000 (23:05 -0700)]
[PATCH] IS_ERR() unlikeliness cleanup

Remove now-unneeded open-coded unlikelies around IS_ERR().

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] mark IS_ERR as unlikely()
Andrew Morton [Mon, 23 Aug 2004 06:04:49 +0000 (23:04 -0700)]
[PATCH] mark IS_ERR as unlikely()

It seems fair to assume that it is always unlikely that IS_ERR will return
true.

This patch changes the gcc-3.4-generated kernel text by ~500 bytes (less) so
it's fair to assume that the compiler is indeed propagating unlikeliness out
of inline functions.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] DIO pages-in-io accounting fix
Badari Pulavarty [Mon, 23 Aug 2004 06:04:37 +0000 (23:04 -0700)]
[PATCH] DIO pages-in-io accounting fix

I found one more accounting inconsistency with dio_pages_in_io.  This is a
day-one bug and I started hitting it on latest -mm due to the recent
changes to dio_pages_in_io calculations to be exact.

If the file is badly fragmented (no contiguous blocks at all), and the user
buffer is not page aligned - we need to create IO for each disk block with
2 pages.  (bio with 2 vecs).

dio_bio_add_page() should not decrement dio_pages_in_io for every add page.
 It should only decrement, it only if its done with that page and moving on
to next page.  (since dio_pages_in_io represent how many actual pages we
are operating on).

Here is the patch to fix this accounting.  Without this patch, we will hit
BUG() in dio_new_bio() with O_DIRECT on filesystems.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] direct-io: size the BIOs more accurately
Badari Pulavarty [Mon, 23 Aug 2004 06:04:26 +0000 (23:04 -0700)]
[PATCH] direct-io: size the BIOs more accurately

We're being lazy when calculating the size of the needed BIO, allocating
two extra pages to cope with funny alignments.

Change that to be exact, thus allocating smaller BIOs someties.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] IPMI driver updates
Corey Minyard [Mon, 23 Aug 2004 06:04:14 +0000 (23:04 -0700)]
[PATCH] IPMI driver updates

Some people found some bugs and some missing functions in the IPMI driver,
so I have patching things together for the next release.  The attached
patch moves to version 33 of the driver and contains:

* SMBIOS table support for specifying register spacing.  This allows
  non-contiguous registers to be specified and some machines do
  this.
* ACPI table updates to support all the possible register sizes and
  bit offsets into the registers for the IPMI information.
* Support for command line parameters to specify register
  spacing, sizes, and bit offsets.
* Support for power control with IPMI.  This allows a halt to
  power down a machine with IPMI.
* A fix for a race condition with interrupts enabled on an
  SMP machine.  A lock was released then reclaimed, but
  there was code later that assumed that had not happened.
* A fix for protecting the driver against bad responses from
  the controller chip.  In the past, the driver had assumed that
  the controller chip would not give it bad data.  This has
  turned out to be a bad assumption
* ACPI interrupt handlers now return a return value, adjust
  accordingly.

Thank you to all the people who helped me with this.

Signed-off-by: Corey Minyard <minyard@acm.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] IPMI Watchdog handling updates
Corey Minyard [Mon, 23 Aug 2004 06:04:02 +0000 (23:04 -0700)]
[PATCH] IPMI Watchdog handling updates

Makes the IPMI watchdog more consistent with the other watchdog drivers.

I have tested this and it seems to work correctly.  I also added docs for
the interface change.

- support disabling watchdog by writing 'V' to device.
- unify printk()
- use atomic bit operations on ipmi_wdog_open

Signed-off-by: Arkadiusz Miskiewicz <arekm@pld-linux.org>
Signed-off-by: Corey Minyard <minyard@acm.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] nbd: fix struct request race condition
Paul Clements [Mon, 23 Aug 2004 06:03:50 +0000 (23:03 -0700)]
[PATCH] nbd: fix struct request race condition

Here's a patch to fix a race condition in nbd that was causing struct
request corruption (requests were being freed while still in use).  This
patch improves on the previous one, which admittedly was a bit dodgy, using
struct request's ref_count field (I should have listened to Jens in the
first place :).  This should fix all the corner cases related to struct
request usage/freeing in nbd.  My stress tests do a lot better with this
patch applied.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] sparc: remove undefined symbol
William Lee Irwin III [Mon, 23 Aug 2004 06:03:39 +0000 (23:03 -0700)]
[PATCH] sparc: remove undefined symbol

Nuke the real undefined symbol in sparc32.  This is the only real hit from
ldchk on sparc32; the rest are all btfixup-related (Sam Ravnborg and I are
working on addressing that).

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] kill UDF registration/unregistration messages
Sean Neakums [Mon, 23 Aug 2004 06:03:27 +0000 (23:03 -0700)]
[PATCH] kill UDF registration/unregistration messages

This patch kills two printks from UDF that announce its registration and
unregistration.  Since one can determine which filesystems are present by
examining /proc/filesystems, these messages strike me as noise.

Signed-off-by: Sean Neakums <sneakums@zork.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] new device driver to enable the IBM Multiport Serial Adapter
Janice M. Girouard [Mon, 23 Aug 2004 06:03:16 +0000 (23:03 -0700)]
[PATCH] new device driver to enable the IBM Multiport Serial Adapter

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] cdrom event notification fixes
Jens Axboe [Mon, 23 Aug 2004 06:03:04 +0000 (23:03 -0700)]
[PATCH] cdrom event notification fixes

A few fixes related to cdrom media event notification.  These are from
Alexander Kern <alex.kern@gmx.de>

Signed-off-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] knfsd: fix server permission handling
Neil Brown [Mon, 23 Aug 2004 06:02:52 +0000 (23:02 -0700)]
[PATCH] knfsd: fix server permission handling

Fix a problem wherein device nodes on a ro-exported mount cannot be opened
read/write.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] kNFSd: fix race with flushing nfsd cache.
Neil Brown [Mon, 23 Aug 2004 06:02:41 +0000 (23:02 -0700)]
[PATCH] kNFSd: fix race with flushing nfsd cache.

To purge an nfsd-authentication cache, we set the flush time to later than
last-refresh time in the cache and call cache_flush.  The easiest way to
find 'later than last-refresh' is 'now+1'.

This has two problems.

  1/ if the time-of-day clock has gone bacwards, some entries might not
     be purged
  2/ if a new entry is added in the same second as cache_purge ran, it will
     get ignored.

To resolve these issues, we set the flushtime to the maximum possible time
before calling cache_flush, and then set it back to the minimum time
afterwards.

Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] kNFSd: fix two xdr-encode bugs for readdirplus reply
Neil Brown [Mon, 23 Aug 2004 06:02:30 +0000 (23:02 -0700)]
[PATCH] kNFSd: fix two xdr-encode bugs for readdirplus reply

More fall-out from the change to allow multi-page replies to readdir
requests.

Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] kNFSd: minor memory leak fix.
Neil Brown [Mon, 23 Aug 2004 06:02:18 +0000 (23:02 -0700)]
[PATCH] kNFSd: minor memory leak fix.

Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] kNFSd: get rid of open_private_file
Neil Brown [Mon, 23 Aug 2004 06:02:07 +0000 (23:02 -0700)]
[PATCH] kNFSd: get rid of open_private_file

This is only used by nfsd to save one kmalloc, and the code is not always
kept up-to-date with dentry_open, so just get rid of it.

Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] kNFSd: fix brokenness with fsid= export option
Bruce Allan [Mon, 23 Aug 2004 06:01:55 +0000 (23:01 -0700)]
[PATCH] kNFSd: fix brokenness with fsid= export option

Bruce Allan says:
The user-specified fsid= export option still doesn't work after the
changes made 5 months ago.  Below is a patch against 2.6.7 through
the recent 2.6.8-rc2-bk13.

Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] nfsd: ACL support for the NFSv4 server
Neil Brown [Mon, 23 Aug 2004 06:01:43 +0000 (23:01 -0700)]
[PATCH] nfsd: ACL support for the NFSv4 server

Server-side support for the limited portion of the NFSv4 ACL protocol necessary
to support POSIX ACLs.  Will return an error on an attempt to set any ACL that
doesn't map to a POSIX ACL.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] nfsd: POSIX<->NFSv4 acl translation for nfsd
Neil Brown [Mon, 23 Aug 2004 06:01:32 +0000 (23:01 -0700)]
[PATCH] nfsd: POSIX<->NFSv4 acl translation for nfsd

Code to translate between Linux's POSIX ACLs and NFSv4 ACLs.  Since NFSv4 ACLs
are fundamentally richer, we are able to translate any POSIX ACL to NFSv4, but
can only map NFSv4 ACLs that follow a certain format; see
http://www.citi.umich.edu/u/marius/draft-eriksen-nfsv4-acl-02.txt for details
of the mapping.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] nfsd: basic v4 ACL definitions
Neil Brown [Mon, 23 Aug 2004 06:01:20 +0000 (23:01 -0700)]
[PATCH] nfsd: basic v4 ACL definitions

Basic v4 acl definitions, to be used by server ACL implementation

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] nfsd: fix ip_map cache reference count leak.
Neil Brown [Mon, 23 Aug 2004 06:01:08 +0000 (23:01 -0700)]
[PATCH] nfsd: fix ip_map cache reference count leak.

Fix a leak: when auth_unix_lookup sets CACHE_NEGATIVE, it should also
auth_domain_put() the reference it holds in ipm->m_client, since setting
CACHE_NEGATIVE prevents ip_map_put() from putting the reference itself.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] nfsd: simplify auth_domain_lookup
Neil Brown [Mon, 23 Aug 2004 06:00:59 +0000 (23:00 -0700)]
[PATCH] nfsd: simplify auth_domain_lookup

The interface between the auth_domain and the cache code is messy; the
auth_domain code is the only real user of the full 11-argument
DefineCacheLookup, and does weird stuff with it (like passing in through one
of the arguments a bit of code with a conditional return).

We could further parametrize DefineCacheLookup, but I think it's already too
complicated.

My solution is to just ignore DefineCacheLookup and write the
auth_domain_lookup function from scratch.  It's actually a pretty short
function (much simpler than DefineCacheLookup itself), and it's much easier to
read this short function than it is to read some special-cased
DefineCacheLookup to verify that it does what it says it does....

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] nfsd: make cache_init initialize reference count to 1
Neil Brown [Mon, 23 Aug 2004 06:00:47 +0000 (23:00 -0700)]
[PATCH] nfsd: make cache_init initialize reference count to 1

Presumably anyone creating a new cache entry is going to want a reference on
that cache; and indeed every caller of cache_init increments the reference
count immediately afterwards.  So may as well make cache_init set an initial
reference count of 1.

Also, note that cache_init initializes the flags; callers don't need to.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] nfsd: nfsd is missing a put_group_info in the auth_null
Neil Brown [Mon, 23 Aug 2004 06:00:36 +0000 (23:00 -0700)]
[PATCH] nfsd: nfsd is missing a put_group_info in the auth_null

nfsd is missing a put_group_info in the auth_null case.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] nfsd: force server-side TCP when NFSv4 enabled
Neil Brown [Mon, 23 Aug 2004 06:00:24 +0000 (23:00 -0700)]
[PATCH] nfsd: force server-side TCP when NFSv4 enabled

NFSv4 should really run over TCP, and clients will expect that; so there's no
point letting people build kernels that support NFSv4 without also supporting
server-side TCP.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] Concurrent O_SYNC write support
Andrew Morton [Mon, 23 Aug 2004 06:00:13 +0000 (23:00 -0700)]
[PATCH] Concurrent O_SYNC write support

In databases it is common to have multiple threads or processes performing
O_SYNC writes against different parts of the same file.

Our performance at this is poor, because each writer blocks access to the
file by waiting on I/O completion while holding i_sem: everything is
serialised.

The patch improves things by moving the writing and waiting outside i_sem.
So other threads can get in and submit their I/O and permit the disk
scheduler to optimise the IO patterns better.

Also, the O_SYNC writer only writes and waits on the pages which he wrote,
rather than writing and waiting on all dirty pages in the file.

The reason we haven't been able to do this before is that the required walk
of the address_space page lists is easily livelockable without the i_sem
serialisation.  But in this patch we perform the waiting via a radix-tree
walk of the affected pages.  This cannot be livelocked.

The sync of the inode's metadata is still performed inside i_sem.  This is
because it is list-based and is hence still livelockable.  However it is
usually the case that databases are overwriting existing file blocks and
there will be no dirty buffers attached to the address_space anyway.

The code is careful to ensure that the IO for the pages and the IO for the
metadata are nonblockingly scheduled at the same time.  This is am improvemtn
over the current code, which will issue two separate write-and-wait cycles:
one for metadata, one for pages.

Note from Suparna:
Reworked to use the tagged radix-tree based writeback infrastructure.

Signed-off-by: Suparna Bhattacharya <suparna@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] filemap_fdatawrite range interface
Suparna Bhattacharya [Mon, 23 Aug 2004 06:00:01 +0000 (23:00 -0700)]
[PATCH] filemap_fdatawrite range interface

Range based equivalent of filemap_fdatawrite for O_SYNC writers (to go with
writepages range support added to mpage_writepages).  If both <start> and
<end> are zero, then it defaults to writing back all of the mapping's dirty
pages.

Signed-off-by: Suparna Bhattacharya <suparna@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] mpage writepages range limit fix
Suparna Bhattacharya [Mon, 23 Aug 2004 05:59:50 +0000 (22:59 -0700)]
[PATCH] mpage writepages range limit fix

Safeguard to make sure we break out of pagevec_lookup_tag loop if we are
beyond the specified range.

Signed-off-by: Suparna Bhattacharya <suparna@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] Fix writeback page range to use exact limits
Suparna Bhattacharya [Mon, 23 Aug 2004 05:59:38 +0000 (22:59 -0700)]
[PATCH] Fix writeback page range to use exact limits

wait_on_page_writeback_range shouldn't wait for pages beyond the specified
range.  Ideally, the radix-tree-lookup could accept an end_index parameter so
that it doesn't return the extra pages in the first place, but for now we just
add a few extra checks to skip such pages.

Signed-off-by: Suparna Bhattacharya <suparna@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] Writeback page range hint
Andrew Morton [Mon, 23 Aug 2004 05:59:27 +0000 (22:59 -0700)]
[PATCH] Writeback page range hint

Modify mpage_writepages to optionally only write back dirty pages within a
specified range in a file (as in the case of O_SYNC).  Cheat a little to avoid
changes to prototypes of aops - just put the <start, end> hint into the
writeback_control struct instead.  If <start, end> are not set, then default
to writing back all the mapping's dirty pages.

Signed-off-by: Suparna Bhattacharya <suparna@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] token based thrashing control
Rik van Riel [Mon, 23 Aug 2004 05:59:16 +0000 (22:59 -0700)]
[PATCH] token based thrashing control

The following experimental patch implements token based thrashing
protection, using the algorithm described in:

http://www.cs.wm.edu/~sjiang/token.htm

When there are pageins going on, a task can grab a token, that protects the
task from pageout (except by itself) until it is no longer doing heavy
pageins, or until the maximum hold time of the token is over.

If the maximum hold time is exceeded, the task isn't eligable to hold the
token for a while more, since it wasn't doing it much good anyway.

I have run a very unscientific benchmark on my system to test the
effectiveness of the patch, timing how a 230MB two-process qsbench run
takes, with and without the token thrashing protection present.

normal 2.6.8-rc6: 6m45s
2.6.8-rc6 + token: 4m24s

This is a quick hack, implemented without having talked to the inventor of
the algorithm.  He's copied on the mail and I suspect we'll be able to do
better than my quick implementation ...

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] alpha: print the symbol of pc and ra during Oops
Aneesh Kumar [Mon, 23 Aug 2004 05:59:03 +0000 (22:59 -0700)]
[PATCH] alpha: print the symbol of pc and ra during Oops

The below patch add the symbol information of the pc and ra to the Oops
message.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] rcu: abstracted RCU dereferencing
Dipankar Sarma [Mon, 23 Aug 2004 05:58:51 +0000 (22:58 -0700)]
[PATCH] rcu: abstracted RCU dereferencing

Use abstracted RCU API to dereference RCU protected data.  Hides barrier
details.  Patch from Paul McKenney.

This patch introduced an rcu_dereference() macro that replaces most uses of
smp_read_barrier_depends().  The new macro has the advantage of explicitly
documenting which pointers are protected by RCU -- in contrast, it is
sometimes difficult to figure out which pointer is being protected by a given
smp_read_barrier_depends() call.

Signed-off-by: Paul McKenney <paulmck@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] rcu: document RCU api
Dipankar Sarma [Mon, 23 Aug 2004 05:58:39 +0000 (22:58 -0700)]
[PATCH] rcu: document RCU api

Patch from Paul for additional documentation of api.

Updated based on feedback, and to apply to 2.6.8-rc3.  I will be adding more
detailed documentation to the Documentation directory in a separate patch.

Signed-off-by: Paul McKenney <paulmck@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] rcu: use call_rcu_bh() in route cache
Dipankar Sarma [Mon, 23 Aug 2004 05:58:28 +0000 (22:58 -0700)]
[PATCH] rcu: use call_rcu_bh() in route cache

Use call_rcu_bh() in route cache.  This allows faster grace periods and avoids
dst cache overflows during DoS testing.

This patch uses the call_rcu_bh() api in route cache code to facilitate
quicker RCU grace periods.  Quicker grace periods avoid overflow of dst cache
in heavily loaded routers as seen in Robert Olsson's testing.

Signed-off-by: Dipankar Sarma <dipankar@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] rcu: introduce call_rcu_bh()
Dipankar Sarma [Mon, 23 Aug 2004 05:58:16 +0000 (22:58 -0700)]
[PATCH] rcu: introduce call_rcu_bh()

Introduces call_rcu_bh() to be used when critical sections are mostly in
softirq context.

This patch introduces a new api - call_rcu_bh().  This is to be used for RCU
callbacks for whom the critical sections are mostly in softirq context.  These
callbacks consider completion of a softirq handler to be a quiescent state.
So, in order to make reader critical sections safe in process context,
rcu_read_lock_bh() and rcu_read_unlock_bh() must be used.  Use of softirq
handler completion as a quiescent state speeds up RCU grace periods and
prevents too many callbacks getting queued up in softirq-heavy workloads like
network stack.

Signed-off-by: Dipankar Sarma <dipankar@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] rcu: fix spaces in rcupdate.h
Dipankar Sarma [Mon, 23 Aug 2004 05:58:04 +0000 (22:58 -0700)]
[PATCH] rcu: fix spaces in rcupdate.h

Somehow spaces replaced tabs in rcupdate.h and I would like to keep
everything clean.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] rcu: clean up code
Dipankar Sarma [Mon, 23 Aug 2004 05:57:53 +0000 (22:57 -0700)]
[PATCH] rcu: clean up code

Avoids per_cpu calculations and also prepares for call_rcu_bh().

At OLS, Rusty had suggested getting rid of many per_cpu() calculations in RCU
code and making the code simpler.  I had already done that for the rcu-softirq
patch earlier, so I am splitting that into two patch.  This first patch cleans
up the macros and uses pointers to the rcu per-cpu data directly to manipulate
the callback queues.  This is useful for the call-rcu-bh patch (to follow)
which introduces a new RCU mechanism - call_rcu_bh().  Both generic and
softirq rcu can then use the same code, they work different global and percpu
data.

Signed-off-by: Dipankar Sarma <dipankar@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] RCU: low latency rcu
Dipankar Sarma [Mon, 23 Aug 2004 05:57:42 +0000 (22:57 -0700)]
[PATCH] RCU: low latency rcu

This patch makes RCU callbacks friendly to scheduler.  It helps low latency
by limiting the number of callbacks invoked per tasklet handler.  Since we
cannot schedule during a single softirq handler, this reduces size of
non-preemptible section significantly, specially under heavy RCU updates.
The limiting is done through a kernel parameter rcupdate.maxbatch which is
the maximum number of RCU callbacks to invoke during a single tasklet
handler.

Signed-off-by: Dipankar Sarma <dipankar@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] RCU - cpu offline fix
Dipankar Sarma [Mon, 23 Aug 2004 05:57:30 +0000 (22:57 -0700)]
[PATCH] RCU - cpu offline fix

This fixes the RCU cpu offline code which was broken by singly-linked RCU
changes.  Nathan pointed out the problems and submitted a patch for this.
This is an optimal fix - no need to iterate through the list of callbacks,
just use the tail pointers and attach the list from the dead cpu.

Signed-off-by: Nathan Lynch <nathanl@austin.ibm.com>
Signed-off-by: Dipankar Sarma <dipankar@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] RCU - cpu-offline-cleanup
Dipankar Sarma [Mon, 23 Aug 2004 05:57:19 +0000 (22:57 -0700)]
[PATCH] RCU - cpu-offline-cleanup

There is a series of patches in my tree and these 3 are the first ones that
should probably be merged down the road.  Descriptions are on top of the
patches.  Please include them in -mm.

A lot of RCU code will be cleaned up later in order to support
call_rcu_bh(), the separate RCU interface that considers softirq handler
completion a quiescent state.

This patch:

Minor cleanup of the hotplug code to remove #ifdef in cpu event notifier
handler.  If CONFIG_HOTPLUG_CPU is not defined, CPU_DEAD case will be
optimized off.

Signed-off-by: Dipankar Sarma <dipankar@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] prio_tree: iterator + vma_prio_tree_next cleanup
Rajesh Venkatasubramanian [Mon, 23 Aug 2004 05:57:07 +0000 (22:57 -0700)]
[PATCH] prio_tree: iterator + vma_prio_tree_next cleanup

Currently we have:

while ((vma = vma_prio_tree_next(vma, root, &iter,
                                        begin, end)) != NULL)
do_something_with(vma);

Then iter,root,begin,end are all transfered unchanged to various functions.
 This patch hides them in struct iter instead.

It slightly lessens source, code size, and stack usage.  Patch compiles and
tested lightly.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Rajesh Venkatasubramanian <vrajesh@umich.edu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] prio_tree: kill vma_prio_tree_init()
Rajesh Venkatasubramanian [Mon, 23 Aug 2004 05:56:55 +0000 (22:56 -0700)]
[PATCH] prio_tree: kill vma_prio_tree_init()

vma_prio_tree_insert() relies on the fact, that vma was
vma_prio_tree_init()'ed.

Content of vma->shared should be considered undefined, until this vma is
inserted into i_mmap/i_mmap_nonlinear.  It's better to do proper
initialization in vma_prio_tree_add/insert.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Rajesh Venkatasubramanian <vrajesh@umich.edu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] vprintk for ext3 errors
Matt Mackall [Mon, 23 Aug 2004 05:56:44 +0000 (22:56 -0700)]
[PATCH] vprintk for ext3 errors

Kill error_buf madness in ext3

Signed-off-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] vprintk for ext2 errors
Matt Mackall [Mon, 23 Aug 2004 05:56:32 +0000 (22:56 -0700)]
[PATCH] vprintk for ext2 errors

Kill error_buf madness in ext2

Signed-off-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] vprintk support
Matt Mackall [Mon, 23 Aug 2004 05:56:21 +0000 (22:56 -0700)]
[PATCH] vprintk support

Add vprintk call.  This lets us directly pass varargs stuff to the console
without using vsnprintf to an intermediate buffer.

Signed-off-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] Fix CON_BUF_SIZE usage
Matt Mackall [Mon, 23 Aug 2004 05:56:09 +0000 (22:56 -0700)]
[PATCH] Fix CON_BUF_SIZE usage

Signed-off-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] move duplicate BUG and WARN_ON bits to asm-generic
Matt Mackall [Mon, 23 Aug 2004 05:55:57 +0000 (22:55 -0700)]
[PATCH] move duplicate BUG and WARN_ON bits to asm-generic

This moves duplicate BUG, PAGE_BUG, BUG_ON, and WARN_ON code to asm-generic
and makes them slightly more consistent.  This cleanup is also preparatory
work for making BUG and WARN verbosity configurable.

Signed-off-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] Altix system controller communication driver
Greg Howard [Mon, 23 Aug 2004 05:55:46 +0000 (22:55 -0700)]
[PATCH] Altix system controller communication driver

drivers/char/Kconfig
    Make a config option for the SGI Altix system controller
    communication driver.

drivers/char/Makefile
    Add an object file target for the SGI Altix system controller
    communication driver.

drivers/char/snsc.c
    This file implements a driver that allows an application to
    communicate with the SGI Altix system controller network. Most of
    the heavy lifting is done in SAL in order to allow Linux run-time
    applications to share the system controller link(s) with SAL
    run-time services.

drivers/char/snsc.h
    Macros and data types for the Altix system controller driver
    (drivers/char/snsc.c).

drivers/serial/sn_console.c
    Modify the SGI Altix console driver to share an interupt with the
    system controller communication driver.

include/asm-ia64/sn/sn_sal.h
    Provide an interface to the SAL runtime services that allow the
    kernel or user applications to send/receive arbitary system
    controller data.

Signed-off-by: Greg Howard <ghoward@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] Support for Exar XR17C158 Octal UART
Raphael Zimmerer [Mon, 23 Aug 2004 05:55:34 +0000 (22:55 -0700)]
[PATCH] Support for Exar XR17C158 Octal UART

Here's a minimal patch to support the Exar Corp.  XR17C158 Octal UART Chip
(PCI).

Signed-off-by: Raphael Zimmerer <killekulla@rdrz.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] proc_pid_cmdline() race fix
Roger Luethi [Mon, 23 Aug 2004 05:55:22 +0000 (22:55 -0700)]
[PATCH] proc_pid_cmdline() race fix

If you win the race with a starting process, you can read its environment.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] do_general_protection doesn't disable irq
Andrea Arcangeli [Mon, 23 Aug 2004 05:55:11 +0000 (22:55 -0700)]
[PATCH] do_general_protection doesn't disable irq

A trap gate shouldn't affect the irq status at all, so we don't need to
test whether the trapping code had interrupts enabled.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] ext2_readdir() filp->f_pos fix
Jan Blunck [Mon, 23 Aug 2004 05:54:59 +0000 (22:54 -0700)]
[PATCH] ext2_readdir() filp->f_pos fix

If the whole directory is read, ext2_readdir() sets the f_pos to a multiple
of the page size (because of the conditions of the outer for loop).  This
sets the wrong f_pos for directory inodes on ext2 partitions with a block
size differing from the page size.

Signed-off-by: Jan Blunck <j.blunck@tu-harburg.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] fix inline related gcc 3.4 build failures in drivers/net/wan/dscc4.c
Jesper Juhl [Mon, 23 Aug 2004 05:54:48 +0000 (22:54 -0700)]
[PATCH] fix inline related gcc 3.4 build failures in drivers/net/wan/dscc4.c

drivers/net/wan/dscc4.c: In function `dscc4_found1':
drivers/net/wan/dscc4.c:369: sorry, unimplemented: inlining failed in call to 'dscc4_set_quartz': function body not available
drivers/net/wan/dscc4.c:898: sorry, unimplemented: called from here

Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] inlining errors in drivers/scsi/aic7xxx/aic79xx_osm.c
Jesper Juhl [Mon, 23 Aug 2004 05:54:36 +0000 (22:54 -0700)]
[PATCH] inlining errors in drivers/scsi/aic7xxx/aic79xx_osm.c

This patch fixes the following build error (in 2.6.8-rc2-mm1) when using
gcc 3.4.0

drivers/scsi/aic7xxx/aic79xx_osm.c: In function `ahd_linux_dv_transition':
drivers/scsi/aic7xxx/aic79xx_osm.c:522: sorry, unimplemented: inlining failed in call to 'ahd_linux_dv_fallback': function body not available
drivers/scsi/aic7xxx/aic79xx_osm.c:3070: sorry, unimplemented: called from here
drivers/scsi/aic7xxx/aic79xx_osm.c:522: sorry, unimplemented: inlining failed in call to 'ahd_linux_dv_fallback': function body not available
drivers/scsi/aic7xxx/aic79xx_osm.c:3093: sorry, unimplemented: called from here
drivers/scsi/aic7xxx/aic79xx_osm.c:522: sorry, unimplemented: inlining failed in call to 'ahd_linux_dv_fallback': function body not available
drivers/scsi/aic7xxx/aic79xx_osm.c:3144: sorry, unimplemented: called from here
drivers/scsi/aic7xxx/aic79xx_osm.c:522: sorry, unimplemented: inlining failed in call to 'ahd_linux_dv_fallback': function body not available
drivers/scsi/aic7xxx/aic79xx_osm.c:3257: sorry, unimplemented: called from here
drivers/scsi/aic7xxx/aic79xx_osm.c:522: sorry, unimplemented: inlining failed in call to 'ahd_linux_dv_fallback': function body not available
drivers/scsi/aic7xxx/aic79xx_osm.c:3288: sorry, unimplemented: called from here
drivers/scsi/aic7xxx/aic79xx_osm.c:522: sorry, unimplemented: inlining failed in call to 'ahd_linux_dv_fallback': function body not available
drivers/scsi/aic7xxx/aic79xx_osm.c:3317: sorry, unimplemented: called from here

It first removes a duplicate forward declaration of ahd_linux_dv_fallback
and then moves the function before its first use so inlining can succeed.

Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] radio-maestro.c: gcc-3.5 fixes
Adrian Bunk [Mon, 23 Aug 2004 05:54:25 +0000 (22:54 -0700)]
[PATCH] radio-maestro.c: gcc-3.5 fixes

  CC      drivers/media/radio/radio-maestro.o
drivers/media/radio/radio-maestro.c: In function `maestro_radio_init':
drivers/media/radio/radio-maestro.c:273: sorry, unimplemented: inlining failed in call to 'radio_install': function body not available
drivers/media/radio/radio-maestro.c:291: sorry, unimplemented: called from here
drivers/media/radio/radio-maestro.c:273: sorry, unimplemented: inlining failed in call to 'radio_install': function body not available
drivers/media/radio/radio-maestro.c:295: sorry, unimplemented: called from here
make[3]: *** [drivers/media/radio/radio-maestro.o] Error 1

Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] mxser.c: gcc-3.5 fixes
Adrian Bunk [Mon, 23 Aug 2004 05:54:13 +0000 (22:54 -0700)]
[PATCH] mxser.c: gcc-3.5 fixes

  CC      drivers/char/mxser.o
drivers/char/mxser.c: In function `mxser_interrupt':
drivers/char/mxser.c:352: sorry, unimplemented: inlining failed in call to 'mxser_receive_chars': function body not available
drivers/char/mxser.c:1347: sorry, unimplemented: called from here
drivers/char/mxser.c:354: sorry, unimplemented: inlining failed in call to 'mxser_check_modem_status': function body not available
drivers/char/mxser.c:1350: sorry, unimplemented: called from here
drivers/char/mxser.c:353: sorry, unimplemented: inlining failed in call to 'mxser_transmit_chars': function body not available
drivers/char/mxser.c:1355: sorry, unimplemented: called from here
make[2]: *** [drivers/char/mxser.o] Error 1

Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] istallion: gcc-3.5 fixes
Adrian Bunk [Mon, 23 Aug 2004 05:54:02 +0000 (22:54 -0700)]
[PATCH] istallion: gcc-3.5 fixes

  CC      drivers/char/istallion.o
drivers/char/istallion.c: In function `stli_init':
drivers/char/istallion.c:4603: sorry, unimplemented: inlining failed in call to 'stli_getbrdnr': function not considered for inlining
drivers/char/istallion.c:4577: sorry, unimplemented: called from here
drivers/char/istallion.c: At top level:
drivers/char/istallion.c:422: warning: 'istallion_pci_tbl' defined but not used
make[2]: *** [drivers/char/istallion.o] Error 1

Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] tdfxfb: salvage tdfxfb from James' tree
Antonino Daplas [Mon, 23 Aug 2004 05:53:50 +0000 (22:53 -0700)]
[PATCH] tdfxfb: salvage tdfxfb from James' tree

Took code from James' tree to be hopefully included in the mm tree so it
can receive more testing.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] sgivwfb: salvage sgivwfb from James' tree
Antonino Daplas [Mon, 23 Aug 2004 05:53:40 +0000 (22:53 -0700)]
[PATCH] sgivwfb: salvage sgivwfb from James' tree

Took code from James' tree to be hopefully included in the mm tree so it
can receive more testing.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] neofb: salvage neofb from James' tree
Antonino Daplas [Mon, 23 Aug 2004 05:53:29 +0000 (22:53 -0700)]
[PATCH] neofb: salvage neofb from James' tree

Took code from James' tree to be hopefully included in the mm tree so it
can receive more testing.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] epson1355fb: salvage epson1355 code from James' tree
Antonino Daplas [Mon, 23 Aug 2004 05:53:17 +0000 (22:53 -0700)]
[PATCH] epson1355fb: salvage epson1355 code from James' tree

This patch was submitted by James Hoover < ch@hpl.hp.com> to James a long
time ago (2.5 development) which ports the epson driver to 2.6.  Took the
code from James tree to be hopefully included in the mm tree so it can get
more testing.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] rivafb: directcolor mode and miscellaneous fixes
Antonino Daplas [Mon, 23 Aug 2004 05:53:05 +0000 (22:53 -0700)]
[PATCH] rivafb: directcolor mode and miscellaneous fixes

Although the rivafb advertises its capability as DirectColor, the hardware
is actually set in Truecolor (CLUT cannot be altered).  This mismatch
occasionally produces wrong colors, such as wrong logo colors at 32bpp and
gamma utilities (such as xgamma) does not work at all.

Changes:

1. Fixes the above problems by setting the hardware to accept changing
   of the CLUT.

2. Fixes color problems for NV_ARCH_03 (Riva128)

3. Build a private modelist from the EDID (for use by fbcon)

4. Mark several functions/data as __devinit/__initdata

5. Remove unused fields from struct riva_par

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] fbdev: use 8-bit DAC for capable hardware
Antonino Daplas [Mon, 23 Aug 2004 05:52:54 +0000 (22:52 -0700)]
[PATCH] fbdev: use 8-bit DAC for capable hardware

The patch adds the ability for vesafb to switch the DAC from 6-bit to 8-bit
at kernel boot.  Besides fixing the failure to draw the 224-color logo, an
8-bit DAC will also provide a wider color range for user applications.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] fbdev: support for bold attribute for monochrome framebuffers
Antonino Daplas [Mon, 23 Aug 2004 05:52:43 +0000 (22:52 -0700)]
[PATCH] fbdev: support for bold attribute for monochrome framebuffers

This patch adds support for the bold attribute for monochrome framebuffers.
 This fixes a regression from 2.4 where bold, underline and reverse
attributes are supported.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] fbdev: do the deletion of mode entries at fbdev level
Antonino Daplas [Mon, 23 Aug 2004 05:52:31 +0000 (22:52 -0700)]
[PATCH] fbdev: do the deletion of mode entries at fbdev level

If a request for deletion of an entry in the mode database is requested, do
it at core fbdev level instead of doing it at the console level.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] Video Mode Handling - Reduce memory footprint of fbdev
Antonino Daplas [Mon, 23 Aug 2004 05:52:19 +0000 (22:52 -0700)]
[PATCH] Video Mode Handling - Reduce memory footprint of fbdev

This patch is entirely optional.  Its only advantage is reduction of kernel
size by ~5-6K.

a. Mark modedb as __init.

b. Add CONFIG_FB_MODE_HELPERS.  Unselecting this will uninclude the code
   for Generalized Timing Formula and the EDID parser on kernel compilation.
   These are used only by radeonfb, rivafb and i810fb.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] Video Mode Handling - Delete entries from mode list
Antonino Daplas [Mon, 23 Aug 2004 05:52:08 +0000 (22:52 -0700)]
[PATCH] Video Mode Handling - Delete entries from mode list

This is optional but applying it should enhance fbdev functionality.

The patch allows removal of entries to the mode list.  This is done by setting
the var->activate field to FB_ACTIVATE_INV_MODE.  Only modes that are not in
use by any of the console or by the current var will be deleted.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] Video Mode Handling - Save per-display graphics/display settings
Antonino Daplas [Mon, 23 Aug 2004 05:51:56 +0000 (22:51 -0700)]
[PATCH] Video Mode Handling - Save per-display graphics/display settings

This patch adds the following:

a. convert struct fb_var_screeninfo to struct display and vice versa

b. save settings of graphics card to struct display

c. save settings of display to struct display as a pointer to a struct
   fb_videomode

d. check var in fb_set_var for modes, and if unique, add them to the mode list.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] Video Mode Handling - Linked list of video modes
Antonino Daplas [Mon, 23 Aug 2004 05:51:45 +0000 (22:51 -0700)]
[PATCH] Video Mode Handling - Linked list of video modes

The patch adds support for a mode database in a linked list form.

Included in the patch are exportable functions that will:

a. convert struct fb_videomode to struct fb_var_screeninfo and vice versa
b. search the mode list for matching or best-fit modes
c. add/delete entries to the database
d. convert a mode array to a mode list
e. destroy the entire list
d. compare 2 modes

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] fbdev Kconfig dependency fixes
Luca Tettamanti [Mon, 23 Aug 2004 05:51:33 +0000 (22:51 -0700)]
[PATCH] fbdev Kconfig dependency fixes

radeonfb, rivafb and i810fb need CONFIG_FB_MODE_HELPERS.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] include "compiler.h" in videodev.h
Luca Risolia [Mon, 23 Aug 2004 05:51:22 +0000 (22:51 -0700)]
[PATCH] include "compiler.h" in videodev.h

This avoids compiler errors about undefined "__user" macros when including
"videodev.h" in userspace applications.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] rivafb: kill riva_chip_info and riva_chips
Guido Guenther [Mon, 23 Aug 2004 05:51:12 +0000 (22:51 -0700)]
[PATCH] rivafb: kill riva_chip_info and riva_chips

Kill riva_chips_info and riva_chips and replace the NV_ARCH_ determination
with a less error prone one.  We better use the driver_data for something
more interesting later.

From: "Antonino A. Daplas" <adaplas@hotpop.com>

  1. modified patch so it's in -p1 form
  2. killed compile warning when CONFIG_FB_RIVA_I2C is not set
  3. changed U032 to u32 in riva_get_arch()

Signed-of-by: Guido Guenther <agx@sigxcpu.org>
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] fbdev: find correct logo for directcolor < 24bpp
Antonino Daplas [Mon, 23 Aug 2004 05:51:00 +0000 (22:51 -0700)]
[PATCH] fbdev: find correct logo for directcolor < 24bpp

Current algorithm does not choose correct logo type for directcolor < 24
bpp.  It chooses logo_224, but this is too deep for bpp < 24.  This should
fix the problem.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] i810fb fixes
Antonino Daplas [Mon, 23 Aug 2004 05:50:49 +0000 (22:50 -0700)]
[PATCH] i810fb fixes

1. Fixed cursor corruption if acceleration is enabled
2. Round up fields in var instead of rounding down
3. Set capabilities flags
4. Added myself to the MAINTAINERS file for i810fb
5. Make i810fb depend on X86 but not X86_64
6. Fixed typo in i810_init_monspecs(). Reported by Manuel Lauss
   <slauss@resi.at>.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] rivafb: Do not tap VGA ports if not X86
Antonino Daplas [Mon, 23 Aug 2004 05:50:37 +0000 (22:50 -0700)]
[PATCH] rivafb: Do not tap VGA ports if not X86

Do not tap VGA ports if arch is not X86.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] fbdev: ATTN: Maintainers - Set correct hardware capabilities
Antonino Daplas [Mon, 23 Aug 2004 05:50:25 +0000 (22:50 -0700)]
[PATCH] fbdev: ATTN: Maintainers - Set correct hardware capabilities

With David Eger's patch for advertising hardware capabilities to fbcon,
only a few drivers so far have been converted to do just that.  As a
result, scrolling speed of some drivers will not be optimal
(SCROLL_REDRAW).  The patch adds the correct flags for all drivers (except
for matroxfb -leave this to Petr-, and a few drivers that are not ported
yet to 2.6).

*Majority of changes is FBINFO_FLAG_DEFAULT -> FBINFO_DEFAULT

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] fbdev: set color fields correctly
Antonino Daplas [Mon, 23 Aug 2004 05:50:12 +0000 (22:50 -0700)]
[PATCH] fbdev: set color fields correctly

Although the depth can be correctly inferred from bits_per_pixel (if
bits_per_pixel == 1), for the sake of consistency, drivers should still set
the color fields correctly.  True even if the first patch is not applied.

(I've combined everything in a single diff since there is only 1 logical
change)

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] fbcon: ifferentiate bits_per_pixel from color depth
Antonino Daplas [Mon, 23 Aug 2004 05:50:00 +0000 (22:50 -0700)]
[PATCH] fbcon: ifferentiate bits_per_pixel from color depth

1. If you remember this thread (HP300 support checked in), one concern
   was how to support framebuffers with bpp == 8 but color depth < 8
   (chunky layout).  I suggested to use the fields in var->{red|green|blue}
   to differentiate between bits_per_pixel and depth.  Included is a patch
   that does that.

   (The above assumes background/foreground of 0/1.  If hardware needs a
   different value, such as 0 - black, 0xff - white, just indicate
   TRUECOLOR or DIRECTCOLOR and set info->pseudopalette correctly in
   xxxfb_setcolreg().)

   The patch will break the following drivers when in monochrome since
   they do not set the proper color bitfields.  I've included a fix in
   patch #2.

   68328fb
   bw2fb
   cirrusfb
   dnfb
   macfb
   stifb
   tx3912fb

2. Besides the change above, support for the inverse and underline
   attribute is added in monochrome mode.  One should get text which are
   underlined/reversed if the corresponding attribute is set.

3. Because vt.c uses a 16-color palette, use fbcon_default_cmap if
   framebuffer can do less than 16 colors.  In 4 colors, display will be
   grayscaled.  In 8 colors, display should have the same colors as a
   16-color console but will lack brightness/ intensity.

4. Fix monochrome logo drawing.

5. Reduce code of fbcon_putc so it just calls fbcon_putcs.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] fbcon: EDD-based blacklisting
Antonino Daplas [Mon, 23 Aug 2004 05:49:47 +0000 (22:49 -0700)]
[PATCH] fbcon: EDD-based blacklisting

1. Created a database of broken displays and their associated fixes.
Original patch from Brian S. Julin <bri@tull.umassp.edu>.  Only the
monitor manufacturer and model is checked, perhaps we can also check
for the serial number?

2. Added an all_null check in edid_checksum since the checksum will also be
zero if the entire block is zeroed.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] Rivafb I2C fixes
Nicolas Boichat [Mon, 23 Aug 2004 05:49:36 +0000 (22:49 -0700)]
[PATCH] Rivafb I2C fixes

The I2C busses opened by rivafb were deleted immediately after reading the
EDID, but they should be kept open, so user-space applications can use them.

They are now deleted when the driver is unloaded.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] radeonfb: cleanup and little fixes
David Eger [Mon, 23 Aug 2004 05:49:24 +0000 (22:49 -0700)]
[PATCH] radeonfb: cleanup and little fixes

Very similar to Francois Romieu's fixes for cirrusfb, here we:
* Provide meaningful error values from radeonfb_pci_register()
* Fix unbalanced pci_enable_device()
* Fix unbalanced fb_alloc_cmap()
* Fix a failure-case bug where we accidentally memset_io(0, 0, size);
* Use pci_request_regions() instead of request_mem_region()

Signed-off-by: David Eger <eger@havoc.gtf.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] break out zone free list initialization
Dave Hansen [Mon, 23 Aug 2004 05:49:13 +0000 (22:49 -0700)]
[PATCH] break out zone free list initialization

The following patch removes the individual free area initialization from
free_area_init_core(), and puts it in a new function
zone_init_free_lists().  It also creates pages_to_bitmap_size(), which is
then used in zone_init_free_lists() as well as several times in my free
area bitmap resizing patch.

First of all, I think it looks nicer this way, but it's also necessary to
have this if you want to initialize a zone after system boot, like if a
NUMA node was hot-added.  In any case, it should be functionally equivalent
to the old code.

Compiles and boots on x86.  I've been running with this for a few weeks,
and haven't seen any problems with it yet.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] make shrinker_sem an rwsem
Nick Piggin [Mon, 23 Aug 2004 05:49:02 +0000 (22:49 -0700)]
[PATCH] make shrinker_sem an rwsem

Use an rwsem to protect the shrinker list instead of a regular
semaphore.  Modifications to the list are now done under the write lock,
shrink_slab takes the read lock, and access to shrinker->nr becomes racy
(which is no different to how the page lru scanner is implemented).  The
shrinker functions become concurrent.

Previously, having the slab scanner get preempted or scheduling while
holding the semaphore would cause other tasks to skip putting pressure on
the slab.

Also, make shrink_icache_memory return -1 if it can't do anything in order
to hold pressure on this cache and prevent useless looping in shrink_slab.

Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] IO-APIC debug message reduction
Mark Broadbent [Mon, 23 Aug 2004 05:48:50 +0000 (22:48 -0700)]
[PATCH] IO-APIC debug message reduction

The APIC and IO-APIC code is very verbose on startup especially on SMP
machines.  This patch allows the verbosity of the APIC code to be controlled
through the boot-time option apic= using three levels: quiet, verbose and
debug.  The default level is quiet.

Signed-off-by: Mark Broadbent <markb@wetlettuce.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] x86: move PIT code to timer_pit
Zwane Mwaikambo [Mon, 23 Aug 2004 05:48:39 +0000 (22:48 -0700)]
[PATCH] x86: move PIT code to timer_pit

Now that things got cleaned up a bit, there is no real reason why the pit
initialisation code has to be in i8259.c. Move it to timer_pit.ca

Signed-off-by: Zwane Mwaikambo <zwane@fsmlabs.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] slab: locking optimization for cache_reap
Dimitri Sivanich [Mon, 23 Aug 2004 05:48:27 +0000 (22:48 -0700)]
[PATCH] slab: locking optimization for cache_reap

Here is another cache_reap optimization that reduces latency when applied
after the 'Move cache_reap out of timer context' patch I submitted on 7/14
(for inclusion in -mm next week).

Signed-off-by: Dimitri Sivanich <sivanich@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] get_random_bytes() returns the same on every boot
Bálint Márton [Mon, 23 Aug 2004 05:48:16 +0000 (22:48 -0700)]
[PATCH] get_random_bytes() returns the same on every boot

At boot time, get_random_bytes always returns the same random data, as if
there were a constant random seed.  For example, if I use the kernel level
ip autoconfiguration with dhcp, the kernel will create a dhcp request
packet with always the same transaction ID.  (If you have more than one
computers, and they are booting at the same time, then this is a big
problem)

That happens, because only the primary entropy pool is initialized with the
system time, in function rand_initialize.  The secondary pool is only
cleared.  In this early stage of booting, there is usually no user
interaction, or usable disk interrupts, so the kernel can't add any real
random bytes to the primary pool.  And altough the system time is in the
primary pool, the kernel does not consider it real random data, so you
can't read from the primary pool, before at least a part of it will be
filled with some real randomness (interrupt timing).  Therefore all random
data will come from the secondary pool, and the kernel cannot reseed the
secondary pool, because there is no real randomness in the primary one.

The solution is simple: Initialize not just the primary, but also the
secondary pool with the system time.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] Subject: cdrom.c get_last_written fixup
Samuel Thibault [Mon, 23 Aug 2004 05:48:04 +0000 (22:48 -0700)]
[PATCH] Subject: cdrom.c get_last_written fixup

There's something wrong in cdrom.c: cdrom_get_last_written() for instance
calls cdrom_get_disc_info() and cdrom_get_track_info() to get information
about tracks, but these functions don't ensure that all the
track_information or disc_information structure is filled:

/* (buflen was first set to 8 to get track_information_length field) */

if ((ret = cdo->generic_packet(cdi, &cgc)))
return ret;

cgc.buflen = be16_to_cpu(ti->track_information_length) +
     sizeof(ti->track_information_length);

if (cgc.buflen > sizeof(track_information))
cgc.buflen = sizeof(track_information);

cgc.cmd[8] = cgc.buflen;
return cdo->generic_packet(cdi, &cgc);

The second test ensures that at least we won't overflow the structure, but
nothing ensures that all the structure will be filled.

And indeed, we have a drive here that won't fill it all: the returned
track_information_length field will be *less than*
sizeof(track_information) - sizeof(ti->track_information_length), so that
cdrom_get_last_written() reads values that weren't filled in!  As a result,
we are sometimes unable to read some parts of CDROMs, depending on the
uninitialized state of the structure...

Here is a patch that adds filling checks: cdrom_get_disc_info() and
cdrom_get_track_info() return the actual filled length, and it's up to the
caller to check that this is enough for him to get the values it wants.

Note: adding something like a
#define spanof(TYPE, MEMBER) ((size_t) ((&((TYPE *)0)->MEMBER)+1))
definition just near that of offsetof() in include/linux/stddef.h would
make it more pretty, but still it won't help for bitfields :/

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] s390: Use include/asm-generic/dma-mapping-broken.h
Arthur Othieno [Mon, 23 Aug 2004 05:47:53 +0000 (22:47 -0700)]
[PATCH] s390: Use include/asm-generic/dma-mapping-broken.h

ChangeSet 1.1371.413.23 [1] introduced the file
include/asm-generic/dma-mapping-broken.h for architectures that don't
support the new DMA API. I don't know if this is the case with s390,
however, ChangeSet 1.1371.445.6 [2] introduced a set of changes that
duplicate those in include/asm-generic/dma-mapping-broken.h.

This patch squishes that duplication by simply including
include/asm-generic/dma-mapping-broken.h in
include/asm-s390/dma-mapping.h.

Signed-off-by: Arthur Othieno <a.othieno@bluewin.ch>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] remove dead prototypes
Carl Spalletta [Mon, 23 Aug 2004 05:47:41 +0000 (22:47 -0700)]
[PATCH] remove dead prototypes

Remove a whole bunch of prototypes which declare no-longer-present functions.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] Fix x86-64 singlestep through sigreturn system call
Roland McGrath [Mon, 23 Aug 2004 05:47:28 +0000 (22:47 -0700)]
[PATCH] Fix x86-64 singlestep through sigreturn system call

This patch just directly clones Davide Libenzi's i386 code for x86-64 in
both 64-bit and 32-bit cases.  With this, the behavior of single-stepping
all system calls is consistent.

The syscall exit tracing caused by TIF_SINGLESTEP is superfluous in the
case of sysret returns, but harmlessly so (since continuing afterward with
PTRACE_CONT will have cleared TF as well as TIF_SINGLESTEP).  I figured
that little bit of extra processing in the single-step case was better than
adding code to ignore the flag in the sysret case.

Signed-off-by: Roland McGrath <roland@redhat.com>
Cc: <ak@muc.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] gettimeofday nanoseconds patch
Christoph Lameter [Mon, 23 Aug 2004 05:47:16 +0000 (22:47 -0700)]
[PATCH] gettimeofday nanoseconds patch

This issue was discussed on lkml and linux-ia64.  The patch introduces
"getnstimeofday" and removes all the code scaling gettimeofday to
nanoseoncs.  It makes it possible for the posix-timer functions to return
higher accuracy.

Signed-off-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] Move cache_reap out of timer context
Dimitri Sivanich [Mon, 23 Aug 2004 05:47:04 +0000 (22:47 -0700)]
[PATCH] Move cache_reap out of timer context

I'm submitting two patches associated with moving cache_reap functionality
out of timer context.  Note that these patches do not make any further
optimizations to cache_reap at this time.

The first patch adds a function similiar to schedule_delayed_work to allow
work to be scheduled on another cpu.

The second patch makes use of schedule_delayed_work_on to schedule
cache_reap to run from keventd.

Signed-off-by: Dimitri Sivanich <sivanich@sgi.com>
Signed-off-by: Manfred Spraul <manfred@colorfullife.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] remove sync() from panic
Christian Bornträger [Mon, 23 Aug 2004 05:46:53 +0000 (22:46 -0700)]
[PATCH] remove sync() from panic

Various people have reported deadlocks and it has aways seemed a bit risky
to try to sync the filesystems at this stage anyway.

"I have seen panic failing two times lately on an SMP system. The box
 panic'ed but was running happily on the other cpus. The culprit of this
 failure is the fact, that these panics have been caused by a block device
 or a filesystem (e.g. using errors=panic). In these cases the  likelihood
 of a failure/hang of  sys_sync() is high. This is exactly what happened in
 both cases I have seen. Meanwhile the other cpus are happily continuing
 destroying data as the kernel has a severe problem but its not aware of
 that as smp_send_stop happens after sys_sync."

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] warning on NUMA-Q
Martin J. Bligh [Mon, 23 Aug 2004 05:46:42 +0000 (22:46 -0700)]
[PATCH] warning on NUMA-Q

arch-i386-kernel-smpc-gcc341-inlining-fix.patch seems to cause
the following warning:

include/asm-i386/mach-numaq/mach_ipi.h:4: warning: static declaration for `send_
IPI_mask_sequence' follows non-static.

This should fix it (and make it match the other subarches):

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] Enable all events for initramfs
Hannes Reinecke [Mon, 23 Aug 2004 05:46:30 +0000 (22:46 -0700)]
[PATCH] Enable all events for initramfs

Currently most driver events are not sent out when using initramfs as
driver_init() (which triggers the events) is called before init_workqueues.

This patch rearranges the init calls so that the hotplug event queue is
enabled prior to calling driver_init(), hence we're getting all hotplug
events again.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] send_IPI_mask_bitmask() build fix
Andrew Morton [Mon, 23 Aug 2004 05:46:19 +0000 (22:46 -0700)]
[PATCH] send_IPI_mask_bitmask() build fix

With gcc-3.4.1:

arch/i386/kernel/smp.c: In function `flush_tlb_others':
arch/i386/kernel/smp.c:161: sorry, unimplemented: inlining failed in call
to 'send_IPI_mask_bitmask': function not considered for inlining
arch/i386/kernel/smp.c:9: sorry, unimplemented: called from here

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
22 years ago[PATCH] Make i/dhash_entries cmdline work as it use to.
Jose R. Santos [Mon, 23 Aug 2004 05:46:07 +0000 (22:46 -0700)]
[PATCH] Make i/dhash_entries cmdline work as it use to.

I was looking at the recent for >MAX_ORDER hash tables but it seems that
the patch limits the number of entries to what it thinks are good values
and the i/dhash_entries cmdline options can not exceed this.

This seems to limit the usability of the patch on systems were larger
allocations that the ones the kernel calculates are desired.

- Make ihash_entries and dhash_entries cmdline option behave like it use to.

- Remove MAX_SYS_HASH_TABLE_ORDER.  Limit the max size to 1/16 the total
  number of pages.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>