10 Jan, 2007
3 commits
-
* 'merge' of master.kernel.org:/pub/scm/linux/kernel/git/paulus/powerpc:
[POWERPC] Fix bugs in the hypervisor call stats code
[POWERPC] Fix corruption in hcall9
[POWERPC] iSeries: fix setup initcall
[POWERPC] iSeries: fix viopath initialisation
[POWERPC] iSeries: fix lpevents initialisation
[POWERPC] iSeries: fix proc/iSeries initialisation
[POWERPC] iSeries: fix mf proc initialisation
[POWERPC] disable PReP and EFIKA during make oldconfig
[POWERPC] Fix mpc52xx serial driver to work for arch/ppc again
[POWERPC] Don't include powerpc/sysdev/rom.o for arch/ppc builds
[POWERPC] Fix mpc52xx fdt to use correct device_type for sound devices
[POWERPC] 52xx: Don't use device_initcall to probe of_platform_bus
[POWERPC] Add legacy iSeries to ppc64_defconfig
[POWERPC] Update ppc64_defconfig
[POWERPC] Fix manual assembly WARN_ON() in enter_rtas().
[POWERPC] Avoid calling get_irq_server() with a real, not virtual irq.
[POWERPC] Fix unbalanced uses of of_node_put
[POWERPC] Fix bogus BUG_ON() in in hugetlb_get_unmapped_area() -
* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6:
[S390] locking problem with __cpcmd.
[S390] don't call handle_mm_fault() if in an atomic context.
[S390] Fix vmalloc area size calculation.
[S390] Fix cpu hotplug (missing 'online' attribute).
[S390] cio: use barrier() in stsch_reset.
[S390] memory detection misses 128k. -
The sis96x SMBus PCI device depends on two different quirks to run
in a specific order. Apart from being fragile, this was found to
actually break on (at least) recent FC4, FC5, and FC6 kernels. This
patch fixes the quirks so that they work without relying on the
compiler and/or linker to put them in any specific order.http://lists.lm-sensors.org/pipermail/lm-sensors/2006-April/015962.html
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=189719I tested this patch.
Signed-off-by: Mark M. Hoffman
Cc: Andrew Morton
Cc: Adrian Bunk
Cc: Greg K-H
Cc: Jean Delvare
Signed-off-by: Linus Torvalds
09 Jan, 2007
37 commits
-
Changeset 740b5706b9c4b3767f597b3ea76654c6f2a800b2 moved the protecting
spinlock from __cpcmd to cpcmd. Therefore vmcp can no longer use __cpcmd,
instead we have to use cpcmd.Signed-off-by: Christian Borntraeger
Signed-off-by: Martin Schwidefsky -
There are several places in the futex code where a spin_lock is held
and still uaccesses happen. Deadlocks are avoided by increasing the
preempt count. The pagefault handler will then not take any locks
but will immediately search the fixup tables.Signed-off-by: Heiko Carstens
Signed-off-by: Martin Schwidefsky -
setup_memory_end() uses VMALLOC_END instead of VMALLOC_END_INIT to
calculate the maximum supported size of physical memory. Since
VMALLOC_END is zero, this will cause a crash on 31 bit systems.Signed-off-by: Heiko Carstens
Signed-off-by: Martin Schwidefsky -
72486f1f8f0a2bc828b9d30cf4690cf2dd6807fc inverts the logic if an
'online' attribute in /sys/devices/system/cpu/cpuX should appear.
So we end up with no hotpluggable cpus at all...
Set the hotpluggable value to one to make sure the online
attribute appears again.Signed-off-by: Heiko Carstens
Signed-off-by: Martin Schwidefsky -
Use barrier() in stsch_reset() instead of duplicating the stsch()
inline assembly and adding "memory" to the clobberlist.
Pointed out by Chuck Ebbert.Real fix would be to add a fixup section to the stsch() and extend the
basic program check handler so it searches the exception tables in case
of a program check.Signed-off-by: Heiko Carstens
Signed-off-by: Martin Schwidefsky -
Fix a memory leak problem in the memory detection routines. A memory leak
of 128k occurs when we have a contiguous memory with mixed access-mode
(read or write) ranges.Signed-off-by: Hongjie Yang
Signed-off-by: Martin Schwidefsky -
There were a few issues with the HCALL_STATS code:
- PURR cpu feature checks were backwards
- We iterated one entry off the end of the hcall_stats array
- Remove dead update_hcall_stats() function prototypeI noticed one thing while debugging, and that is we call H_ENTER (to set
up the MMU hashtable in early init) before we have done the cpu fixups.
This means we will execute the PURR SPR reads even on a CPU that isnt
capable of it. I wonder if we can move the CPU feature fixups earlier.Signed-off-by: Anton Blanchard
Signed-off-by: Paul Mackerras -
It looks to me like we are corrupting r12 in the hcall9 function.
Although we have r0 free we cant use offsets against it, so save
away r12 in there instead. r12 holds the ninth return value from
the hypervisor call, so without this fix, the caller will see the
wrong value for the ninth element in the array that gets the return
values.Signed-off-by: Anton Blanchard
Signed-off-by: Paul Mackerras -
Clearing the progress indicator should only be done if we are running
on legacy iSeries.Signed-off-by: Stephen Rothwell
Signed-off-by: Paul Mackerras -
/proc/iSeries/config should only be created if we are running on legacy
iSeries.Signed-off-by: Stephen Rothwell
Signed-off-by: Paul Mackerras -
/proc/iSeries/lpevents should only be created if we are running
on legacy iSeries.Signed-off-by: Stephen Rothwell
Signed-off-by: Paul Mackerras -
These proc files should only be created if we are running on legacy
iSeries.Signed-off-by: Stephen Rothwell
Signed-off-by: Paul Mackerras -
This proc file should only be created if we are running on legacy
iSeries. Since we can now run the same kernel on legacy iSeries and
other machines, we currently get the /proc/iSeries directory and the
files in it on non-iSeries machines, and accessing them causes an oops
in some cases. This and the following patches make sure that these
files are not created on non-iSeries machines, thus avoiding the oops.Signed-off-by: Stephen Rothwell
Signed-off-by: Paul Mackerras -
New boards should not be enabled per default.
Disable EFIKA and PReP per default.
Anyone who really needes the new code can enable it during make oldconfig.Signed-off-by: Olaf Hering
Acked-by: Grant Likely
Signed-off-by: Paul Mackerras -
The mpc52xx_uart_of_enumerate() function was added when adding 52xx
support to arch/powerpc, but it must not be called for arch/ppc.Signed-off-by: Grant Likely
Signed-off-by: Paul Mackerras -
sysdev/rom.c is for arch/powerpc only. Don't compile it when building
an arch/ppc kernel.Signed-off-by: Grant Likely
Acked-by: Sylvain Munaut
Signed-off-by: Paul Mackerras -
This corrects the documented interface for mpc52xx device trees.
Sound devices should be using 'sound' for the device_type field, not
the type of sound interface.Signed-off-by: Grant Likely
Acked-by: Sylvain Munaut
Signed-off-by: Paul Mackerras -
Using device_initcall makes it happen for every platform that
compiles this file in. This is really bad, for obvious reasons.Instead, we use the .init field of the machine description. If
the platform needs the hook to do something specific it can provides
its own function and call mpc52xx_declare_of_platform_devices from
there. If not, the mpc52xx_declare_of_platform_devices function can
directly be used as the init hook.Signed-off-by: Sylvain Munaut
Acked-by: Grant Likely
Signed-off-by: Paul Mackerras -
Since we can now boot legacy iSeries and other machines with the same
config, enable legacy iSeries in ppc64_defconfig.Signed-off-by: Stephen Rothwell
Signed-off-by: Paul Mackerras -
Enabled new netfilter stuff corresponding to what was enabled before
under different names, and turned on the gxt4500 video driver;
otherwise just took the defaults.Signed-off-by: Stephen Rothwell
Signed-off-by: Paul Mackerras -
When we switched over to the generic BUG mechanism we forgot to change
the assembly code which open-codes a WARN_ON() in enter_rtas(), so the
bug table got corrupted.This patch provides an EMIT_BUG_ENTRY macro for use in assembly code,
and uses it in entry_64.S. Tested with CONFIG_DEBUG_BUGVERBOSE on ppc64
but not without -- I tried to turn it off but it wouldn't go away; I
suspect Aunt Tillie probably needed it.This version gets __FILE__ and __LINE__ right in the assembly version --
rather than saying include/asm-powerpc/bug.h line 21 every time which is
a little suboptimal.Signed-off-by: David Woodhouse
Signed-off-by: Paul Mackerras -
We can use default_server when masking an interrupt vector.
get_irq_server() assumes a virtual irq, so badness may happen if we
give it a real one.Signed-off-by: Michal Ostrowski
Signed-off-by: Paul Mackerras -
The (maple|pasemi)_init_IRQ functions call of_node_put(root) once more
than they should, causing the refcount of the root node to underflow,
which triggers the WARN_ON in kref_get.Signed-off-by: Nathan Lynch
Acked-by: Olof Johansson
Signed-off-by: Paul Mackerras -
The powerpc specific version of hugetlb_get_unmapped_area() makes some
unwarranted assumptions about what checks have been made to its
parameters by its callers. This will lead to a BUG_ON() if a 32-bit
process attempts to make a hugepage mapping which extends above
TASK_SIZE (4GB).I'm not sure if these assumptions came about because they were valid
with earlier versions of the get_unmapped_area() path, or if it was
always broken. Nonetheless this patch fixes the logic, and removes
the crash.Signed-off-by: David Gibson
Signed-off-by: Paul Mackerras -
* 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jmorris/selinux-2.6:
selinux: Delete mls_copy_context -
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
[MIPS] PNX8550: Fix system timer support
[MIPS] TX49: Fix use of CDEX build_store_reg()
[MIPS] pnx8550: Fix write_config_byte() PCI config space accessor
[MIPS] Fix build errors on SEAD
[MIPS] SMTC build fix
[MIPS] csum_partial and copy in parallel
[MIPS] Malta: Add missing MTD file. -
* master.kernel.org:/home/rmk/linux-2.6-arm:
[ARM] Provide basic printk_clock() implementation
[ARM] Resolve fuse and direct-IO failures due to missing cache flushes
[ARM] pass vma for flush_anon_page()
[ARM] Fix potential MMCI bug
[ARM] Fix kernel-mode undefined instruction aborts
[ARM] 4082/1: iop3xx: fix iop33x gpio register offset
[ARM] 4070/1: arch/arm/kernel: fix warnings from missing includes
[ARM] 4079/1: iop: Update MAINTAINERS -
This reverts commit b026872601976f666bae77b609dc490d1834bf77, which has
been linked to several problem reports with IO-APIC and the timer.
Machines either don't boot because the timer doesn't happen, or we get
double timer interrupts because we end up double-routing the timer irq
through multiple interfaces.See for example
http://lkml.org/lkml/2006/12/16/101
http://lkml.org/lkml/2007/1/3/9
http://bugzilla.kernel.org/show_bug.cgi?id=7789about some of the discussion.
Patches to fix this cleanup exist (and have been confirmed to work fine
at least for some of the affected cases) and we'll revisit it for
2.6.21, but this late in the -rc series we're better off just reverting
the incomplete commit that caused the problems.Suggested-by: Adrian Bunk
Cc: Eric W. Biederman
Cc: Yinghai Lu
Cc: Andrew Morton
Cc: Andi Kleen
Signed-off-by: Linus Torvalds -
This deletes mls_copy_context() in favor of mls_context_cpy() and
replaces mls_scopy_context() with mls_context_cpy_low().Signed-off-by: Venkat Yekkirala
Acked-by: Stephen Smalley
Signed-off-by: James Morris -
the patch inlined below restores proper time accounting for PNX8550-based
boards. It also gets rid of #ifdef in the generic code which becomes
unnecessary then.It's functionally identical to the previous patch with the same name but
it has minor comments from Atsushi and Sergei taken into account.Signed-off-by: Vitaly Wool
Signed-off-by: Ralf Baechle -
The commit a923660d786a53e78834b19062f7af2535f7f8ad accidently
prevents TX49 from using CDEX. Use build_dst_pref() only if prefetch
for store was really available.Signed-off-by: Atsushi Nemoto
Signed-off-by: Ralf Baechle -
There's a serious typo in the function:
arch/mips/pci/ops-pnx8550.c:write_config_byte()The parameter passed to the function config_access() is PCI_CMD_CONFIG_READ
instead of PCI_CMD_CONFIG_WRITE. This renders any attempts to write
a single byte to the PCI configuration registers useless.This problem does not exist for write_config_word() nor write_config_dword().
This problem has been there since kernel v2.6.17 and is still there
as of kernel v2.6.19.1.Signed-off-by: Ralf Baechle
-
Quick and dirty fix for build errors on SEAD.
Signed-off-by: Atsushi Nemoto
Signed-off-by: Ralf Baechle -
Pass "irq" to __DO_IRQ_SMTC_HOOK() macro.
Signed-off-by: Atsushi Nemoto
Signed-off-by: Ralf Baechle -
Implement optimized asm version of csum_partial_copy_nocheck,
csum_partial_copy_from_user and csum_and_copy_to_user which can do
calculate and copy in parallel, based on memcpy.S.Signed-off-by: Atsushi Nemoto
Signed-off-by: Ralf Baechle -
Signed-off-by: Ralf Baechle
-
Current sched_clock() implementations on ARM cause unbootable kernels
with PRINTK_TIME support enabled. To avoid this, provide a basic
printk_clock() implementation which avoids sched_clock() being called
before the page tables have been set up.Signed-off-by: Russell King