1. 18 Oct, 2004 6 commits
  2. 17 Oct, 2004 5 commits
    • Nathan Lynch's avatar
      [PATCH] ppc64: fix smp_startup_cpu for cpu hotplug · a0d194e3
      Nathan Lynch authored
      This change is needed in order to allow cpus to be onlined after
      boot.  This used to work but the declaration of
      pseries_secondary_smp_init in this file was changed in Ben's big
      cleanup patch a while back, so the cpu would start at a bad address.
      Signed-off-by: default avatarNathan Lynch <nathanl@austin.ibm.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      a0d194e3
    • Nick Piggin's avatar
      [PATCH] kswapd lockup fix · 7ac62185
      Nick Piggin authored
      Fix some bugs in the kswapd logic which can cause kswapd lockups.
      
      The balance_pgdat() logic is supposed to cause kswapd to loop across all zones
      in the node until each zone either
      
      	a) has enough pages free or
      
      	b) is deemed to be in an "all pages unreclaimable" state.
      
      In the latter case, we just give the zone a light scan on each balance_pgdat()
      scan and wait for the zone to come back to life again.
      
      But the zone->all_unreclaimable logic is broken - if the zone has no pages on
      the LRU at all, we perform no scanning of that zone (of course).  So the
      zone->pages_scanned is not incremented and the expression
      
      		if (zone->pages_scanned > zone->present_pages * 2)
      			zone->all_unreclaimable = 1;
      
      never is satisfied.
      
      The patch changes that logic to
      
      		if (zone->pages_scanned >= (zone->nr_active +
      						zone->nr_inactive) * 4)
      			zone->all_unreclaimable = 1;
      
      so if the zone has no LRU pages it will still enter the all_unreclaimable
      state.
      
      
      Another problem is that if the zone has no LRU pages we will tell
      shrink_slab() that we scanned zero LRU pages.  This causes shrink_slab() to
      scan zero slab objects, which is obviously wrong.  So change shrink_slab() to
      perform a decent chunk of slab scanning in this situation.
      
      
      And put a cond_resched() into the balance_pgdat() outer loop.  Probably
      unnecessary, but that's what Jeff had in place when he confirmed that this
      patch fixed the lockup :(
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      7ac62185
    • Pavel Machek's avatar
      [PATCH] swsusp: fix x86-64 - do not use memory in copy loop · 9ac1e4a8
      Pavel Machek authored
      In assembly code, there are some problems with "nosave" section (linker was
      doing something stupid, like duplicating the section).  We attempted to fix
      it, but fix was worse then first problem.  This fixes is for good: We no
      longer use any memory in the copy loop.  (Plus it fixes indentation and
      uses meaningful labels.)
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      9ac1e4a8
    • Ingo Molnar's avatar
      [PATCH] tailcall prevention in sys_wait4() and sys_waitid() · c5cada67
      Ingo Molnar authored
      A hack to prevent the compiler from generatin tailcalls in these two
      functions.
      
      With CONFIG_REGPARM=y, the tailcalled code ends up stomping on the
      syscall's argument frame which corrupts userspace's registers.
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      c5cada67
    • Randy Dunlap's avatar
      [PATCH] intel_agp: dangling devexit reference · 74a82aa9
      Randy Dunlap authored
      Fix error found by 'scripts/reference_discarded.pl':
      Error: ./drivers/char/agp/intel-agp.o .data refers to 00000914 R_386_32          .exit.text
      Signed-off-by: default avatarRandy Dunlap <rddunlap@osdl.org>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      74a82aa9
  3. 16 Oct, 2004 6 commits
  4. 15 Oct, 2004 3 commits
  5. 14 Oct, 2004 2 commits
    • Linus Torvalds's avatar
      Take the whole PCI bus range into account when scanning PCI bridges. · 8b5915b0
      Linus Torvalds authored
      A bridge that has been set up by firmware to cover multiple PCI
      buses but doesn't actually have anything connected behind some of
      them caused us to use the incorrect maxmimum bus number span when
      scanning the bridge chip.
      
      Problem reported by Tim Saunders, with Russell King suggesting
      the fix.
      8b5915b0
    • Linus Torvalds's avatar
      Fix threaded user page write memory ordering · 538ce05c
      Linus Torvalds authored
      Make sure we order the writes to a newly created page
      with the page table update that potentially exposes the
      page to another CPU.
      
      This is a no-op on any architecture where getting the
      page table spinlock will already do the ordering (notably
      x86), but other architectures can care.
      538ce05c
  6. 13 Oct, 2004 18 commits