Skip to content
Snippets Groups Projects
  1. Feb 28, 2006
  2. Feb 27, 2006
    • Michael Ellerman's avatar
      [PATCH] powerpc/iseries: Fix double phys_to_abs bug in htab_bolt_mapping · 56ec6462
      Michael Ellerman authored
      
      Before the merge I updated create_pte_mapping() to work for iSeries, by
      calling iSeries_hpte_bolt_or_insert. (4c55130b)
      
      Later we changed iSeries_hpte_insert to cope with the bolting case, and called
      that instead from create_pte_mapping() (which was renamed to htab_bolt_mapping)
      (3c726f8d).
      
      Unfortunately that change introduced a subtle bug, where we pass an absolute
      address to iSeries_hpte_insert() where it expects a physical address. This
      leads to us calling phys_to_abs() twice on the physical address, which is
      seriously bogus.
      
      This only causes a problem if the absolute address from the first translation
      can be looked up again in the chunk_map, which depends on the size and layout
      of memory. I've seen it fail on one box, but not others.
      
      The minimal fix is to pass the physical address to iSeries_hpte_insert(). For
      2.6.17 we should make phys_to_abs() BUG if we try to double-translate an
      address.
      
      Signed-off-by: default avatarMichael Ellerman <michael@ellerman.id.au>
      Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
      56ec6462
    • Olaf Hering's avatar
      [PATCH] powerpc: fix NULL pointer in handle_eeh_events · 273d2803
      Olaf Hering authored
      
      This patch fixes a crash in handle_eeh_events,
      but ethtool -t still doesnt work right.
      
      ...
      pepino:~ # cpu 0x3: Vector: 300 (Data Access) at [c00000005192bbe0]
          pc: c00000000004a380: .handle_eeh_events+0xe0/0x23c
          lr: c00000000004a374: .handle_eeh_events+0xd4/0x23c
          sp: c00000005192be60
         msr: 9000000000009032
         dar: 268
       dsisr: 40000000
        current = 0xc0000001fe7bf1a0
        paca    = 0xc00000000048b280
          pid   = 16322, comm = eehd
      enter ? for help
      [c00000005192bf00] c00000000004a808 .eeh_event_handler+0xcc/0x130
      [c00000005192bf90] c000000000025e00 .kernel_thread+0x4c/0x68
      
      ...
      
      (none):/# /usr/sbin/ethtool -i eth0
      driver: e100
      version: 3.5.10-k2-NAPI
      firmware-version: N/A
      bus-info: 0000:21:01.0
      (none):/# /usr/sbin/ethtool -t eth0
      Call Trace:
      [C00000000F8DEFF0] [C00000000000F270] .show_stack+0x74/0x1b4 (unreliable)
      [C00000000F8DF0A0] [C000000000049D04] .eeh_dn_check_failure+0x290/0x2d8
      [C00000000F8DF150] [C000000000049E58] .eeh_check_failure+0x10c/0x138
      [C00000000F8DF1E0] [C0000000002DFDB0] .e100_hw_reset+0x70/0xf4
      [C00000000F8DF270] [C0000000002E1BBC] .e100_hw_init+0x2c/0x260
      [C00000000F8DF310] [C0000000002E2464] .e100_loopback_test+0x8c/0x220
      [C00000000F8DF3C0] [C0000000002E28DC] .e100_diag_test+0xdc/0x16c
      [C00000000F8DF490] [C000000000420BE0] .dev_ethtool+0xf24/0x14f8
      [C00000000F8DF8F0] [C00000000041F4A8] .dev_ioctl+0x5cc/0x740
      [C00000000F8DFA20] [C00000000040FEFC] .sock_ioctl+0x3d0/0x404
      [C00000000F8DFAC0] [C0000000000D513C] .do_ioctl+0x68/0x108
      [C00000000F8DFB50] [C0000000000D56B0] .vfs_ioctl+0x4d4/0x510
      [C00000000F8DFC10] [C0000000000D5740] .sys_ioctl+0x54/0x94
      [C00000000F8DFCC0] [C0000000000FB6EC] .ethtool_ioctl+0x11c/0x150
      [C00000000F8DFD60] [C0000000000F7E40] .compat_sys_ioctl+0x338/0x3bc
      [C00000000F8DFE30] [C00000000000871C] syscall_exit+0x0/0x40
      EEH: Detected PCI bus error on device 0000:21:01.0
      EEH: This PCI device has failed 1 times since last reboot: <NULL> -
      
      modprobe: FATAL: Could not load /lib/modules/2.6.16-rc4-git7/modules.dep: No such file or directory
      
      Cannot get strings: No such device
      (none):/#
      (none):/# EEH: Unable to configure device bridge (-3) for /pci@400000000110/pci@2,2
      
      (none):/# Call Trace:
      [C00000000FA17940] [C00000000000F270] .show_stack+0x74/0x1b4 (unreliable)
      [C00000000FA179F0] [C000000000049D04] .eeh_dn_check_failure+0x290/0x2d8
      [C00000000FA17AA0] [C00000000001E114] .rtas_read_config+0x120/0x154
      [C00000000FA17B40] [C000000000049664] .early_enable_eeh+0x274/0x2bc
      [C00000000FA17C00] [C000000000049708] .eeh_add_device_early+0x5c/0x6c
      [C00000000FA17C90] [C000000000049748] .eeh_add_device_tree_early+0x30/0x5c
      [C00000000FA17D20] [C000000000046568] .pcibios_add_pci_devices+0x8c/0x1f8
      [C00000000FA17DD0] [C00000000004A528] .eeh_reset_device+0xe0/0x110
      [C00000000FA17E60] [C00000000004A698] .handle_eeh_events+0x140/0x250
      [C00000000FA17F00] [C00000000004AC7C] .eeh_event_handler+0xe8/0x140
      [C00000000FA17F90] [C000000000025784] .kernel_thread+0x4c/0x68
      EEH: Detected PCI bus error on device <NULL>
      EEH: This PCI device has failed 1 times since last reboot: <NULL> -
      EEH: Unable to configure device bridge (-3) for /pci@400000000110/pci@2,2
      Call Trace:
      [C00000000FA17940] [C00000000000F270] .show_stack+0x74/0x1b4 (unreliable)
      [C00000000FA179F0] [C000000000049D04] .eeh_dn_check_failure+0x290/0x2d8
      [C00000000FA17AA0] [C00000000001E114] .rtas_read_config+0x120/0x154
      [C00000000FA17B40] [C000000000049664] .early_enable_eeh+0x274/0x2bc
      [C00000000FA17C00] [C000000000049708] .eeh_add_device_early+0x5c/0x6c
      [C00000000FA17C90] [C000000000049748] .eeh_add_device_tree_early+0x30/0x5c
      [C00000000FA17D20] [C000000000046568] .pcibios_add_pci_devices+0x8c/0x1f8
      [C00000000FA17DD0] [C00000000004A528] .eeh_reset_device+0xe0/0x110
      [C00000000FA17E60] [C00000000004A698] .handle_eeh_events+0x140/0x250
      [C00000000FA17F00] [C00000000004AC7C] .eeh_event_handler+0xe8/0x140
      [C00000000FA17F90] [C000000000025784] .kernel_thread+0x4c/0x68
      EEH: Detected PCI bus error on device <NULL>
      EEH: This PCI device has failed 1 times since last reboot: <NULL> -
      EEH: Unable to configure device bridge (-3) for /pci@400000000110/pci@2,2
      Call Trace:
      [C00000000FA17940] [C00000000000F270] .show_stack+0x74/0x1b4 (unreliable)
      [C00000000FA179F0] [C000000000049D04] .eeh_dn_check_failure+0x290/0x2d8
      [C00000000FA17AA0] [C00000000001E114] .rtas_read_config+0x120/0x154
      [C00000000FA17B40] [C000000000049664] .early_enable_eeh+0x274/0x2bc
      [C00000000FA17C00] [C000000000049708] .eeh_add_device_early+0x5c/0x6c
      [C00000000FA17C90] [C000000000049748] .eeh_add_device_tree_early+0x30/0x5c
      [C00000000FA17D20] [C000000000046568] .pcibios_add_pci_devices+0x8c/0x1f8
      [C00000000FA17DD0] [C00000000004A528] .eeh_reset_device+0xe0/0x110
      [C00000000FA17E60] [C00000000004A698] .handle_eeh_events+0x140/0x250
      [C00000000FA17F00] [C00000000004AC7C] .eeh_event_handler+0xe8/0x140
      [C00000000FA17F90] [C000000000025784] .kernel_thread+0x4c/0x68
      EEH: Detected PCI bus error on device <NULL>
      and so on
      
      Signed-off-by: default avatarOlaf Hering <olh@suse.de>
      Acked-by: default avatarLinas Vepstas <linas@austin.ibm.com>
      Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
      273d2803
    • Benjamin Herrenschmidt's avatar
      [PATCH] powerpc: vdso 64bits gettimeofday bug · 634473db
      Benjamin Herrenschmidt authored
      
      A bug in the assembly code of the vdso can cause gettimeofday() to hang
      or to return incorrect results. The wrong register was used to test for
      pending updates of the calibration variables and to create a dependency
      for subsequent loads. This fixes it.
      
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
      634473db
    • John Rose's avatar
      [PATCH] powerpc: fix dynamic PCI probe regression · 827c1a6c
      John Rose authored
      
      Some hotplug driver functions were migrated to the kernel for use by EEH
      in commit 2bf6a8fa.
      
      Previously, the PCI Hotplug module had been changed to use the new
      OFDT-based PCI probe when appropriate:
      5fa80fcd
      
      When rpaphp_pci_config_slot() was moved from the rpaphp driver to the
      new kernel function pcibios_add_pci_devices(), the OFDT-based probe
      stuff was dropped.  This patch restores it.
      
      Signed-off-by: default avatarJohn Rose <johnrose@austin.ibm.com>
      Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
      827c1a6c
    • Linus Torvalds's avatar
    • Linus Torvalds's avatar
      Revert "[PATCH] x86_64: Only do the clustered systems have unsynchronized TSC... · 637029c6
      Linus Torvalds authored
      Revert "[PATCH] x86_64: Only do the clustered systems have unsynchronized TSC assumption on IBM systems"
      
      This reverts commit 13a229ab.
      
      Quoth Andi:
        "After some consideration and feedback from various people it turns
         out this wasn't that good an idea.  It has some problems and needs
         more work.  Since it was only an optimization anyways it's best to
         just back it out again for now."
      
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      637029c6
    • Jeff Garzik's avatar
      [libata] Disable FUA · c3c013a2
      Jeff Garzik authored
      Until problems are sorted.
      c3c013a2
    • Linus Torvalds's avatar
      d4f0f122
    • Eric Sandeen's avatar
      [XFS] Don't map non-uptodate buffers in xfs_probe_cluster; also fixes · 2353e8e9
      Eric Sandeen authored
      obscure corruption case
      
      SGI-PV: 942658
      SGI-Modid: xfs-linux-melb:xfs-kern:207119a
      
      Signed-off-by: default avatarEric Sandeen <sandeen@sgi.com>
      Signed-off-by: default avatarNathan Scott <nathans@sgi.com>
      2353e8e9
    • Nathan Scott's avatar
      [XFS] Reduce stack use during quota mounts (caused a panic). This · dae81d47
      Nathan Scott authored
      regressed recently via the fix for inherited quota inode attributes.
      
      SGI-PV: 947312
      SGI-Modid: xfs-linux-melb:xfs-kern:25318a
      
      Signed-off-by: default avatarNathan Scott <nathans@sgi.com>
      dae81d47
    • Nathan Scott's avatar
      [XFS] Fix a realtime allocator regression introduced by an old iget race · 07ff2fa8
      Nathan Scott authored
      fix.  Noticed by Roger Willcocks.
      
      SGI-PV: 949821
      SGI-Modid: xfs-linux-melb:xfs-kern:25257a
      
      Signed-off-by: default avatarNathan Scott <nathans@sgi.com>
      07ff2fa8
    • Linus Torvalds's avatar
    • Arnaldo Carvalho de Melo's avatar
      [REQSK]: Don't reset rskq_defer_accept in reqsk_queue_alloc · ba13c984
      Arnaldo Carvalho de Melo authored
      
      In 295f7324 I moved defer_accept from
      tcp_sock to request_queue and mistakingly reset it at reqsl_queue_alloc, causing
      calls to setsockopt(TCP_DEFER_ACCEPT ) to be lost after bind, the fix is to
      remove the zeroing of rskq_defer_accept from reqsl_queue_alloc.
      
      Thanks to Alexandra N. Kossovsky <Alexandra.Kossovsky@oktetlabs.ru> for
      reporting and testing the suggested fix.
      
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@mandriva.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ba13c984
    • Patrick McHardy's avatar
      [NETFILTER]: Restore {ipt,ip6t,ebt}_LOG compatibility · bafac2a5
      Patrick McHardy authored
      
      The nfnetlink_log infrastructure changes broke compatiblity of the LOG
      targets. They currently use whatever log backend was registered first,
      which means that if ipt_ULOG was loaded first, no messages will be printed
      to the ring buffer anymore.
      
      Restore compatiblity by using the old log functions by default and only use
      the nf_log backend if the user explicitly said so.
      
      Signed-off-by: default avatarPatrick McHardy <kaber@trash.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      bafac2a5
    • Patrick McHardy's avatar
      [NETFILTER]: nf_queue: fix end-of-list check · 45fe4dc0
      Patrick McHardy authored
      
      The comparison wants to find out if the last list iteration reached the
      end of the list. It needs to compare the iterator with the list head to
      do this, not the element it is looking for.
      
      Signed-off-by: default avatarPatrick McHardy <kaber@trash.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      45fe4dc0
    • Patrick McHardy's avatar
      [NETFILTER]: nf_queue: remove unnecessary check for outfn · e121e9ec
      Patrick McHardy authored
      
      The only point of registering a queue handler is to provide an outfn,
      so there is no need to check for it.
      
      Signed-off-by: default avatarPatrick McHardy <kaber@trash.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      e121e9ec
Loading