31 Oct, 2008

40 commits

  • Impact: save .text size when kexec is built in but not loaded

    This patch adds an architecture specific struct kimage_arch into
    struct kimage. The pointers to page table pages used by kexec are
    added to struct kimage_arch. The page tables pages are dynamically
    allocated in machine_kexec_prepare instead of statically from BSS
    segment. This will save up to 20k memory when kexec image is not
    loaded.

    Signed-off-by: Huang Ying
    Signed-off-by: Ingo Molnar

    Huang Ying
     
  • Impact: save kernel .text by loosening kexec page alignment

    This patch removes PAGE_SIZE alignment from relocate_kernel(). Before
    kexec jump patches are merged, control page is mapped to
    relocate_kernel in kexec page tables, so relocate_kernel must be
    PAGE_SIZE aligned. Now, control page is mapped to identity mapped
    address, so relocate_kernel need not to be PAGE_SIZE aligned any
    more. This can reduce a few KB from kernel text segement.

    Signed-off-by: Huang Ying
    Signed-off-by: Ingo Molnar

    Huang Ying
     
  • * 'for-linus' of git://neil.brown.name/md:
    md: destroy partitions and notify udev when md array is stopped.

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:
    lguest: fix irq vectors.
    lguest: fix early_ioremap.
    lguest: fix example launcher compile after moved asm-x86 dir.

    Linus Torvalds
     
  • …l/git/tip/linux-2.6-tip

    * 'x86-fixes-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    x86: cpu_index build fix
    x86/voyager: fix missing cpu_index initialisation
    x86/voyager: fix compile breakage caused by dc1e35c6e95e8923cf1d3510438b63c600fee1e2
    x86: fix /dev/mem mmap breakage when PAT is disabled
    x86/voyager: fix compile breakage casued by x86: move prefill_possible_map calling early
    x86: use CONFIG_X86_SMP instead of CONFIG_SMP
    x86/voyager: fix boot breakage caused by x86: boot secondary cpus through initial_code
    x86, uv: fix compile error in uv_hub.h
    i386/PAE: fix pud_page()
    x86: remove debug code from arch_add_memory()
    x86: start annotating early ioremap pointers with __iomem
    x86: two trivial sparse annotations
    x86: fix init_memory_mapping for [dc000000 - e0000000) - v2

    Linus Torvalds
     
  • …l/git/tip/linux-2.6-tip

    * 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    sched: remove sched-design.txt from 00-INDEX
    sched: change sched_debug's mode to 0444

    Linus Torvalds
     
  • …nel/git/tip/linux-2.6-tip

    * 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    ftrace: handle archs that do not support irqs_disabled_flags

    Linus Torvalds
     
  • …/git/tip/linux-2.6-tip

    * 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    resources: fix x86info results ioremap.c:226 __ioremap_caller+0xf2/0x2d6() WARNINGs

    Linus Torvalds
     
  • do_IRQ: cannot handle IRQ -1 vector 0x20 cpu 0
    ------------[ cut here ]------------
    kernel BUG at arch/x86/kernel/irq_32.c:219!

    We're not ISA: we have a 1:1 mapping from vectors to irqs.

    Signed-off-by: Rusty Russell

    Rusty Russell
     
  • dmi_scan_machine breaks under lguest:
    lguest: unhandled trap 14 at 0xc04edeae (0xffa00000)

    This is because we use current_cr3 for the read_cr3() paravirt
    function, and it isn't set until the first cr3 change. We got away
    with it until this happened.

    Signed-off-by: Rusty Russell

    Rusty Russell
     
  • Signed-off-by: Rusty Russell

    Rusty Russell
     
  • fix:

    arch/x86/kernel/cpu/common.c: In function 'early_identify_cpu':
    arch/x86/kernel/cpu/common.c:553: error: 'struct cpuinfo_x86' has no member named 'cpu_index'

    as cpu_index is only available on SMP.

    Signed-off-by: Ingo Molnar

    Ingo Molnar
     
  • Impact: fix /proc/cpuinfo output on x86/Voyager

    Ever since

    | commit 92cb7612aee39642d109b8d935ad265e602c0563
    | Author: Mike Travis
    | Date: Fri Oct 19 20:35:04 2007 +0200
    |
    | x86: convert cpuinfo_x86 array to a per_cpu array

    We've had an extra field in cpuinfo_x86 which is cpu_index.
    Unfortunately, voyager has never initialised this, although the only
    noticeable impact seems to be that /proc/cpuinfo shows all zeros for
    the processor ids.

    Anyway, fix this by initialising the boot CPU properly and setting the
    index when the secondaries update.

    Signed-off-by: James Bottomley
    Signed-off-by: Ingo Molnar

    James Bottomley
     
  • Impact: build fix on x86/Voyager

    Given commits like this:

    | Author: Suresh Siddha
    | Date: Tue Jul 29 10:29:19 2008 -0700
    |
    | x86, xsave: enable xsave/xrstor on cpus with xsave support

    Which deliberately expose boot cpu dependence to pieces of the system,
    I think it's time to explicitly have a variable for it to prevent this
    continual misassumption that the boot CPU is zero.

    Signed-off-by: James Bottomley
    Signed-off-by: Ingo Molnar

    James Bottomley
     
  • * master.kernel.org:/home/rmk/linux-2.6-arm:
    [ARM] 5326/1: AFEB9260: Fix for i2c_board_info structure
    [ARM] mx31ads: Add missing include
    [ARM] MXC: Fix mxc_gpio_get(), which must read PSR register instead DR.
    [ARM] MX3: Use ioremap wrapper to map SoC devices nonshared
    [ARM] gpio_free might sleep, arm architecture
    [ARM] ep93xx: fix OHCI DMA mask
    leds: da903x: (da9030 only) led brightness reversed.
    [ARM] sharpsl_pm: fix compilation w/o CONFIG_PM
    [ARM] pcm037: map AIPS1 and AIPS2 as nonshared area
    [ARM] build fixes for netX serial driver
    [ARM] 5323/1: Remove outdated empeg documentation.
    [ARM] 5299/1: Add maintainer for Mobilepro 900/c
    [ARM] corgi_lcd: fix simultaneous compilation with corgi_bl
    [ARM] pxa/spitz: fix spi cs on spitz
    [ARM] 5322/1: Fix fastpath issue in mmci.c
    [ARM] xsc3: revert writethrough memory-type encoding change

    Linus Torvalds
     
  • Impact: build fix on non-lockdep architectures

    Some architectures do not support a way to read the irq flags that
    is set from "local_irq_save(flags)" to determine if interrupts were
    disabled or enabled. Ftrace uses this information to display to the user
    if the trace occurred with interrupts enabled or disabled.

    Besides the fact that those archs that do not support this will fail to
    compile, unless they fix it, we do not want to have the trace simply
    say interrupts were not disabled or they were enabled, without knowing
    the real answer.

    This patch adds a 'X' in the output to let the user know that the
    architecture they are running on does not support a way for the tracer
    to determine if interrupts were enabled or disabled. It also lets those
    same archs compile with tracing enabled.

    Signed-off-by: Steven Rostedt
    Signed-off-by: Ingo Molnar

    Steven Rostedt
     
  • Impact: allow /dev/mem mmaps on non-PAT CPUs/platforms

    Fix mmap to /dev/mem when CONFIG_X86_PAT is off and CONFIG_STRICT_DEVMEM is
    off

    mmap to /dev/mem on kernel memory has been failing since the
    introduction of PAT (CONFIG_STRICT_DEVMEM=n case). Seems like
    the check to avoid cache aliasing with PAT is kicking in even
    when PAT is disabled. The bug seems to have crept in 2.6.26.

    This patch makes sure that the mmap to regular
    kernel memory succeeds if CONFIG_STRICT_DEVMEM=n and
    PAT is disabled, and the checks to avoid cache aliasing
    still happens if PAT is enabled.

    Signed-off-by: Ravikiran Thirumalai
    Tested-by: Tim Sirianni
    Cc:
    Acked-by: H. Peter Anvin
    Signed-off-by: Ingo Molnar

    Ravikiran G Thirumalai
     
  • Impact: fix build failure on x86/Voyager

    Before:

    | commit 329513a35d1a2b6b28d54f5c2c0dde4face8200b
    | Author: Yinghai Lu
    | Date: Wed Jul 2 18:54:40 2008 -0700
    |
    | x86: move prefill_possible_map calling early

    prefill_possible_mask() was hidden under CONFIG_HOTPLUG_CPU rendering
    it invisitble to voyager. Since this commit it's exposed, but not
    provided by the voyager subarch, so add a dummy stub to fix the link
    breakage.

    Signed-off-by: James Bottomley
    Cc: Yinghai Lu
    Signed-off-by: Ingo Molnar

    James Bottomley
     
  • Impact: fix x86/Voyager boot

    CONFIG_SMP is used for features which work on *all* x86 boxes.
    CONFIG_X86_SMP is used for standard PC like x86 boxes (for things like
    multi core and apics)

    Signed-off-by: James Bottomley
    Signed-off-by: Ingo Molnar

    James Bottomley
     
  • Impact: boot up secondary CPUs as well on x86/Voyager systems

    This commit:

    | commit 3e9704739daf46a8ba6593d749c67b5f7cd633d2
    | Author: Glauber Costa
    | Date: Wed May 28 13:01:54 2008 -0300
    |
    | x86: boot secondary cpus through initial_code

    removed the use of initialize_secondary. However, it didn't update
    voyager, so the secondary cpus no longer boot. Fix this by adding the
    initial_code switch to voyager as well.

    Signed-off-by: James Bottomley
    Cc: Glauber Costa
    Signed-off-by: Ingo Molnar

    James Bottomley
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes:
    Fix incompatibility with versions of Perl less than 5.6.0
    kbuild: do not include arch//include/asm in find-sources twice.
    kbuild: tag with git revision when git describe is missing
    kbuild: prevent modpost from looking for a .cmd file for a static library linked into a module
    kbuild: fix KBUILD_EXTRA_SYMBOLS
    adjust init section definitions
    scripts/checksyscalls.sh: fix for non-gnu sed
    scripts/package: don't break if %{_smp_mflags} isn't set
    kbuild: setlocalversion: dont include svn change count
    kbuild: improve check-symlink
    kbuild: mkspec - fix build rpm

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:
    [PATCH] Switch all my contributions stuff to a single common address
    [WATCHDOG] pci: use pci_ioremap_bar() in drivers/watchdog

    Linus Torvalds
     
  • * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
    CHAR: Delete old and now unused M48T35 RTC driver for SGI IP27.
    CHAR: Delete old and now unused DS1286 driver.
    MIPS: Sort out CPU type to name translation.
    MIPS: Use the new byteorder headers
    MIPS: Probe for watch registers on cores of all vendors, not just MTI.
    MIPS: Switch FPU emulator trap to BREAK instruction.
    MIPS: SMP: Do not initialize __cpu_number_map/__cpu_logical_map for CPU 0.
    MIPS: Consider value of c0_ebase when computing value of exception base.
    MIPS: Clean up MIPSxx-optimized bitop functions
    MIPS: New feature test macro cpu_has_mips_r
    MIPS: RBTX4927: Add GPIO-LED support
    MIPS: TXx9: Fix RBTX4939 ethernet address initialization

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6:
    fdomain_cs: Sort out modules with duplicate description
    pcmcia: Whine harder about use of EXCLUSIVE
    pcmcia: IRQ_TYPE_EXCLUSIVE is long obsoleted

    Linus Torvalds
     
  • * 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6:
    SUNRPC: Fix potential race in put_rpccred()
    SUNRPC: Fix rpcauth_prune_expired
    NFS: Convert nfs_attr_generation_counter into an atomic_long
    SUNRPC: Respond promptly to server TCP resets

    Linus Torvalds
     
  • …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, gart: fix gart detection for Fam11h CPUs
    x86: 64 bit print out absent pages num too
    x86, kdump: fix invalid access on i386 sparsemem
    x86: fix APIC_DEBUG with inquire_remote_apic
    x86: AMD microcode patch loader author update
    x86: microcode patch loader author update
    mailmap: add Peter Oruba
    x86, bts: improve help text for BTS config
    doc/x86: fix doc subdirs

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm:
    dm snapshot: wait for chunks in destructor
    dm snapshot: fix register_snapshot deadlock
    dm raid1: fix do_failures

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:
    x86/PCI: build failure at x86/kernel/pci-dma.c with !CONFIG_PCI

    Linus Torvalds
     
  • When we close we must clear the extra reference we got when we read
    port->tty. Setting the port tty NULL will clear the kref held by the driver
    but not the one we obtained ourselves while doing the lookup.

    Signed-off-by: Alan Cox
    Tested-by: Helge Hafting
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • * 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
    i2c-s3c2410: Correct use of ! and &
    i2c: The i2c mailing list is moving
    scx200_i2c: Add missing class parameter

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
    HID: add quirk entry for no-name keyboard (0x13ba/0x0017)
    HID: fix hid_device_id for cross compiling
    HID: sync on deleted io_retry timer in usbhid driver
    HID: fix oops during suspend of unbound HID devices

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6:
    Driver core: fix 'dynamic_debug' cmd line parameter
    HOWTO: Sync patch for jp_JP/HOWTO
    Update stable tree documentation
    sysfs: Fix return values for sysdev_store_{ulong,int}
    driver core: drivers/base/sys.c: update comments
    Document kernel taint flags properly

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6:
    USB: prevent autosuspend during hub initialization
    USB: Unusual dev for the "Kyocera / Contax SL300R T*" digital camera.
    USB: usbtmc: Use explicit unsigned type for input buffer instead of char*
    USB: fix crash when URBs are unlinked after the device is gone

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6:
    regulator: da903x regulator bug fix
    regulator: Build on non-ARM platforms

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
    amd8111e: Fix rx return code
    pktgen: fix multiple queue warning
    mac80211.h: fix kernel-doc excesses
    p54: fix build warnings
    ath5k: Reset key cache on interface up, thus fixing resume
    mac80211: correct warnings in minstrel rate control algorithm
    RFKILL: fix input layer initialisation
    p54: fix misbehavings when firmware can't be found
    dm9601: runtime mac address change support
    via-velocity: use driver string instead of dev->name before register_netdev()
    drivers/net/wan/syncppp: Fix unused-var warnings
    mlx4: Setting the correct offset for default mac address
    mlx4_en: remove duplicated #include
    ibm_newemac: Fix typo in flow control config option
    ehea: Detect 16GB hugepages for firmware restriction
    dmfe: check pci_alloc_consistent errors
    qeth: avoid skb_under_panic for malformatted inbound data
    qeth: remove unnecessary support ckeck in sysfs route6
    qeth: fix offset error in non prealloc header path
    qeth: remove non-recover-thread checkings

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
    ALSA: ASoC: Fix WM9713 ALC Decay Time name
    ALSA: ASoC: Fix some minor errors in mpc5200 psc i2s driver
    ALSA: ASoC: Fix mono controls after conversion to support full int masks
    ALSA: sound/ice1712: indentation & braces disagree - add braces
    ALSA: usb - Add quirk for Edirol UA-25EX advanced modes
    sound: struct device - replace bus_id with dev_name(), dev_set_name()
    ALSA: hda - Add reboot notifier
    ALSA: Warn when control names are truncated
    ALSA: intel8x0 - add Dell Optiplex GX620 (AD1981B) to AC97 clock whitelist
    ALSA: hda - Fix SPDIF mute on IDT/STAC codecs
    ALSA: hda: Add HDA vendor ID for Wolfson Microelectronics
    ALSA: hda - Add another HP model for AD1884A

    Linus Torvalds
     
  • …nel/git/tip/linux-2.6-tip

    * 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    ftrace: fix trace_nop config select
    ftrace: perform an initialization for ftrace to enable it

    Linus Torvalds
     
  • Fix compile error below:

    LD drivers/spi/built-in.o
    CC [M] drivers/spi/spi_gpio.o
    In file included from drivers/spi/spi_gpio.c:26:
    include/linux/spi/spi_bitbang.h:23: error: field `work' has incomplete type
    make[2]: *** [drivers/spi/spi_gpio.o] Error 1
    make[1]: *** [drivers/spi] Error 2
    make: *** [drivers] Error 2

    Signed-off-by: Fernando Luis Vazquez Cao
    Cc: David Brownell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Fernando Luis Vazquez Cao
     
  • Junjiro R. Okajima reported a problem where knfsd crashes if you are
    using it to export shmemfs objects and run strict overcommit. In this
    situation the current->mm based modifier to the overcommit goes through a
    NULL pointer.

    We could simply check for NULL and skip the modifier but we've caught
    other real bugs in the past from mm being NULL here - cases where we did
    need a valid mm set up (eg the exec bug about a year ago).

    To preserve the checks and get the logic we want shuffle the checking
    around and add a new helper to the vm_ security wrappers

    Also fix a current->mm reference in nommu that should use the passed mm

    [akpm@linux-foundation.org: coding-style fixes]
    [akpm@linux-foundation.org: fix build]
    Reported-by: Junjiro R. Okajima
    Acked-by: James Morris
    Signed-off-by: Alan Cox
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • The ipmi_devintf module contains the userspace interface for IPMI devices,
    yet will not be loaded automatically with a system interface handler
    driver.

    Add a MODULE_ALIAS for the "platform:ipmi_si" MODALIAS exported by the
    ipmi_si driver, so that userspace knows of the recommendation.

    Signed-off-by: Scott James Remnant
    Cc: Tim Gardner
    Cc: Corey Minyard
    Cc: [2.6.27.x, maybe earlier?]
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Scott James Remnant