19 Oct, 2007

1 commit

  • Make it possible to restore a hibernation image on x86_64 with the help of a
    kernel different from the one in the image.

    The idea is to split the core restoration code into two separate parts and to
    place each of them in a different page.  The first part belongs to the boot
    kernel and is executed as the last step of the image kernel's memory
    restoration procedure.  Before being executed, it is relocated to a safe page
    that won't be overwritten while copying the image kernel pages.

    The final operation performed by it is a jump to the second part of the core
    restoration code that belongs to the image kernel and has just been restored.
    This code makes the CPU switch to the image kernel's page tables and restores
    the state of general purpose registers (including the stack pointer) from
    before the hibernation.

    The main issue with this idea is that in order to jump to the second part of
    the core restoration code the boot kernel needs to know its address.
     However, this address may be passed to it in the image header.  Namely, the
    part of the image header previously used for checking if the version of the
    image kernel is correct can be replaced with some architecture specific data
    that will allow the boot kernel to jump to the right address within the image
    kernel.  These data should also be used for checking if the image kernel is
    compatible with the boot kernel (as far as the memory restroration procedure
    is concerned). It can be done, for example, with the help of a "magic" value
    that has to be equal in both kernels, so that they can be regarded as
    compatible.

    Signed-off-by: Rafael J. Wysocki
    Acked-by: Pavel Machek
    Cc: Andi Kleen
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Rafael J. Wysocki
     

18 Oct, 2007

4 commits

  • It needs to be automatic. The HPET legacy interrupt mode disconnects
    the RTC interrupt and connects the interrupt of the second HPET channel.

    [ tglx: arch/x86 adaptation and comment fixup]

    Signed-off-by: Stefan Richter
    Signed-off-by: Andi Kleen
    Signed-off-by: Ingo Molnar
    Signed-off-by: Thomas Gleixner

    Stefan Richter
     
  • add cpu core name for arch/i386/Kconfig.cpu:Pentium 4 sections help
    add Pentium D for arch/i386/Kconfig.cpu
    add Pentium D for arch/x86_64/Kconfig

    AK: Clarified some of the descriptions
    [ tglx: arch/x86 adaptation ]

    Signed-off-by: Oliver Pinter
    Signed-off-by: Andi Kleen
    Acked-by: Sam Ravnborg
    Cc: Andi Kleen
    Signed-off-by: Andrew Morton
    Signed-off-by: Ingo Molnar
    Signed-off-by: Thomas Gleixner

    Oliver Pinter
     
  • This keeps an unstripped copy of the 64bit vDSO images built before they are
    stripped and embedded in the kernel. The unstripped copies get installed
    in $(MODLIB)/vdso/ by "make install" (or you can explicitly use the
    subtarget "make vdso_install"). These files can be useful when they
    contain source-level debugging information.

    [ tglx: arch/x86 adaptation ]

    Signed-off-by: Roland McGrath
    Signed-off-by: Andi Kleen
    Signed-off-by: Ingo Molnar
    Signed-off-by: Thomas Gleixner

    Roland McGrath
     
  • This keeps an unstripped copy of the vDSO images built before they are
    stripped and embedded in the kernel. The unstripped copies get installed
    in $(MODLIB)/vdso/ by "make install" (or you can explicitly use the
    subtarget "make vdso_install"). These files can be useful when they
    contain source-level debugging information.

    [ tglx: arch/x86 adaptation ]

    Signed-off-by: Roland McGrath
    Signed-off-by: Andi Kleen
    Signed-off-by: Ingo Molnar
    Signed-off-by: Thomas Gleixner

    Roland McGrath
     

17 Oct, 2007

4 commits

  • Fix typos in CONFIG_RELOCATABLE. Use tab + 2 spaces for indentation on all
    lines.

    Signed-off-by: Randy Dunlap
    Cc: Bernhard Walle
    Cc: Vivek Goyal
    Cc: "Eric W. Biederman"
    Cc: Haren Myneni
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • It makes more sense to make instrumentation support experimental on a
    case-by-case basis.

    Signed-off-by: Robert P. J. Day
    Cc: Andi Kleen
    Cc: "Luck, Tony"
    Cc: Paul Mackerras
    Cc: Benjamin Herrenschmidt
    Cc: "David S. Miller"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Robert P. J. Day
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild: (40 commits)
    kbuild: introduce ccflags-y, asflags-y and ldflags-y
    kbuild: enable 'make CPPFLAGS=...' to add additional options to CPP
    kbuild: enable use of AFLAGS and CFLAGS on commandline
    kbuild: enable 'make AFLAGS=...' to add additional options to AS
    kbuild: fix AFLAGS use in h8300 and m68knommu
    kbuild: check for wrong use of CFLAGS
    kbuild: enable 'make CFLAGS=...' to add additional options to CC
    kbuild: fix up CFLAGS usage
    kbuild: make modpost detect unterminated device id lists
    kbuild: call export_report from the Makefile
    kbuild: move Kai Germaschewski to CREDITS
    kconfig/menuconfig: distinguish between selected-by-another options and comments
    kconfig: tristate choices with mixed tristate and boolean values
    include/linux/Kbuild: remove duplicate entries
    kbuild: kill backward compatibility checks
    kbuild: kill EXTRA_ARFLAGS
    kbuild: fix documentation in makefiles.txt
    kbuild: call make once for all targets when O=.. is used
    kbuild: pass -g to assembler under CONFIG_DEBUG_INFO
    kbuild: update _shipped files for kconfig syntax cleanup
    ...

    Fix up conflicts in arch/um/sys-{x86_64,i386}/Makefile manually.

    Linus Torvalds
     
  • x86_64 uses 2M page table entries to map its 1-1 kernel space. We also
    implement the virtual memmap using 2M page table entries. So there is no
    additional runtime overhead over FLATMEM, initialisation is slightly more
    complex. As FLATMEM still references memory to obtain the mem_map pointer and
    SPARSEMEM_VMEMMAP uses a compile time constant, SPARSEMEM_VMEMMAP should be
    superior.

    With this SPARSEMEM becomes the most efficient way of handling virt_to_page,
    pfn_to_page and friends for UP, SMP and NUMA on x86_64.

    [apw@shadowen.org: code resplit, style fixups]
    [apw@shadowen.org: vmemmap x86_64: ensure end of section memmap is initialised]
    Signed-off-by: Christoph Lameter
    Signed-off-by: Andy Whitcroft
    Acked-by: Mel Gorman
    Cc: Andi Kleen
    Cc: KAMEZAWA Hiroyuki
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christoph Lameter
     

16 Oct, 2007

1 commit

  • The variable AFLAGS is a wellknown variable and the usage by
    kbuild may result in unexpected behaviour.
    On top of that several people over time has asked for a way to
    pass in additional flags to gcc.

    This patch replace use of AFLAGS with KBUILD_AFLAGS all over
    the tree.

    Patch was tested on following architectures:
    alpha, arm, i386, x86_64, mips, sparc, sparc64, ia64, m68k, s390

    Signed-off-by: Sam Ravnborg

    Sam Ravnborg
     

15 Oct, 2007

1 commit

  • The variable CFLAGS is a wellknown variable and the usage by
    kbuild may result in unexpected behaviour.
    On top of that several people over time has asked for a way to
    pass in additional flags to gcc.

    This patch replace use of CFLAGS with KBUILD_CFLAGS all over the
    tree and enabling one to use:
    make CFLAGS=...
    to specify additional gcc commandline options.

    One usecase is when trying to find gcc bugs but other
    use cases has been requested too.

    Patch was tested on following architectures:
    alpha, arm, i386, x86_64, mips, sparc, sparc64, ia64, m68k

    Test was simple to do a defconfig build, apply the patch and check
    that nothing got rebuild.

    Signed-off-by: Sam Ravnborg

    Sam Ravnborg
     

13 Oct, 2007

5 commits

  • * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6: (37 commits)
    PCI: merge almost all of pci_32.h and pci_64.h together
    PCI: X86: Introduce and enable PCI domain support
    PCI: Add 'nodomains' boot option, and pci_domains_supported global
    PCI: modify PCI bridge control ISA flag for clarity
    PCI: use _CRS for PCI resource allocation
    PCI: avoid P2P prefetch window for expansion ROMs
    PCI: skip ISA ioresource alignment on some systems
    PCI: remove transparent bridge sizing
    pci: write file size to inode on proc bus file write
    pci: use size stored in proc_dir_entry for proc bus files
    pci: implement "pci=noaer"
    PCI: fix IDE legacy mode resources
    MSI: Use correct data offset for 32-bit MSI in read_msi_msg()
    PCI: Fix incorrect argument order to list_add_tail() in PCI dynamic ID code
    PCI: i386: Compaq EVO N800c needs PCI bus renumbering
    PCI: Remove no longer correct documentation regarding MSI vector assignment
    PCI: re-enable onboard sound on "MSI K8T Neo2-FIR"
    PCI: quirk_vt82c586_acpi: Omit reading PCI revision ID
    PCI: quirk amd_8131_mmrbc: Omit reading pci revision ID
    cpqphp: Use PCI_CLASS_REVISION instead of PCI_REVISION_ID for read
    ...

    Linus Torvalds
     
  • * fix bug in pci_read() and pci_write() which prevented PCI domain
    support from working (hardcoded domain 0).

    * unconditionally enable CONFIG_PCI_DOMAINS

    * implement pci_domain_nr() and pci_proc_domain(), as required of
    all arches when CONFIG_PCI_DOMAINS is enabled.

    * store domain in struct pci_sysdata, as assigned by ACPI

    * support "pci=nodomains"

    Signed-off-by: Jeff Garzik
    Cc: Andi Kleen
    Signed-off-by: Greg Kroah-Hartman

    Jeff Garzik
     
  • Finally switch to the clockevents code. Share code with i386 for
    hpet and PIT.

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Chris Wright
    Signed-off-by: Ingo Molnar
    Signed-off-by: Arjan van de Ven

    Thomas Gleixner
     
  • Signed-off-by: Thomas Gleixner
    Signed-off-by: Chris Wright
    Signed-off-by: Ingo Molnar
    Signed-off-by: Arjan van de Ven

    Thomas Gleixner
     
  • TSC must be verified by a continous and reliable clocksource to
    allow high resolution timers and or dynamic ticks.

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Ingo Molnar
    Signed-off-by: Arjan van de Ven

    Thomas Gleixner
     

11 Oct, 2007

24 commits