1. 13 Feb, 2009 8 commits
    • Ian Campbell's avatar
      xen: fix xen_flush_tlb_others · 694aa960
      Ian Campbell authored
      The commit
          commit 4595f962
          Author: Rusty Russell <rusty@rustcorp.com.au>
          Date:   Sat Jan 10 21:58:09 2009 -0800
      
              x86: change flush_tlb_others to take a const struct cpumask
      
      causes xen_flush_tlb_others to allocate a multicall and then issue it
      without initializing it in the case where the cpumask is empty,
      leading to:
      
              [    8.354898] 1 multicall(s) failed: cpu 1
              [    8.354921] Pid: 2213, comm: bootclean Not tainted 2.6.29-rc3-x86_32p-xenU-tip #135
              [    8.354937] Call Trace:
              [    8.354955]  [<c01036e3>] xen_mc_flush+0x133/0x1b0
              [    8.354971]  [<c0105d2a>] ? xen_force_evtchn_callback+0x1a/0x30
              [    8.354988]  [<c0105a60>] xen_flush_tlb_others+0xb0/0xd0
              [    8.355003]  [<c0126643>] flush_tlb_page+0x53/0xa0
              [    8.355018]  [<c0176a80>] do_wp_page+0x2a0/0x7c0
              [    8.355034]  [<c0238f0a>] ? notify_remote_via_irq+0x3a/0x70
              [    8.355049]  [<c0178950>] handle_mm_fault+0x7b0/0xa50
              [    8.355065]  [<c0131a3e>] ? wake_up_new_task+0x8e/0xb0
              [    8.355079]  [<c01337b5>] ? do_fork+0xe5/0x320
              [    8.355095]  [<c0121919>] do_page_fault+0xe9/0x240
              [    8.355109]  [<c0121830>] ? do_page_fault+0x0/0x240
              [    8.355125]  [<c032457a>] error_code+0x72/0x78
              [    8.355139]   call  1/1: op=2863311530 arg=[aaaaaaaa] result=-38     xen_flush_tlb_others+0x41/0xd0
      
      Since empty cpumasks are rare and undoing an xen_mc_entry() is tricky
      just issue such requests normally.
      Signed-off-by: default avatarIan Campbell <ian.campbell@citrix.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      694aa960
    • Ingo Molnar's avatar
      Merge branches 'x86/paravirt', 'x86/pat', 'x86/setup-v2', 'x86/subarch',... · 7032e869
      Ingo Molnar authored
      Merge branches 'x86/paravirt', 'x86/pat', 'x86/setup-v2', 'x86/subarch', 'x86/uaccess' and 'x86/urgent' into x86/core
      7032e869
    • Ingo Molnar's avatar
      Merge branch 'x86/mm' into x86/core · f268fe73
      Ingo Molnar authored
      f268fe73
    • Ingo Molnar's avatar
      Merge branches 'x86/acpi', 'x86/asm', 'x86/cpudetect', 'x86/crashdump',... · a56cdcb6
      Ingo Molnar authored
      Merge branches 'x86/acpi', 'x86/asm', 'x86/cpudetect', 'x86/crashdump', 'x86/debug', 'x86/defconfig', 'x86/doc', 'x86/header-fixes', 'x86/headers' and 'x86/minor-fixes' into x86/core
      a56cdcb6
    • Ingo Molnar's avatar
      Merge branch 'x86/cleanups' into x86/core · 881c4776
      Ingo Molnar authored
      881c4776
    • Ingo Molnar's avatar
      Merge branch 'core/percpu' into x86/core · ab639f35
      Ingo Molnar authored
      ab639f35
    • Ingo Molnar's avatar
      Merge branch 'linus' into x86/apic · f8a6b2b9
      Ingo Molnar authored
      Conflicts:
      	arch/x86/kernel/acpi/boot.c
      	arch/x86/mm/fault.c
      f8a6b2b9
    • john stultz's avatar
      x86, hpet: fix for LS21 + HPET = boot hang · b13e2464
      john stultz authored
      Between 2.6.23 and 2.6.24-rc1 a change was made that broke IBM LS21
      systems that had the HPET enabled in the BIOS, resulting in boot hangs
      for x86_64.
      
      Specifically commit b8ce3359, which
      merges the i386 and x86_64 HPET code.
      
      Prior to this commit, when we setup the HPET timers in x86_64, we did
      the following:
      
      	hpet_writel(HPET_TN_ENABLE | HPET_TN_PERIODIC | HPET_TN_SETVAL |
                          HPET_TN_32BIT, HPET_T0_CFG);
      
      However after the i386/x86_64 HPET merge, we do the following:
      
      	cfg = hpet_readl(HPET_Tn_CFG(timer));
      	cfg |= HPET_TN_ENABLE | HPET_TN_PERIODIC |
      			HPET_TN_SETVAL | HPET_TN_32BIT;
      	hpet_writel(cfg, HPET_Tn_CFG(timer));
      
      However on LS21s with HPET enabled in the BIOS, the HPET_T0_CFG register
      boots with Level triggered interrupts (HPET_TN_LEVEL) enabled. This
      causes the periodic interrupt to be not so periodic, and that results in
      the boot time hang I reported earlier in the delay calibration.
      
      My fix: Always disable HPET_TN_LEVEL when setting up periodic mode.
      Signed-off-by: default avatarJohn Stultz <johnstul@us.ibm.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      b13e2464
  2. 12 Feb, 2009 18 commits
  3. 11 Feb, 2009 14 commits