]> pilppa.org Git - linux-2.6-omap-h63xx.git/log
linux-2.6-omap-h63xx.git
17 years agoniu: Add support for Neptune FEM/NEM cards for C10 server blades
Matheos Worku [Fri, 25 Apr 2008 04:09:20 +0000 (21:09 -0700)]
niu: Add support for Neptune FEM/NEM cards for C10 server blades

[ Minor coding style and whitespace corrections, also bump
  driver version and release date. -DaveM ]

Signed-off-by: Matheos Worku <matheos.worku@sun.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoniu: Determine the # of ports from the card's VPD data
Matheos Worku [Fri, 25 Apr 2008 04:02:37 +0000 (21:02 -0700)]
niu: Determine the # of ports from the card's VPD data

[ Fix minor whitespace and coding style stuff... -DaveM ]

Signed-off-by: Matheos Worku <matheos.worku@sun.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoethtool: EEPROM dump no longer works for tg3 and natsemi
Mandeep Singh Baines [Fri, 25 Apr 2008 03:55:56 +0000 (20:55 -0700)]
ethtool: EEPROM dump no longer works for tg3 and natsemi

In the ethtool user-space application, tg3 and natsemi over-ride the
default implementation of dump_eeprom(). In both tg3_dump_eeprom() and
natsemi_dump_eeprom(), there is a magic number check which is not
present in the default implementation.

Commit b131dd5d ("[ETHTOOL]: Add support for large eeproms") snipped
the code which copied the ethtool_eeprom structure back to
user-space. tg3 and natsemi are over-writing the magic number field
and then checking it in user-space. With the ethtool_eeprom copy
removed, the check is failing.

The fix is simple. Add the ethtool_eeprom copy back.

Signed-off-by: Mandeep Singh Baines <msb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agosata_sis: SCR accessors return -EINVAL when requested SCR isn't available
Tejun Heo [Thu, 24 Apr 2008 01:52:44 +0000 (10:52 +0900)]
sata_sis: SCR accessors return -EINVAL when requested SCR isn't available

sis_scr_cfg_read() can't access SError and was incorrectly returning
-1 instead of -EINVAL.  This went unnoticed because SError used to be
cleared in @postreset() and it didn't care about how scr_read() failed
but commit ac371987 moved SError clearing into sata_link_resume() and
SCR access failure other than -EINVAL is considered an error condition
and exposes the incorrect return value bug as detection failure.  Fix
it.

Also, scsi_scr_cfg_write() was incorrectly returning 0 after it
ignored the request to write to SError.  Make it also return -EINVAL.

This was bisected and reported by Patrick McHardy.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Cc: Patrick McHardy <kaber@trash.net>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agolibata: functions with definition should not be extern
Harvey Harrison [Fri, 25 Apr 2008 01:37:34 +0000 (18:37 -0700)]
libata: functions with definition should not be extern

Noticed by sparse
drivers/ata/libata-core.c:3380:12: warning: function 'ata_wait_after_reset' with external linkage has definition

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agoaf_key: Fix af_key.c compiler warning
Brian Haley [Fri, 25 Apr 2008 03:38:31 +0000 (20:38 -0700)]
af_key: Fix af_key.c compiler warning

net/key/af_key.c: In function ‘pfkey_spddelete’:
net/key/af_key.c:2359: warning: ‘pol_ctx’ may be used uninitialized in
this function

When CONFIG_SECURITY_NETWORK_XFRM isn't set,
security_xfrm_policy_alloc() is an inline that doesn't set pol_ctx, so
this seemed like the easiest fix short of using *uninitialized_var(pol_ctx).

Signed-off-by: Brian Haley <brian.haley@hp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoMerge branch 'master' into for-linus
Dmitry Torokhov [Fri, 25 Apr 2008 03:37:52 +0000 (23:37 -0400)]
Merge branch 'master' into for-linus

17 years agoInput: wacom - add support for Cintiq 20WSX
Ping Cheng [Fri, 25 Apr 2008 03:34:05 +0000 (23:34 -0400)]
Input: wacom - add support for Cintiq 20WSX

Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
17 years ago[CIFS] Update cifs version number
Steve French [Fri, 25 Apr 2008 02:01:44 +0000 (02:01 +0000)]
[CIFS] Update cifs version number

Signed-off-by: Steve French <sfrench@us.ibm.com>
17 years ago2.6.25 regression: powertop says 120K wakeups/sec
Venkatesh Pallipadi [Thu, 10 Apr 2008 01:31:46 +0000 (21:31 -0400)]
2.6.25 regression: powertop says 120K wakeups/sec

Patch to fix huge number of wakeups reported due to recent changes in
processor_idle.c. The problem was that the entry_method determination was
broken due to one of the recent commits (bc71bec91f987) causing
C1 entry to not to go to halt.

http://lkml.org/lkml/2008/3/22/124

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoACPI: GPE enabling should happen after EC installation
Alexey Starikovskiy [Tue, 11 Mar 2008 21:17:08 +0000 (17:17 -0400)]
ACPI: GPE enabling should happen after EC installation

GPE could try to access EC region, so should not be enabled before
EC is installed

http://bugzilla.kernel.org/show_bug.cgi?id=9916

Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years ago[POWERPC] Add zImage.iseries to arch/powerpc/boot/.gitignore
Kumar Gala [Thu, 24 Apr 2008 16:39:22 +0000 (02:39 +1000)]
[POWERPC] Add zImage.iseries to arch/powerpc/boot/.gitignore

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years agoleds: Add default-on trigger
Nick Forbes [Thu, 24 Apr 2008 23:06:52 +0000 (00:06 +0100)]
leds: Add default-on trigger

Add a trigger which allows LEDs to default to the full
brightness state.

Signed-off-by: Nick Forbes <Nick.Forbes@huntsworth.com>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agoOMAP: MMC: Generalize mmc init routine
Felipe Balbi [Thu, 24 Apr 2008 22:17:42 +0000 (01:17 +0300)]
OMAP: MMC: Generalize mmc init routine

Make sdp_mmc_init routine more generic by moving files
around and changing function names.

Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
17 years agoleds: Document the context brightness_set needs
Richard Purdie [Thu, 24 Apr 2008 22:49:30 +0000 (23:49 +0100)]
leds: Document the context brightness_set needs

Make sure there is no confusion about the contexts brightness_set
can be called under by documenting it.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agoleds: Add new driver for the LEDs on the Freecom FSG-3
Rod Whitby [Thu, 24 Apr 2008 22:43:09 +0000 (23:43 +0100)]
leds: Add new driver for the LEDs on the Freecom FSG-3

The LEDs on the Freecom FSG-3 are connected to an external
memory-mapped latch on the ixp4xx expansion bus, and therefore cannot
be supported by any of the existing LEDs drivers.

Signed-off-by: Rod Whitby <rod@whitby.id.au>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agoleds: Add support to leds with readable status
Henrique de Moraes Holschuh [Tue, 18 Mar 2008 09:47:48 +0000 (09:47 +0000)]
leds: Add support to leds with readable status

Some led hardware allows drivers to query the led state, and this patch
adds a hook to let the led class take advantage of that information when
available.

Without this functionality, when access to the led hardware is not
exclusive (i.e. firmware or hardware might change its state behind the
kernel's back), reality goes out of sync with the led class' idea of what
the led is doing, which is annoying at best.

Behaviour for drivers that do not or cannot read the led status is
unchanged.

Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agoleds: enable support for blink_set() platform hook in leds-gpio
Herbert Valerio Riedel [Sun, 9 Mar 2008 23:48:25 +0000 (23:48 +0000)]
leds: enable support for blink_set() platform hook in leds-gpio

Enhance leds-gpio to provide hardware-based led flashing by passing
through the blink_set() call to a optionally set platform-specific
function pointer.

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agoleds: Cleanup various whitespace and code style issues
Németh Márton [Sun, 9 Mar 2008 20:59:57 +0000 (20:59 +0000)]
leds: Cleanup various whitespace and code style issues

Break the lines which were more than 80 characters into more
lines; replace SPACEs with TABs; correct ident at switch-case;
change character encoding from ISO-8859-2 to UTF-8.

The order of the functions in led-triggers.c changed in order
the similar functions can still be together under titles
"Used by LED Class", "LED Trigger Interface" and "Simple
LED Tigger Interface" as was grouped before when exported
with EXPORT_SYMBOL.

Signed-off-by: Márton Németh <nm127@freemail.hu>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agoleds: disable triggers on brightness set
Németh Márton [Sun, 9 Mar 2008 20:54:37 +0000 (20:54 +0000)]
leds: disable triggers on brightness set

Disable any active triggers when the brightness attribute is
set to zero.

Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Signed-off-by: Márton Németh <nm127@freemail.hu>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agoleds: Add mail LED support for "Clevo D400P"
Mrton Nmeth [Sun, 9 Mar 2008 20:47:59 +0000 (20:47 +0000)]
leds: Add mail LED support for "Clevo D400P"

The leds-clevo-mail module also works with model "Clevo D400P",
add this model to the white list.

Signed-off-by: Mrton Nmeth <nm127@freemail.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agosched: fix share (re)distribution
Peter Zijlstra [Thu, 24 Apr 2008 22:25:08 +0000 (00:25 +0200)]
sched: fix share (re)distribution

fix __aggregate_redistribute_shares() related lockup reported by
David S. Miller.

The problem this code tries to solve is 'accurately' calculating the 'fair'
share of the group weight for each cpu. The current code falls back to a global
group rebalance in case the sched_domain's span it looks at has no shares, but
does have tasks.

The reason it gets stuck here, is because its inherently racy - if someone
steals the last task after we compute the agg->rq_weight, but before we
rebalance, we'll never get out of the loop.

We could of course go fix that, but while looking at this issue I found that
this 'fallback' wasn't nearly as rare as I'd hoped it to be. In fact its quite
common - and given it walks the whole machine, thats very bad.

The new approach is simple (why didn't I think of it before?), we set the
aggregate shares to the full task group weight, and each larger sched domain
that encounters an aggregate shares larger than the weight, clips it (it
already re-distributes anyway).

This nicely converges to the desired global picture where the sum of all
shares equals the task group weight.

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agosoftlockup: fix NOHZ wakeup
Ingo Molnar [Thu, 24 Apr 2008 22:25:08 +0000 (00:25 +0200)]
softlockup: fix NOHZ wakeup

David Miller reported:

|--------------->
the following commit:

| commit 27ec4407790d075c325e1f4da0a19c56953cce23
| Author: Ingo Molnar <mingo@elte.hu>
| Date:   Thu Feb 28 21:00:21 2008 +0100
|
|     sched: make cpu_clock() globally synchronous
|
|     Alexey Zaytsev reported (and bisected) that the introduction of
|     cpu_clock() in printk made the timestamps jump back and forth.
|
|     Make cpu_clock() more reliable while still keeping it fast when it's
|     called frequently.
|
|     Signed-off-by: Ingo Molnar <mingo@elte.hu>

causes watchdog triggers when a cpu exits NOHZ state when it has been
there for >= the soft lockup threshold, for example here are some
messages from a 128 cpu Niagara2 box:

[  168.106406] BUG: soft lockup - CPU#11 stuck for 128s! [dd:3239]
[  168.989592] BUG: soft lockup - CPU#21 stuck for 86s! [swapper:0]
[  168.999587] BUG: soft lockup - CPU#29 stuck for 91s! [make:4511]
[  168.999615] BUG: soft lockup - CPU#2 stuck for 85s! [swapper:0]
[  169.020514] BUG: soft lockup - CPU#37 stuck for 91s! [swapper:0]
[  169.020514] BUG: soft lockup - CPU#45 stuck for 91s! [sh:4515]
[  169.020515] BUG: soft lockup - CPU#69 stuck for 92s! [swapper:0]
[  169.020515] BUG: soft lockup - CPU#77 stuck for 92s! [swapper:0]
[  169.020515] BUG: soft lockup - CPU#61 stuck for 92s! [swapper:0]
[  169.112554] BUG: soft lockup - CPU#85 stuck for 92s! [swapper:0]
[  169.112554] BUG: soft lockup - CPU#101 stuck for 92s! [swapper:0]
[  169.112554] BUG: soft lockup - CPU#109 stuck for 92s! [swapper:0]
[  169.112554] BUG: soft lockup - CPU#117 stuck for 92s! [swapper:0]
[  169.171483] BUG: soft lockup - CPU#40 stuck for 80s! [dd:3239]
[  169.331483] BUG: soft lockup - CPU#13 stuck for 86s! [swapper:0]
[  169.351500] BUG: soft lockup - CPU#43 stuck for 101s! [dd:3239]
[  169.531482] BUG: soft lockup - CPU#9 stuck for 129s! [mkdir:4565]
[  169.595754] BUG: soft lockup - CPU#20 stuck for 93s! [swapper:0]
[  169.626787] BUG: soft lockup - CPU#52 stuck for 93s! [swapper:0]
[  169.626787] BUG: soft lockup - CPU#84 stuck for 92s! [swapper:0]
[  169.636812] BUG: soft lockup - CPU#116 stuck for 94s! [swapper:0]

It's simple enough to trigger this by doing a 10 minute sleep after a
fresh bootup then starting a parallel kernel build.

I suspect this might be reintroducing a problem we've had and fixed
before, see the thread:

http://marc.info/?l=linux-kernel&m=119546414004065&w=2
<---------------|

touch the softlockup watchdog when exiting NOHZ state - we are
obviously not locked up.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agoseqlock: livelock fix
Ingo Molnar [Thu, 3 Apr 2008 07:06:13 +0000 (09:06 +0200)]
seqlock: livelock fix

Thomas Gleixner debugged a particularly ugly seqlock related livelock:
do not process the seq-read section if we know it beforehand that the
test at the end of the section will fail ...

Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agoxen: add balloon driver
Jeremy Fitzhardinge [Wed, 2 Apr 2008 17:54:13 +0000 (10:54 -0700)]
xen: add balloon driver

The balloon driver allows memory to be dynamically added or removed from the domain,
in order to allow host memory to be balanced between multiple domains.

This patch introduces the Xen balloon driver, though it currently only
allows a domain to be shrunk from its initial size (and re-grown back to
that size).  A later patch will add the ability to grow a domain beyond
its initial size.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: allow compilation with non-flat memory
Jeremy Fitzhardinge [Wed, 2 Apr 2008 17:54:12 +0000 (10:54 -0700)]
xen: allow compilation with non-flat memory

There's no real reason we can't support sparsemem/discontigmem, so do so.
This is mostly useful to support hotplug memory.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: fold xen_sysexit into xen_iret
Jeremy Fitzhardinge [Wed, 2 Apr 2008 17:54:11 +0000 (10:54 -0700)]
xen: fold xen_sysexit into xen_iret

xen_sysexit and xen_iret were doing essentially the same thing.  Rather
than having a separate implementation for xen_sysexit, we can just strip
the stack back to an iret frame and jump into xen_iret.  This removes
a lot of code and complexity - specifically, another critical region.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: allow set_pte_at on init_mm to be lockless
Jeremy Fitzhardinge [Wed, 2 Apr 2008 17:54:10 +0000 (10:54 -0700)]
xen: allow set_pte_at on init_mm to be lockless

The usual pagetable locking protocol doesn't seem to apply to updates
to init_mm, so don't rely on preemption being disabled in xen_set_pte_at
on init_mm.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: disable preemption during tlb flush
Jeremy Fitzhardinge [Wed, 2 Apr 2008 17:54:09 +0000 (10:54 -0700)]
xen: disable preemption during tlb flush

Various places in the kernel flush the tlb even though preemption doens't
guarantee the tlb flush is happening on any particular CPU.  In many cases
this doesn't seem to matter, so don't make a fuss about it.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen pvfb: Para-virtual framebuffer, keyboard and pointer driver
Markus Armbruster [Wed, 2 Apr 2008 17:54:07 +0000 (10:54 -0700)]
xen pvfb: Para-virtual framebuffer, keyboard and pointer driver

This is a pair of Xen para-virtual frontend device drivers:
drivers/video/xen-fbfront.c provides a framebuffer, and
drivers/input/xen-kbdfront provides keyboard and mouse.

The backends run in dom0 user space.

The two drivers are not in two separate patches, because the
intermediate step (one driver, not the other) is somewhat problematic:
the backend in dom0 needs both drivers, and will refuse to complete
device initialization unless they're both present.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: Add compatibility aliases for frontend drivers
Mark McLoughlin [Wed, 2 Apr 2008 17:54:06 +0000 (10:54 -0700)]
xen: Add compatibility aliases for frontend drivers

Before getting merged, xen-blkfront was xenblk and
xen-netfront was xennet.

Temporarily adding compatibility module aliases
eases upgrades from older versions by e.g. allowing
mkinitrd to find the new version of the module.

Signed-off-by: Mark McLoughlin <markmc@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: Module autoprobing support for frontend drivers
Mark McLoughlin [Wed, 2 Apr 2008 17:54:05 +0000 (10:54 -0700)]
xen: Module autoprobing support for frontend drivers

Add module aliases to support autoprobing modules
for xen frontend devices.

Signed-off-by: Mark McLoughlin <markmc@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen blkfront: Delay wait for block devices until after the disk is added
Christian Limpach [Wed, 2 Apr 2008 17:54:04 +0000 (10:54 -0700)]
xen blkfront: Delay wait for block devices until after the disk is added

When the xen block frontend driver is built as a module the module load
is only synchronous up to the point where the frontend and the backend
become connected rather than when the disk is added.

This means that there can be a race on boot between loading the module and
loading the dm-* modules and doing the scan for LVM physical volumes (all
in the initrd). In the failure case the disk is not present until after the
scan for physical volumes is complete.

Taken from:

  http://xenbits.xensource.com/linux-2.6.18-xen.hg?rev/11483a00c017

Signed-off-by: Christian Limpach <Christian.Limpach@xensource.com>
Signed-off-by: Mark McLoughlin <markmc@redhat.com>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen/blkfront: use bdget_disk
Jeremy Fitzhardinge [Wed, 2 Apr 2008 17:54:03 +0000 (10:54 -0700)]
xen/blkfront: use bdget_disk

info->dev is never initialized to anything, so bdget(info->dev) is
meaningless.  Get rid of info->dev, and use bdget_disk on the gendisk.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Cc: Al Viro <viro@ZenIV.linux.org.uk>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoDocument SEQ_SKIP
Jonathan Corbet [Wed, 23 Apr 2008 16:34:52 +0000 (10:34 -0600)]
Document SEQ_SKIP

2.6.26 adds a SEQ_SKIP return value for the seq_file show() function;
update the documentation to match.

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
17 years agoxen: Make xen-blkfront write its protocol ABI to xenstore
Markus Armbruster [Wed, 2 Apr 2008 17:54:02 +0000 (10:54 -0700)]
xen: Make xen-blkfront write its protocol ABI to xenstore

Frontends are expected to write their protocol ABI to xenstore.  Since
the protocol ABI defaults to the backend's native ABI, things work
fine without that as long as the frontend's native ABI is identical to
the backend's native ABI.  This is not the case for xen-blkfront
running 32-on-64, because its ABI differs between 32 and 64 bit, and
thus needs this fix.

Based on http://xenbits.xensource.com/xen-unstable.hg?rev/c545932a18f3
and http://xenbits.xensource.com/xen-unstable.hg?rev/ffe52263b430 by
Gerd Hoffmann <kraxel@suse.de>

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Jeremy Fitzhardinge <Jeremy.Fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: import arch generic part of xencomm
Isaku Yamahata [Wed, 2 Apr 2008 17:54:01 +0000 (10:54 -0700)]
xen: import arch generic part of xencomm

On xen/ia64 and xen/powerpc hypercall arguments are passed by pseudo
physical address (guest physical address) so that it's necessary to
convert from virtual address into pseudo physical address. The frame
work is called xencomm.
Import arch generic part of xencomm.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: make grant table arch portable
Isaku Yamahata [Wed, 2 Apr 2008 17:54:00 +0000 (10:54 -0700)]
xen: make grant table arch portable

split out x86 specific part from grant-table.c and
allow ia64/xen specific initialization.
ia64/xen grant table is based on pseudo physical address
(guest physical address) unlike x86/xen. On ia64 init_mm
doesn't map identity straight mapped area.
ia64/xen specific grant table initialization is necessary.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: replace callers of alloc_vm_area()/free_vm_area() with xen_ prefixed one
Isaku Yamahata [Wed, 2 Apr 2008 17:53:59 +0000 (10:53 -0700)]
xen: replace callers of alloc_vm_area()/free_vm_area() with xen_ prefixed one

Don't use alloc_vm_area()/free_vm_area() directly, instead define
xen_alloc_vm_area()/xen_free_vm_area() and use them.

alloc_vm_area()/free_vm_area() are used to allocate/free area which
are for grant table mapping. Xen/x86 grant table is based on virtual
address so that alloc_vm_area()/free_vm_area() are suitable.
On the other hand Xen/ia64 (and Xen/powerpc) grant table is based on
pseudo physical address (guest physical address) so that allocation
should be done differently.
The original version of xenified Linux/IA64 have its own
allocate_vm_area()/free_vm_area() definitions which don't allocate vm area
contradictory to those names.
Now vanilla Linux already has its definitions so that it's impossible
to have IA64 definitions of allocate_vm_area()/free_vm_area().
Instead introduce xen_allocate_vm_area()/xen_free_vm_area() and use them.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: make include/xen/page.h portable moving those definitions under asm dir
Isaku Yamahata [Wed, 2 Apr 2008 17:53:58 +0000 (10:53 -0700)]
xen: make include/xen/page.h portable moving those definitions under asm dir

The definitions in include/asm/xen/page.h are arch specific.
ia64/xen wants to define its own version. So move them to arch specific
directory and keep include/xen/page.h in order not to break compilation.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: add resend_irq_on_evtchn() definition into events.c
Isaku Yamahata [Wed, 2 Apr 2008 17:53:57 +0000 (10:53 -0700)]
xen: add resend_irq_on_evtchn() definition into events.c

Define resend_irq_on_evtchn() which ia64/xen uses.
Although it isn't used by current x86/xen code, it's arch generic
so that put it into common code.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoXen: make events.c portable for ia64/xen support
Isaku Yamahata [Wed, 2 Apr 2008 17:53:56 +0000 (10:53 -0700)]
Xen: make events.c portable for ia64/xen support

Remove x86 dependency in drivers/xen/events.c for ia64/xen support
introducing include/asm/xen/events.h.
Introduce xen_irqs_disabled() to hide regs->flags
Introduce xen_do_IRQ() to hide regs->orig_ax.
make enum ipi_vector definition arch specific. ia64/xen needs four vectors.
Add one rmb() because on ia64 xchg() isn't barrier.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: move events.c to drivers/xen for IA64/Xen support
Isaku Yamahata [Wed, 2 Apr 2008 17:53:55 +0000 (10:53 -0700)]
xen: move events.c to drivers/xen for IA64/Xen support

move arch/x86/xen/events.c undedr drivers/xen to share codes
with x86 and ia64. And minor adjustment to compile.
ia64/xen also uses events.c

Signed-off-by: Yaozu (Eddie) Dong <eddie.dong@intel.com>
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: move features.c from arch/x86/xen/features.c to drivers/xen
Isaku Yamahata [Wed, 2 Apr 2008 17:53:54 +0000 (10:53 -0700)]
xen: move features.c from arch/x86/xen/features.c to drivers/xen

ia64/xen also uses it too. Move it into common place so that
ia64/xen can share the code.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: add missing definitions in include/xen/interface/vcpu.h which ia64/xen needs
Isaku Yamahata [Wed, 2 Apr 2008 17:53:53 +0000 (10:53 -0700)]
xen: add missing definitions in include/xen/interface/vcpu.h which ia64/xen needs

Add xen handles realted definitions for xen vcpu which ia64/xen needs.
Pointer argumsnts for ia64/xen hypercall are passed in pseudo physical
address (guest physical address) so that it is required to convert
guest kernel virtual address into pseudo physical address.
The xen guest handle represents such arguments.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: add missing definitions for xen grant table which ia64/xen needs
Isaku Yamahata [Wed, 2 Apr 2008 17:53:52 +0000 (10:53 -0700)]
xen: add missing definitions for xen grant table which ia64/xen needs

Add xen handles realted definitions for grant table which ia64/xen
needs.
Pointer argumsnts for ia64/xen hypercall are passed in pseudo physical
address (guest physical address) so that it is required to convert
guest kernel virtual address into pseudo physical address right before
issuing hypercall.
The xen guest handle represents such arguments.
Define necessary handles and helper functions.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: definitions which ia64/xen needs
Isaku Yamahata [Wed, 2 Apr 2008 17:53:51 +0000 (10:53 -0700)]
xen: definitions which ia64/xen needs

Add xen VIRQ numbers defined for arch specific use.
ia64/xen domU uses VIRQ_ARCH_0 for virtual itc timer.
Although all those constants aren't used yet by ia64
at this moment, add all arch specific VIRQ numbers.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: definisions which ia64 needs
Isaku Yamahata [Wed, 2 Apr 2008 17:53:50 +0000 (10:53 -0700)]
xen: definisions which ia64 needs

Add xen hypercall numbers defined for arch specific use.
ia64/xen domU uses __HYPERVISOR_arch_1 to manipulate paravirtualized
IOSAPIC. Although all those constants aren't used yet by IA64 at this
moment, add all arch specific hypercall numbers.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: jump to iret fixup
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:22 +0000 (16:37 -0700)]
xen: jump to iret fixup

Use jmp rather than call for the iret fixup, so its consistent with
the sysexit fixup, and it simplifies the stack (which is already
complex).

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: no need for domU to worry about MCE/MCA
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:21 +0000 (16:37 -0700)]
xen: no need for domU to worry about MCE/MCA

Mask MCE/MCA out of cpu caps.  Its harmless to leave them there, but
it does prevent the kernel from starting an unnecessary thread.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: short-cut for recursive event handling
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:20 +0000 (16:37 -0700)]
xen: short-cut for recursive event handling

If an event comes in while events are currently being processed, then
just increment the counter and have the outer event loop reprocess the
pending events.  This prevents unbounded recursion on heavy event
loads (of course massive event storms will cause infinite loops).

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: make sure retriggered events are set pending
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:19 +0000 (16:37 -0700)]
xen: make sure retriggered events are set pending

retrigger_dynirq() was incomplete, and didn't properly set the event
to be pending again.  It doesn't seem to actually get used.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: implement a debug-interrupt handler
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:18 +0000 (16:37 -0700)]
xen: implement a debug-interrupt handler

Xen supports the notion of a debug interrupt which can be triggered
from the console.  For now this is implemented to show pending events,
masks and each CPU's pending event set.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: support sysenter/sysexit if hypervisor does
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:17 +0000 (16:37 -0700)]
xen: support sysenter/sysexit if hypervisor does

64-bit Xen supports sysenter for 32-bit guests, so support its
use.  (sysenter is faster than int $0x80 in 32-on-64.)

sysexit is still not supported, so we fake it up using iret.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: add support for callbackops hypercall
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:15 +0000 (16:37 -0700)]
xen: add support for callbackops hypercall

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86: unify pgd ctor/dtor
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:14 +0000 (16:37 -0700)]
x86: unify pgd ctor/dtor

All pagetables need fundamentally the same setup and destruction, so
just use the same code for everything.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86: unify KERNEL_PGD_PTRS
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:13 +0000 (16:37 -0700)]
x86: unify KERNEL_PGD_PTRS

Make KERNEL_PGD_PTRS common, as previously it was only being defined
for 32-bit.

There are a couple of follow-on changes from this:
 - KERNEL_PGD_PTRS was being defined in terms of USER_PGD_PTRS.  The
   definition of USER_PGD_PTRS doesn't really make much sense on x86-64,
   since it can have two different user address-space configurations.
   I renamed USER_PGD_PTRS to KERNEL_PGD_BOUNDARY, which is meaningful
   for all of 32/32, 32/64 and 64/64 process configurations.

 - USER_PTRS_PER_PGD was also defined and was being used for similar
   purposes.  Converting its users to KERNEL_PGD_BOUNDARY left it
   completely unused, and so I removed it.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Cc: Andi Kleen <ak@suse.de>
Cc: Zach Amsden <zach@vmware.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: make sure iret faults are trapped
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:12 +0000 (16:37 -0700)]
xen: make sure iret faults are trapped

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: unify pte operations on machine frames
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:11 +0000 (16:37 -0700)]
xen: unify pte operations on machine frames

Xen's pte operations on mfns can be unified like the kernel's pfn operations.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: use phys_addr_t when referring to physical addresses
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:10 +0000 (16:37 -0700)]
xen: use phys_addr_t when referring to physical addresses

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: unify pte operations
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:09 +0000 (16:37 -0700)]
xen: unify pte operations

We can fold the essentially common pte functions together now.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: make use of pte_t union
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:08 +0000 (16:37 -0700)]
xen: make use of pte_t union

pte_t always contains a "pte" field for the whole pte value, so make
use of it.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoxen: use appropriate pte types
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:07 +0000 (16:37 -0700)]
xen: use appropriate pte types

Convert Xen pagetable handling to use appropriate *val_t types.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86: demacro pgalloc paravirt stubs
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:06 +0000 (16:37 -0700)]
x86: demacro pgalloc paravirt stubs

Turn paravirt stubs into inline functions, so that the arguments are
still typechecked.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86/pgtable.h: demacro ptep_clear_flush_young
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:05 +0000 (16:37 -0700)]
x86/pgtable.h: demacro ptep_clear_flush_young

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86/pgtable.h: demacro ptep_test_and_clear_young
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:04 +0000 (16:37 -0700)]
x86/pgtable.h: demacro ptep_test_and_clear_young

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86/pgtable.h: demacro ptep_set_access_flags
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:03 +0000 (16:37 -0700)]
x86/pgtable.h: demacro ptep_set_access_flags

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86: add pud_alloc for 4-level pagetables
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:02 +0000 (16:37 -0700)]
x86: add pud_alloc for 4-level pagetables

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86: rename paravirt_alloc_pt etc after the pagetable structure
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:01 +0000 (16:37 -0700)]
x86: rename paravirt_alloc_pt etc after the pagetable structure

Rename (alloc|release)_(pt|pd) to pte/pmd to explicitly match the name
of the appropriate pagetable level structure.

[ x86.git merge work by Mark McLoughlin <markmc@redhat.com> ]

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Mark McLoughlin <markmc@redhat.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86: move all the pgd_list handling to one place
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:37:00 +0000 (16:37 -0700)]
x86: move all the pgd_list handling to one place

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86: move pgalloc pud and pgd operations into common place
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:36:59 +0000 (16:36 -0700)]
x86: move pgalloc pud and pgd operations into common place

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86: move pmd functions into common asm/pgalloc.h
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:36:58 +0000 (16:36 -0700)]
x86: move pmd functions into common asm/pgalloc.h

Common definitions for 3-level pagetable functions.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86: move pte functions into common asm/pgalloc.h
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:36:57 +0000 (16:36 -0700)]
x86: move pte functions into common asm/pgalloc.h

Common definitions for 2-level pagetable functions.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86: put paravirt stubs into common asm/pgalloc.h
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:36:56 +0000 (16:36 -0700)]
x86: put paravirt stubs into common asm/pgalloc.h

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86: xen unify x86 add common mm pgtable c fix
Ingo Molnar [Wed, 19 Mar 2008 19:30:40 +0000 (20:30 +0100)]
x86: xen unify x86 add common mm pgtable c fix

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86: add common mm/pgtable.c
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:36:55 +0000 (16:36 -0700)]
x86: add common mm/pgtable.c

Add a common arch/x86/mm/pgtable.c file for common pagetable functions.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86: convert pgalloc_64.h from macros to inlines
Jeremy Fitzhardinge [Mon, 17 Mar 2008 23:36:54 +0000 (16:36 -0700)]
x86: convert pgalloc_64.h from macros to inlines

Convert asm-x86/pgalloc_64.h from macros into functions (#include hell
prevents __*_free_tlb from being inline, but they're probably a bit
big to inline anyway).

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoUSB: BEAGLE: Add usb support for omap3beagle
Felipe Balbi [Thu, 24 Apr 2008 21:46:00 +0000 (00:46 +0300)]
USB: BEAGLE: Add usb support for omap3beagle

This patch is based on previous patch by
Koen Kooi <koen@openembedded.org>. It uses
the new generic usb init calls for omap3-
and omap2430-based boards.

Signed-off-by: Felipe Balbi <me@felipebalbi.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
17 years agoOMAP3xx: Add DMA and IRQ definition for McBSP 1 and 2
Eduardo Valentin [Thu, 24 Apr 2008 15:54:24 +0000 (11:54 -0400)]
OMAP3xx: Add DMA and IRQ definition for McBSP 1 and 2

This patch adds DMA and IRQ definition for McBSP 1 and 2
devices for omap34xx based systems.

Signed-off-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
Signed-off-by: Tony Lindgren <tony@atomide.com>
17 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux...
Linus Torvalds [Thu, 24 Apr 2008 21:41:20 +0000 (14:41 -0700)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86-fixes

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86-fixes:
  "make namespacecheck" fixes
  x86: fix compilation error in VisWS
  x86: voyager fix
  x86: Drop duplicate from setup.c
  intel-iommu.c: dma ops fix

17 years agogeneric: add ioremap_wc() interface wrapper
venkatesh.pallipadi@intel.com [Wed, 19 Mar 2008 00:00:24 +0000 (17:00 -0700)]
generic: add ioremap_wc() interface wrapper

x86 has ioremap_wc for wc remap. Also introduce a generic ioremap_wc
aliased to ioremap_uc so that drivers can use this interface transparently.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years ago/dev/mem: make promisc the default
Ingo Molnar [Fri, 18 Apr 2008 19:42:36 +0000 (21:42 +0200)]
/dev/mem: make promisc the default

default to the old semantics.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agopat: cleanups
Ingo Molnar [Thu, 3 Apr 2008 08:14:33 +0000 (10:14 +0200)]
pat: cleanups

Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agox86: PAT use reserve free memtype in mmap of /dev/mem
venkatesh.pallipadi@intel.com [Wed, 19 Mar 2008 00:00:21 +0000 (17:00 -0700)]
x86: PAT use reserve free memtype in mmap of /dev/mem

Use reserve_memtype and free_memtype wrappers for /dev/mem mmaps. The memtype
is slightly complicated here, given that we have to support existing X mappings.
We fallback on UC_MINUS for that.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agox86: PAT phys_mem_access_prot_allowed for dev/mem mmap
venkatesh.pallipadi@intel.com [Wed, 19 Mar 2008 00:00:20 +0000 (17:00 -0700)]
x86: PAT phys_mem_access_prot_allowed for dev/mem mmap

Introduce phys_mem_access_prot_allowed(), which checks whether the mapping
is possible, without any conflicts and returns success or failure based on that.
phys_mem_access_prot() by itself does not allow failure case. This ability
to return error is needed for PAT where we may have aliasing conflicts.

x86 setup __HAVE_PHYS_MEM_ACCESS_PROT and move x86 specific code out of
/dev/mem into arch specific area.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agox86: PAT avoid aliasing in /dev/mem read/write
venkatesh.pallipadi@intel.com [Wed, 19 Mar 2008 00:00:15 +0000 (17:00 -0700)]
x86: PAT avoid aliasing in /dev/mem read/write

Add xlate and unxlate around /dev/mem read/write. This sets up the mapping
that can be used for /dev/mem read and write without aliasing worries.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agodevmem: add range_is_allowed() check to mmap of /dev/mem
Venki Pallipadi [Fri, 7 Mar 2008 07:01:47 +0000 (23:01 -0800)]
devmem: add range_is_allowed() check to mmap of /dev/mem

Earlier patch that introduced CONFIG_NONPROMISC_DEVMEM, did the
range_is_allowed() check only for read and write. Add range_is_allowed()
check to mmap of /dev/mem as well.

Changes the paramaters of range_is_allowed() to pfn and size to handle
more than 32 bits of physical address on 32 bit arch cleanly.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agox86: introduce /dev/mem restrictions with a config option
Arjan van de Ven [Thu, 24 Apr 2008 21:40:47 +0000 (23:40 +0200)]
x86: introduce /dev/mem restrictions with a config option

This patch introduces a restriction on /dev/mem: Only non-memory can be
read or written unless the newly introduced config option is set.

The X server needs access to /dev/mem for the PCI space, but it doesn't need
access to memory; both the file permissions and SELinux permissions of /dev/mem
just make X effectively super-super powerful. With the exception of the
BIOS area, there's just no valid app that uses /dev/mem on actual memory.
Other popular users of /dev/mem are rootkits and the like.
(note: mmap access of memory via /dev/mem was already not allowed since
a really long time)

People who want to use /dev/mem for kernel debugging can enable the config
option.

The restrictions of this patch have been in the Fedora and RHEL kernels for
at least 4 years without any problems.

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years ago[PATCH] Build fix for CONFIG_NUMA=y && CONFIG_SMP=n
Mike Travis [Tue, 22 Apr 2008 17:04:26 +0000 (10:04 -0700)]
[PATCH] Build fix for CONFIG_NUMA=y && CONFIG_SMP=n

Regression caused by 434d53b00d6bb7be0a1d3dcc0d0d5df6c042e164

Signed-off-by: Mike Travis <travis@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
17 years agoARM: OMAP: Fix MMC2 device configuration for OMAP2430
Seth Forshee [Thu, 24 Apr 2008 19:25:27 +0000 (14:25 -0500)]
ARM: OMAP: Fix MMC2 device configuration for OMAP2430

Currently the MMC2 device configuration is defined for OMAP2430
when CONFIG_ARCH_OMAP243X is defined.  This should be
CONFIG_ARCH_OMAP2430.

Signed-off-by: Seth Forshee <seth.forshee@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
17 years ago[IA64] fix bootmem regression on Altix
Russ Anderson [Thu, 24 Apr 2008 18:16:59 +0000 (13:16 -0500)]
[IA64] fix bootmem regression on Altix

A recent change prevents SGI Altix from booting.
This patch fixes the problem.

The regresson was introduced in commit 434d53b00d6bb7be0a1d3dcc0d0d5df6c042e164

Signed-off-by: Russ Anderson <rja@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
17 years ago"make namespacecheck" fixes
Ingo Molnar [Wed, 23 Apr 2008 11:20:56 +0000 (13:20 +0200)]
"make namespacecheck" fixes

Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agox86: fix compilation error in VisWS
Alexey Starikovskiy [Mon, 21 Apr 2008 09:32:01 +0000 (13:32 +0400)]
x86: fix compilation error in VisWS

Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agox86: voyager fix
Ingo Molnar [Mon, 21 Apr 2008 11:39:53 +0000 (13:39 +0200)]
x86: voyager fix

Reported-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agox86: Drop duplicate from setup.c
Alexey Starikovskiy [Mon, 21 Apr 2008 09:31:55 +0000 (13:31 +0400)]
x86: Drop duplicate from setup.c

Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agointel-iommu.c: dma ops fix
Ingo Molnar [Tue, 22 Apr 2008 09:09:04 +0000 (11:09 +0200)]
intel-iommu.c: dma ops fix

Stephen Rothwell noticed that:

Commit 2be621498d461b63ca6124f86e3b9582e1a8e722 ("x86: dma-ops on highmem
fix") in Linus' tree introduced a new warning (noticed in the x86_64
allmodconfig build of linux-next):

drivers/pci/intel-iommu.c:2240: warning: initialization from incompatible pointer type

Which points at an instance of map_single that needs updating.

Fix it to the new prototype.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years ago[ARM] 5017/1: pxa3xx: Report unsupported wakeup sources in pxa3xx_set_wake()
Mark Brown [Wed, 23 Apr 2008 09:28:18 +0000 (10:28 +0100)]
[ARM] 5017/1: pxa3xx: Report unsupported wakeup sources in pxa3xx_set_wake()

pxa3xx_set_wake() silently accepts unsupported wake sources, causing
users to believe that they have succesfully configured sources that they
haven't.  Fail the operation instead.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: eric miao <eric.y.miao@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years ago[ARM] 5020/1: magician: remove __devinit marker from pasic3_leds_info
Philipp Zabel [Thu, 24 Apr 2008 17:10:46 +0000 (18:10 +0100)]
[ARM] 5020/1: magician: remove __devinit marker from pasic3_leds_info

Platform data must not be marked with __devinit. Even __devinitdata
would be wrong as the platform driver can be compiled as a module.

Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6
Linus Torvalds [Thu, 24 Apr 2008 20:47:31 +0000 (13:47 -0700)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:
  [CIFS] Fix typo in previous commit
  [CIFS] Fix define for new proxy cap to match documentation
  [CIFS] Fix UNC path prefix on QueryUnixPathInfo to have correct slash
  [CIFS] Reserve new proxy cap for WAFS
  [CIFS] Add various missing flags and defintions
  [CIFS] make cifs_dfs_automount_list_static
  [CIFS] Fix oops when slow oplock process races with unmount
  [CIFS] Fix acl length when very short ACL being modified by chmod
  [CIFS] Fix looping on reconnect to Samba when unexpected tree connect fail on reconnect
  [CIFS] minor update to change log

17 years agoRxRPC: Fix a regression in the RXKAD security module
David Howells [Thu, 24 Apr 2008 19:38:56 +0000 (20:38 +0100)]
RxRPC: Fix a regression in the RXKAD security module

Fix a regression in the RXKAD security module introduced in:

commit 91e916cffec7c0153c5cbaa447151862a7a9a047
Author: Al Viro <viro@ftp.linux.org.uk>
Date:   Sat Mar 29 03:08:38 2008 +0000

net/rxrpc trivial annotations

A variable was declared as a 16-bit type rather than a 32-bit type.

Signed-off-by: David Howells <dhowells@redhat.com>
Acked-with-apologies-by: Al Viro <viro@ZenIV.linux.org.uk>
Signed-of-by: Linus Torvalds <torvalds@linux-foundation.org>