1. 30 Aug, 2006 5 commits
  2. 25 Aug, 2006 4 commits
  3. 24 Aug, 2006 1 commit
    • Adam Litke's avatar
      [POWERPC] hugepage BUG fix · c9169f87
      Adam Litke authored
      On Tue, 2006-08-15 at 08:22 -0700, Dave Hansen wrote:
      > kernel BUG in cache_free_debugcheck at mm/slab.c:2748!
      
      Alright, this one is only triggered when slab debugging is enabled.  The
      slabs are assumed to be aligned on a HUGEPTE_TABLE_SIZE boundary.  The free
      path makes use of this assumption and uses the lowest nibble to pass around
      an index into an array of kmem_cache pointers.  With slab debugging turned
      on, the slab is still aligned, but the "working" object pointer is not.
      This would break the assumption above that a full nibble is available for
      the PGF_CACHENUM_MASK.
      
      The following patch reduces PGF_CACHENUM_MASK to cover only the two least
      significant bits, which is enough to cover the current number of 4 pgtable
      cache types.  Then use this constant to mask out the appropriate part of
      the huge pte pointer.
      Signed-off-by: default avatarAdam Litke <agl@us.ibm.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
      c9169f87
  4. 23 Aug, 2006 11 commits
  5. 18 Aug, 2006 3 commits
  6. 17 Aug, 2006 8 commits
  7. 08 Aug, 2006 2 commits
    • Haren Myneni's avatar
      [POWERPC] Fix might-sleep warning on removing cpus · 81b73dd9
      Haren Myneni authored
      Noticing the following might_sleep warning (dump_stack()) during kdump
      testing when CONFIG_DEBUG_SPINLOCK_SLEEP is enabled. All secondary CPUs
      will be calling rtas_set_indicator with interrupts disabled to remove
      them from global interrupt queue.
      
      BUG: sleeping function called from invalid context at
      arch/powerpc/kernel/rtas.c:463
      in_atomic():1, irqs_disabled():1
      Call Trace:
      [C00000000FFFB970] [C000000000010234] .show_stack+0x68/0x1b0 (unreliable)
      [C00000000FFFBA10] [C000000000059354] .__might_sleep+0xd8/0xf4
      [C00000000FFFBA90] [C00000000001D1BC] .rtas_busy_delay+0x20/0x5c
      [C00000000FFFBB20] [C00000000001D8A8] .rtas_set_indicator+0x6c/0xcc
      [C00000000FFFBBC0] [C000000000048BF4] .xics_teardown_cpu+0x118/0x134
      [C00000000FFFBC40] [C00000000004539C]
      .pseries_kexec_cpu_down_xics+0x74/0x8c
      [C00000000FFFBCC0] [C00000000002DF08] .crash_ipi_callback+0x15c/0x188
      [C00000000FFFBD50] [C0000000000296EC] .smp_message_recv+0x84/0xdc
      [C00000000FFFBDC0] [C000000000048E08] .xics_ipi_dispatch+0xf0/0x130
      [C00000000FFFBE50] [C00000000009EF10] .handle_IRQ_event+0x7c/0xf8
      [C00000000FFFBF00] [C0000000000A0A14] .handle_percpu_irq+0x90/0x10c
      [C00000000FFFBF90] [C00000000002659C] .call_handle_irq+0x1c/0x2c
      [C00000000058B9C0] [C00000000000CA10] .do_IRQ+0xf4/0x1a4
      [C00000000058BA50] [C0000000000044EC] hardware_interrupt_entry+0xc/0x10
       --- Exception: 501 at .plpar_hcall_norets+0x14/0x1c
         LR = .pseries_dedicated_idle_sleep+0x190/0x1d4
      [C00000000058BD40] [C00000000058BDE0] 0xc00000000058bde0 (unreliable)
      [C00000000058BDF0] [C00000000001270C] .cpu_idle+0x10c/0x1e0
      [C00000000058BE70] [C000000000009274] .rest_init+0x44/0x5c
      
      To fix this issue, rtas_set_indicator_fast() is added so that will not
      wait for RTAS 'busy' delay and this new function is used for kdump (in
      xics_teardown_cpu()) and for CPU hotplug ( xics_migrate_irqs_away() and
      xics_setup_cpu()).
      
      Note that the platform architecture spec says that set-indicator
      on the indicator we're using here is not permitted to return the
      busy or extended busy status codes.
      Signed-off-by: default avatarHaren Myneni <haren@us.ibm.com>
      Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
      81b73dd9
    • Sonny Rao's avatar
      [POWERPC] fix PMU initialization on pseries lpar · dcc42f48
      Sonny Rao authored
      We should not be calling power4_enable_pmcs() in
      pseries_lpar_enable_pmcs(); just doing the hypercall is sufficient.
      Prior to 2.6.15 we did not call power4_enable_pmcs() for an lpar.
      
      power4_enable_pmcs() tries to read the hid0 register which is no
      longer legal for an lpar in newer Power processors.
      Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
      dcc42f48
  8. 06 Aug, 2006 6 commits
    • Linus Torvalds's avatar
      Linux v2.6.18-rc4 · 9f737633
      Linus Torvalds authored
      9f737633
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/dtor/input · 6e1e6325
      Linus Torvalds authored
      * 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/dtor/input: (24 commits)
        Input: ati_remote - use msec instead of jiffies
        Input: ati_remote - add missing input_sync()
        Input: ati_remote - relax permissions sysfs module parameters
        Input: ati_remote - make filter time a module parameter
        Input: atkbd - restore repeat rate when resuming
        Input: trackpoint - activate protocol when resuming
        Input: logips2pp - fix button mapping for MX300
        Input: keyboard - change to use kzalloc
        Input: serio/gameport - check whether driver core calls succeeded
        Input: spaceball - make 4000FLX Lefty work
        Input: keyboard - simplify emulate_raw() implementation
        Input: keyboard - remove static variable and clean up initialization
        Input: hiddev - use standard list implementation
        Input: add missing handler->start() call
        Input: HID - fix potential out-of-bound array access
        Input: fix list iteration in input_release_device()
        Input: iforce - add Trust Force Feedback Race Master support
        Input: iforce - check array bounds before accessing elements
        Input: libps2 - warn instead of oopsing when passed bad arguments
        Input: fm801-gp - fix use after free
        ...
      6e1e6325
    • Linus Torvalds's avatar
      Merge master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa · a05ef8bf
      Linus Torvalds authored
      * master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa:
        [ALSA] Don't reject O_RDWR at opening PCM OSS with read/write-only device
        [ALSA] snd-emu10k1: Implement support for Audigy 2 ZS [SB0353]
        [ALSA] add MAINTAINERS entry for snd-aoa
        [ALSA] aoa: platform function gpio: ignore errors from functions that don't exist
        [ALSA] make snd-powermac load even when it can't bind the device
        [ALSA] aoa: fix toonie codec
        [ALSA] aoa: feature gpio layer: fix IRQ access
        [ALSA] Conversions from kmalloc+memset to k(z|c)alloc
        [ALSA] snd-emu10k1: Fixes ALSA bug#2190
      a05ef8bf
    • Linus Torvalds's avatar
      Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 · cb3f1e7b
      Linus Torvalds authored
      * master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
        [LAPB]: Fix windowsize check
        [TCP]: Fixes IW > 2 cases when TCP is application limited
        [PKT_SCHED] RED: Fix overflow in calculation of queue average
        [LLX]: SOCK_DGRAM interface fixes
        [PKT_SCHED]: Return ENOENT if qdisc module is unavailable
        [BRIDGE]: netlink status fix
      cb3f1e7b
    • David Woodhouse's avatar
      [PATCH] SCX200_ACB: eliminate spurious timeout errors · 3e3183ba
      David Woodhouse authored
      While busy-waiting for completion, check the hardware after scheduling;
      don't schedule and then immediately check the _timeout_.  If the yield()
      took a long time (as it does on my OLPC prototype board when it's busy),
      we'd report a timeout even though the hardware was now ready.
      
      This fixes it, and also switches the yield() for a cond_resched() because
      we don't actually want to be _that_ nice about it.  I see nice
      tightly-packed SMBus transactions now, rather than waiting for milliseconds
      between successive phases.
      
      Actually, we shouldn't be busy-waiting here at all.  We should be using
      interrupts.  That's an exercise for another day though.
      Signed-off-by: default avatarDavid Woodhouse <dwmw2@infradead.org>
      Cc: Christer Weinigel <wingel@nano-system.com>
      Cc: <Jordan.Crouse@amd.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      3e3183ba
    • Eric Sandeen's avatar
      [PATCH] udf: initialize parts of inode earlier in create · 225add61
      Eric Sandeen authored
      I saw an oops down this path when trying to create a new file on a UDF
      filesystem which was internally marked as readonly, but mounted rw:
      
      udf_create
              udf_new_inode
                      new_inode
                              alloc_inode
                              	udf_alloc_inode
                      udf_new_block
                              returns EIO due to readonlyness
                      iput (on error)
                              udf_put_inode
                                      udf_discard_prealloc
                                              udf_next_aext
                                                      udf_current_aext
                                                              udf_get_fileshortad
                                                                      OOPS
      
      the udf_discard_prealloc() path was examining uninitialized fields of the
      udf inode.
      
      udf_discard_prealloc() already has this code to short-circuit the discard
      path if no extents are preallocated:
      
              if (UDF_I_ALLOCTYPE(inode) == ICBTAG_FLAG_AD_IN_ICB ||
                      inode->i_size == UDF_I_LENEXTENTS(inode))
              {
                      return;
              }
      
      so if we initialize UDF_I_LENEXTENTS(inode) = 0 earlier in udf_new_inode,
      we won't try to free the (not) preallocated blocks, since this will match
      the i_size = 0 set when the inode was initialized.
      Signed-off-by: default avatarEric Sandeen <sandeen@sandeen.net>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      225add61