diff options
author | 2017-01-30 08:57:22 +0100 | |
---|---|---|
committer | 2017-01-30 08:57:22 +0100 | |
commit | 1b62d134d3c5f9e67de096af7ea3e9fe48966f17 (patch) | |
tree | be30467e997cc8ba0d350309dd498f00cb69969b /fs/btrfs/async-thread.c | |
parent | ACPICA: Tables: Fix hidden logic related to acpi_tb_install_standard_table() (diff) | |
parent | ACPICA: Update version to 20161222 (diff) | |
download | wireguard-linux-1b62d134d3c5f9e67de096af7ea3e9fe48966f17.tar.xz wireguard-linux-1b62d134d3c5f9e67de096af7ea3e9fe48966f17.zip |
Merge back earlier ACPICA changes for v4.11.
Diffstat (limited to 'fs/btrfs/async-thread.c')
-rw-r--r-- | fs/btrfs/async-thread.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/fs/btrfs/async-thread.c b/fs/btrfs/async-thread.c index e0f071f6b5a7..63d197724519 100644 --- a/fs/btrfs/async-thread.c +++ b/fs/btrfs/async-thread.c @@ -86,6 +86,20 @@ btrfs_work_owner(struct btrfs_work *work) return work->wq->fs_info; } +bool btrfs_workqueue_normal_congested(struct btrfs_workqueue *wq) +{ + /* + * We could compare wq->normal->pending with num_online_cpus() + * to support "thresh == NO_THRESHOLD" case, but it requires + * moving up atomic_inc/dec in thresh_queue/exec_hook. Let's + * postpone it until someone needs the support of that case. + */ + if (wq->normal->thresh == NO_THRESHOLD) + return false; + + return atomic_read(&wq->normal->pending) > wq->normal->thresh * 2; +} + BTRFS_WORK_HELPER(worker_helper); BTRFS_WORK_HELPER(delalloc_helper); BTRFS_WORK_HELPER(flush_delalloc_helper); |