23 Jul, 2008

5 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
    sparc32: pass -m32 when building vmlinux.lds
    sparc: Fixes the DRM layer build on sparc.
    ide: merge with
    ide: : use __raw_{read,write}w()
    ide: : use __raw_{read,write}w()
    ide: : use %r0 for outw_be()
    sparc64: Do not define BIO_VMERGE_BOUNDARY.

    Linus Torvalds
     
  • Otherwise it breaks since we merged asm/page.h

    Signed-off-by: Stephen Rothwell
    Signed-off-by: David S. Miller

    Stephen Rothwell
     
  • …git/tip/linux-2.6-tip

    * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    x86: fix crash due to missing debugctlmsr on AMD K6-3
    x86: add PTE_FLAGS_MASK
    x86: rename PTE_MASK to PTE_PFN_MASK
    x86: fix pte_flags() to only return flags, fix lguest (updated)
    x86: use setup_clear_cpu_cap with disable_apic, fix
    x86: move the last Dprintk instance to pr_debug()

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:
    remove CONFIG_KMOD from core kernel code
    remove CONFIG_KMOD from lib
    remove CONFIG_KMOD from sparc64
    rework try_then_request_module to do less in non-modular kernels
    remove mention of CONFIG_KMOD from documentation
    make CONFIG_KMOD invisible
    modules: Take a shortcut for checking if an address is in a module
    module: turn longs into ints for module sizes
    Shrink struct module: CONFIG_UNUSED_SYMBOLS ifdefs
    module: reorder struct module to save space on 64 bit builds
    module: generic each_symbol iterator function
    module: don't use stop_machine for waiting rmmod

    Linus Torvalds
     
  • * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (49 commits)
    powerpc: Fix build bug with binutils < 2.18 and GCC < 4.2
    powerpc/eeh: Don't panic when EEH_MAX_FAILS is exceeded
    fbdev: Teaches offb about palette on radeon r5xx/r6xx
    powerpc/cell/edac: Log a syndrome code in case of correctable error
    powerpc/cell: Add DMA_ATTR_WEAK_ORDERING dma attribute and use in Cell IOMMU code
    powerpc: Indicate which oprofile counters to use while in compat mode
    powerpc/boot: Change spaces to tabs
    powerpc: Remove duplicate 6xx option in Kconfig
    powerpc: Use PPC_LONG and PPC_LONG_ALIGN in lib/string.S
    powerpc: Use PPC_LONG_ALIGN in uaccess.h
    powerpc: Add a #define for aligning to a long-sized boundary
    powerpc: Fix OF parsing of 64 bits PCI addresses
    powerpc: Use WARN_ON(1) instead of __WARN()
    powerpc: Fix support for latencytop
    powerpc/ps3: Update ps3_defconfig
    powerpc/ps3: Add a sub-match id to ps3_system_bus
    powerpc: Add a 6xx defconfig
    powerpc/dma: Use the struct dma_attrs in iommu code
    powerpc/cell: Add support for power button of future IBM cell blades
    powerpc/cell: Cleanup sysreset_hack for IBM cell blades
    ...

    Linus Torvalds
     

22 Jul, 2008

35 commits

  • currently if you use PTRACE_SINGLEBLOCK on AMD K6-3 (i586) it will crash.
    Kernel now wrongly assumes existing DEBUGCTLMSR MSR register there.

    Removed the assumption also for some other non-K6 CPUs but I am not sure there
    (but it can only bring small inefficiency there if my assumption is wrong).

    Based on info from Roland McGrath, Chuck Ebbert and Mikulas Patocka.
    More info at:
    https://bugzilla.redhat.com/show_bug.cgi?id=456175

    Signed-off-by: Jan Kratochvil
    Cc:
    Signed-off-by: Ingo Molnar

    Jan Kratochvil
     
  • One place is just a comment, the other a conditional, unused
    inclusion of linux/kmod.h.

    Signed-off-by: Johannes Berg
    Cc: David S. Miller
    Signed-off-by: Rusty Russell

    Johannes Berg
     
  • Also includes a few Kconfig files (xtensa, blackfin)

    Signed-off-by: Johannes Berg
    Cc: Michael Kerrisk
    Cc: linux-doc@vger.kernel.org
    Signed-off-by: Rusty Russell
    Acked-by: Randy Dunlap

    Johannes Berg
     
  • PTE_PFN_MASK was getting lonely, so I made it a friend.

    Signed-off-by: Jeremy Fitzhardinge
    Cc: Rusty Russell
    Signed-off-by: Ingo Molnar

    Jeremy Fitzhardinge
     
  • Rusty, in his peevish way, complained that macros defining constants
    should have a name which somewhat accurately reflects the actual
    purpose of the constant.

    Aside from the fact that PTE_MASK gives no clue as to what's actually
    being masked, and is misleadingly similar to the functionally entirely
    different PMD_MASK, PUD_MASK and PGD_MASK, I don't really see what the
    problem is.

    But if this patch silences the incessent noise, then it will have
    achieved its goal (TODO: write test-case).

    Signed-off-by: Jeremy Fitzhardinge
    Cc: Rusty Russell
    Signed-off-by: Ingo Molnar

    Jeremy Fitzhardinge
     
  • (Jeremy said:
    rusty: use PTE_MASK
    rusty: use PTE_MASK
    rusty: use PTE_MASK
    When I asked:
    jsgf: does that include the NX flag?
    He responded eloquently:
    rusty: use PTE_MASK
    rusty: use PTE_MASK
    yes, it's the official constant of masking flags out of ptes
    )

    Change a15af1c9ea2750a9ff01e51615c45950bad8221b 'x86/paravirt: add
    pte_flags to just get pte flags' removed lguest's private pte_flags()
    in favor of a generic one.

    Unfortunately, the generic one doesn't filter out the non-flags bits:
    this results in lguest creating corrupt shadow page tables and blowing
    up host memory.

    Since noone is supposed to use the pfn part of pte_flags(), it seems
    safest to always do the filtering.

    Signed-off-by: Rusty Russell
    Acked-by: Jeremy Fitzhardinge
    Signed-off-and-morning-tea-spilled-by: Ingo Molnar

    Rusty Russell
     
  • Manually fixed up:

    drivers/net/fs_enet/fs_enet-main.c

    Benjamin Herrenschmidt
     
  • beauty fix: /proc/cpuinfo will still show apic feature even if
    we booted up with it disabled.

    Signed-off-by: Yinghai Lu
    Signed-off-by: Ingo Molnar

    Yinghai Lu
     
  • Signed-off-by: Kay Sievers
    Signed-off-by: Greg Kroah-Hartman

    Kay Sievers
     
  • This converts all instances of bus_id in the sparc core kernel to use
    either dev_set_name(), or dev_name() depending on the need.

    This is done in anticipation of removing the bus_id field from struct
    driver.

    Cc: Kay Sievers
    Acked-by: David S. Miller
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     
  • Use the new generic int attribute accessors for the x86 mce tolerant
    attribute. Simple example to illustrate the new macros.

    There are much more places all over the tree that could be converted
    like this.

    Signed-off-by: Andi Kleen
    Signed-off-by: Greg Kroah-Hartman

    Andi Kleen
     
  • This allow to dynamically generate attributes and share show/store
    functions between attributes. Right now most attributes are generated
    by special macros and lots of duplicated code. With the attribute
    passed it's instead possible to attach some data to the attribute
    and then use that in shared low level functions to do different things.

    I need this for the dynamically generated bank attributes in the x86
    machine check code, but it'll allow some further cleanups.

    I converted all users in tree to the new show/store prototype. It's a single
    huge patch to avoid unbisectable sections.

    Runtime tested: x86-32, x86-64
    Compiled only: ia64, powerpc
    Not compile tested/only grep converted: sh, arm, avr32

    Signed-off-by: Andi Kleen
    Signed-off-by: Greg Kroah-Hartman

    Andi Kleen
     
  • We have the dev_printk() variants for this kind of thing, use them
    instead of directly trying to access the bus_id field of struct device.

    This is done in order to remove bus_id entirely.

    Cc: Kay Sievers
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     
  • Kobjects do not have a limit in name size since a while, so stop
    pretending that they do.

    Signed-off-by: Kay Sievers
    Signed-off-by: Greg Kroah-Hartman

    Kay Sievers
     
  • device_create() is race-prone, so use the race-free
    device_create_drvdata() instead as device_create() is going away.

    Cc: Thomas Gleixner
    Cc: Ingo Molnar
    Cc: H. Peter Anvin
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     
  • device_create() is race-prone, so use the race-free
    device_create_drvdata() instead as device_create() is going away.

    Cc: Ralf Baechle
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     
  • binutils < 2.18 has a bug that makes it misbehave when taking an
    ELF file with all segments at load address 0 as input. This
    happens when running "strip" on vmlinux, because of the AT() magic
    in this linker script. People using GCC >= 4.2 won't run into
    this problem, because the "build-id" support will put some data
    into the "notes" segment (at a non-zero load address).

    To work around this, we force some data into both the "dummy"
    segment and the kernel segment, so the dummy segment will get a
    non-zero load address. It's not enough to always create the
    "notes" segment, since if nothing gets assigned to it, its load
    address will be zero.

    Signed-off-by: Segher Boessenkool
    Tested-By: Milton Miller
    Signed-off-by: Benjamin Herrenschmidt

    Segher Boessenkool
     
  • This patch changes the EEH_MAX_FAILS action from panic to printing an
    error message. Panicking under under this condition is too harsh.
    Although performance will be affected and the device may not recover,
    the system is still running, which at the very least should allow for a
    more graceful shutdown. The patch also removes the msleep() within a
    spinlock, which can lead to a deadlock and is not recommended.

    Signed-off-by: Mike Mason
    Acked-by: Linas Vepstas
    Signed-off-by: Benjamin Herrenschmidt

    Mike Mason
     
  • Introduce a new dma attriblue DMA_ATTR_WEAK_ORDERING to use weak ordering
    on DMA mappings in the Cell processor. Add the code to the Cell's IOMMU
    implementation to use this code.

    Dynamic mappings can be weakly or strongly ordered on an individual basis
    but the fixed mapping has to be either completely strong or completely weak.
    This is currently decided by a kernel boot option (pass iommu_fixed=weak
    for a weakly ordered fixed linear mapping, strongly ordered is the default).

    Signed-off-by: Mark Nelson
    Signed-off-by: Arnd Bergmann
    Signed-off-by: Benjamin Herrenschmidt

    Mark Nelson
     
  • While running on a system with new hardware and a kernel where the
    cpu_specs[] table does not recognize the new hardware, the identify_cpu()
    routine will select the default case as it searches through cpu_specs[]
    in an attempt to match the real PVR. Once the default case is selected,
    non of the oprofile counters and/or fields have been set up or defined.

    When identify_cpu() is called once more with the logical PVR, some of
    the cpu specific fields are replaced with the exception of the oprofile
    related ones. However, in the case where we have actually taken the
    default case while searching for the real PVR, we need to tell
    oprofile that we are now running in compatibility mode so it can pick up
    the correct counters. We do this by setting the oprofile_cpu_type field
    to be that taken from the cpu_specs[] for the cpu we are now emulating.

    This change will detect that we are now altering the real PVR and determine
    if we also need to update the oprofile_cpu_type field.

    Signed-off-by: Torez Smith
    Signed-off-by: Benjamin Herrenschmidt

    Torez Smith
     
  • For C code spaces versus tabs is just a religious issue,
    but for Makefiles it actually matters.

    This patch fixes he following errors:
    /home/bunk/linux/kernel-2.6/git/linux-2.6/arch/powerpc/boot/Makefile:166: *** missing separator. Stop.
    /home/bunk/linux/kernel-2.6/git/linux-2.6/arch/powerpc/boot/Makefile:171: *** missing separator. Stop.

    Since this was inside an ifdef DTC_GENPARSER it was not a problem unless
    someone wanted to regenerate the shipped generated files.

    Signed-off-by: Adrian Bunk
    Acked-by: David Gibson
    Signed-off-by: Benjamin Herrenschmidt

    Adrian Bunk
     
  • The real option is above in the same Kconfig file.

    Signed-off-by: Adrian Bunk
    Signed-off-by: Benjamin Herrenschmidt

    Adrian Bunk
     
  • Replace ifdef clutter with the PPC_LONG and PPC_LONG_ALIGN macros
    for readability.

    No change to the generated code.

    Signed-off-by: Michael Ellerman
    Signed-off-by: Benjamin Herrenschmidt

    Michael Ellerman
     
  • The OF parsing code for PCI addresses isn't always treating properly
    the address space indication 0b11 (ie. 0x3) as meaning 64 bits
    memory space.

    This means that it fails to parse addresses for PCI BARs that have
    this encoding set by the firmware, which happens on some SLOF
    versions and breaks offb palette handling on Powerstation.

    Signed-off-by: Benjamin Herrenschmidt
    Acked-by: Segher Boessenkool

    Benjamin Herrenschmidt
     
  • __WARN() is not defined for all configs, use WARN_ON(1) instead.

    Signed-off-by: Michael Ellerman
    Signed-off-by: Benjamin Herrenschmidt

    Michael Ellerman
     
  • We need to pass the kernel stack pointer instead of the user space
    stack pointer in save_stack_trace_tsk().

    Signed-off-by: Arnd Bergmann
    Signed-off-by: Benjamin Herrenschmidt

    Arnd Bergmann
     
  • Update ps3_defconfig.

    Signed-off-by: Geoff Levand
    Signed-off-by: Benjamin Herrenschmidt

    Geoff Levand
     
  • Add sub match id for ps3 system bus so that two different system bus
    devices can be connected to a shared device.

    Signed-off-by: Masakazu Mokuno
    Signed-off-by: Geoff Levand
    Signed-off-by: Benjamin Herrenschmidt

    Masakazu Mokuno
     
  • This is a defconfig from Dave Jones and should be similar (if not
    identical) to the fedora ppc32 defconfig. The intent is to cover all
    cache coherent 6xx based chips and platforms as reasonable.

    Signed-off-by: Kumar Gala
    Signed-off-by: Benjamin Herrenschmidt

    Kumar Gala
     
  • Update iommu_alloc() to take the struct dma_attrs and pass them on to
    tce_build(). This change propagates down to the tce_build functions of
    all the platforms.

    Signed-off-by: Mark Nelson
    Signed-off-by: Arnd Bergmann
    Signed-off-by: Benjamin Herrenschmidt

    Mark Nelson
     
  • This patch adds support for the power button on future IBM cell blades.
    It actually doesn't shut down the machine. Instead it exposes an
    input device /dev/input/event0 to userspace which sends KEY_POWER
    if power button has been pressed.
    haldaemon actually recognizes the button, so a plattform independent acpid
    replacement should handle it correctly.

    Signed-off-by: Christian Krafft
    Signed-off-by: Arnd Bergmann
    Signed-off-by: Benjamin Herrenschmidt

    Christian Krafft
     
  • This patch adds a config option for the sysreset_hack used for
    IBM Cell blades. The code is moves from pervasive.c into ras.c and
    gets it's own init method.

    Signed-off-by: Christian Krafft
    Signed-off-by: Arnd Bergmann
    Signed-off-by: Benjamin Herrenschmidt

    Christian Krafft
     
  • This patch adds a cpufreq governor that takes the number of running spus
    into account. It's very similar to the ondemand governor, but not as complex.
    Instead of hacking spu load into the ondemand governor it might be easier to
    have cpufreq accepting multiple governors per cpu in future.
    Don't know if this is the right way, but it would keep the governors simple.

    Signed-off-by: Christian Krafft
    Signed-off-by: Arnd Bergmann
    Acked-by: Dave Jones
    Signed-off-by: Benjamin Herrenschmidt

    Christian Krafft
     
  • DDR2 memory DIMMs on the Axon could be accessed only as one partition
    when using file system drivers which are using the direct_access() method.
    This patch enables for such file system drivers to access Axon's DDR2 memory
    even if it is splitted in several partitions.

    Signed-off-by: Maxim Shchetynin
    Signed-off-by: Arnd Bergmann
    Signed-off-by: Benjamin Herrenschmidt

    Maxim Shchetynin
     
  • Axonram module registers one block device for each DDR2 DIMM found
    on a system. This means that each DDR2 DIMM becomes its own block device
    major number. This patch lets axonram module to register the only one
    block device for all DDR2 DIMMs which also spares kernel resources.

    Signed-off-by: Maxim Shchetynin
    Signed-off-by: Arnd Bergmann
    Signed-off-by: Benjamin Herrenschmidt

    Maxim Shchetynin