1. 19 Jan, 2004 40 commits
    • Andrew Morton's avatar
      [PATCH] fix gcc-3.4 warning in percpu code · 7ce3f0f7
      Andrew Morton authored
      From: Rusty Russell <rusty@rustcorp.com.au>
      
      It's complaining about:
      
      #define per_cpu(var, cpu)			((void)cpu, per_cpu__##var)
      
      There are several ways of fixing this, but the simplest is:
      
      #define per_cpu(var, cpu)			(*((void)cpu, &per_cpu__##var))
      7ce3f0f7
    • Andrew Morton's avatar
      [PATCH] PPC32: Minor cleanups to IBM4xx and MPC82xx headers. · 96aae355
      Andrew Morton authored
      From: Tom Rini <trini@kernel.crashing.org>
      
      PPC32: Minor cleanups to IBM4xx and MPC82xx headers.
      
      - Make sure that if <asm/ibm4xx.h> is included on !40x && !440, there is no real effect.
      - Delete arch/ppc/platforms/mpc82xx.h
      - Make sure that if CONFIG_8260 isn't set, there is no effect in <asm/mpc8260.h>.
      - Add a __ASSEMBLY__ test around the extern for __res in <asm/mpc8260.h>.
      96aae355
    • Andrew Morton's avatar
      [PATCH] PPC32: Select arch/ppc/kernel/head.S on CONFIG_PPC_STD_MMU. · f2b087ca
      Andrew Morton authored
      From: Tom Rini <trini@kernel.crashing.org>
      
      PPC32: Select arch/ppc/kernel/head.S on CONFIG_PPC_STD_MMU.
      
      - Don't pick a head*.S by default, instead select head.S on
        CONFIG_PPC_STD_MMU.  This is more consistent with how we
        case things in this file.
      f2b087ca
    • Andrew Morton's avatar
      [PATCH] PPC32: Change all EXPORT_SYMBOL_NOVERS to EXPORT_SYMBOL in ppc_ksyms.c · 7ed02f09
      Andrew Morton authored
      From: Tom Rini <trini@kernel.crashing.org>
      
      PPC32: Change all EXPORT_SYMBOL_NOVERS to EXPORT_SYMBOL in ppc_ksyms.c
      
      - Change all EXPORT_SYMBOL_NOVERS to EXPORT_SYMBOL in ppc_ksyms.c
      7ed02f09
    • Andrew Morton's avatar
      [PATCH] PPC32: Export consistent_sync_page. · 4862cdc7
      Andrew Morton authored
      From: Tom Rini <trini@kernel.crashing.org>
      
      We must export the consistent_sync_page symbol.  It is used by inline
      functions which implement the PCI DMA API.
      4862cdc7
    • Andrew Morton's avatar
      [PATCH] AS tuning · 2d935b4d
      Andrew Morton authored
      From: Nick Piggin <piggin@cyberone.com.au>
      
      The big regression from deadline is tiobench random reads with TCQ disks,
      however it is present in -linus as well, and would have been since day 1 of
      AS, but nobody has complained too loudly.
      
      http://developer.osdl.org/judith/tiobench/4CPU/rr.html
      
      This problem is probably a distilation of what causes lower database
      throughput, because I have only ever seen it with TCQ drives, and pgbench
      and OraSim are actually getting higher throughput here with a non TCQ
      drive.
      
      That is not to say that TCQ is useless, it obviously can provide a very
      real and significant boost.  What I might do in the (near) future is get AS
      to detect TCQ and turn itself off indefinitely unless/until the a sysfs
      flag is set, and default that flag to off.
      
      This patch changes the AS tunables a bit to be more on par with deadline.  It
      lowers the threshold for random reading processes to be considered unsuitable
      for anticipation, and it slightly rearranges and comments the "cooperative
      seek distance" logic.
      
      With this patch, AS is now very competitive with deadline on the single IDE
      and SCSI (non TCQ) disks here.  In fact, I don't have any regressions
      anywhere.  Even when TCQ is on, although throughput can be lower, AS still
      has benefits because of its much better read vs write latency and general
      tendancy to keep number of outstanding tags smaller.
      2d935b4d
    • Andrew Morton's avatar
      [PATCH] AS: thinktime improvement · 92327d28
      Andrew Morton authored
      From: Nick Piggin <piggin@cyberone.com.au>
      
      Sometimes a processes thinktime shouldn't be measured on how soon it
      submits its next request, but how soon any close request is submitted.
      
      Some processes, such as those in make -j, find | xargs blah, etc. Should be
      waited upon even if they never submit another request, because they work with
      cooperating or child processes. This helps to take that into account.
      92327d28
    • Andrew Morton's avatar
      [PATCH] AS: new process estimation · 7950701f
      Andrew Morton authored
      From: Nick Piggin <piggin@cyberone.com.au>
      
      This one gathers better statistics about the new process problem.  It
      improves estimation for initial process IO.  That is, better calculations
      for whether it will be worth waiting after a process submits its first
      read.
      
      This is done with a per queue average thinktime and seek time for a second
      read submitted from a process.
      
      When combined with 3/3, numbers are around the same as mm1 for most long
      lived tasks, but much better for things like the top 4 benchmarks.
      
      Probably wants rwhron and the OSDL database guys to give it some testing.
      
      test                                    2.6.0-test9-mm1  2.6.0-test9-mm1-np
      Cat kernel source during seq read       0:26.89          0:24.75
      Cat kernel source during seq write      9:17.80          0:23.48
      ls -lr kernel source during seq read    0:11.03          0:14.68
      ls -lr kernel source during seq write   0:49.95          0:08.06
      
      contest no_load                         143s 0 loads     144s 0 loads
      contest io_load                         193s 40.2 loads  193s 40.1 loads
      contest read_load                       186s 11.6 loads  190s 10.5 loads
      contest list_load                       201s 5.0 loads   200s 5.0 loads
      
      pgbench 1 client                        31.3TPS          31.5TPS
      pgbench 4 clients                       37.7TPS          37.5TPS
      pgbench 16 clients                      42.1TPS          48.1TPS
      7950701f
    • Andrew Morton's avatar
      [PATCH] AS fixes · 766b36ce
      Andrew Morton authored
      From: Nick Piggin <piggin@cyberone.com.au>
      
      This fixes all known bugs with as in mm2.  That constitutes small fixes for
      2 WARNs getting triggered.  It looks like Prakash's lost interrupt problem
      was due to as spewing bazillions of warnings, and he must have had his
      kernel.printk configured not to show them or something.  I have to just get
      final confirmation from him that this final cut of the patch fixes his
      problem too.
      766b36ce
    • Andrew Morton's avatar
      [PATCH] AS: request poisining fix · 96082c9b
      Andrew Morton authored
      From: Nick Piggin <piggin@cyberone.com.au>
      96082c9b
    • Andrew Morton's avatar
      [PATCH] AS: request poisoning · 9087295f
      Andrew Morton authored
      From: Nick Piggin <piggin@cyberone.com.au>
      
      I have tested this on my disks and cdroms, but they don't represent
      what all drivers might do. I have asked Jarkko Lehti with his dvd writing
      problem to try it...
      9087295f
    • Andrew Morton's avatar
      [PATCH] Fix IO scheduler regression · 4f292a21
      Andrew Morton authored
      From: Nick Piggin <piggin@cyberone.com.au>
      
      Randy has just reported that this fixes up his regression. Its now as good
      as test5 in his tests with this patch. He is also seeing quite large
      increases (above test5) when IO scheduler barriers are disabled (this patch
      doesn't do that). Perhaps something is using them too liberally.
      
      Anyway, this reverts AS back to defaulting to not anticipate IO for a
      program that submits its first request (this really hurts find | xargs grep
      sort of things).  I am working on something to fix this up properly.  That
      can go in after 2.6.0 anyway.
      4f292a21
    • Andrew Morton's avatar
      [PATCH] jffs: use daemonize() · 91d61a0f
      Andrew Morton authored
      Use daemonize() rather than open-coding half of it.
      
      (I don't know if this has been tested - it has been in -mm for three months).
      91d61a0f
    • Andrew Morton's avatar
      [PATCH] ppc64: vio fixup · e8be17fa
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      vi fixup
      e8be17fa
    • Andrew Morton's avatar
      [PATCH] ppc64: early BSS clear, from Ben Herrenschmidt · b3646f19
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      Gone are the days of initialising stuff we touch in prom_init just
      to keep it out of the BSS. There are a few things the hypervisor
      writes to in the iseries case, hard code them into the data segment
      and add a comment.
      
      Remove the -fno-zero-initialized-in-bss hack, it was required when
      gcc got smart and put zero initialised stuff into the BSS
      b3646f19
    • Andrew Morton's avatar
      [PATCH] ppc64: Fixed rtas_extended_busy_delay_time() to calculate correct value, from John Rose · 153aff0e
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      Fixed rtas_extended_busy_delay_time() to calculate correct value, from John
      Rose
      153aff0e
    • Andrew Morton's avatar
      [PATCH] ppc64: xmon breakpoint and single step on LPAR fixes from John Rose · da985ddd
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      Xmon changes to make breakpoints and single-stepping work on pSeries LPARs.
      Also changed help text to reflect obsolete cmds.
      da985ddd
    • Andrew Morton's avatar
      [PATCH] ppc64: cp_compat_stat should copy nanosecond fields · eb55c013
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      Looks like glibc is using stat in some places, so we should modify
      it to copy the nanosecond fields. Also speed up stat by only checking
      the region once instead of each put_user call.
      eb55c013
    • Andrew Morton's avatar
      [PATCH] ppc64: correct epoll syscall names · e341f63d
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      correct epoll syscall names
      e341f63d
    • Andrew Morton's avatar
      [PATCH] ppc64: setup_cpu must be called on boot cpu · e3ffaf40
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      setup_cpu was being called for the boot cpu after all other cpus had been
      spun up.  The init thread can sleep during secondary cpu spinup (eg migration
      thread init) and sometimes the init thread would switch to another cpu at
      this time.  The end result was setup_cpu was called twice on one cpu and
      never on the boot cpu.
      
      The original fix called setup_cpu on the boot cpu before all others but that
      wont work for G5, so we now use cpu affinity calls to enforce it.
      e3ffaf40
    • Andrew Morton's avatar
      [PATCH] ppc64: vmlinux.lds fixes, from Alan Modra · 18161326
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      - Remove a bunch of unnecessary sections
      - Always declare section labels inside the section (bug found on ppc32)
      - Rearrange sections to waste less space
      18161326
    • Andrew Morton's avatar
      [PATCH] ppc64: Makefile fixes · a4d30bb4
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
       - remove old checks target, no longer used
       - add -mtraceback=none, we dont use traceback tables any more
       - add check for -mcpu=power4, older toolchains dont support this option
      a4d30bb4
    • Andrew Morton's avatar
      [PATCH] ppc64: Use an atomic_t instead of a volatile unsigned long, from Stephen Rothwell · e80008c5
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      Use an atomic_t instead of a volatile unsigned long, from Stephen Rothwell
      e80008c5
    • Andrew Morton's avatar
      [PATCH] ppc64: Fix a compile error and a warning in the iSeries code, from Stephen Rothwell · bdabd2b4
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      Fix a compile error and a warning in the iSeries code, from Stephen Rothwell
      bdabd2b4
    • Andrew Morton's avatar
      [PATCH] ppc64: Check range of PCI memory and I/O accesses on iSeries, from Stephen Rothwell · cf74826d
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      Check range of PCI memory and I/O accesses on iSeries, from Stephen Rothwell
      cf74826d
    • Andrew Morton's avatar
      [PATCH] ppc64: prom_panic(), from Todd Inglett · d31decfe
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      prom_panic(), from Todd Inglett
      d31decfe
    • Andrew Morton's avatar
      [PATCH] ppc64: Tidy up the mf_proc code, from Stephen Rothwell · 498efe94
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      Tidy up the mf_proc code, from Stephen Rothwell
      498efe94
    • Andrew Morton's avatar
      [PATCH] ppc64: __hash_page rewrite, from Ben Herrenschmidt · 008d0de4
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      Rewrite __hash_page function in assembly in such a way we don't need
      the page table lock any more. We now rely on a BUSY bit in the linux
      PTE on which we spin on when doing an update of the PTE
      008d0de4
    • Andrew Morton's avatar
      [PATCH] ppc64: Fix {pte,pmd}_free vs. hash_page race by relaying actual... · d4361b6c
      Andrew Morton authored
      [PATCH] ppc64: Fix {pte,pmd}_free vs. hash_page race by relaying actual deallocation with RCU, from Ben Herrenschmidt
      
      From: Anton Blanchard <anton@samba.org>
      
      Fix {pte,pmd}_free vs.  hash_page race by relaying actual deallocation with
      RCU, from Ben Herrenschmidt
      d4361b6c
    • Andrew Morton's avatar
      [PATCH] ppc64: VMX (Altivec) support & signal32 rework, from Ben Herrenschmidt · 04879b04
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      VMX (Altivec) support & signal32 rework, from Ben Herrenschmidt
      04879b04
    • Andrew Morton's avatar
      [PATCH] ppc64: fix POWER3 boot · d4c6e4e1
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      Binutils uses the recent mtcrf optimisation when compiling for a POWER4
      target.  Unfortunately this causes a program check on POWER3.  We required
      compiling for POWER4 so the tlbiel instruction would be recognised.
      
      For the moment we hardwire the tlbiel instruction, longer term we can use the
      binutils -many flag.
      d4c6e4e1
    • Andrew Morton's avatar
      [PATCH] ppc64: Update the surveillance boot parameter to allow all valid... · 820880f3
      Andrew Morton authored
      [PATCH] ppc64: Update the surveillance boot parameter to allow all valid settings of the surveillance timeout, from Nathan Fontenot
      
      From: Anton Blanchard <anton@samba.org>
      
      Update the surveillance boot parameter to allow all valid settings of the
      surveillance timeout, from Nathan Fontenot
      820880f3
    • Andrew Morton's avatar
      [PATCH] ppc64: add/forward port of lparcfg, from Will Schmidt · e528ff69
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      add/forward port of lparcfg, from Will Schmidt
      e528ff69
    • Andrew Morton's avatar
      [PATCH] ppc64: Get native PCI going on iSeries, from Paul Mackerras · c4f34fde
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      Get native PCI going on iSeries, from Paul Mackerras
      c4f34fde
    • Andrew Morton's avatar
      [PATCH] ppc64: VIO support, from Dave Boutcher, Hollis Blanchard and Santiago Leon · 0385d58f
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      Add virtual I/O support.  These routines provide the infrastructure
      needed by virtual SCSI, virtual ethernet, virtual serial on IBM
      pSeries servers
      0385d58f
    • Andrew Morton's avatar
      [PATCH] ppc64: add hcall interface · 70417740
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      add hcall interface
      70417740
    • Andrew Morton's avatar
      [PATCH] ppc64: Small cleanups to iSeries virtual ethernet driver, from Dave Gibson · a62f6a53
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      Small cleanups to iSeries virtual ethernet driver, from Dave Gibson
      a62f6a53
    • Andrew Morton's avatar
      [PATCH] ppc64: Tidy up various bits of the iSeries code. No significant code... · 77257fe5
      Andrew Morton authored
      [PATCH] ppc64: Tidy up various bits of the iSeries code. No significant code changes, from Stephen Rothwell
      
      From: Anton Blanchard <anton@samba.org>
      
      Tidy up various bits of the iSeries code.  No significant code changes, from
      Stephen Rothwell
      77257fe5
    • Andrew Morton's avatar
      [PATCH] ppc64: fix a couple small OF device tree bugs which were overlooked, from Joel Schopp · 9a7dd652
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      fix a couple small OF device tree bugs which were overlooked, from Joel Schopp
      9a7dd652
    • Andrew Morton's avatar
      [PATCH] ppc64: iSeries fixes, from Stephen Rothwell · 0f81ecbf
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      iSeries fixes, from Stephen Rothwell
      0f81ecbf