[Suspend2][ 16/32] [Suspend2] Add page io to a batch.

From: Nigel Cunningham
Date: Mon Jun 26 2006 - 19:13:59 EST


Add a page to the current batch. If the batch becomes full as a result,
submit it.

Signed-off-by: Nigel Cunningham <nigel@xxxxxxxxxxxx>

kernel/power/suspend_block_io.c | 17 +++++++++++++++++
1 files changed, 17 insertions(+), 0 deletions(-)

diff --git a/kernel/power/suspend_block_io.c b/kernel/power/suspend_block_io.c
index 07db518..728df04 100644
--- a/kernel/power/suspend_block_io.c
+++ b/kernel/power/suspend_block_io.c
@@ -556,3 +556,20 @@ static int submit_batched(void)
return num_submitted;
}

+static void add_to_batch(struct io_info *io_info)
+{
+ unsigned long flags;
+
+ set_bit(IO_AWAITING_SUBMIT, &io_info->flags);
+
+ /* Put our prepared I/O struct on the batch list. */
+ spin_lock_irqsave(&ioinfo_submit_lock, flags);
+ list_add_tail(&io_info->list, &ioinfo_submit_batch);
+ spin_unlock_irqrestore(&ioinfo_submit_lock, flags);
+
+ atomic_inc(&submit_batch);
+
+ if (atomic_read(&submit_batch) >= submit_batch_size)
+ submit_batched();
+}
+

--
Nigel Cunningham nigel at suspend2 dot net
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/