1. Nov 27, 2008
    • Joerg Roedel's avatar
      x86: always define DECLARE_PCI_UNMAP* macros · b627c8b1
      Joerg Roedel authored
      
      
      Impact: fix boot crash on AMD IOMMU if CONFIG_GART_IOMMU is off
      
      Currently these macros evaluate to a no-op except the kernel is compiled
      with GART or Calgary support. But we also need these macros when we have
      SWIOTLB, VT-d or AMD IOMMU in the kernel. Since we always compile at
      least with SWIOTLB we can define these macros always.
      
      This patch is also for stable backport for the same reason the SWIOTLB
      default selection patch is.
      
      Signed-off-by: default avatarJoerg Roedel <joerg.roedel@amd.com>
      Cc: <stable@kernel.org>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      b627c8b1
  2. Nov 26, 2008
  3. Nov 25, 2008
  4. Nov 23, 2008
    • Ian Campbell's avatar
      xen: pin correct PGD on suspend · 86bbc2c2
      Ian Campbell authored
      Impact: fix Xen guest boot failure
      
      commit eefb47f6 ("xen: use
      spin_lock_nest_lock when pinning a pagetable") changed xen_pgd_walk to
      walk over mm->pgd rather than taking pgd as an argument.
      
      This breaks xen_mm_(un)pin_all() because it makes init_mm.pgd readonly
      instead of the pgd we are interested in and therefore the pin subsequently
      fails.
      
      (XEN) mm.c:2280:d15 Bad type (saw 00000000e8000001 != exp 0000000060000000) for mfn bc464 (pfn 21ca7)
      (XEN) mm.c:2665:d15 Error while pinning mfn bc464
      
      [   14.586913] 1 multicall(s) failed: cpu 0
      [   14.586926] Pid: 14, comm: kstop/0 Not tainted 2.6.28-rc5-x86_32p-xenU-00172-gee2f6cc7
      
       #200
      [   14.586940] Call Trace:
      [   14.586955]  [<c030c17a>] ? printk+0x18/0x1e
      [   14.586972]  [<c0103df3>] xen_mc_flush+0x163/0x1d0
      [   14.586986]  [<c0104bc1>] __xen_pgd_pin+0xa1/0x110
      [   14.587000]  [<c015a330>] ? stop_cpu+0x0/0xf0
      [   14.587015]  [<c0104d7b>] xen_mm_pin_all+0x4b/0x70
      [   14.587029]  [<c022bcb9>] xen_suspend+0x39/0xe0
      [   14.587042]  [<c015a330>] ? stop_cpu+0x0/0xf0
      [   14.587054]  [<c015a3cd>] stop_cpu+0x9d/0xf0
      [   14.587067]  [<c01417cd>] run_workqueue+0x8d/0x150
      [   14.587080]  [<c030e4b3>] ? _spin_unlock_irqrestore+0x23/0x40
      [   14.587094]  [<c014558a>] ? prepare_to_wait+0x3a/0x70
      [   14.587107]  [<c0141918>] worker_thread+0x88/0xf0
      [   14.587120]  [<c01453c0>] ? autoremove_wake_function+0x0/0x50
      [   14.587133]  [<c0141890>] ? worker_thread+0x0/0xf0
      [   14.587146]  [<c014509c>] kthread+0x3c/0x70
      [   14.587157]  [<c0145060>] ? kthread+0x0/0x70
      [   14.587170]  [<c0109d1b>] kernel_thread_helper+0x7/0x10
      [   14.587181]   call  1/3: op=14 arg=[c0415000] result=0
      [   14.587192]   call  2/3: op=14 arg=[e1ca2000] result=0
      [   14.587204]   call  3/3: op=26 arg=[c1808860] result=-22
      
      Signed-off-by: default avatarIan Campbell <ian.campbell@citrix.com>
      Acked-by: default avatarJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      86bbc2c2
    • Ingo Molnar's avatar
      Merge branch 'oprofile-for-tip' of... · 3d994e10
      Ingo Molnar authored
      Merge branch 'oprofile-for-tip' of git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile into x86/urgent
      3d994e10
    • Thomas Gleixner's avatar
      x86: revert irq number limitation · a1967d64
      Thomas Gleixner authored
      Impact: fix MSIx not enough irq numbers available regression
      
      The manual revert of the sparse_irq patches missed to bring the number
      of possible irqs back to the .27 status. This resulted in a regression
      when two multichannel network cards were placed in a system with only
      one IO_APIC - causing the networking driver to not have the right
      IRQ and the device not coming up.
      
      Remove the dynamic allocation logic leftovers and simply return
      NR_IRQS in probe_nr_irqs() for now.
      
         Fixes: http://lkml.org/lkml/2008/11/19/354
      
      
      
      Reported-by: default avatarJesper Dangaard Brouer <hawk@diku.dk>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Tested-by: default avatarJesper Dangaard Brouer <hawk@diku.dk>
      Acked-by: default avatarYinghai Lu <yinghai@kernel.org>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      a1967d64
  5. Nov 22, 2008
  6. Nov 21, 2008
  7. Nov 20, 2008
    • Rakib Mullick's avatar
      x86: fixing __cpuinit/__init tangle, xsave_cntxt_init() · bfe085f6
      Rakib Mullick authored
      
      
      Annotate xsave_cntxt_init() as "can be called outside of __init".
      
      Signed-off-by: default avatarRakib Mullick <rakib.mullick@gmail.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      bfe085f6
    • Rakib Mullick's avatar
      x86: fix __cpuinit/__init tangle in init_thread_xstate() · 9bc646f1
      Rakib Mullick authored
      Impact:	fix incorrect __init annotation
      
      This patch removes the following section mismatch warning. A patch set
      was send previously (http://lkml.org/lkml/2008/11/10/407). But
      introduce some other problem, reported by Rufus
      (http://lkml.org/lkml/2008/11/11/46
      
      ). Then Ingo Molnar suggest that,
      it's best to remove __init from xsave_cntxt_init(void). Which is the
      second patch in this series. Now, this one removes the following
      warning.
      
      WARNING: arch/x86/kernel/built-in.o(.cpuinit.text+0x2237): Section
      mismatch in reference from the function cpu_init() to the function
      .init.text:init_thread_xstate()
      The function __cpuinit cpu_init() references
      a function __init init_thread_xstate().
      If init_thread_xstate is only used by cpu_init then
      annotate init_thread_xstate with a matching annotation.
      
      Signed-off-by: default avatarRakib Mullick <rakib.mullick@gmail.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      9bc646f1
    • Alexey Dobriyan's avatar
      net: fix tiny output corruption of /proc/net/snmp6 · 5ece6c2d
      Alexey Dobriyan authored
      
      
      Because "name" is static, it can be occasionally be filled with
      somewhat garbage if two processes read /proc/net/snmp6.
      
      Also, remove useless casts and "-1" -- snprintf() correctly terminates it's
      output.
      
      Signed-off-by: default avatarAlexey Dobriyan <adobriyan@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      5ece6c2d
    • Alan Jenkins's avatar
      atl2: don't request irq on resume if netif running · a849854f
      Alan Jenkins authored
      
      
      If the device is suspended with the cable disconnected, then
      resumed with the cable connected, dev->open is called before
      resume. During resume, we request an IRQ, but the IRQ was
      already assigned during dev->open, resulting in the warning
      shown below.
      
      Don't request an IRQ if the device is running.
      
      Call Trace:
       [<c011b89a>] warn_on_slowpath+0x40/0x59
       [<c023df15>] raw_pci_read+0x4d/0x55
       [<c023dff3>] pci_read+0x1c/0x21
       [<c01bcd81>] __pci_find_next_cap_ttl+0x44/0x70
       [<c01bce86>] __pci_find_next_cap+0x1a/0x1f
       [<c01bcef9>] pci_find_capability+0x28/0x2c
       [<c01c4144>] pci_msi_check_device+0x53/0x62
       [<c01c49c2>] pci_enable_msi+0x3a/0x1cd
       [<e019f17b>] atl2_write_phy_reg+0x40/0x5f [atl2]
       [<c01061b1>] dma_generic_alloc_coherent+0x0/0xd7
       [<e019f107>] atl2_request_irq+0x15/0x49 [atl2]
       [<e01a1481>] atl2_open+0x20b/0x297 [atl2]
       [<c024a35c>] dev_open+0x62/0x91
       [<c0248b9a>] dev_change_flags+0x93/0x141
       [<c024f308>] do_setlink+0x238/0x2d5
       [<c02501b2>] rtnl_setlink+0xa9/0xbf
       [<c0297f0c>] mutex_lock+0xb/0x19
       [<c024ffa7>] rtnl_dump_ifinfo+0x0/0x69
       [<c0250109>] rtnl_setlink+0x0/0xbf
       [<c024fe42>] rtnetlink_rcv_msg+0x185/0x19f
       [<c0240fd1>] sock_rmalloc+0x23/0x57
       [<c024fcbd>] rtnetlink_rcv_msg+0x0/0x19f
       [<c0259457>] netlink_rcv_skb+0x2d/0x71
       [<c024fcb7>] rtnetlink_rcv+0x14/0x1a
       [<c025929e>] netlink_unicast+0x184/0x1e4
       [<c025992a>] netlink_sendmsg+0x233/0x240
       [<c023f405>] sock_sendmsg+0xb7/0xd0
       [<c0129131>] autoremove_wake_function+0x0/0x2b
       [<c0129131>] autoremove_wake_function+0x0/0x2b
       [<c0147796>] mempool_alloc+0x2d/0x9e
       [<c020c923>] scsi_pool_alloc_command+0x35/0x4f
       [<c0297f0c>] mutex_lock+0xb/0x19
       [<c028e867>] unix_stream_recvmsg+0x357/0x3e2
       [<c01b81c9>] copy_from_user+0x23/0x4f
       [<c02452ea>] verify_iovec+0x3e/0x6c
       [<c023f5ab>] sys_sendmsg+0x18d/0x1f0
       [<c023ffa8>] sys_recvmsg+0x146/0x1c8
       [<c0240016>] sys_recvmsg+0x1b4/0x1c8
       [<c0118f48>] __wake_up+0xf/0x15
       [<c02586cd>] netlink_table_ungrab+0x17/0x19
       [<c01b83ba>] copy_to_user+0x25/0x3b
       [<c023fe4a>] move_addr_to_user+0x50/0x68
       [<c0240266>] sys_getsockname+0x6f/0x9a
       [<c0240280>] sys_getsockname+0x89/0x9a
       [<c015046a>] do_wp_page+0x3ae/0x41a
       [<c0151525>] handle_mm_fault+0x4c5/0x540
       [<c02405d0>] sys_socketcall+0x176/0x1b0
       [<c010376d>] sysenter_do_call+0x12/0x21
      
      Signed-off-by: default avatarAlan Jenkins <alan-jenkins@tuffmail.co.uk>
      Signed-off-by: default avatarJay Cliburn <jcliburn@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a849854f