From: Vasiliy Kulikov <segooon@gmail.com>
To: Miao Xie <miaox@cn.fujitsu.com>
Cc: kernel-janitors@vger.kernel.org,
Chris Mason <chris.mason@oracle.com>, Tejun Heo <tj@kernel.org>,
linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH v2] btrfs: set task state with
Date: Tue, 27 Jul 2010 17:46:53 +0000 [thread overview]
Message-ID: <20100727174653.GA21048@albatros> (raw)
In-Reply-To: <4C4E5560.9060905@cn.fujitsu.com>
schedule_timeout() is used without setting state to
STATE_(UN)INTERRUPTIBLE. As it is called without checking of pending
signals, use schedule_timeout_uninterruptible() instead.
Signed-off-by: Kulikov Vasiliy <segooon@gmail.com>
---
fs/btrfs/async-thread.c | 2 +-
fs/btrfs/extent-tree.c | 6 +++---
fs/btrfs/ordered-data.c | 2 +-
3 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/fs/btrfs/async-thread.c b/fs/btrfs/async-thread.c
index 7ec1409..54eb070 100644
--- a/fs/btrfs/async-thread.c
+++ b/fs/btrfs/async-thread.c
@@ -362,7 +362,7 @@ again:
* worker->working is still 1, so nobody
* is going to try and wake us up
*/
- schedule_timeout(1);
+ schedule_timeout_uninterruptible(1);
smp_mb();
if (!list_empty(&worker->pending) ||
!list_empty(&worker->prio_pending))
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
index 32d0940..5b55a20 100644
--- a/fs/btrfs/extent-tree.c
+++ b/fs/btrfs/extent-tree.c
@@ -365,7 +365,7 @@ again:
up_read(&fs_info->extent_commit_sem);
mutex_unlock(&caching_ctl->mutex);
if (btrfs_transaction_in_commit(fs_info))
- schedule_timeout(1);
+ schedule_timeout_uninterruptible(1);
else
cond_resched();
goto again;
@@ -2237,7 +2237,7 @@ again:
node = rb_next(node);
}
spin_unlock(&delayed_refs->lock);
- schedule_timeout(1);
+ schedule_timeout_uninterruptible(1);
goto again;
}
out:
@@ -3686,7 +3686,7 @@ int btrfs_delalloc_reserve_metadata(struct inode *inode, u64 num_bytes)
int ret;
if (btrfs_transaction_in_commit(root->fs_info))
- schedule_timeout(1);
+ schedule_timeout_uninterruptible(1);
num_bytes = ALIGN(num_bytes, root->sectorsize);
again:
diff --git a/fs/btrfs/ordered-data.c b/fs/btrfs/ordered-data.c
index e56c72b..9ff49e5 100644
--- a/fs/btrfs/ordered-data.c
+++ b/fs/btrfs/ordered-data.c
@@ -576,7 +576,7 @@ again:
}
if (found || test_range_bit(&BTRFS_I(inode)->io_tree, start, orig_end,
EXTENT_DELALLOC, 0, NULL)) {
- schedule_timeout(1);
+ schedule_timeout_uninterruptible(1);
goto again;
}
return 0;
--
1.7.0.4
WARNING: multiple messages have this Message-ID (diff)
From: Vasiliy Kulikov <segooon@gmail.com>
To: Miao Xie <miaox@cn.fujitsu.com>
Cc: kernel-janitors@vger.kernel.org,
Chris Mason <chris.mason@oracle.com>, Tejun Heo <tj@kernel.org>,
linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH v2] btrfs: set task state with schedule_timeout_uninterruptible()
Date: Tue, 27 Jul 2010 21:46:53 +0400 [thread overview]
Message-ID: <20100727174653.GA21048@albatros> (raw)
In-Reply-To: <4C4E5560.9060905@cn.fujitsu.com>
schedule_timeout() is used without setting state to
STATE_(UN)INTERRUPTIBLE. As it is called without checking of pending
signals, use schedule_timeout_uninterruptible() instead.
Signed-off-by: Kulikov Vasiliy <segooon@gmail.com>
---
fs/btrfs/async-thread.c | 2 +-
fs/btrfs/extent-tree.c | 6 +++---
fs/btrfs/ordered-data.c | 2 +-
3 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/fs/btrfs/async-thread.c b/fs/btrfs/async-thread.c
index 7ec1409..54eb070 100644
--- a/fs/btrfs/async-thread.c
+++ b/fs/btrfs/async-thread.c
@@ -362,7 +362,7 @@ again:
* worker->working is still 1, so nobody
* is going to try and wake us up
*/
- schedule_timeout(1);
+ schedule_timeout_uninterruptible(1);
smp_mb();
if (!list_empty(&worker->pending) ||
!list_empty(&worker->prio_pending))
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
index 32d0940..5b55a20 100644
--- a/fs/btrfs/extent-tree.c
+++ b/fs/btrfs/extent-tree.c
@@ -365,7 +365,7 @@ again:
up_read(&fs_info->extent_commit_sem);
mutex_unlock(&caching_ctl->mutex);
if (btrfs_transaction_in_commit(fs_info))
- schedule_timeout(1);
+ schedule_timeout_uninterruptible(1);
else
cond_resched();
goto again;
@@ -2237,7 +2237,7 @@ again:
node = rb_next(node);
}
spin_unlock(&delayed_refs->lock);
- schedule_timeout(1);
+ schedule_timeout_uninterruptible(1);
goto again;
}
out:
@@ -3686,7 +3686,7 @@ int btrfs_delalloc_reserve_metadata(struct inode *inode, u64 num_bytes)
int ret;
if (btrfs_transaction_in_commit(root->fs_info))
- schedule_timeout(1);
+ schedule_timeout_uninterruptible(1);
num_bytes = ALIGN(num_bytes, root->sectorsize);
again:
diff --git a/fs/btrfs/ordered-data.c b/fs/btrfs/ordered-data.c
index e56c72b..9ff49e5 100644
--- a/fs/btrfs/ordered-data.c
+++ b/fs/btrfs/ordered-data.c
@@ -576,7 +576,7 @@ again:
}
if (found || test_range_bit(&BTRFS_I(inode)->io_tree, start, orig_end,
EXTENT_DELALLOC, 0, NULL)) {
- schedule_timeout(1);
+ schedule_timeout_uninterruptible(1);
goto again;
}
return 0;
--
1.7.0.4
next prev parent reply other threads:[~2010-07-27 17:46 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-26 8:27 [PATCH] btrfs: set task state with schedule_timeout_uninterruptible() Kulikov Vasiliy
2010-07-26 8:27 ` Kulikov Vasiliy
2010-07-27 3:41 ` Miao Xie
2010-07-27 3:41 ` Miao Xie
2010-07-27 17:46 ` Vasiliy Kulikov [this message]
2010-07-27 17:46 ` [PATCH v2] " Vasiliy Kulikov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20100727174653.GA21048@albatros \
--to=segooon@gmail.com \
--cc=chris.mason@oracle.com \
--cc=kernel-janitors@vger.kernel.org \
--cc=linux-btrfs@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=miaox@cn.fujitsu.com \
--cc=tj@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.