1. 23 8月, 2007 3 次提交
  2. 22 8月, 2007 1 次提交
  3. 21 8月, 2007 1 次提交
    • L
      ACPI: boot correctly with "nosmp" or "maxcpus=0" · 61ec7567
      Len Brown 提交于
      In MPS mode, "nosmp" and "maxcpus=0" boot a UP kernel with IOAPIC disabled.
      However, in ACPI mode, these parameters didn't completely disable
      the IO APIC initialization code and boot failed.
      
      init/main.c:
      	Disable the IO_APIC if "nosmp" or "maxcpus=0"
      	undefine disable_ioapic_setup() when it doesn't apply.
      
      i386:
      	delete ioapic_setup(), it was a duplicate of parse_noapic()
      	delete undefinition of disable_ioapic_setup()
      
      x86_64:
      	rename disable_ioapic_setup() to parse_noapic() to match i386
      	define disable_ioapic_setup() in header to match i386
      
      http://bugzilla.kernel.org/show_bug.cgi?id=1641Acked-by: NAndi Kleen <ak@suse.de>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      61ec7567
  4. 19 8月, 2007 4 次提交
  5. 15 8月, 2007 3 次提交
    • H
      [x86 setup] edd.c: make sure MBR signatures actually get reported · 9a5f35d4
      H. Peter Anvin 提交于
      When filling in the MBR signature array, the setup code failed to advance
      boot_params.edd_mbr_sig_buf_entries, which resulted in the valid data
      being ignored.
      Signed-off-by: NH. Peter Anvin <hpa@zytor.com>
      9a5f35d4
    • H
      [x86 setup] Don't use EDD to get the MBR signature · c1a6e2b0
      H. Peter Anvin 提交于
      At least one machine has been identified in the field which advertises
      EDD for all drives but locks up if one attempts an extended read from
      a non-primary drive.
      
      The MBR is always at CHS 0-0-1, so there is no reason to use an
      extended read, other than the possibility that the BIOS cannot handle
      it.
      
      Although this might break as many machines as it fixes (a small number
      either way), the current state is a regression but the reverse is not.
      Therefore revert to the previous state of not using extended read.
      
      Quite probably the Right Thing to do is to read using plain (CHS) read
      and extended read on failure, but that change would definitely have to
      go through -mm first.
      Signed-off-by: NH. Peter Anvin <hpa@zytor.com>
      c1a6e2b0
    • H
      [x86 setup] The current display page is returned in %bh, not %bl · 362cea33
      H. Peter Anvin 提交于
      The current display page is an 8-bit number, even though struct
      screen_info gives it a 16-bit number.  The number is returned in %bh,
      so it needs to be >> 8 before storing.
      
      Special thanks to Jeff Chua for detailed bug reporting.
      Signed-off-by: NH. Peter Anvin <hpa@zytor.com>
      362cea33
  6. 13 8月, 2007 1 次提交
  7. 12 8月, 2007 9 次提交
    • L
      i386: Fix broken mmiocfg accesses · c1502e28
      Linus Torvalds 提交于
      Commit 3320ad99 broke mmio config space
      accesses totally on i386 - it dropped the "reg" offset to the address.
      
      Cc: dean gaudet <dean@arctic.org>
      Cc: Andi Kleen <ak@suse.de>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      c1502e28
    • C
      i386: Fix double fault handler · 3dab307e
      Chuck Ebbert 提交于
      The new percpu code has apparently broken the doublefault handler
      when CONFIG_DEBUG_SPINLOCK is set. Doublefault is handled by
      a hardware task, making the check
      
              SPIN_BUG_ON(lock->owner == current, lock, "recursion");
      
      fault because it uses the FS register to access the percpu data
      for current, and that register is zero in the new TSS. (The trace
      I saw was on 2.6.20 where it was GS, but it looks like this will
      still happen with FS on 2.6.22.)
      
      Initializing FS in the doublefault_tss should fix it.
      
      AK: Also fix broken ptr_ok() and turn printks into KERN_EMERG
      AK: And add a PANIC prefix to make clear the system will hang
      AK: (e.g. x86-64 will recover)
      Signed-off-by: NChuck Ebbert <cebbert@redhat.com>
      Signed-off-by: NAndi Kleen <ak@suse.de>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      3dab307e
    • A
      i386: Fix start_kernel warning · 5fe4486c
      Andi Kleen 提交于
      Fix
      
      WARNING: vmlinux.o(.text+0x183): Section mismatch: reference to .init.text:start_kernel (between 'is386' and 'check_x87')
      Signed-off-by: NAndi Kleen <ak@suse.de>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      5fe4486c
    • A
      i386: Use global flag to disable broken local apic timer on AMD CPUs. · d3f7eae1
      Andi Kleen 提交于
      The Averatec 2370 and some other Turion laptop BIOS seems to program the
      ENABLE_C1E MSR inconsistently between cores. This confuses the lapic
      use heuristics because when C1E is enabled anywhere it seems to affect
      the complete chip.
      
      Use a global flag instead of a per cpu flag to handle this.
      If any CPU has C1E enabled disabled lapic use.
      
      Thanks to Cal Peake for debugging.
      
      Cc: tglx@linutronix.de
      Signed-off-by: NAndi Kleen <ak@suse.de>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      d3f7eae1
    • A
      i386: really stop MCEs during code patching · d2d0251f
      Adrian Bunk 提交于
      It's CONFIG_X86_MCE, not CONFIG_MCE.
      Signed-off-by: NAdrian Bunk <bunk@stusta.de>
      Signed-off-by: NAndi Kleen <ak@suse.de>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      d2d0251f
    • A
      i386: Make patching more robust, fix paravirt issue · ab144f5e
      Andi Kleen 提交于
      Commit 19d36ccd "x86: Fix alternatives
      and kprobes to remap write-protected kernel text" uses code which is
      being patched for patching.
      
      In particular, paravirt_ops does patching in two stages: first it
      calls paravirt_ops.patch, then it fills any remaining instructions
      with nop_out().  nop_out calls text_poke() which calls
      lookup_address() which calls pgd_val() (aka paravirt_ops.pgd_val):
      that call site is one of the places we patch.
      
      If we always do patching as one single call to text_poke(), we only
      need make sure we're not patching the memcpy in text_poke itself.
      This means the prototype to paravirt_ops.patch needs to change, to
      marshal the new code into a buffer rather than patching in place as it
      does now.  It also means all patching goes through text_poke(), which
      is known to be safe (apply_alternatives is also changed to make a
      single patch).
      
      AK: fix compilation on x86-64 (bad rusty!)
      AK: fix boot on x86-64 (sigh)
      AK: merged with other patches
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      Signed-off-by: NAndi Kleen <ak@suse.de>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      ab144f5e
    • A
      x86: Disable CLFLUSH support again · d3f3c934
      Andi Kleen 提交于
      It turns out CLFLUSH support is still not complete; we
      flush the wrong pages.  Again disable it for the release.
      Noticed by Jan Beulich who then also noticed a stupid typo later.
      Signed-off-by: NAndi Kleen <ak@suse.de>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      d3f3c934
    • D
      x86: Work around mmio config space quirk on AMD Fam10h · 3320ad99
      dean gaudet 提交于
      Some broken devices have been discovered to require %al/%ax/%eax registers
      for MMIO config space accesses.  Modify mmconfig.c to use these registers
      explicitly (rather than modify the global readb/writeb/etc inlines).
      
      AK: also changed i386 to always use eax
      AK: moved change to extended space probing to different patch
      AK: reworked with inlines according to Linus' requirements.
      AK: improve comments.
      Signed-off-by: Ndean gaudet <dean@arctic.org>
      Signed-off-by: NAndi Kleen <ak@suse.de>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      3320ad99
    • M
      finish i386 and x86-64 sysdata conversion · 73c59afc
      Muli Ben-Yehuda 提交于
      This patch finishes the i386 and x86-64 ->sysdata conversion and hopefully
      also fixes Riku's and Andy's observed bugs.  It is based on Yinghai Lu's
      and Andy Whitcroft's patches (thanks!) with some changes:
      
      - introduce pci_scan_bus_with_sysdata() and use it instead of
        pci_scan_bus() where appropriate. pci_scan_bus_with_sysdata() will
        allocate the sysdata structure and then call pci_scan_bus().
      - always allocate pci_sysdata dynamically. The whole point of this
        sysdata work is to make it easy to do root-bus specific things
        (e.g., support PCI domains and IOMMU's). I dislike using a default
        struct pci_sysdata in some places and a dynamically allocated
        pci_sysdata elsewhere - the potential for someone indavertantly
        changing the default structure is too high.
      - this patch only makes the minimal changes necessary, i.e., the NUMA node is
        always initialized to -1. Patches to do the right thing with regards
        to the NUMA node can build on top of this (either add a 'node'
        parameter to pci_scan_bus_with_sysdata() or just update the node
        when it becomes known).
      
      The patch was compile tested with various configurations (e.g., NUMAQ,
      VISWS) and run-time tested on i386 and x86-64.  Unfortunately none of my
      machines exhibited the bugs so caveat emptor.
      
      Andy, could you please see if this fixes the NUMA issues you've seen?
      Riku, does this fix "pci=noacpi" on your laptop?
      Signed-off-by: NMuli Ben-Yehuda <muli@il.ibm.com>
      Cc: Yinghai Lu <yhlu.kernel@gmail.com>
      Cc: Andi Kleen <ak@suse.de>
      Cc: Chuck Ebbert <cebbert@redhat.com>
      Cc: <riku.seppala@kymp.net>
      Cc: Andy Whitcroft <apw@shadowen.org>
      Cc: Jeff Garzik <jeff@garzik.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      73c59afc
  8. 08 8月, 2007 1 次提交
  9. 03 8月, 2007 1 次提交
  10. 02 8月, 2007 1 次提交
  11. 01 8月, 2007 9 次提交
  12. 31 7月, 2007 1 次提交
  13. 30 7月, 2007 3 次提交
    • A
      Remove fs.h from mm.h · 4e950f6f
      Alexey Dobriyan 提交于
      Remove fs.h from mm.h. For this,
       1) Uninline vma_wants_writenotify(). It's pretty huge anyway.
       2) Add back fs.h or less bloated headers (err.h) to files that need it.
      
      As result, on x86_64 allyesconfig, fs.h dependencies cut down from 3929 files
      rebuilt down to 3444 (-12.3%).
      
      Cross-compile tested without regressions on my two usual configs and (sigh):
      
      alpha              arm-mx1ads        mips-bigsur          powerpc-ebony
      alpha-allnoconfig  arm-neponset      mips-capcella        powerpc-g5
      alpha-defconfig    arm-netwinder     mips-cobalt          powerpc-holly
      alpha-up           arm-netx          mips-db1000          powerpc-iseries
      arm                arm-ns9xxx        mips-db1100          powerpc-linkstation
      arm-assabet        arm-omap_h2_1610  mips-db1200          powerpc-lite5200
      arm-at91rm9200dk   arm-onearm        mips-db1500          powerpc-maple
      arm-at91rm9200ek   arm-picotux200    mips-db1550          powerpc-mpc7448_hpc2
      arm-at91sam9260ek  arm-pleb          mips-ddb5477         powerpc-mpc8272_ads
      arm-at91sam9261ek  arm-pnx4008       mips-decstation      powerpc-mpc8313_rdb
      arm-at91sam9263ek  arm-pxa255-idp    mips-e55             powerpc-mpc832x_mds
      arm-at91sam9rlek   arm-realview      mips-emma2rh         powerpc-mpc832x_rdb
      arm-ateb9200       arm-realview-smp  mips-excite          powerpc-mpc834x_itx
      arm-badge4         arm-rpc           mips-fulong          powerpc-mpc834x_itxgp
      arm-carmeva        arm-s3c2410       mips-ip22            powerpc-mpc834x_mds
      arm-cerfcube       arm-shannon       mips-ip27            powerpc-mpc836x_mds
      arm-clps7500       arm-shark         mips-ip32            powerpc-mpc8540_ads
      arm-collie         arm-simpad        mips-jazz            powerpc-mpc8544_ds
      arm-corgi          arm-spitz         mips-jmr3927         powerpc-mpc8560_ads
      arm-csb337         arm-trizeps4      mips-malta           powerpc-mpc8568mds
      arm-csb637         arm-versatile     mips-mipssim         powerpc-mpc85xx_cds
      arm-ebsa110        i386              mips-mpc30x          powerpc-mpc8641_hpcn
      arm-edb7211        i386-allnoconfig  mips-msp71xx         powerpc-mpc866_ads
      arm-em_x270        i386-defconfig    mips-ocelot          powerpc-mpc885_ads
      arm-ep93xx         i386-up           mips-pb1100          powerpc-pasemi
      arm-footbridge     ia64              mips-pb1500          powerpc-pmac32
      arm-fortunet       ia64-allnoconfig  mips-pb1550          powerpc-ppc64
      arm-h3600          ia64-bigsur       mips-pnx8550-jbs     powerpc-prpmc2800
      arm-h7201          ia64-defconfig    mips-pnx8550-stb810  powerpc-ps3
      arm-h7202          ia64-gensparse    mips-qemu            powerpc-pseries
      arm-hackkit        ia64-sim          mips-rbhma4200       powerpc-up
      arm-integrator     ia64-sn2          mips-rbhma4500       s390
      arm-iop13xx        ia64-tiger        mips-rm200           s390-allnoconfig
      arm-iop32x         ia64-up           mips-sb1250-swarm    s390-defconfig
      arm-iop33x         ia64-zx1          mips-sead            s390-up
      arm-ixp2000        m68k              mips-tb0219          sparc
      arm-ixp23xx        m68k-amiga        mips-tb0226          sparc-allnoconfig
      arm-ixp4xx         m68k-apollo       mips-tb0287          sparc-defconfig
      arm-jornada720     m68k-atari        mips-workpad         sparc-up
      arm-kafa           m68k-bvme6000     mips-wrppmc          sparc64
      arm-kb9202         m68k-hp300        mips-yosemite        sparc64-allnoconfig
      arm-ks8695         m68k-mac          parisc               sparc64-defconfig
      arm-lart           m68k-mvme147      parisc-allnoconfig   sparc64-up
      arm-lpd270         m68k-mvme16x      parisc-defconfig     um-x86_64
      arm-lpd7a400       m68k-q40          parisc-up            x86_64
      arm-lpd7a404       m68k-sun3         powerpc              x86_64-allnoconfig
      arm-lubbock        m68k-sun3x        powerpc-cell         x86_64-defconfig
      arm-lusl7200       mips              powerpc-celleb       x86_64-up
      arm-mainstone      mips-atlas        powerpc-chrp32
      Signed-off-by: NAlexey Dobriyan <adobriyan@gmail.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      4e950f6f
    • L
      ACPI: restore CONFIG_ACPI_SLEEP · 673d5b43
      Len Brown 提交于
      Restore the 2.6.22 CONFIG_ACPI_SLEEP build option, but now shadowing the
      new CONFIG_PM_SLEEP option.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      [ Modified to work with the PM config setup changes. ]
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      673d5b43
    • R
      Replace CONFIG_SOFTWARE_SUSPEND with CONFIG_HIBERNATION · b0cb1a19
      Rafael J. Wysocki 提交于
      Replace CONFIG_SOFTWARE_SUSPEND with CONFIG_HIBERNATION to avoid
      confusion (among other things, with CONFIG_SUSPEND introduced in the
      next patch).
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      b0cb1a19
  14. 27 7月, 2007 2 次提交