* test branch update
@ 2009-02-11 5:03 Benjamin Herrenschmidt
0 siblings, 0 replies; 4+ messages in thread
From: Benjamin Herrenschmidt @ 2009-02-11 5:03 UTC (permalink / raw)
To: linuxppc-dev list
Hi !
The powerpc.git "test" branch has been rebased on top of "next" with the
addition of the following patches:
commit 8d30c14cab30d405a05f2aaceda1e9ad57800f36
Author: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: Tue Feb 10 16:02:37 2009 +0000
powerpc/mm: Rework I$/D$ coherency (v3)
This patch reworks the way we do I and D cache coherency on PowerPC.
The "old" way was split in 3 different parts depending on the processor type:
- Hash with per-page exec support (64-bit and >= POWER4 only) does it
at hashing time, by preventing exec on unclean pages and cleaning pages
on exec faults.
- Everything without per-page exec support (32-bit hash, 8xx, and
64-bit < POWER4) does it for all page going to user space in update_mmu_cache().
- Embedded with per-page exec support does it from do_page_fault() on
exec faults, in a way similar to what the hash code does.
That leads to confusion, and bugs. For example, the method using update_mmu_cache()
is racy on SMP where another processor can see the new PTE and hash it in before
we have cleaned the cache, and then blow trying to execute. This is hard to hit but
I think it has bitten us in the past.
Also, it's inefficient for embedded where we always end up having to do at least
one more page fault.
This reworks the whole thing by moving the cache sync into two main call sites,
though we keep different behaviours depending on the HW capability. The call
sites are set_pte_at() which is now made out of line, and ptep_set_access_flags()
which joins the former in pgtable.c
The base idea for Embedded with per-page exec support, is that we now do the
flush at set_pte_at() time when coming from an exec fault, which allows us
to avoid the double fault problem completely (we can even improve the situation
more by implementing TLB preload in update_mmu_cache() but that's for later).
If for some reason we didn't do it there and we try to execute, we'll hit
the page fault, which will do a minor fault, which will hit ptep_set_access_flags()
to do things like update _PAGE_ACCESSED or _PAGE_DIRTY if needed, we just make
this guys also perform the I/D cache sync for exec faults now. This second path
is the catch all for things that weren't cleaned at set_pte_at() time.
For cpus without per-pag exec support, we always do the sync at set_pte_at(),
thus guaranteeing that when the PTE is visible to other processors, the cache
is clean.
For the 64-bit hash with per-page exec support case, we keep the old mechanism
for now. I'll look into changing it later, once I've reworked a bit how we
use _PAGE_EXEC.
This is also a first step for adding _PAGE_EXEC support for embedded platforms
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
commit 4b7ad3593634c593d0e891ea415f9cf1bbcfcbd2
Author: Gerhard Pircher <gerhard_pircher@gmx.net>
Date: Tue Feb 10 12:26:22 2009 +0000
powerpc/amigaone: Default config for AmigaOne boards
CONFIG_CC_OPTIMIZE_FOR_SIZE is selected, because otherwise the kernel
wouldn't boot. The AmigaOne's U-boot firmware seems to have a problem
loading uImages bigger than 1.8 MB.
Signed-off-by: Gerhard Pircher <gerhard_pircher@gmx.net>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
commit 8f23735d8f8cfd4d46e3aa336690f52b8b5d3c75
Author: Gerhard Pircher <gerhard_pircher@gmx.net>
Date: Tue Feb 10 12:26:11 2009 +0000
powerpc/amigaone: Bootwrapper and serial console support for AmigaOne
This adds the bootwrapper for the cuImage target and a compatible property
check for "pnpPNP,501" to the generic serial console support code.
The default link address for the cuImage target is set to 0x800000. This
allows to boot the kernel with AmigaOS4's second level bootloader, which
always loads a uImage at 0x500000.
Signed-off-by: Gerhard Pircher <gerhard_pircher@gmx.net>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
commit 50408b7defa513a9ea1107b42674167e53ba7a4a
Author: Gerhard Pircher <gerhard_pircher@gmx.net>
Date: Tue Feb 10 12:26:03 2009 +0000
powerpc/amigaone: Generic device tree for all AmigaOne boards
This device tree does not provide the correct CPU name, as various CPU
models and revisions are used in AmigaOnes. Also the PCI root node does
not contain a interrupt mapping property, as all boards have different
interrupt routing. However the kernel can do a 1:1 mapping of all PCI
interrupts, as only i8259 legacy interrupts are used.
Signed-off-by: Gerhard Pircher <gerhard_pircher@gmx.net>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
commit 54b318aa5211ab7bba617a27d9cbd7fd759dcfd0
Author: Gerhard Pircher <gerhard_pircher@gmx.net>
Date: Tue Feb 10 12:20:49 2009 +0000
powerpc/amigaone: Add platform support for AmigaOne
This commit adds the setup code for booting Linux on AmigaOne G3SE (G3
only), AmigaOne XE and uA1 (G3/G4) desktop computers. These boards were
sold by Eyetech and are based on MAI Logic's Teron boards and its
Articia S northbridge.
The AmigaOne uses U-boot as firmware, which doesn't support a flattened
device tree yet. The northbridge has some design flaws, which makes it
necessary to use non cacheable memory for DMA operations
(CONFIG_NOT_COHERENT_CACHE) and to avoid setting the coherence (M) flag
for memory pages.
Signed-off-by: Gerhard Pircher <gerhard_pircher@gmx.net>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
commit 8535ef05a6904429ce72671c3035dbf05e6d5edf
Author: Mike Mason <mmlnx@us.ibm.com>
Date: Tue Feb 10 11:12:21 2009 +0000
powerpc/eeh: Only disable/enable LSI interrupts in EEH
The EEH code disables and enables interrupts during the
device recovery process. This is unnecessary for MSI
and MSI-X interrupts because they are effectively disabled
by the DMA Stopped state when an EEH error occurs. The
current code is also incorrect for MSI-X interrupts. It
doesn't take into account that MSI-X interrupts are tracked
in a different way than LSI/MSI interrupts. This patch
ensures only LSI interrupts are disabled/enabled.
Signed-off-by: Mike Mason <mmlnx@us.ibm.com>
Acked-by: Linas Vepstas <linasvepstas@gmail.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
commit 10156ceac26b8adfd5d739a3931c8aa9d0d69d53
Author: Gabriel Paubert <paubert@iram.es>
Date: Tue Feb 10 06:13:50 2009 +0000
powerpc: Disable mv643xx Ethernet port 0 on Pegasos
After the last changes, the mv643xx_eth driver now detects
a spurious interface on port 0. Since only port 1 is actually
connected to a PHY, remove its description.
Signed-off-by: Gabriel Paubert <paubert@iram.es>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
commit 91b0f5ec53336cfc6b2cd894a248dfadab9f34a6
Author: Anton Blanchard <anton@samba.org>
Date: Mon Feb 9 20:42:17 2009 +0000
powerpc/mm: Move 64-bit unmapped_area to top of address space
We currently place mmaps just below the stack on 32bit, but leave them
in the middle of the address space on 64bit:
00100000-00120000 r-xp 00100000 00:00 0 [vdso]
10000000-10010000 r-xp 00000000 08:06 179534 /tmp/sleep
10010000-10020000 rw-p 00000000 08:06 179534 /tmp/sleep
10020000-10130000 rw-p 10020000 00:00 0 [heap]
40000000000-40000030000 r-xp 00000000 08:06 440743 /lib64/ld-2.9.so
40000030000-40000040000 rw-p 00020000 08:06 440743 /lib64/ld-2.9.so
40000050000-400001f0000 r-xp 00000000 08:06 440671 /lib64/libc-2.9.so
400001f0000-40000200000 r--p 00190000 08:06 440671 /lib64/libc-2.9.so
40000200000-40000220000 rw-p 001a0000 08:06 440671 /lib64/libc-2.9.so
40000220000-40008230000 rw-p 40000220000 00:00 0
fffffbc0000-fffffd10000 rw-p fffffeb0000 00:00 0 [stack]
Right now it isn't an issue, but at some stage we will run into mmap or
hugetlb allocation issues. Using the same layout as 32bit gives us a
some breathing room. This matches what x86-64 is doing too.
00100000-00103000 r-xp 00100000 00:00 0 [vdso]
10000000-10001000 r-xp 00000000 08:06 554894 /tmp/test
10010000-10011000 r--p 00000000 08:06 554894 /tmp/test
10011000-10012000 rw-p 00001000 08:06 554894 /tmp/test
10012000-10113000 rw-p 10012000 00:00 0 [heap]
fffefdf7000-ffff7df8000 rw-p fffefdf7000 00:00 0
ffff7df8000-ffff7f97000 r-xp 00000000 08:06 130591 /lib64/libc-2.9.so
ffff7f97000-ffff7fa6000 ---p 0019f000 08:06 130591 /lib64/libc-2.9.so
ffff7fa6000-ffff7faa000 r--p 0019e000 08:06 130591 /lib64/libc-2.9.so
ffff7faa000-ffff7fc0000 rw-p 001a2000 08:06 130591 /lib64/libc-2.9.so
ffff7fc0000-ffff7fc4000 rw-p ffff7fc0000 00:00 0
ffff7fc4000-ffff7fec000 r-xp 00000000 08:06 130663 /lib64/ld-2.9.so
ffff7fee000-ffff7ff0000 rw-p ffff7fee000 00:00 0
ffff7ffa000-ffff7ffb000 rw-p ffff7ffa000 00:00 0
ffff7ffb000-ffff7ffc000 r--p 00027000 08:06 130663 /lib64/ld-2.9.so
ffff7ffc000-ffff7fff000 rw-p 00028000 08:06 130663 /lib64/ld-2.9.so
ffff7fff000-ffff8000000 rw-p ffff7fff000 00:00 0
fffffc59000-fffffc6e000 rw-p ffffffeb000 00:00 0 [stack]
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
commit 2e74778c76521f180516a593fb2b2786d6fffa4e
Author: roel kluin <roel.kluin@gmail.com>
Date: Sun Jan 18 02:03:47 2009 +0000
therm_adt746x: Fix signed/unsigned confusion
As suggested, this is used for signed rather than unsigned
Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
commit c3bd517de67d33c44059656194e316facef181a5
Author: Milton Miller <miltonm@bga.com>
Date: Thu Jan 8 02:19:46 2009 +0000
powerpc/pci: Move hose_list and pci_address_to_pio to pci-common
move the definition of hose_list next to its hotplug spinlock.
create pcibios_io_size to encapsulate ifdef in existing pci-common
function pcibios_vaddr_is_ioport
move pci_address_to_pio to pci-common, using new pcibios_io_size, and
protect this GPL exported function against concurrent hotplug removal
Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
^ permalink raw reply [flat|nested] 4+ messages in thread
* test branch update
@ 2009-03-11 6:25 Benjamin Herrenschmidt
2009-03-11 8:43 ` Michael Neuling
0 siblings, 1 reply; 4+ messages in thread
From: Benjamin Herrenschmidt @ 2009-03-11 6:25 UTC (permalink / raw)
To: linuxppc-dev list
The following commits have been added to powerpc test:
Andrew Klossner (1):
powerpc/udbg: Fix lost byte during console handover; change LFCR
to CRLF
Benjamin Herrenschmidt (10):
powerpc/mm: Properly wire up get_user_pages_fast() on 32-bit
powerpc/kconfig: Kill PPC_MULTIPLATFORM
powerpc/mm: Split the various pgtable-* headers based on MMU type
powerpc/mm: Unify PTE_RPN_SHIFT and _PAGE_CHG_MASK definitions
powerpc/mm: Tweak PTE bit combination definitions
powerpc/mm: Merge various PTE bits and accessors definitions
powerpc/mm: Rename arch/powerpc/kernel/mmap.c to mmap_64.c
powerpc/mm: Fix printk type warning in mmu_context_nohash
powerpc/mm: Add option for non-atomic PTE updates to ppc64
powerpc/mm: Introduce early_init_mmu() on 64-bit
Jeremy Kerr (2):
powerpc/spufs: Check file offset before calculating write size in
fixed-sized files
powerpc/spufs: Fix incorrect buffer offset in regs write
Michael Ellerman (5):
powerpc: Print linux_banner in prom_init
powerpc/pseries: Reject discontiguous/non-zero based MSI-X
requests
powerpc/pseries: The pseries MSI code depends on EEH
powerpc/cell: Fix Axon MSI driver dependencies
powerpc/pseries: The RPA PCI hotplug driver depends on EEH
Octavian Purdila (1):
powerpc/oprofile: Enable support for ppc750 processors
Thomas Gleixner (2):
powerpc/irq: Convert obsolete irq_desc_t to struct irq_desc
powerpc/irq: Convert obsolete hw_interrupt_type to struct irq_chip
Wolfram Sang (1):
powerpc/pci: Fix typo: s/resouces/resources/ in a pr_debug
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: test branch update
2009-03-11 6:25 test branch update Benjamin Herrenschmidt
@ 2009-03-11 8:43 ` Michael Neuling
0 siblings, 0 replies; 4+ messages in thread
From: Michael Neuling @ 2009-03-11 8:43 UTC (permalink / raw)
To: Benjamin Herrenschmidt; +Cc: linuxppc-dev list
FYI pseries_defconfig and ppc64_defconfig boot fine with this on BML
systemsim.
Mikey "manual kisskb" Neuling
> The following commits have been added to powerpc test:
>
> Andrew Klossner (1):
> powerpc/udbg: Fix lost byte during console handover; change LFCR
> to CRLF
>
> Benjamin Herrenschmidt (10):
> powerpc/mm: Properly wire up get_user_pages_fast() on 32-bit
> powerpc/kconfig: Kill PPC_MULTIPLATFORM
> powerpc/mm: Split the various pgtable-* headers based on MMU type
> powerpc/mm: Unify PTE_RPN_SHIFT and _PAGE_CHG_MASK definitions
> powerpc/mm: Tweak PTE bit combination definitions
> powerpc/mm: Merge various PTE bits and accessors definitions
> powerpc/mm: Rename arch/powerpc/kernel/mmap.c to mmap_64.c
> powerpc/mm: Fix printk type warning in mmu_context_nohash
> powerpc/mm: Add option for non-atomic PTE updates to ppc64
> powerpc/mm: Introduce early_init_mmu() on 64-bit
>
> Jeremy Kerr (2):
> powerpc/spufs: Check file offset before calculating write size in
> fixed-sized files
> powerpc/spufs: Fix incorrect buffer offset in regs write
>
> Michael Ellerman (5):
> powerpc: Print linux_banner in prom_init
> powerpc/pseries: Reject discontiguous/non-zero based MSI-X
> requests
> powerpc/pseries: The pseries MSI code depends on EEH
> powerpc/cell: Fix Axon MSI driver dependencies
> powerpc/pseries: The RPA PCI hotplug driver depends on EEH
>
> Octavian Purdila (1):
> powerpc/oprofile: Enable support for ppc750 processors
>
> Thomas Gleixner (2):
> powerpc/irq: Convert obsolete irq_desc_t to struct irq_desc
> powerpc/irq: Convert obsolete hw_interrupt_type to struct irq_chip
>
> Wolfram Sang (1):
> powerpc/pci: Fix typo: s/resouces/resources/ in a pr_debug
>
>
>
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev@ozlabs.org
> https://ozlabs.org/mailman/listinfo/linuxppc-dev
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* test branch update
@ 2009-08-13 9:43 Benjamin Herrenschmidt
0 siblings, 0 replies; 4+ messages in thread
From: Benjamin Herrenschmidt @ 2009-08-13 9:43 UTC (permalink / raw)
To: linuxppc-dev list
I've pushed a few more things to my -test branch (in addition to some
-next updates that I may have forgotten to mention yesterday).
So here's the whole lot of stuff that's in there today vs. upstream.
Please give it a spin, it's really only compile tested here (and I
haven't scrubbed the warnings yet in case they show something bad), so
things will simmer there for a couple of days I think before I'm
confident enough to put them into -next.
Anton Blanchard (3):
powerpc: Move 64bit VDSO to improve context switch performance
powerpc: Rearrange SLB preload code
powerpc: Preload application text segment instead of TASK_UNMAPPED_BASE
Anton Vorontsov (3):
powerpc/83xx: Add support for MPC8377E-WLAN boards
powerpc/85xx: Add support for I2C EEPROMs on MPC8548CDS boards
powerpc/83xx: Add eSDHC support for MPC837xE-RDB/WLAN boards
Benjamin Herrenschmidt (29):
powerpc: Rename exception.h to exception-64s.h
powerpc: Use names rather than numbers for SPRGs (v2)
powerpc: Remove use of a second scratch SPRG in STAB code
powerpc/mm: Fix definitions of FORCE_MAX_ZONEORDER in Kconfig
powerpc/pmac: Fix PowerSurge SMP IPI allocation
powerpc: Change PACA from SPRG3 to SPRG1
powerpc: Add compat_sys_truncate
powerpc/mm: Fix misplaced #endif in pgtable-ppc64-64k.h
powerpc/of: Remove useless register save/restore when calling OF back
powerpc/mm: Add HW threads support to no_hash TLB management
powerpc/mm: Add opcode definitions for tlbivax and tlbsrx.
powerpc/mm: Add more bit definitions for Book3E MMU registers
powerpc/mm: Add support for early ioremap on non-hash 64-bit processors
powerpc: Modify some ppc_asm.h macros to accomodate 64-bits Book3E
powerpc/mm: Make low level TLB flush ops on BookE take additional args
powerpc/mm: Call mmu_context_init() from ppc64
powerpc: Clean ifdef usage in copy_thread()
powerpc: Move definitions of secondary CPU spinloop to header file
powerpc/mm: Rework & cleanup page table freeing code path
powerpc: Add SPR definitions for new 64-bit BookE
powerpc: Add memory management headers for new 64-bit BookE
powerpc: Add definitions used by exception handling on 64-bit Book3E
powerpc: Add PACA fields specific to 64-bit Book3E processors
powerpc/mm: Move around mmu_gathers definition on 64-bit
powerpc: Add TLB management code for 64-bit Book3E
powerpc/mm: Add support for SPARSEMEM_VMEMMAP on 64-bit Book3E
powerpc: Remaining 64-bit Book3E support
powerpc/mm: Fix encoding of page table cache numbers
powerpc/mm: Cleanup handling of execute permission
Benjamin Krill (1):
powerpc/prom_init: Evaluate mem kernel parameter for early allocation
Christoph Hellwig (2):
powerpc/sputrace: Use the generic event tracer
powerpc: Switch to asm-generic/hardirq.h
Frans Pop (1):
powerpc: Makefile simplification through use of cc-ifversion
Geert Uytterhoeven (1):
powerpc/cell: Move CBE_IOPTE_* to <asm/cell-regs.h>
Geoff Thorpe (1):
powerpc: expose the multi-bit ops that underlie single-bit ops.
Gerhard Pircher (1):
powerpc/amigaone: Convert amigaone_init() to a machine_device_initcall()
Heiko Schocher (1):
powerpc/82xx: mgcoge - updates for 2.6.32
Julia Lawall (5):
powerpc/fsl_rio: Add kmalloc NULL tests
powerpc/ipic: introduce missing kfree
powerpc/qe: introduce missing kfree
hvc_console: Drop unnecessary NULL test
powerpc: Use DIV_ROUND_CLOSEST in time init code
Kumar Gala (3):
powerpc/mm: Fix switch_mmu_context to iterate of the proper list of cpus
powerpc/85xx: Move mpc8536ds.dts to address-cells/size-cells = <2>
powerpc/85xx: Added 36-bit physical device tree for mpc8572ds board
Lucian Adrian Grijincu (1):
powerpc: Update boot wrapper script with the new location of dtc
Martyn Welch (4):
powerpc/86xx: Correct reading of information presented in cpuinfo
powerpc/86xx: Enable XMC site on GE Fanuc SBC310
powerpc/86xx: Update GE Fanuc sbc310 DTS
powerpc/nvram: Allow byte length reads from mmio NVRAM driver
Michael Ellerman (5):
powerpc/mpic: Fix MPIC_BROKEN_REGREAD on non broken MPICs
kmemleak: Allow kmemleak to be built on powerpc
powerpc: Enable GCOV
powerpc/vmlinux.lds: Move _edata down
powerpc: Add kmemleak annotations to lmb.c
Michel Dänzer (2):
agp/uninorth: Allow larger aperture sizes on pre-U3 bridges.
agp/uninorth: Simplify cache flushing.
Roel Kluin (2):
powerpc/fsl-booke: read buffer overflow
powerpc/hvsi: Avoid calculating possibly-invalid address
Sebastian Andrzej Siewior (1):
powerpc/ipic: unmask all interrupt sources
Stefan Roese (5):
powerpc: Add AMCC 460EX/460GT Rev. B support to cputable.c
powerpc/44x: Add NAND support to Canyonlands dts
powerpc/40x: Update Kilauea dts to support NAND, RTC and HWMON
powerpc/44x: Update Canyonlands defconfig to support NOR, NAND and RTC
powerpc/40x: Update kilauea defconfig to support NAND, RTC and HWMON
Stephen Rothwell (1):
powerpc: use consistent types in mktree
Stoyan Gaydarov (1):
powerpc: ARRAY_SIZE changes in pasemi and powermac code
roel kluin (3):
powerpc/cell: Replace strncpy by strlcpy
powerpc: Missing tests for NULL after ioremap()
powerpc/macio: Don't the address of an array element before boundchecking
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2009-08-13 9:43 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-11 6:25 test branch update Benjamin Herrenschmidt
2009-03-11 8:43 ` Michael Neuling
-- strict thread matches above, loose matches on Subject: below --
2009-08-13 9:43 Benjamin Herrenschmidt
2009-02-11 5:03 Benjamin Herrenschmidt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).