Messages in this thread | | | Date | Sat, 15 May 1999 20:19:58 +0200 (CEST) | From | Andrea Arcangeli <> | Subject | Re: All the problems with 2.2.8/2.3.x and bdflush/update |
| |
On Sat, 15 May 1999, Zack Weinberg wrote:
>Here's a scenario for you: I do some operation which generates a lot >of dirty buffers, but not enough to trigger bdflush due to low >memory. The machine then sits completely idle for several hours. If >update is not running, will those dirty buffers be written back?
No, but where is the problem? ;)
If you don't want to go in too much big troubles with a crash or a power-loss, then simply run update.
>>Think if bdflush was writing the last bdflush_param.ndirty buffer. You'll >>issue a sleep_on() but you'll get a wakeup without waiting that some more >>buffer is been synced back to disk. And my way will avoid many task switch >>ping-pong. > >If bdflush is already active, you probably wanted to be woken up at >that point anyway. I think.
If bdflush is active you want to sleep and wait of I/O completation if there are too many dirty buffers.
>lose on read-mod-write, and a biggish improvement on block input. The >combination performs about the same as andrea1 by itself.
I run some bonnie here too and I changed some worthwhile thing since 2.2.8_andrea1. I have a fully-featured buffer patch almost ready against 2.2.9. I am finishing to fix a memleak (just a minor issue ;), then I'll post it here.
BTW my code you merged into your -z patch had a minor issue (not really a bug). Just fixed here though. Wait the new patch then feel free to copy my code into your patch again (or take a more polite option: provide patches incremental with my pending buffer patch ;).
Andrea Arcangeli
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |