Commit Graph

1786 Commits

Author SHA1 Message Date
Christoph Lameter
6c036527a6 [PATCH] mostly_read data section
Add a new section called ".data.read_mostly" for data items that are read
frequently and rarely written to like cpumaps etc.

If these maps are placed in the .data section then these frequenly read
items may end up in cachelines with data is is frequently updated.  In that
case all processors in an SMP system must needlessly reload the cachelines
again and again containing elements of those frequently used variables.

The ability to share these cachelines will allow each cpu in an SMP system
to keep local copies of those shared cachelines thereby optimizing
performance.

Signed-off-by: Alok N Kataria <alokk@calsoftinc.com>
Signed-off-by: Shobhit Dayal <shobhit@calsoftinc.com>
Signed-off-by: Christoph Lameter <christoph@scalex86.org>
Signed-off-by: Shai Fultheim <shai@scalex86.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:46 -07:00
Roman Zippel
d6afe27bff [PATCH] tty output lossage fix
The patch fixes a few corner cases around tty line editing with
very long input lines:

- n_tty_receive_char(): don't simply drop eol characters,
  otherwise canon_data isn't increased and the reader isn't woken
  up.

- n_tty_receive_room(): If there is no newline pending and the
  edit buffer is full, allow only a single character to be written
  (until eol is found and the line is flushed), so characters from
  the next line aren't dropped.

- write_chan(): if an incomplete line was written, continue
  writing until write() returns 0, otherwise it might not write
  the eol character to flush the line and the writer goes to sleep
  without ever being woken up.

BTW the core problem is that part of this should be handled in the
receive_buf path, but for this it has to return the number of
written characters, as the amount of written characters may not be
the same as the amount of characters going into the write buffer,
so the receive_room() usage in pty_write() is not really reliable.

Alan said:

The problem looks valid. The behaviour of 'traditional unix' appears to
be the following

	If you exceed the line limit then beep and drop the character
	Always allow EOL to complete a canonical line input
	Always do signal/control processing if enabled

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:45 -07:00
Bernard Blackham
e00d9967e3 [PATCH] pm: fix u32 vs. pm_message_t confusion in cpufreq
Fix u32 vs pm_message_t confusion in cpufreq.

Signed-off-by: Bernard Blackham <bernard@blackham.com.au>
Signed-off-by: Pavel Machek <pavel@suse.cz>
Cc: Dave Jones <davej@codemonkey.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:43 -07:00
Pavel Machek
2a569579be [PATCH] pm: more u32 vs. pm_message_t fixes
Few more u32 vs. pm_message_t fixes.

Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:43 -07:00
Milton Miller
88de0be0c7 [PATCH] hvc_console: Use hvc_get_chars in hvsi code
Now that hvc_get_chars doesn't strip NULs, hvsi doesn't have to duplicate it.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:40 -07:00
Milton Miller
70b234a401 [PATCH] hvc_console: Separate the NUL character filtering from get_hvc_chars
Separate the NUL character filtering from get_hvc_chars.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:40 -07:00
Milton Miller
030ffad23f [PATCH] hvc_console: Register ops when setting up hvc_console
When registering the hvc console port, register a list of ops (read and write)
to go with it, instead of calling fixed function names.

This allows different ports to encode the data differently.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:39 -07:00
Milton Miller
acad9559f1 [PATCH] hvc_console: Separate hvc_console and vio code 2
Remove all the vio device driver code from hvc_console.c

This will allow us to separate hvsi, hvc, and allow hvc_console to be used
without the ppc64 vio layer.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:39 -07:00
Milton Miller
d5ee257c33 [PATCH] hvc_console: Separate hvc_console and vio code
Separate the console setup routines of the hvc_console and the vio layer.

Remove the call to find_init_vty from hvc_console.c.

Fail the setup routine if the console doesn't exist, but register the console
again when the specified channel is instantiated.  This scheme maintains the
print buffer semantics while eliminating callout and call back for the console
code.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:39 -07:00
Milton Miller
7805b1b29f [PATCH] hvc_console: Add some sanity checks
Check if a vterm was registered before accepting it as a console.
Check that a slot hasn't been probed with a tty in hvc_instantiate().
Check that a slot hasn't been free'ed when handing out console device.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:39 -07:00
Milton Miller
64e4da5796 [PATCH] hvc_console: Statically initialize the vtermnos array
Statically initialize the vtermnos array.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:39 -07:00
Milton Miller
5f6d9c072d [PATCH] hvc_console: remove num_vterms and some dead code
num_vterms hasn't been used since the hotplug support went in.  Also, remove a
dead code line from a list_for_each_entry conversion.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:39 -07:00
Milton Miller
e51d8c90a5 [PATCH] hvc_console: Add missing include
hvc_console checks MAGIC_SYSRQ and XMON config vars.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:38 -07:00
Milton Miller
320da0d23e [PATCH] hvc_console: Unregister the console in the exit routine.
Be thorough in our exit routine, since it says it is there to be so.
Unregistering without registering is safe (checked in 2.6.10).

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:38 -07:00
Milton Miller
2b9e0bac94 [PATCH] hvc_console: MAGIC_SYSRQ should only be on console channel
Guard the MAGIC_SYSRQ ^O to be just on the console channel.  Make the other
channels more transparent.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:38 -07:00
Milton Miller
8b67f8c177 [PATCH] hvc_console: Dont always kick the poll thread in interrupt
Have the hvc console code try to pull characters immediately when receiving an
interrupt, and kick the poll thread only if the immediate poll indicates it
needed a call back to do more work.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:38 -07:00
Milton Miller
6f24808eeb [PATCH] hvc_console: Match vio and console devices using vterm numbers
Use the vterm numbers to match the vio devices being probed with the indices
already allocated via the console initcall function hvc_find_vtys.

The old code required hvc_find_vtys to "guess" the matching devices the vio
subsystem would find and its probe order.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:38 -07:00
Milton Miller
837dcfaf46 [PATCH] hvc_console: Rearrange code
Milton Miller has done a lot of work to clean up our hvc_console code.

One of the important things the following patch series does is separate the
VIO layer from the hvc_console code.  With the VIO specific code removed any
ppc64 platform, or even any architecture, can use hvc_console as a generic
polling console.  You simply have to supply a get_chars and put_chars method
and hvc_console does the rest of the work.  You can even use it for an
interrupt driven console.

This patch:

Rearrange the code in drivers/char/hvc_console.c to make future patches
smaller.  No actual code changes, just ordering of the functions in the file.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:38 -07:00
Benjamin Herrenschmidt
3c326fe9cb [PATCH] ppc64: Add new PHY to sungem
This patch adds support for some new PHY models to sungem as used on some
recent Apple iMac G5 models.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:36 -07:00
Marcelo Tosatti
79b9ce311e [PATCH] print order information when OOM killing
Dump the current allocation order when OOM killing.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:35 -07:00
Andrew Morton
ca3f5a95b7 [PATCH] i2o: config-osm build fix
Various stuff missing on alpha:

drivers/message/i2o/config-osm.c:35: error: field `fops' has incomplete type
drivers/message/i2o/config-osm.c: In function `sysfs_create_fops_file':
drivers/message/i2o/config-osm.c:71: error: storage size of `tmp' isn't known
drivers/message/i2o/config-osm.c:78: error: dereferencing pointer to incomplete type
drivers/message/i2o/config-osm.c:81: error: dereferencing pointer to incomplete type

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-07 18:23:35 -07:00
Linus Torvalds
043d051615 Merge master.kernel.org:/pub/scm/linux/kernel/git/aegl/linux-2.6 2005-07-07 10:24:51 -07:00
Linus Torvalds
c101f3136c Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6 2005-07-06 22:15:13 -07:00
Linus Torvalds
359ea2f135 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2005-07-06 17:04:06 -07:00
Ivan Kokshaysky
960b846654 [PATCH] yet another fix for setup-bus.c/x86 merge
There is a slight disagreement between setup-bus.c code and traditional
x86 PCI setup wrt which recourses are invalid vs resources that are free
for further allocations.

In particular, in the setup-bus.c, if we failed to allocate some resource,
we nullify "start" and "flags" fields, but *not* the "end" one.

But x86 pcibios_enable_resources() does the following check:

	if (!r->start && r->end) {
		printk(KERN_ERR "PCI: Device %s not available because of resource collisions\n", pci_name(dev));
		return -EINVAL;

which means that the device owning the offending resource cannot be
enabled.

In particular, this breaks cardbus behind the normal decode p2p bridge -
the cardbus code from setup-bus.c requests rather large IO and MEM
windows, and if it fails, the socket is completely unavailable.  Which
is wrong, as the yenta code is capable to allocate smaller windows.

Signed-off-by: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-06 16:12:58 -07:00
Eddie C. Dost
9d7495330b [DVB]: Do not include <linux/irq.h> from drivers.
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-07-06 15:41:17 -07:00
Tony Luck
67d340f440 Auto merge with /home/aegl/GIT/linus 2005-07-06 15:35:18 -07:00
Prarit Bhargava
6f354b014b [IA64] hotplug/ia64: SN Hotplug Driver - SN Hotplug Driver code
This patch is the SGI hotplug driver and additional changes required for
the driver.  These modifications include changes to the SN io_init.c code
for memory management, the inclusion of new SAL calls to enable and disable
PCI slots, and a hotplug-style driver.

Signed-off-by: Prarit Bhargava <prarit@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
2005-07-06 15:29:53 -07:00
Prarit Bhargava
e07d01e0ae [IA64] hotplug/ia64: SN Hotplug Driver - pci_find_next_bus export
The pci_find_next_bus function is listed as being exported to drivers.  It is
not EXPORT_SYMBOL'd.

Signed-off-by: Prarit Bhargava <prarit@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
2005-07-06 15:28:40 -07:00
Herbert Xu
476df259cd [CRYPTO] Update IV correctly for Padlock CBC encryption
When the Padlock does CBC encryption, the memory pointed to by EAX is
not updated at all.  Instead, it updates the value of EAX by pointing
it to the last block in the output.  Therefore to maintain the correct
semantics we need to copy the IV.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-07-06 13:54:09 -07:00
Herbert Xu
fbdae9f3e7 [CRYPTO] Ensure cit_iv is aligned correctly
This patch ensures that cit_iv is aligned according to cra_alignmask
by allocating it as part of the tfm structure.  As a side effect the
crypto layer will also guarantee that the tfm ctx area has enough space
to be aligned by cra_alignmask.  This allows us to remove the extra
space reservation from the Padlock driver.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-07-06 13:53:29 -07:00
Herbert Xu
28e8c3ad94 [PADLOCK] Implement multi-block operations
By operating on multiple blocks at once, we expect to extract more
performance out of the VIA Padlock.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-07-06 13:52:43 -07:00
Herbert Xu
6789b2dc45 [PADLOCK] Move fast path work into aes_set_key and upper layer
Most of the work done aes_padlock can be done in aes_set_key.  This
means that we only have to do it once when the key changes rather
than every time we perform an encryption or decryption.

This patch also sets cra_alignmask to let the upper layer ensure
that the buffers fed to us are aligned correctly.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-07-06 13:52:27 -07:00
Linus Torvalds
07bbeaf123 ieee1394: fix broken signed char assumption.
"ack_code" is assigned (and tested against) negative numbers, but was
declared as "char".  Which only works if "char" is signed - which it
necessarily isn't.

So make that signedness assumption specific.
2005-07-06 13:05:50 -07:00
Jeff Mahoney
184f6eb8c4 [PATCH] openfirmware: implement hotplug for macio devices
This adds the hotplug routine for generating hotplug events when devices
are seen on the macio bus.  It uses the attributed created by the sysfs
nodes to generate the hotplug environment vars for userspace.

Since the characters allowed inside the 'compatible' field are NUL
terminated, they are exported as individual OF_COMPATIBLE_# variables,
with OF_COMPATIBLE_N maintaining a count of how many there are.

In order for hotplug to work with macio devices, patches to
module-init-tools and hotplug must be applied.  Those patches are
available at:

ftp://ftp.suse.com/pub/people/jeffm/linux/macio-hotplug/

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-06 12:55:20 -07:00
Jeff Mahoney
b5bf5b6786 [PATCH] openfirmware: add sysfs nodes for open firmware devices
This adds sysfs nodes that the hotplug userspace can use to load the
appropriate modules.

In order for hotplug to work with macio devices, patches to
module-init-tools and hotplug must be applied.  Those patches are
available at:

 ftp://ftp.suse.com/pub/people/jeffm/linux/macio-hotplug/

Changes: The previous versions were built on 2.6.12. 2.6.13-rcX introduced
         a device_attribute parameter to the show functions. Since that
         parameter was treated as the output buffer, memory corruption would
         result, causing Oopsen very quickly.

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-06 12:55:20 -07:00
Jeff Mahoney
5e6557722e [PATCH] openfirmware: generate device table for userspace
This converts the usage of struct of_match to struct of_device_id,
similar to pci_device_id.  This allows a device table to be generated,
which can be parsed by depmod(8) to generate a map file for module
loading.

In order for hotplug to work with macio devices, patches to
module-init-tools and hotplug must be applied.  Those patches are
available at:

 ftp://ftp.suse.com/pub/people/jeffm/linux/macio-hotplug/

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-06 12:55:20 -07:00
Greg KH
3d3c2ae110 [PATCH] PCI: fix !CONFIG_HOTPLUG pci build problem
Here's a patch to fix the build issue when CONFIG_HOTPLUG is not enabled
in 2.6.13-rc2.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-06 09:22:45 -07:00
Andrei Konovalov
e6b6239f8e [PATCH] ppc32: add Freescale MPC885ADS board support
This patch adds the Freescale MPC86xADS board support.  The supported
devices are SMC UART and 10Mbit ethernet on SCC1.

The manual for the board says that it "is compatible with the MPC8xxFADS
for software point of view".  That's why this patch extends FADS instead of
introducing a new platform.

FEC is not supported as the "combined FCC/FEC ethernet driver" driver by
Pantelis Antoniou should replace the current FEC driver.

Signed-off-by: Gennadiy Kurtsman <gkurtsman@ru.mvista.com>
Signed-off-by: Andrei Konovalov <akonovalov@ru.mvista.com>
Acked-by: Tom Rini <trini@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-05 19:18:59 -07:00
Linus Torvalds
5432ebb5f6 Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2005-07-05 18:41:58 -07:00
Christoph Hellwig
bc971dee6e [SHAPER]: Switch to spinlocks.
Dave, you were right and the sleeping locks in shaper were
broken. Markus Kanet noticed this and also tested the patch below that
switches locking to spinlocks.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-07-05 15:03:46 -07:00
David S. Miller
93e266f600 [TG3]: Update driver version and reldate.
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-07-05 14:43:19 -07:00
Michael Chan
d244c892c8 [TG3]: support for ethtool -C
Add support for ethtool -C with verification of user parameters.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-07-05 14:42:33 -07:00
David S. Miller
a31488ca4b [SKGE]: Fix build on big-endian
Missing PCI_REV_DESC define.

Signed-off-by: David S. Miller <davem@davemloft.net>
2005-07-05 14:24:35 -07:00
Linus Torvalds
d06e7a56d9 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 2005-07-05 14:17:40 -07:00
Linus Torvalds
346fced899 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6 2005-07-05 11:35:58 -07:00
Christoph Hellwig
06326e40b7 [SPARC]: bpp: remove sleep_on usage
Use schedule_timeout() instead of sleep_on + timer.  Totally untested
due to lack of hardware, but the changes are rather trivial.

Signed-off-by: David S. Miller <davem@davemloft.net>
2005-07-04 13:24:14 -07:00
Linus Torvalds
19f7241a3b Merge master.kernel.org:/home/rmk/linux-2.6-arm 2005-07-03 14:39:33 -07:00
Linus Torvalds
08ab8c2031 Merge master.kernel.org:/home/rmk/linux-2.6-serial 2005-07-03 14:37:09 -07:00
Russell King
976ecd12b8 [PATCH] Serial: Fix console port spinlock initialisation
Initialise the spinlock for port being used by the console early, but
don't re-initialise it again later.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-07-03 21:05:45 +01:00