First  |  Prev |  Next  |  Last
Pages: 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431
[PATCHv4 07/14] writeback: do not remove bdi from bdi_list
From: Artem Bityutskiy <Artem.Bityutskiy(a)> The forker thread removes bdis from 'bdi_list' before forking the bdi thread. But this is wrong for at least 2 reasons. Reason #1: if we temporary remove a bdi from the list, we may miss works which would otherwise be given to us. Reason #2: this... 23 Jul 2010 11:23
[PATCHv4 09/14] writeback: restructure bdi forker loop a little
From: Artem Bityutskiy <Artem.Bityutskiy(a)> This patch re-structures the loop which walks bdi a little. This is just a micro-step towards the coming change where the forker thread will kill the bdi threads. It should simplify reviewing the following changes, which would otherwise be larger. This patch ... 23 Jul 2010 11:23
[PATCHv4 01/14] writeback: harmonize writeback threads naming
From: Artem Bityutskiy <Artem.Bityutskiy(a)> The write-back code mixes words "thread" and "task" for the same things. This is not a big deal, but still an inconsistency. hch: a convention I tend to use and I've seen in various places is to always use _task for the storage of the task_struct pointer, and... 23 Jul 2010 11:23
[PATCHv4 04/14] writeback: do not lose wake-ups in the forker thread - 2
From: Artem Bityutskiy <Artem.Bityutskiy(a)> Currently, if someone submits jobs for the default bdi, we can lose wake-up events. E.g., this can happen if 'bdi_queue_work()' is called when 'bdi_forker_thread()' is executing code after 'wb_do_writeback(me, 0)', but before 'set_current_state(TASK_INTERRUPTIBL... 23 Jul 2010 11:23
[PATCHv4 08/14] writeback: move last_active to bdi
From: Artem Bityutskiy <Artem.Bityutskiy(a)> Currently bdi threads use local variable 'last_active' which stores last time when the bdi thread did some useful work. Move this local variable to 'struct bdi_writeback'. This is just a preparation for the further patches which will make the forker thread decid... 23 Jul 2010 11:23
[PATCHv4 03/14] writeback: do not lose wake-ups in the forker thread - 1
From: Artem Bityutskiy <Artem.Bityutskiy(a)> Currently the forker thread can lose wake-ups which may lead to unnecessary delays in processing bdi works. E.g., consider the following scenario. 1. 'bdi_forker_thread()' walks the 'bdi_list', finds out there is nothing to do, and is about to finish the lo... 23 Jul 2010 11:23
[PATCHv4 10/14] writeback: move bdi threads exiting logic to the forker thread
From: Artem Bityutskiy <Artem.Bityutskiy(a)> Currently, bdi threads can decide to exit if there were no useful activities for 5 minutes. However, this causes nasty races: we can easily oops in the 'bdi_queue_work()' if the bdi thread decides to exit while we are waking it up. And even if we do not oops, ... 23 Jul 2010 11:23
[PATCH 1/6] Add a dentry op to handle automounting rather than abusing follow_link() [ver #2]
Here's an updated patch that: (1) Fixes a bug in error handling (needs to use path_put_conditional not path_put). (2) Absorbs autofs4's decisions about whether to automount or not. This means that colour-ls won't cause automounts unless -L is supplied or it doesn't get a DT_DIR flag from ge... 23 Jul 2010 11:23
[PATCHv4 00/14] kill unnecessary bdi wakeups + cleanups
Hi, here is v4 of the patch series which clean-ups bdi threads and substantially lessens amount of unnecessary kernel wake-ups, which is very important on battery-powered devices. Changes since v3: Tested more internally and found problems in bdi shutdown path. Namely, I forgot to move the code which wakes up... 23 Jul 2010 11:23
[PATCHv4 06/14] writeback: simplify bdi code a little
From: Artem Bityutskiy <Artem.Bityutskiy(a)> This patch simplifies bdi code a little by removing the 'pending_list' which is redundant. Indeed, currently the forker thread ('bdi_forker_thread()') is working like this: 1. In a loop, fetch all bdi's which have works but have no writeback thread and mov... 23 Jul 2010 11:23
First  |  Prev |  Next  |  Last
Pages: 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431