26 May, 2008

1 commit

  • init/Kconfig contains a list of configs that are searched
    for if 'make *config' are used with no .config present.
    Extend this list to look at the config identified by
    ARCH_DEFCONFIG.

    With this change we now try the defconfig targets last.

    This fixes a regression reported
    by: Linus Torvalds

    Signed-off-by: Sam Ravnborg
    Cc: Linus Torvalds
    Cc: Thomas Gleixner
    Cc: Ingo Molnar
    Cc: "H. Peter Anvin"

    Sam Ravnborg
     

25 May, 2008

1 commit

  • …git/x86/linux-2.6-tip

    * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-tip:
    x86: prevent PGE flush from interruption/preemption
    x86: use explicit copy in vdso_gettimeofday()
    namespacecheck: automated fixes
    x86/xen: fix arbitrary_virt_to_machine()
    x86: don't read maxlvt before checking if APIC is mapped
    x86: disable TSC for sched_clock() when calibration failed
    x86: distangle user disabled TSC from unstable
    x86: fix setup of cyc2ns in tsc_64.c

    Linus Torvalds
     

24 May, 2008

1 commit


23 May, 2008

8 commits


21 May, 2008

1 commit


20 May, 2008

5 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
    [PATCH] return to old errno choice in mkdir() et.al.
    [Patch] fs/binfmt_elf.c: fix wrong return values
    [PATCH] get rid of leak in compat_execve()
    [Patch] fs/binfmt_elf.c: fix a wrong free
    [PATCH] avoid multiplication overflows and signedness issues for max_fds
    [PATCH] dup_fd() part 4 - race fix
    [PATCH] dup_fd() - part 3
    [PATCH] dup_fd() part 2
    [PATCH] dup_fd() fixes, part 1
    [PATCH] take init_files to fs/file.c

    Linus Torvalds
     
  • The longrun cpufreq module reports a false minimum frequency 3MHz on
    300-600MHz Crusoe processor. This may be due to a calculation bug
    in the module.

    Original patch from Kaz Sasayama
    submitted as http://bugs.debian.org/468149 patch ported to x86

    Cc: Kaz Sasayama
    Signed-off-by: maximilian attems
    Signed-off-by: Dave Jones

    maximilian attems
     
  • The most common error with powernow-k8 is an ACPI _PSS error
    caused either by failure to load the ACPI processor module
    or a bad parse of the _PSS object. Make the error message
    returned to the user in these situations more straightforward
    and easier to understand.

    -Mark Langsdorf
    Operating System Research Center
    AMD

    Signed-off-by: Mark Langsdorf
    Signed-off-by: Andreas Herrmann
    Signed-off-by: Dave Jones

    Mark Langsdorf
     
  • * 'kvm-updates-2.6.26' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm:
    KVM: LAPIC: ignore pending timers if LVTT is disabled
    KVM: Update MAINTAINERS for new mailing lists
    KVM: Fix kvm_vcpu_block() task state race
    KVM: ia64: Set KVM_IOAPIC_NUM_PINS to 48
    KVM: ia64: fix GVMM module including position-dependent objects
    KVM: ia64: Define new kvm_fpreg struture to replace ia64_fpreg
    KVM: PIT: take inject_pending into account when emulating hlt
    s390: KVM guest: fix compile error
    KVM: x86 emulator: fix writes to registers with modrm encodings

    Linus Torvalds
     
  • Replace Redundant Whitelist Entries with the Correct Ones

    The ProLiant DL585 G2 and the DL585 G2 are entered reundantly in the
    dmi_system_id table. What should have been there are the DL360 and DL380. This
    patch simply replaces the redundant entries with the correct entries.

    Signed-off-by: Tony Camuso
    Signed-off-by: Pat Schoeller
    Signed-off-by: Jesse Barnes

    Tony Camuso
     

18 May, 2008

6 commits

  • Only use the APIC pending timers count to break out of HLT emulation if
    the timer vector is enabled.

    Certain configurations of Windows simply mask out the vector without
    disabling the timer.

    Signed-off-by: Marcelo Tosatti
    Signed-off-by: Avi Kivity

    Marcelo Tosatti
     
  • Otherwise hlt emulation fails if PIT is not injecting IRQ's.

    Signed-off-by: Marcelo Tosatti
    Signed-off-by: Avi Kivity

    Marcelo Tosatti
     
  • A register destination encoded with a mod=3 encoding left dst.ptr NULL.
    Normally we don't trap writes to registers, but in the case of smsw, we do.

    Fix by pointing dst.ptr at the destination register.

    Signed-off-by: Avi Kivity

    Avi Kivity
     
  • The previous revert of 0c07ee38c9d4eb081758f5ad14bbffa7197e1aec left
    out the mwait disable condition for AMD family 10H/11H CPUs.

    Andreas Herrman said:

    It depends on the CPU. For AMD CPUs that support MWAIT this is wrong.
    Family 0x10 and 0x11 CPUs will enter C1 on HLT. Powersavings then
    depend on a clock divisor and current Pstate of the core.

    If all cores of a processor are in halt state (C1) the processor can
    enter the C1E (C1 enhanced) state. If mwait is used this will never
    happen.

    Thus HLT saves more power than MWAIT here.

    It might be best to switch off the mwait flag for these AMD CPU
    families like it was introduced with commit
    f039b754714a422959027cb18bb33760eb8153f0 (x86: Don't use MWAIT on AMD
    Family 10)

    Re-add the AMD families 10H/11H check and disable the mwait usage for
    those.

    Signed-off-by: Thomas Gleixner

    Thomas Gleixner
     
  • pat_disable() is __init, which means it goes away after booting is complete.
    Unfortunately it is used by the hotplug code if the machine is not
    pat-capable, causing a crash.

    Fix by marking pat_disable() as __cpuinit.

    Signed-off-by: Avi Kivity
    Signed-off-by: Ingo Molnar

    Avi Kivity
     
  • Vegard Nossum reports:

    | powertop shows between 200-400 wakeups/second with the description
    | ": Rescheduling interrupts" when all processors have load (e.g.
    | I need to run two busy-loops on my 2-CPU system for this to show up).
    |
    | The bisect resulted in this commit:
    |
    | commit 0c07ee38c9d4eb081758f5ad14bbffa7197e1aec
    | Date: Wed Jan 30 13:33:16 2008 +0100
    |
    | x86: use the correct cpuid method to detect MWAIT support for C states

    remove the functional effects of this patch and make mwait unconditional.

    A future patch will turn off mwait on specific CPUs where that causes
    power to be wasted.

    Bisected-by: Vegard Nossum
    Tested-by: Vegard Nossum
    Signed-off-by: Ingo Molnar

    Ingo Molnar
     

17 May, 2008

1 commit


14 May, 2008

8 commits

  • …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: user_regset_view table fix for ia32 on 64-bit
    x86: arch/x86/mm/pat.c - fix warning
    x86: fix csum_partial() export
    x86: early_init_centaur(): use set_cpu_cap()
    x86: fix app crashes after SMP resume
    x86: wakeup.lds.S - section ordering fix
    x86: [VOYAGER] fix duplicate phys_cpu_present_map symbol
    x86/pci: fix broken ISA DMA

    Linus Torvalds
     
  • The user_regset_view table for the 32-bit regsets on the 64-bit build had
    the wrong sizes for the FP regsets. This bug had no user-visible effect
    (just on kernel modules using the user_regset interfaces and the like).
    But the fix is trivial and risk-free.

    Signed-off-by: Roland McGrath
    Signed-off-by: Ingo Molnar

    Roland McGrath
     
  • fix this warning:

    arch/x86/mm/pat.c: In function `phys_mem_access_prot_allowed':
    arch/x86/mm/pat.c:558: warning: long long unsigned int format, long
    unsigned int arg (arg 6)
    arch/x86/mm/pat.c: In function `map_devmem':
    arch/x86/mm/pat.c:580: warning: long long unsigned int format, long
    unsigned int arg (arg 6)

    Signed-off-by: D Pranith Kumar
    Signed-off-by: Ingo Molnar

    Pranith Kumar
     
  • Fix this symbol export problem:

    Building modules, stage 2.
    MODPOST 193 modules
    ERROR: "csum_partial" [fs/reiserfs/reiserfs.ko] undefined!
    make[1]: *** [__modpost] Error 1
    make: *** [modules] Error 2

    This is due to a known weakness of symbol exports: if a symbol's
    only in-core user is an EXPORT_SYMBOL from a lib-y section, the
    symbol is not linked in.

    The solution is to move the export to x8664_ksyms_64.c - but the real
    solution would be to fix kbuild.

    Signed-off-by: Ingo Molnar

    Ingo Molnar
     
  • arch/x86/kernel/setup_64.c:954: warning: passing argument 2 of 'set_bit' from incompatible pointer type

    Signed-off-by: Andrew Morton
    Signed-off-by: Ingo Molnar

    Andrew Morton
     
  • After resume on a 2cpu laptop, kernel builds collapse with a sed hang,
    sh or make segfault (often on 20295564), real-time signal to cc1 etc.

    Several hurdles to jump, but a manually-assisted bisect led to -rc1's
    d2bcbad5f3ad38a1c09861bca7e252dde7bb8259 x86: do not zap_low_mappings
    in __smp_prepare_cpus. Though the low mappings were removed at bootup,
    they were left behind (with Global flags helping to keep them in TLB)
    after resume or cpu online, causing the crashes seen.

    Reinstate zap_low_mappings (with local __flush_tlb_all) for each cpu_up
    on x86_32. This used to be serialized by smp_commenced_mask: that's now
    gone, but a low_mappings flag will do. No need for native_smp_cpus_done
    to repeat the zap: let mem_init zap BSP's low mappings just like on UP.

    (In passing, fix error code from native_cpu_up: do_boot_cpu returns a
    variety of diagnostic values, Dprintk what it says but convert to -EIO.
    And save_pg_dir separately before zap_low_mappings: doesn't matter now,
    but zapping twice in succession wiped out resume's swsusp_pg_dir.)

    That worked well on the duo and one quad, but wouldn't boot 3rd or 4th
    cpu on P4 Xeon, oopsing just after unlock_ipi_call_lock. The TLB flush
    IPI now being sent reveals a long-standing bug: the booting cpu has its
    APIC readied in smp_callin at the top of start_secondary, but isn't put
    into the cpu_online_map until just before that unlock_ipi_call_lock.

    So native_smp_call_function_mask to online cpus would send_IPI_allbutself,
    including the cpu just coming up, though it has been excluded from the
    count to wait for: by the time it handles the IPI, the call data on
    native_smp_call_function_mask's stack may well have been overwritten.

    So fall back to send_IPI_mask while cpu_online_map does not match
    cpu_callout_map: perhaps there's a better APICological fix to be
    made at the start_secondary end, but I wouldn't know that.

    Signed-off-by: Hugh Dickins
    Signed-off-by: Ingo Molnar

    Hugh Dickins
     
  • Some versions of X used the mprotect workaround to change caching type from UC
    to WB, so that it can then use mtrr to program WC for that region [1]. Change
    the mmap of pci space through /sys or /proc interfaces from UC to UC_MINUS.
    With this change, X will not need to use mprotect workaround to get WC type
    since the MTRR mapping type will be honored.

    The bug in mprotect that clobbers PAT bits is fixed in a follow on patch. So,
    this X workaround will stop working as well.

    Signed-off-by: Venkatesh Pallipadi
    Signed-off-by: Suresh Siddha
    Signed-off-by: Ingo Molnar
    Signed-off-by: Jesse Barnes

    Venki Pallipadi
     
  • Rene Herman reported:

    > commit 8779f2fc3b84ebb6c5181fb13d702e9944c16069
    >
    > "x86: don't try to allocate from DMA zone at first"
    >
    > breaks all of ISA DMA. Or all of ALSA ISA DMA at least. All
    > ISA soundcards are silent following that commit -- no error
    > messages, everything appears fine, just silence.

    That patch is buggy. We had an implicit assumption that
    dev = NULL for ISA devices that require 24bit DMA.

    The recent work on x86 dma_alloc_coherent() breaks the ISA DMA buffer
    allocation, which is represented by "dev = NULL" and requires 24bit
    DMA implicitly.

    Bisected-by: Rene Herman
    Signed-off-by: Takashi Iwai
    Signed-off-by: Ingo Molnar
    Signed-off-by: Jesse Barnes

    Takashi Iwai
     

13 May, 2008

3 commits

  • To allow linker to catch sections overlapping we have to declare
    them in appropriate order.

    Signed-off-by: Cyrill Gorcunov
    Cc: Sam Ravnborg
    Acked-by: Pavel Machek
    Signed-off-by: Thomas Gleixner

    Cyrill Gorcunov
     
  • The phys_cpu_present_map is an expected symbol in the SMP harness.
    Unfortunately, x86 recently moved this and a few others to
    kernel/setup.c where it doesn't quite work because voyager has to
    define its own. Use CONFIG_X86_LOCAL_APIC to isolate these
    definitions and fix up another area in setup.c where CONFIG_X86_SMP
    should be used instead of CONFIG_SMP.

    Signed-off-by: James Bottomley
    Cc: WANG Cong
    Cc: toralf.foerster@gmx.de
    Cc: Mike Travis
    Cc: Alexey Starikovskiy
    Signed-off-by: Thomas Gleixner

    James Bottomley
     
  • Rene Herman reported:

    > commit 8779f2fc3b84ebb6c5181fb13d702e9944c16069
    >
    > "x86: don't try to allocate from DMA zone at first"
    >
    > breaks all of ISA DMA. Or all of ALSA ISA DMA at least. All
    > ISA soundcards are silent following that commit -- no error
    > messages, everything appears fine, just silence.

    That patch is buggy. We had an implicit assumption that
    dev = NULL for ISA devices that require 24bit DMA.

    The recent work on x86 dma_alloc_coherent() breaks the ISA DMA buffer
    allocation, which is represented by "dev = NULL" and requires 24bit
    DMA implicitly.

    Bisected-by: Rene Herman
    Signed-off-by: Takashi Iwai
    Tested-by: Rene Herman
    Signed-off-by: Ingo Molnar

    Takashi Iwai
     

11 May, 2008

5 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86:
    x86: rdc: leds build/config fix
    x86: sysfs cpu?/topology is empty in 2.6.25 (32-bit Intel system)
    x86: revert commit 709f744 ("x86: bitops asm constraint fixes")
    x86: restrict keyboard io ports reservation to make ipmi driver work
    x86: fix fpu restore from sig return
    x86: remove spew print out about bus to node mapping
    x86: revert printk format warning change which is for linux-next
    x86: cleanup PAT cpu validation
    x86: geode: define geode_has_vsa2() even if CONFIG_MGEODE_LX is not set
    x86: GEODE: cache results from geode_has_vsa2() and uninline
    x86: revert geode config dependency

    Linus Torvalds
     
  • select NEW_LEDS for now until the Kconfig dependencies have been
    fixed.

    Signed-off-by: Ingo Molnar
    Signed-off-by: Thomas Gleixner

    Ingo Molnar
     
  • On some of our (single board computer) boards (x86) we are using an
    IPMI controller that uses I/O ports 0x62 and 0x66 for a KCS (keyboard
    controller style) IPMI system interface.

    Trying to load the openipmi driver fails, because the ports
    (0x62/0x66) are reserved for keyboard. keyboard reserves the full
    range 0x60-0x6F while it doesn't need to.

    Reserve only ports 0x60 and 0x64 for the legacy PS/2 i8042 keyboad
    controller instead of 0x60-0x6F to allow the openipmi driver to work.

    [ tglx: added 64bit fixup ]

    Signed-off-by: Thomas Gleixner
    Acked-by: H. Peter Anvin
    Signed-off-by: Ingo Molnar

    Helge Wagner
     
  • If the task never used fpu, initialize the fpu before restoring the FP
    state from the signal handler context. This will allocate the fpu
    state, if the task never needed it before.

    Reported-and-bisected-by: Eric Sesterhenn
    Signed-off-by: Suresh Siddha
    Tested-by: Eric Sesterhenn
    Cc: Frederik Deweerdt
    Signed-off-by: Thomas Gleixner

    Suresh Siddha
     
  • Jeff Garzik pointed out that this printout is not needed.

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

    Yinghai Lu