linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* 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
* 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-02-11  5:03 test branch update Benjamin Herrenschmidt
  -- strict thread matches above, loose matches on Subject: below --
2009-03-11  6:25 Benjamin Herrenschmidt
2009-03-11  8:43 ` Michael Neuling
2009-08-13  9:43 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).