1. 19 Sep, 2002 2 commits
    • Andrew Morton's avatar
      [PATCH] free_area_init cleanup · e07316f9
      Andrew Morton authored
      Patch from Martin Bligh.  It should only affect machines using
      discontigmem.
      
      "This patch cleans up free_area_init stuff, and undefines mem_map and
      max_mapnr for discontigmem, where they were horrible kludges anyway
      ...  We just use the lmem_maps instead, which makes much more sense.
      It also kills pgdat->node_start_mapnr, which is tarred with the same
      brush.
      
      It breaks free_area_init_core into a couple of sections, pulls the
      allocation of the lmem_map back into the next higher function, and
      passes more things via the pgdat.  But that's not very interesting,
      the objective was to kill mem_map for discontigmem, which seems to
      attract bugs like flypaper.  This brings any misuses to obvious
      compile-time errors rather than wierd oopses, which I can't help but
      feel is a good thing.
      
      It does break other discontigmem architectures, but in a very obvious
      way (they won't compile) and it's easy to fix.  I think that's a small
      price to pay ...  ;-) At some point soon I will follow up with a patch
      to remove free_area_init_node for the contig mem case, or at the very
      least rename it to something more sensible, like __free_area_init.
      
      Christoph has grander plans to kill mem_map more extensively in
      addition to the attatched, but I've heard nobody disagree that it
      should die for the discontigmem case at least.
      
      Oh, and I renamed mem_map in drivers/pcmcia/sa1100 to pc_mem_map
      because my tiny little brain (and cscope) find it confusing like that.
      
      Tested on 16-way NUMA-Q with discontigmem + NUMA support and on a
      standard PC (well, boots and appears functional).  On top of
      2.5.33-mm4"
      e07316f9
    • Andrew Morton's avatar
      [PATCH] clean up argument passing in writeback paths · 967e6864
      Andrew Morton authored
      The writeback code paths which walk the superblocks and inodes are
      getting an increasing arguments passed to them.
      
      The patch wraps those args into the new `struct writeback_control',
      and uses that instead.  There is no functional change.
      
      The new writeback_control structure is passed down through the
      writeback paths in the place where the old `nr_to_write' pointer used
      to be.
      
      writeback_control will be used to pass new information up and down the
      writeback paths.  Such as whether the writeback should be non-blocking,
      and whether queue congestion was encountered.
      967e6864
  2. 17 Sep, 2002 19 commits
  3. 16 Sep, 2002 19 commits