erofs: fold in postsubmit_is_all_bypassed()
No need to introduce such separated helper since cache strategy compile configs were changed into runtime options instead in v5.4. No logic changes. Link: https://lore.kernel.org/r/20200121064747.138987-1-gaoxiang25@huawei.com Reviewed-by: Chao Yu <yuchao0@huawei.com> Signed-off-by: Gao Xiang <gaoxiang25@huawei.com>
This commit is contained in:
parent
4d2024370d
commit
587a67b777
|
@ -1148,20 +1148,6 @@ static void move_to_bypass_jobqueue(struct z_erofs_pcluster *pcl,
|
||||||
qtail[JQ_BYPASS] = &pcl->next;
|
qtail[JQ_BYPASS] = &pcl->next;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool postsubmit_is_all_bypassed(struct z_erofs_decompressqueue *q[],
|
|
||||||
unsigned int nr_bios, bool force_fg)
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
* although background is preferred, no one is pending for submission.
|
|
||||||
* don't issue workqueue for decompression but drop it directly instead.
|
|
||||||
*/
|
|
||||||
if (force_fg || nr_bios)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
kvfree(q[JQ_SUBMIT]);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
static bool z_erofs_submit_queue(struct super_block *sb,
|
static bool z_erofs_submit_queue(struct super_block *sb,
|
||||||
z_erofs_next_pcluster_t owned_head,
|
z_erofs_next_pcluster_t owned_head,
|
||||||
struct list_head *pagepool,
|
struct list_head *pagepool,
|
||||||
|
@ -1262,9 +1248,14 @@ static bool z_erofs_submit_queue(struct super_block *sb,
|
||||||
if (bio)
|
if (bio)
|
||||||
submit_bio(bio);
|
submit_bio(bio);
|
||||||
|
|
||||||
if (postsubmit_is_all_bypassed(q, nr_bios, *force_fg))
|
/*
|
||||||
|
* although background is preferred, no one is pending for submission.
|
||||||
|
* don't issue workqueue for decompression but drop it directly instead.
|
||||||
|
*/
|
||||||
|
if (!*force_fg && !nr_bios) {
|
||||||
|
kvfree(q[JQ_SUBMIT]);
|
||||||
return true;
|
return true;
|
||||||
|
}
|
||||||
z_erofs_decompress_kickoff(q[JQ_SUBMIT], *force_fg, nr_bios);
|
z_erofs_decompress_kickoff(q[JQ_SUBMIT], *force_fg, nr_bios);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue