Hello,
On Sat, Jun 15, 2019 at 11:24:48AM -0700, Tejun Heo wrote:
> When a shared kthread needs to issue a bio for a cgroup, doing so
> synchronously can lead to priority inversions as the kthread can be
> trapped waiting for that cgroup. This patch implements
> REQ_CGROUP_PUNT flag which makes s
When writeback IOs are bounced through async layers, the IOs should
only be accounted against the wbc from the original bdi writeback to
avoid confusing cgroup inode ownership arbitration. Add
wbc->no_wbc_acct to allow disabling wbc accounting. This will be used
make btfs compression work well wi
From: Chris Mason
Async CRCs and compression submit IO through helper threads, which
means they have IO priority inversions when cgroup IO controllers are
in use.
This flags all of the writes submitted by btrfs helper threads as
REQ_CGROUP_PUNT. submit_bio() will punt these to dedicated per-blk
btrfs is going to use css_put() and wbc helpers to improve cgroup
writeback support. Add dummy css_get() definition and export wbc
helpers to prepare for module and !CONFIG_CGROUP builds.
Signed-off-by: Tejun Heo
Reported-by: kbuild test robot
---
block/blk-cgroup.c | 1 +
fs/fs-writeback.
From: Chris Mason
The btrfs writepages function collects a large range of pages flagged
for delayed allocation, and then sends them down through the COW code
for processing. When compression is on, we allocate one async_cow
structure for every 512K, and then run those pages through the
compressi
From: Chris Mason
Now that we're not using btrfs_schedule_bio() anymore, delete all the
code that supported it.
Signed-off-by: Chris Mason
Reviewed-by: Josef Bacik
---
fs/btrfs/ctree.h | 1 -
fs/btrfs/disk-io.c | 13 +--
fs/btrfs/super.c | 1 -
fs/btrfs/volumes.c | 209 --
From: Chris Mason
extent_write_locked_range() is used when we're falling back to buffered
IO from inside of compression. It allocates its own wbc and should
associate it with the inode's i_wb to make sure the IO goes down from
the correct cgroup.
Signed-off-by: Chris Mason
Reviewed-by: Josef B
Add a helper to determine the target blkcg from wbc.
Signed-off-by: Tejun Heo
Reviewed-by: Josef Bacik
---
include/linux/writeback.h | 11 +++
1 file changed, 11 insertions(+)
diff --git a/include/linux/writeback.h b/include/linux/writeback.h
index b8f5f000cde4..800ee031e88a 100644
---
When a shared kthread needs to issue a bio for a cgroup, doing so
synchronously can lead to priority inversions as the kthread can be
trapped waiting for that cgroup. This patch implements
REQ_CGROUP_PUNT flag which makes submit_bio() punt the actual issuing
to a dedicated per-blkcg work item to a
From: Chris Mason
btrfs_schedule_bio() hands IO off to a helper thread to do the actual
submit_bio() call. This has been used to make sure async crc and
compression helpers don't get stuck on IO submission. To maintain good
performance, over time the IO submission threads duplicated some IO
sch
Hello,
Changes from v1[1]
* 0001-cgroup-blkcg-Prepare-some-symbols-for-module-and-CON.patch
added. It collects and adds symbol exports and dummy function def
to fix module and different config builds.
When writeback is executed asynchronously (e.g. for compression), bios
are bounced t
Hi Jens,
On Thu, May 23, 2019 at 04:10:18PM -0400, Dennis Zhou wrote:
> As is, iolatency recognizes done_bio and cleanup as ending paths. If a
> request is marked REQ_NOWAIT and fails to get a request, the bio is
> cleaned up via rq_qos_cleanup() and ended in bio_wouldblock_error().
> This results
On 6/15/19 9:50 AM, Tejun Heo wrote:
> Hello,
>
> On Sat, Jun 15, 2019 at 01:40:50AM -0600, Jens Axboe wrote:
>>> Please refer to each patch's description for details. Patchset is
>>> also available in the following git branch.
>>>
>>>git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup.gi
Hello!
I was puzzled by strange fact my qemu stopped to boot DVDs I made over years,
if I put them in physical drive and try to boot them via qemu.
After a lot of digging I found possible reason: wrongly-set block device size
on /dev/sr0
And this lead me to
https://bugs.debian.org/cgi-bin/bugr
Hello,
On Fri, Jun 14, 2019 at 10:50:34PM +0200, Toke Høiland-Jørgensen wrote:
> > Within a single cgroup, the IOs are FIFO. When an IO has enough vtime
> > credit, it just passes through. When it doesn't, it always waits
> > behind any other IOs which are already waiting.
>
> OK. Is there any fu
Hello,
On Sat, Jun 15, 2019 at 01:40:50AM -0600, Jens Axboe wrote:
> > Please refer to each patch's description for details. Patchset is
> > also available in the following git branch.
> >
> > git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup.git
> > review-blkcg-fixes
> >
> > Thanks.
On 5/31/19 12:47 PM, Gustavo A. R. Silva wrote:
> Make use of the struct_size() helper instead of an open-coded version
> in order to avoid any potential type mistakes, in particular in the
> context in which this code is being used.
>
> So, replace the following form:
>
> sizeof(*new_ptbl) + tar
On 6/10/19 9:04 AM, Gustavo A. R. Silva wrote:
> One of the more common cases of allocation size calculations is finding
> the size of a structure that has a zero-sized array at the end, along
> with memory for some number of elements for that array. For example:
>
> struct bio_map_data {
>
On 6/13/19 6:40 AM, Bob Liu wrote:
> On 6/13/19 4:45 PM, Jens Axboe wrote:
>> On 5/31/19 12:05 AM, Bob Liu wrote:
>>> Dulicate call of null_del_dev() will trigger null pointer error like below.
>>> The reason is a race condition between nullb_device_power_store() and
>>> nullb_group_drop_item().
>>
On 6/13/19 4:30 PM, Tejun Heo wrote:
> Hello,
>
> This patchset contains the following blkcg fixes.
>
> 0001-blk-iolatency-clear-use_delay-when-io.latency-is-set.patch
> 0002-blkcg-update-blkcg_print_stat-to-handle-larger-outpu.patch
> 0003-blkcg-perpcu_ref-init-exit-should-be-done-from-blk
On 6/14/19 5:39 AM, Pavel Begunkov (Silence) wrote:
> From: Pavel Begunkov
>
> struct blk_rq_stat::mean is a u64 value, so use %llu
Applied, thanks.
--
Jens Axboe
21 matches
Mail list logo