28 Jul, 2012

1 commit

  • Pull final kmap_atomic cleanups from Cong Wang:
    "This should be the final round of cleanup, as the definitions of enum
    km_type finally get removed from the whole tree. The patches have
    been in linux-next for a long time."

    * 'kmap_atomic' of git://github.com/congwang/linux:
    pipe: remove KM_USER0 from comments
    vmalloc: remove KM_USER0 from comments
    feature-removal-schedule.txt: remove kmap_atomic(page, km_type)
    tile: remove km_type definitions
    um: remove km_type definitions
    asm-generic: remove km_type definitions
    avr32: remove km_type definitions
    frv: remove km_type definitions
    powerpc: remove km_type definitions
    arm: remove km_type definitions
    highmem: remove the deprecated form of kmap_atomic
    tile: remove usage of enum km_type
    frv: remove the second parameter of kmap_atomic_primary()
    jbd2: remove the second argument of kmap_atomic

    Linus Torvalds
     

27 Jul, 2012

8 commits

  • Pull powerpc fixes from Benjamin Herrenschmidt:
    "Here's a handful of powerpc patches, a couple of regression fixes for
    problems introduced in the main batch in this merge window, a couple
    of defconfig updates, and some trivials.

    The radeonfb one is something that was long standing in SLES which I
    forgot to pickup earlier."

    * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
    powerpc/ftrace: Trace function graph entry before updating index
    radeonfb: Add quirk for the graphics adapter in some JSxx
    powerpc: Lack of firmware flash support is not an error
    powerpc: Enable pseries hardware RNG and crypto modules
    powerpc: Update g5_defconfig
    powerpc/kvm/bookehv: Fix build regression
    powerpc: Set stack limit properly in crit_transfer_to_handler

    Linus Torvalds
     
  • As Colin Cross ported my x86 change to ARM, he also pointed out that
    powerpc is also behind in this fix.

    The commit 722b3c746953 "ftrace/graph: Trace function entry before
    updating index" fixes an issue with function graph tracing for x86,
    where if the called entry function decides not to trace interrupts, it
    can fail the check if an interrupt comes in just after the
    curr_ret_stack is updated.

    The solution is to call the entry function first, then update the
    curr_ret_stack if the entry function wants to be traced.

    Cc: Colin Cross
    Signed-off-by: Steven Rostedt
    Signed-off-by: Benjamin Herrenschmidt

    Steven Rostedt
     
  • Reduce the severity of the warning given when firmware flash is
    not supported. Not all platforms have it.

    Signed-off-by: Anton Blanchard
    Signed-off-by: Benjamin Herrenschmidt

    Anton Blanchard
     
  • Enable the hardware RNG and crypto modules. I verified they both
    autoload via the VIO subsystem, so there is no need to build them in.

    Signed-off-by: Anton Blanchard
    Signed-off-by: Benjamin Herrenschmidt

    Anton Blanchard
     
  • This updates the g5 defconfig to include nouveau instead of nvidiafb
    (which works much better nowadays, in fact the latter crashes on modern
    distros), and to set CONFIG_VT_HW_CONSOLE_BINDING without which takeover
    from the firmware offb by nouveau doesn't work properly (and leads to
    unexplained black screens for some users).

    The rest is churn of going through defconfig / savedefconfig

    Signed-off-by: Benjamin Herrenschmidt

    Benjamin Herrenschmidt
     
  • After merging the register type check patches from Ben's tree, the
    hv enabled booke implementation ceased to compile.

    This patch fixes things up so everyone's happy again.

    Signed-off-by: Alexander Graf
    Signed-off-by: Benjamin Herrenschmidt

    Alexander Graf
     
  • Commit 9778b696a0188ad3b3524b383953ee73b31b7b68 incorrectly
    changes the code setting the stack limit on entry to the
    kernel to mark the thread_info at the bottom of the stack
    out of bounds anymore. This fixes it.

    Signed-off-by: Stuart Yoder
    Signed-off-by: Benjamin Herrenschmidt

    Stuart Yoder
     
  • Pull crypto updates from Herbert Xu:

    - Fixed algorithm construction hang when self-test fails.
    - Added SHA variants to talitos AEAD list.
    - New driver for Exynos random number generator.
    - Performance enhancements for arc4.
    - Added hwrng support to caam.
    - Added ahash support to caam.
    - Fixed bad kfree in aesni-intel.
    - Allow aesni-intel in FIPS mode.
    - Added atmel driver with support for AES/3DES/SHA.
    - Bug fixes for mv_cesa.
    - CRC hardware driver for BF60x family processors.

    * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (66 commits)
    crypto: twofish-avx - remove useless instruction
    crypto: testmgr - add aead cbc aes hmac sha1,256,512 test vectors
    crypto: talitos - add sha224, sha384 and sha512 to existing AEAD algorithms
    crypto: talitos - export the talitos_submit function
    crypto: talitos - move talitos structures to header file
    crypto: atmel - add new tests to tcrypt
    crypto: atmel - add Atmel SHA1/SHA256 driver
    crypto: atmel - add Atmel DES/TDES driver
    crypto: atmel - add Atmel AES driver
    ARM: AT91SAM9G45: add crypto peripherals
    crypto: testmgr - allow aesni-intel and ghash_clmulni-intel in fips mode
    hwrng: exynos - Add support for Exynos random number generator
    crypto: aesni-intel - fix wrong kfree pointer
    crypto: caam - ERA retrieval and printing for SEC device
    crypto: caam - Using alloc_coherent for caam job rings
    crypto: algapi - Fix hang on crypto allocation
    crypto: arc4 - now arc needs blockcipher support
    crypto: caam - one tasklet per job ring
    crypto: caam - consolidate memory barriers from job ring en/dequeue
    crypto: caam - only query h/w in job ring dequeue path
    ...

    Linus Torvalds
     

25 Jul, 2012

3 commits

  • Pull PCI changes from Bjorn Helgaas:
    "Host bridge hotplug:
    - Add MMCONFIG support for hot-added host bridges (Jiang Liu)
    Device hotplug:
    - Move fixups from __init to __devinit (Sebastian Andrzej Siewior)
    - Call FINAL fixups for hot-added devices, too (Myron Stowe)
    - Factor out generic code for P2P bridge hot-add (Yinghai Lu)
    - Remove all functions in a slot, not just those with _EJx (Amos
    Kong)
    Dynamic resource management:
    - Track bus number allocation (struct resource tree per domain)
    (Yinghai Lu)
    - Make P2P bridge 1K I/O windows work with resource reassignment
    (Bjorn Helgaas, Yinghai Lu)
    - Disable decoding while updating 64-bit BARs (Bjorn Helgaas)
    Power management:
    - Add PCIe runtime D3cold support (Huang Ying)
    Virtualization:
    - Add VFIO infrastructure (ACS, DMA source ID quirks) (Alex
    Williamson)
    - Add quirks for devices with broken INTx masking (Jan Kiszka)
    Miscellaneous:
    - Fix some PCI Express capability version issues (Myron Stowe)
    - Factor out some arch code with a weak, generic, pcibios_setup()
    (Myron Stowe)"

    * tag 'for-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (122 commits)
    PCI: hotplug: ensure a consistent return value in error case
    PCI: fix undefined reference to 'pci_fixup_final_inited'
    PCI: build resource code for M68K architecture
    PCI: pciehp: remove unused pciehp_get_max_lnk_width(), pciehp_get_cur_lnk_width()
    PCI: reorder __pci_assign_resource() (no change)
    PCI: fix truncation of resource size to 32 bits
    PCI: acpiphp: merge acpiphp_debug and debug
    PCI: acpiphp: remove unused res_lock
    sparc/PCI: replace pci_cfg_fake_ranges() with pci_read_bridge_bases()
    PCI: call final fixups hot-added devices
    PCI: move final fixups from __init to __devinit
    x86/PCI: move final fixups from __init to __devinit
    MIPS/PCI: move final fixups from __init to __devinit
    PCI: support sizing P2P bridge I/O windows with 1K granularity
    PCI: reimplement P2P bridge 1K I/O windows (Intel P64H2)
    PCI: disable MEM decoding while updating 64-bit MEM BARs
    PCI: leave MEM and IO decoding disabled during 64-bit BAR sizing, too
    PCI: never discard enable/suspend/resume_early/resume fixups
    PCI: release temporary reference in __nv_msi_ht_cap_quirk()
    PCI: restructure 'pci_do_fixups()'
    ...

    Linus Torvalds
     
  • Pull devicetree updates from Rob Herring:
    "A small set of changes for devicetree:
    - Couple of Documentation fixes
    - Addition of new helper function of_node_full_name
    - Improve of_parse_phandle_with_args return values
    - Some NULL related sparse fixes"

    Grant's busy packing.

    * tag 'dt-for-3.6' of git://sources.calxeda.com/kernel/linux:
    of: mtd: nuke useless const qualifier
    devicetree: add helper inline for retrieving a node's full name
    of: return -ENOENT when no property
    usage-model.txt: fix typo machine_init->init_machine
    of: Fix null pointer related warnings in base.c file
    LED: Fix missing semicolon in OF documentation
    of: fix a few typos in the binding documentation

    Linus Torvalds
     
  • Pull KVM updates from Avi Kivity:
    "Highlights include
    - full big real mode emulation on pre-Westmere Intel hosts (can be
    disabled with emulate_invalid_guest_state=0)
    - relatively small ppc and s390 updates
    - PCID/INVPCID support in guests
    - EOI avoidance; 3.6 guests should perform better on 3.6 hosts on
    interrupt intensive workloads)
    - Lockless write faults during live migration
    - EPT accessed/dirty bits support for new Intel processors"

    Fix up conflicts in:
    - Documentation/virtual/kvm/api.txt:

    Stupid subchapter numbering, added next to each other.

    - arch/powerpc/kvm/booke_interrupts.S:

    PPC asm changes clashing with the KVM fixes

    - arch/s390/include/asm/sigp.h, arch/s390/kvm/sigp.c:

    Duplicated commits through the kvm tree and the s390 tree, with
    subsequent edits in the KVM tree.

    * tag 'kvm-3.6-1' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (93 commits)
    KVM: fix race with level interrupts
    x86, hyper: fix build with !CONFIG_KVM_GUEST
    Revert "apic: fix kvm build on UP without IOAPIC"
    KVM guest: switch to apic_set_eoi_write, apic_write
    apic: add apic_set_eoi_write for PV use
    KVM: VMX: Implement PCID/INVPCID for guests with EPT
    KVM: Add x86_hyper_kvm to complete detect_hypervisor_platform check
    KVM: PPC: Critical interrupt emulation support
    KVM: PPC: e500mc: Fix tlbilx emulation for 64-bit guests
    KVM: PPC64: booke: Set interrupt computation mode for 64-bit host
    KVM: PPC: bookehv: Add ESR flag to Data Storage Interrupt
    KVM: PPC: bookehv64: Add support for std/ld emulation.
    booke: Added crit/mc exception handler for e500v2
    booke/bookehv: Add host crit-watchdog exception support
    KVM: MMU: document mmu-lock and fast page fault
    KVM: MMU: fix kvm_mmu_pagetable_walk tracepoint
    KVM: MMU: trace fast page fault
    KVM: MMU: fast path of handling guest page fault
    KVM: MMU: introduce SPTE_MMU_WRITEABLE bit
    KVM: MMU: fold tlb flush judgement into mmu_spte_update
    ...

    Linus Torvalds
     

24 Jul, 2012

3 commits

  • Signed-off-by: Cong Wang

    Cong Wang
     
  • Pull powerpc updates from Benjamin Herrenschmidt:
    "Notable highlights:

    - iommu improvements from Anton removing the per-iommu global lock in
    favor of dividing the DMA space into pools, each with its own lock,
    and hashed on the CPU number. Along with making the locking more
    fine grained, this gives significant improvements in multiqueue
    networking scalability.

    - Still from Anton, we know provide a vdso based variant of getcpu
    which makes sched_getcpu with the appropriate glibc patch something
    like 18 times faster.

    - More anton goodness (he's been busy !) in other areas such as a
    faster __clear_user and copy_page on P7, various perf fixes to
    improve sampling quality, etc...

    - One more step toward removing legacy i2c interfaces by using new
    device-tree based probing of platform devices for the AOA audio
    drivers

    - A nice series of patches from Michael Neuling that helps avoiding
    confusion between register numbers and litterals in assembly code,
    trying to enforce the use of "%rN" register names in gas rather
    than plain numbers.

    - A pile of FSL updates

    - The usual bunch of small fixes, cleanups etc...

    You may spot a change to drivers/char/mem. The patch got no comment
    or ack from outside, it's a trivial patch to allow the architecture to
    skip creating /dev/port, which we use to disable it on ppc64 that
    don't have a legacy brige. On those, IO ports 0...64K are not mapped
    in kernel space at all, so accesses to /dev/port cause oopses (and
    yes, distros -still- ship userspace that bangs hard coded ports such
    as kbdrate)."

    * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (106 commits)
    powerpc/mpic: Create a revmap with enough entries for IPIs and timers
    Remove stale .rej file
    powerpc/iommu: Fix iommu pool initialization
    powerpc/eeh: Check handle_eeh_events() return value
    powerpc/85xx: Add phy nodes in SGMII mode for MPC8536/44/72DS & P2020DS
    powerpc/e500: add paravirt QEMU platform
    powerpc/mpc85xx_ds: convert to unified PCI init
    powerpc/fsl-pci: get PCI init out of board files
    powerpc/85xx: Update corenet64_smp_defconfig
    powerpc/85xx: Update corenet32_smp_defconfig
    powerpc/85xx: Rename P1021RDB-PC device trees to be consistent
    powerpc/watchdog: move booke watchdog param related code to setup-common.c
    sound/aoa: Adapt to new i2c probing scheme
    i2c/powermac: Improve detection of devices from device-tree
    powerpc: Disable /dev/port interface on systems without an ISA bridge
    of: Improve prom_update_property() function
    powerpc: Add "memory" attribute for mfmsr()
    powerpc/ftrace: Fix assembly trampoline register usage
    powerpc/hw_breakpoints: Fix incorrect pointer access
    powerpc: Put the gpr save/restore functions in their own section
    ...

    Linus Torvalds
     
  • Pull the big VFS changes from Al Viro:
    "This one is *big* and changes quite a few things around VFS. What's in there:

    - the first of two really major architecture changes - death to open
    intents.

    The former is finally there; it was very long in making, but with
    Miklos getting through really hard and messy final push in
    fs/namei.c, we finally have it. Unlike his variant, this one
    doesn't introduce struct opendata; what we have instead is
    ->atomic_open() taking preallocated struct file * and passing
    everything via its fields.

    Instead of returning struct file *, it returns -E... on error, 0
    on success and 1 in "deal with it yourself" case (e.g. symlink
    found on server, etc.).

    See comments before fs/namei.c:atomic_open(). That made a lot of
    goodies finally possible and quite a few are in that pile:
    ->lookup(), ->d_revalidate() and ->create() do not get struct
    nameidata * anymore; ->lookup() and ->d_revalidate() get lookup
    flags instead, ->create() gets "do we want it exclusive" flag.

    With the introduction of new helper (kern_path_locked()) we are rid
    of all struct nameidata instances outside of fs/namei.c; it's still
    visible in namei.h, but not for long. Come the next cycle,
    declaration will move either to fs/internal.h or to fs/namei.c
    itself. [me, miklos, hch]

    - The second major change: behaviour of final fput(). Now we have
    __fput() done without any locks held by caller *and* not from deep
    in call stack.

    That obviously lifts a lot of constraints on the locking in there.
    Moreover, it's legal now to call fput() from atomic contexts (which
    has immediately simplified life for aio.c). We also don't need
    anti-recursion logics in __scm_destroy() anymore.

    There is a price, though - the damn thing has become partially
    asynchronous. For fput() from normal process we are guaranteed
    that pending __fput() will be done before the caller returns to
    userland, exits or gets stopped for ptrace.

    For kernel threads and atomic contexts it's done via
    schedule_work(), so theoretically we might need a way to make sure
    it's finished; so far only one such place had been found, but there
    might be more.

    There's flush_delayed_fput() (do all pending __fput()) and there's
    __fput_sync() (fput() analog doing __fput() immediately). I hope
    we won't need them often; see warnings in fs/file_table.c for
    details. [me, based on task_work series from Oleg merged last
    cycle]

    - sync series from Jan

    - large part of "death to sync_supers()" work from Artem; the only
    bits missing here are exofs and ext4 ones. As far as I understand,
    those are going via the exofs and ext4 trees resp.; once they are
    in, we can put ->write_super() to the rest, along with the thread
    calling it.

    - preparatory bits from unionmount series (from dhowells).

    - assorted cleanups and fixes all over the place, as usual.

    This is not the last pile for this cycle; there's at least jlayton's
    ESTALE work and fsfreeze series (the latter - in dire need of fixes,
    so I'm not sure it'll make the cut this cycle). I'll probably throw
    symlink/hardlink restrictions stuff from Kees into the next pile, too.
    Plus there's a lot of misc patches I hadn't thrown into that one -
    it's large enough as it is..."

    * 'for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (127 commits)
    ext4: switch EXT4_IOC_RESIZE_FS to mnt_want_write_file()
    btrfs: switch btrfs_ioctl_balance() to mnt_want_write_file()
    switch dentry_open() to struct path, make it grab references itself
    spufs: shift dget/mntget towards dentry_open()
    zoran: don't bother with struct file * in zoran_map
    ecryptfs: don't reinvent the wheels, please - use struct completion
    don't expose I_NEW inodes via dentry->d_inode
    tidy up namei.c a bit
    unobfuscate follow_up() a bit
    ext3: pass custom EOF to generic_file_llseek_size()
    ext4: use core vfs llseek code for dir seeks
    vfs: allow custom EOF in generic_file_llseek code
    vfs: Avoid unnecessary WB_SYNC_NONE writeback during sys_sync and reorder sync passes
    vfs: Remove unnecessary flushing of block devices
    vfs: Make sys_sync writeout also block device inodes
    vfs: Create function for iterating over block devices
    vfs: Reorder operations during sys_sync
    quota: Move quota syncing to ->sync_fs method
    quota: Split dquot_quota_sync() to writeback and cache flushing part
    vfs: Move noop_backing_dev_info check from sync into writeback
    ...

    Linus Torvalds
     

23 Jul, 2012

5 commits


13 Jul, 2012

3 commits


12 Jul, 2012

1 commit

  • In SGMII riser card different PHY chip are used with different external
    IRQ from eTSEC. To support PHY link state auto detect in SGMII mode we
    should add another group of PHY nodes for SGMII mode.

    For MPC8572DS IRQ6 is used for PHY0~PHY1, IRQ7 is used for PHY2~PHY3.
    For MPC8544DS and MPC8536DS IRQ6 is used for PHY0~PHY1.
    For P2020DS IRQ5 is used for PHY1~PHY2.

    Signed-off-by: Li Yang
    Signed-off-by: Jia Hongtao
    Signed-off-by: Kumar Gala

    Jia Hongtao
     

11 Jul, 2012

16 commits