- 19 Jan, 2004 40 commits
-
-
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.
-
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.
-
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.
-
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
-
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.
-
Andrew Morton authored
From: Nick Piggin <piggin@cyberone.com.au>
-
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...
-
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.
-
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).
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> vi fixup
-
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
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> Fixed rtas_extended_busy_delay_time() to calculate correct value, from John Rose
-
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.
-
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.
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> correct epoll syscall names
-
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.
-
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
-
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
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> Use an atomic_t instead of a volatile unsigned long, from Stephen Rothwell
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> Fix a compile error and a warning in the iSeries code, from Stephen Rothwell
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> Check range of PCI memory and I/O accesses on iSeries, from Stephen Rothwell
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> prom_panic(), from Todd Inglett
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> Tidy up the mf_proc code, from Stephen Rothwell
-
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
-
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
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> VMX (Altivec) support & signal32 rework, from Ben Herrenschmidt
-
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.
-
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
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> add/forward port of lparcfg, from Will Schmidt
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> Get native PCI going on iSeries, from Paul Mackerras
-
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
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> add hcall interface
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> Small cleanups to iSeries virtual ethernet driver, from Dave Gibson
-
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
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> fix a couple small OF device tree bugs which were overlooked, from Joel Schopp
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> iSeries fixes, from Stephen Rothwell
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> Add additional hypervisor call constants, from Dave Boutcher
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> Preliminary iSeries support. Still a bit hackish in parts but it does compile. The viodasd driver is almost completely untested so don't trust it with your data.
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> This is a port of the nvram buffering/error logging code from 2.4 to 2.6. It includes moving /proc/rtas to /proc/ppc64/rtas and making /proc/rtas a symlink to /proc/ppc64/rtas. It also splits up the /dev/nvram device read/write functions from the basic nvram access functions, and adds ppc_md fields for the nvram access functions.
-
Andrew Morton authored
[PATCH] ppc64: one instruction fix for synchronization bug found during cpu DLPAR development, from Joel Schopp From: Anton Blanchard <anton@samba.org> one instruction fix for synchronization bug found during cpu DLPAR development, from Joel Schopp
-