Skip to content

Commit

Permalink
block: row: Fix crash when adding a new field in bio struct
Browse files Browse the repository at this point in the history
When adding new field to struct bio there is a crash in the removed
code lines. This issue was introduced by commit
80a8f0f87bee18283e9ca0a8966ec97ad9f084e5 "block: row-iosched idling
triggered by readahead pages"

(Partly) reverting this patch till root cause is fixed (on FS level).

Change-Id: Ie82bc806ea52a6370b57aa15455c85b2db10d0da
Signed-off-by: Tanya Brokhman <tlinder@codeaurora.org>
  • Loading branch information
Tanya Brokhman authored and imoseyon committed Oct 3, 2014
1 parent db0520a commit 7d1235f
Showing 1 changed file with 2 additions and 8 deletions.
10 changes: 2 additions & 8 deletions block/row-iosched.c
@@ -1,7 +1,7 @@
/*
* ROW (Read Over Write) I/O scheduler.
*
* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved.
* Copyright (c) 2012-2014, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
Expand Down Expand Up @@ -331,10 +331,6 @@ static void row_add_request(struct request_queue *q,
struct row_queue *rqueue = RQ_ROWQ(rq);
s64 diff_ms;
bool queue_was_empty = list_empty(&rqueue->fifo);
unsigned long bv_page_flags = 0;

if (rq->bio && rq->bio->bi_io_vec && rq->bio->bi_io_vec->bv_page)
bv_page_flags = rq->bio->bi_io_vec->bv_page->flags;

list_add_tail(&rq->queuelist, &rqueue->fifo);
rd->nr_reqs[rq_data_dir(rq)]++;
Expand Down Expand Up @@ -367,9 +363,7 @@ static void row_add_request(struct request_queue *q,
rqueue->idle_data.begin_idling = false;
return;
}

if ((bv_page_flags & (1L << PG_readahead)) ||
(diff_ms < rd->rd_idle_data.freq_ms)) {
if (diff_ms < rd->rd_idle_data.freq_ms) {
rqueue->idle_data.begin_idling = true;
row_log_rowq(rd, rqueue->prio, "Enable idling");
} else {
Expand Down

0 comments on commit 7d1235f

Please sign in to comment.