On 2017/1/17 上午11:56, Ming Lei wrote:
> Hi Guys,
>
> The multipage bvec patchset[1] has been posted out for a while, and
> xfstest(ext4, xfs and btrfs) have been run and no regression is
> observed, and I hope having talk about this in person would help
> moving it forward.
>
> Secondly I'd like
structure for event logging.
>
> We will be able to show a prototype implementation during LSF/MM.
This is an interesting topic. For stacked block devices, all layers
higher than the fault layer will observe the media error, reporting the
underlying failure in every layer may introduce quite a lot nois
On 2016/12/9 上午3:19, Shaohua Li wrote:
> On Fri, Dec 09, 2016 at 12:44:57AM +0800, Coly Li wrote:
>> On 2016/12/8 上午12:59, Shaohua Li wrote:
>>> On Wed, Dec 07, 2016 at 07:50:33PM +0800, Coly Li wrote:
>> [snip]
>>> Thanks for doing this, Coly! For raid0, th
i_size will hurt DISCARD
performance.
I know this is not simple, it changes a very important KABI. But this is
really an interesting question to ask: do we have any idea to extend
bi_size from unsigned int to unsigned long ?
Thanks in advance.
Coly Li
--
To unsubscribe from this list: send the l
i_size will hurt DISCARD
performance.
I know this is not simple, it changes a very important KABI. But this is
really an interesting question to ask: do we have any idea to extend
bi_size from unsigned int to unsigned long ?
Thanks in advance.
--
Coly Li
--
To unsubscribe from this lis
24}
Now we only need to call generic_make_request() for 4 times.
The code is not simple, I need more time to write text to complain how
it works. Currently you can treat it as a proof of concept.
Signed-off-by: Coly Li <col...@suse.de>
---
drivers/md/raid0.c | 224 +++
On 2017/1/12 下午11:09, Sagi Grimberg wrote:
> Hey Coly,
>
>> Also I receive reports from users that raid1 performance is desired when
>> it is built on NVMe SSDs as a cache (maybe bcache or dm-cache). I am
>> working on some raid1 performance improvement (e.g. new raid1 I/O
>> barrier and lockless
d/bcache/util.c
> @@ -222,6 +222,13 @@ uint64_t bch_next_delay(struct bch_ratelimit *d,
> uint64_t done)
> : 0;
> }
>
> +/*
> + * Generally it isn't good to access .bi_io_vec and .bi_vcnt
> + * directly, the preferred way is bio_add_page, but in
> + * this case, bch_bio
cuss.
Therefore, if md raid developers may have a chance to sit together,
discuss how to efficiently collaborate in next year, it will be much
more productive then communicating on mailing list.
Finally let me introduce myself for people don't know me. My name is
Coly Li, I used to work on OCFS2,
O, q->bio_split);
else
split = clone;
__bch_data_verity(gc, split);
bio_put(split);
} while (split != clone);
I guess maybe the above style generates less binary code.
--
Coly Li
--
To unsubscribe from this list: send the line "unsubscribe linux-block" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
+ * has to make sure page count in this bio can be held
> + * in the new cloned bio because each single page need
> + * to assign to each bvec of the new bio.
> + */
> check = bio_clone(bio, GFP_NOIO);
> if (!check)
> return;
>
patch alloc a separate work-queue for write-back thread to avoid such
> race.
>
> Signed-off-by: Tang Junhui <tang.jun...@zte.com.cn>
> Cc: sta...@vger.kernel.org
Add a per-cached device work queue is a good idea, it's OK to me.
Acked-by: Coly Li <col...@suse.de>
Thansk.
C
s not good news.
Coly
>
>
>
> 发件人: Coly Li <i...@coly.li>
> 收件人: linux-block@vger.kernel.org, Tang Junhui
> <tang.jun...@zte.com.cn>,
> 抄送:bca...@lists.ewheeler.net, linux-bca...@vger.kernel.org,
> h...@infradead.org, ax...@kernel.dk
> 日
On 2017/7/1 上午4:43, bca...@lists.ewheeler.net wrote:
> From: Tang Junhui
>
> Since dirty sectors of thin flash cannot be used to cache data for backend
> device, so we should subtract it in calculating writeback rate.
>
I see you want to get ride of the noise of flash
ke quite a long time for either
bucket allocating code or bch_gc_thread(). What I concern is, this patch
may introduce bucket allocation delay in period of GC_THREAD_TIMEOUT_MS.
We need to find out a way to avoid such a performance regression.
--
Coly Li
On 2017/7/6 下午11:24, Christoph Hellwig wrote:
> On Thu, Jul 06, 2017 at 03:35:48PM +0800, Coly Li wrote:
>> Then gfs2 breaks the above rule ? in gfs2_metapath_ra() and
>> gfs2_dir_readahead(), only REQ_META is used in submit_bh(). It seems an
>> extra REQ_PRIO should be
On 2017/7/11 上午5:46, Kai Krakow wrote:
> Am Mon, 10 Jul 2017 19:18:28 +0800
> schrieb Coly Li <col...@suse.de>:
>
>> If a read bio to cache device gets failed, bcache will try to
>> recovery it by forward the read bio to backing device. If backing
>> device re
->recoverable is set. For other cache
mode, recovery I/O failure by reading backing device does not make sense,
bache just simply returns -EIO immediately.
Reported-by: Arne Wolf <aw...@lenovo.com>
Signed-off-by: Coly Li <col...@suse.de>
---
drivers/md/bcache/request.c | 5 -
1
rty
buckets number with bucket_lock held. If the latency is not that much,
we can ignore the cost, otherwise we do need to find a better solution.
Thanks.
Coly
>
>
> 发件人: Coly Li <i...@coly.li>
> 收件人: linux-block@vger.kernel.org, Tang Junhui
> <
ot;destory mutex" patch unchanged, and send another
> patch to fix the issue based on your approach. Please take a look. Thanks!
>
Sure, good idea. I'd like to review the next fix, and provide my feed
back together. Thanks.
Coly
> Thanks,
> Liang
>
> On Sun, Jul 2,
On 2017/7/1 上午4:43, bca...@lists.ewheeler.net wrote:
> From: Dan Carpenter <dan.carpen...@oracle.com>
>
> continue_at() doesn't have a return statement anymore.
>
> Signed-off-by: Dan Carpenter <dan.carpen...@oracle.com>
Acked-by: Coly Li <col...@suse.de>
T
on this thread, or is the patch good to go?
>
> Please send your ack if you're happy with it so I can queue it up.
I discussed with Tang offline, this patch is correct. But the patch
commit log should be improved. Now I help to work on it, should be done
quite soon.
Coly
>
On 2017/7/11 上午11:48, Coly Li wrote:
> On 2017/7/6 下午11:24, Christoph Hellwig wrote:
>> On Thu, Jul 06, 2017 at 03:35:48PM +0800, Coly Li wrote:
>>> Then gfs2 breaks the above rule ? in gfs2_metapath_ra() and
>>> gfs2_dir_readahead(), only REQ_META is used in submit_
s not make sense,
>> bache just simply returns -EIO immediately.
>>
>> Reported-by: Arne Wolf <aw...@lenovo.com>
>> Signed-off-by: Coly Li <col...@suse.de>
>> ---
>> drivers/md/bcache/request.c | 5 -
>> 1 file changed, 4 insertions(+), 1 del
en cached
>>>> device is in writethough mode, and s->recoverable is set. For other
> cache
>>>> mode, recovery I/O failure by reading backing device does not make
> sense,
>>>> bache just simply returns -EIO immediately.
>>>>
>>>> Reported
What we are discussing is more then the original patch, now the topic
changes to how handling cache device disconnection more properly. So I
change email thread subject.
On 2017/7/13 上午8:53, Eric Wheeler wrote:
> On Wed, 12 Jul 2017, Coly Li wrote:
>
>> On 2017/7/12 上午10:
> - if (!c)
> - closure_return(cl);
> -
> bch_cache_accounting_destroy(>accounting);
>
> kobject_put(>internal);
>
Agree, cache_set_flush() is only called from a continue_at() in
__cache_set_unregister(). In this case, cl is always not NULL.
Reviewed-by: Coly Li <col...@suse.de>
Thanks.
--
Coly Li
&
> - !dc->writeback_running)) {
> + ((!dc->writeback_rate.rate || !dc->writeback_running) &&
> + !test_bit(BCACHE_DEV_DETACHING, >disk.flags))) {
> up_write(>writeback_lock);
> set_current_state(TASK_INTERRUPTIBLE);
>
> if (kthread_should_stop())
> return 0;
>
> - schedule();
> + schedule_timeout(WRITE_BACK_WAIT_CYCLE);
> continue;
> }
>
>
--
Coly Li
On 2017/7/14 下午4:14, Ming Lei wrote:
> No function change, just move 'struct resync_pages' and related
> helpers into raid1-10.c
Please give me a hint, I don't find where raid1-10.c is
Thanks.
Coly
>
> Signed-off-by: Ming Lei
> ---
> drivers/md/md.h | 53
On 2017/7/12 上午1:42, Eric Wheeler wrote:
> On Tue, 11 Jul 2017, Coly Li wrote:
>> On 2017/7/11 上午5:46, Kai Krakow wrote:
>>> Am Mon, 10 Jul 2017 19:18:28 +0800
>>> schrieb Coly Li <col...@suse.de>:
>>>
>>>> If a read bio to cache device gets
On 2017/6/29 下午11:15, Avi Kivity wrote:
>
>
> On 12/08/2016 06:44 PM, Coly Li wrote:
>> On 2016/12/8 上午12:59, Shaohua Li wrote:
>>> On Wed, Dec 07, 2016 at 07:50:33PM +0800, Coly Li wrote:
>> [snip]
>>> Thanks for doing this, Coly! For raid0, this total
.
>
We need more eyes to look at bcache code, maybe we can always CC bcache
patches to linux-block for more review.
--
Coly Li
On 2017/7/1 上午4:42, bca...@lists.ewheeler.net wrote:
> From: Eric Wheeler
>
> Bypass if: bio->bi_opf & (REQ_RAHEAD|REQ_BACKGROUND)
>
> Writeback if: op_is_sync(bio->bi_opf) || bio->bi_opf & (REQ_META|REQ_PRIO)
>
Hi Eric,
Could you please explain a bit how the
ache_kobj, files) ||
bch_request_init() ||
- bch_debug_init(bcache_kobj))
+ bch_debug_init(bcache_kobj)) {
+ mutex_unlock(_register_lock);
goto err;
+ }
+ mutex_unlock(_register_lock);
return 0;
err:
bcache_exit();
---
Personally I think the first approach with only one new line code added,
your original version will add two new lines of code.
Just FYI. Thanks.
--
Coly Li
er drop the reference returned to
> us from lookup_bdev(). Fix that.
>
> Signed-off-by: Jan Kara <j...@suse.cz>
> Cc: sta...@vger.kernel.org
Acked-by: Coly Li <col...@suse.de>
Thanks.
> ---
> drivers/md/bcache/super.c | 2 ++
> 1 file changed, 2 insertions(+)
&g
t; Reviewed-by: Eric Wheeler <bca...@linux.ewheeler.net>
> Cc: sta...@vger.kernel.org
Acked-by: Coly Li <col...@suse.de>
Thanks.
> ---
> drivers/md/bcache/request.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/md/bcache/request.
On 2017/7/1 上午4:42, bca...@lists.ewheeler.net wrote:
> From: Tang Junhui
>
> Thin flash device does not initialize stripe_sectors_dirty correctly, this
> patch fixes this issue.
Hi Junhui,
Could you please explain why stripe_sectors_ditry is not correctly
initialized
io->bi_opf & (REQ_RAHEAD|REQ_BACKGROUND) && !(bio->bi_opf &
> REQ_META))
>
> Writeback if:
> op_is_sync(bio->bi_opf) || bio->bi_opf & (REQ_META|REQ_PRIO)
>
> Signed-off-by: Eric Wheeler <bca...@linux.ewheeler.net>
Review
On 2017/7/2 上午3:39, Eric Wheeler wrote:
> On Sun, 2 Jul 2017, Coly Li wrote:
>
>> On 2017/7/1 上午4:42, bca...@lists.ewheeler.net wrote:
>>> From: Eric Wheeler <g...@linux.ewheeler.net>
>>>
>>> Bypass if: bio->bi_opf & (REQ_RAHEAD|REQ_BACKG
70246286e94c3 ("block: get rid of bio_rw and READA")' is
from you, could you please provide your point on adding REQ_PRIO on the
above 2 locations ?
IMHO another patch to add REQ_PRIO to gfs2 meta data read ahead code
path should be necessary.
Thanks.
--
Coly Li
a_on_failure to
allow_stale_data_on_failure, and fix the confusing commit log.
v1: initial patch posted.
Signed-off-by: Coly Li <col...@suse.de>
Reported-by: Arne Wolf <aw...@lenovo.com>
Cc: Nix <n...@esperi.org.uk>
Cc: Kai Krakow <hurikha...@gmail.com>
Cc: Eric Wheeler <bca...@lists.
st fix is, before
waking up ca->alloc_thread, checking whether it is allocated, and only
wake up ca->alloc_thread when it is not NULL.
Signed-off-by: Coly Li <col...@suse.de>
Reported-by: Jorg Bornschein <j...@capsec.org>
Cc: Kent Overstreet <kent.overstr...@gmail.com>
Cc: sta..
On 2017/9/20 下午6:07, Kent Overstreet wrote:
> On Wed, Sep 20, 2017 at 06:24:33AM +0800, Coly Li wrote:
>> When bcache does read I/Os, for example in writeback or writethrough mode,
>> if a read request on cache device is failed, bcache will try to recovery
>> the request b
On 2017/9/20 下午5:40, Michael Lyle wrote:
> On Wed, Sep 20, 2017 at 3:28 AM, Coly Li <col...@suse.de> wrote:
>> Even the read request failed on file system meta data, because finally a
>> stale data will be provided to kernel file system code, it is probably
>> file sy
rom allow_stale_data_on_failure to
allow_stale_data_on_failure, and fix the confusing commit log.
v1: initial patch posted.
Signed-off-by: Coly Li <col...@suse.de>
Reported-by: Arne Wolf <aw...@lenovo.com>
Cc: Kent Overstreet <kent.overstr...@gmail.com>
Cc: Michael Lyle <ml
.
Signed-off-by: Coly Li <col...@suse.de>
---
drivers/md/bcache/alloc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/md/bcache/alloc.c b/drivers/md/bcache/alloc.c
index cacbe2dbd5c3..071ff28be912 100644
--- a/drivers/md/bcache/alloc.c
+++ b/drivers/md/bcache/a
nel code still thinks everything is consistent on disk ....
Thanks.
Coly Li
> On Tue, Sep 19, 2017 at 3:24 PM, Coly Li <col...@suse.de> wrote:
>> When bcache does read I/Os, for example in writeback or writethrough mode,
>> if a read request on cache device is failed,
If I use a 1.8T hard disk as cached device, and 1TB SSD as cache device,
and set fio to write 500G dirty data in total. Is this configuration
close to the working set and cache size you suggested ?
[snip]
Thanks.
--
Coly Li
are retired.
>
> There is a slight difference from earlier versions of the patch in
> integral handling to prevent excessive negative integral windup.
>
> Signed-off-by: Michael Lyle <ml...@lyle.org>
> Reviewed-by: Coly Li <col...@suse.de>
Hi Mike,
I am testing
h rates and long sleep periods, but this is adequate for
> now.
>
> Signed-off-by: Michael Lyle <ml...@lyle.org>
> Reported-by: Coly Li <col...@suse.de>
Added to for-test, I will update test result after the writeback
performance test done (hopefully in 2 days).
Thanks for fast fix.
Coly Li
[snip]
for-test: this directory contains all meaningful patches, I verify them
when I have time, they are candidate of for-next.
Michael is preparing a git tree at mean time, maybe we will take care
patches in form of git tree soon.
Thanks.
Coly Li
>
> Excuse my typo sent from my mobile phone.
>
> A
d different naming, but they should be using udev + labels/uuids
> anyways.
>
Yes, I hope so, too.
> Reviewed-by: Michael Lyle <ml...@lyle.org>
>
Thanks for the review. We have one more code reviewer, yeah!
Coly Li
On 2017/10/8 下午12:57, Michael Lyle wrote:
> Coly--
>
>
> On 10/07/2017 09:22 PM, Coly Li wrote:
> [snip]
>> rate: 488.2M/sec
>> dirty: 91.7G
>> target: 152.3G
>> proportional: -1.5G
>> integral: 10.9G
>>
move forward.
Thanks for your patience, and continuous following up the discussion.
--
Coly Li
e I am wrong, but you need to provide more positive performance
numbers of more generic workloads as evidence in further discussion.
Thanks.
--
Coly Li
On 2017/10/6 上午1:53, Michael Lyle wrote:
> On Thu, Oct 5, 2017 at 10:38 AM, Coly Li <i...@coly.li> wrote:
>> [snip]
>> In this test, without bio reorder patches, writeback throughput is
>> much faster, you may see the write request number and request merge
>> num
1 seconds. They are all dedicated disks
for testing, just raw disks without any file system.
Thanks.
Coly
> On Fri, Oct 6, 2017 at 3:36 AM, Coly Li <i...@coly.li> wrote:
>> On 2017/10/6 下午5:20, Michael Lyle wrote:
>>> Coly--
>>>
>>> I did not say the re
e that the bio reorder patches are helpful for general
workloads, or at least helpful to many typical workloads.
Let the data talk.
Thanks.
--
Coly Li
On 2017/10/17 上午1:39, Michael Lyle wrote:
> Hey Coly--
>
> On Thu, Sep 21, 2017 at 12:54 PM, Coly Li <col...@suse.de> wrote:
>> When bcache does read I/Os, for example in writeback or writethrough mode,
>> if a read request on cache device is failed, bcache will try
sfs file is removed.
v2: rename sysfs entry from allow_stale_data_on_failure to
allow_stale_data_on_failure, and fix the confusing commit log.
v1: initial patch posted.
Signed-off-by: Coly Li <col...@suse.de>
Reported-by: Arne Wolf <aw...@lenovo.com>
Acked-by: Michael Lyle <
6 config... sorry too...
Reviewed-by: Coly Li <col...@suse.de>
Thanks to Michael for the fix.
Coly Li
> ---
> drivers/md/bcache/util.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/md/bcache/util.c b/drivers/md/bcache/util.c
olumes in __update_writeback_rate().
(Commit log composed by Coly Li to pass checkpatch.pl checking)
Signed-off-by: Tang Junhui <tang.jun...@zte.com.cn>
Reviewed-by: Coly Li <col...@suse.de>
Cc: sta...@vger.kernel.org
---
drivers/md/bcache/writeback.c | 3 ++-
drivers/md/bcach
From: Byungchul Park <byungchul.p...@lge.com>
Although llist provides proper APIs, they are not used. Make them used.
Signed-off-by: Byungchul Park <byungchul.p...@lge.com>
Acked-by: Coly Li <col...@suse.de>
---
drivers/md/bcache/closure.c | 15 ++-
1 file cha
space behavior. Utilize 1
signed variable to use throughout the function to preserve error return
capability.
Signed-off-by: Tony Asleson <tasle...@redhat.com>
Acked-by: Coly Li <col...@suse.de>
Cc: sta...@vger.kernel.org
---
drivers/md/bcache/sysfs.c | 4 ++--
1 file changed, 2 insertio
r NULL. Let's just remove the if statement.
Signed-off-by: Dan Carpenter <dan.carpen...@oracle.com>
Reviewed-by: Coly Li <col...@suse.de>
---
drivers/md/bcache/super.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a/drivers/md/bcache/super.c b/drivers/md/bcache/super.c
index 253918972335
me bucket. Usually the
same thread always write/read the same backend device, so it is good
for write-back and also promote the usage efficiency of buckets.
Signed-off-by: Tang Junhui <tang.jun...@zte.com.cn>
Reviewed-by: Coly Li <col...@suse.de>
---
drivers/md/bcache/alloc.c | 4 ++
e root node write locker
This patch alloc a separate work-queue for write-back thread to avoid such
race.
(Commit log re-organized by Coly Li to pass checkpatch.pl checking)
Signed-off-by: Tang Junhui <tang.jun...@zte.com.cn>
Acked-by: Coly Li <col...@suse.de>
Cc: sta...@vger.kernel.org
_to_gc to -1 to
meet the condition when we trigger gc by manual command.
(Code comments aded by Coly Li)
Signed-off-by: Tang Junhui <tang.jun...@zte.com.cn>
Reviewed-by: Coly Li <col...@suse.de>
---
drivers/md/bcache/sysfs.c | 15 ++-
1 file changed, 14 insertions(+), 1
From: Tang Junhui <tang.jun...@zte.com.cn>
Since bypassed IOs use no bucket, so do not subtract sectors_to_gc to
trigger gc thread.
Signed-off-by: tang.junhui <tang.jun...@zte.com.cn>
Acked-by: Coly Li <col...@suse.de>
Reviewed-by: Eric Wheeler <bca...@linux.ewheeler.net>
ed-off-by: Jan Kara <j...@suse.cz>
Acked-by: Coly Li <col...@suse.de>
Cc: sta...@vger.kernel.org
---
drivers/md/bcache/super.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/md/bcache/super.c b/drivers/md/bcache/super.c
index 8352fad765f6..9a2c190745b6 100644
--- a/drivers/md/bc
window.
Thanks in advance.
Coly Li
On 2017/9/5 下午2:43, Christoph Hellwig wrote:
> On Tue, Sep 05, 2017 at 01:30:04AM +0800, Coly Li wrote:
>>
>> When you mentioned "whole chunk of code", do you mean the following
>> block of code ?
>>
>>
>> 1960 if (IS_ERR(b
ease note, because cache mode can be switched arbitrarily in run time, a
writethrough mode might be switched from a writeback mode. Therefore
checking dc->has_data in writethrough mode still makes sense.
Signed-off-by: Coly Li <col...@suse.de>
Reported-by: Arne Wolf <aw...@lenovo.com>
. For most common deployment for a single server in
now days, it should be enough.
Signed-off-by: Coly Li <col...@suse.de>
---
drivers/md/bcache/super.c | 37 +
1 file changed, 25 insertions(+), 12 deletions(-)
diff --git a/drivers/md/bcache/super.c b/d
On 2017/9/5 下午2:43, Christoph Hellwig wrote:
> On Tue, Sep 05, 2017 at 01:30:04AM +0800, Coly Li wrote:
>>
>> When you mentioned "whole chunk of code", do you mean the following
>> block of code ?
>>
>>
>> 1960 if (IS_ERR(b
struct cached_dev *dc);
+void bch_sectors_dirty_init(struct bcache_device *);
to call this function conveniently in flash_dev_run().
(Commit log is composed by Coly Li)
Signed-off-by: Tang Junhui <tang.jun...@zte.com.cn>
Reviewed-by: Coly Li <col...@suse.de>
Cc: sta...@vger.kernel.org
---
On 2017/9/6 下午11:46, Jens Axboe wrote:
> On 09/06/2017 09:41 AM, Coly Li wrote:
>> On 2017/9/6 下午10:20, Jens Axboe wrote:
>>> On Wed, Sep 06 2017, Coly Li wrote:
>>>> Hi Jens,
>>>>
>>>> Here are 12 patchs for bcache fixes and updates, most
in advance.
Coly Li
On 2017/9/26 下午5:54, Coly Li wrote:
> Commit 09b3efec ("bcache: Don't reinvent the wheel but use existing llist
> API") replaces the following while loop by llist_for_each_entry(),
>
> -
> - while (reverse) {
> - cl = container_of(r
n
posting bcache patches to linux-bcache list, then patches may have more
eyes on them.
Thanks.
Coly Li
rs.
> I believe patch 4 is useful on its own, but I have this and other
> pieces of development that depend upon it.
Current bcache code works well in most of writeback loads, I just worry
that implementing an elevator in bcache writeback logic is a big
investment with a little return.
--
Coly Li
On 2017/9/30 下午3:13, Michael Lyle wrote:
> Coly--
>
>
> On Fri, Sep 29, 2017 at 11:58 PM, Coly Li <i...@coly.li> wrote:
>> On 2017/9/30 上午11:17, Michael Lyle wrote:
>> [snip]
>>
>> If writeback_rate is not minimum value, it means there are front end
>
arget
>>>> rate = 8, it would not combine two adjacent 4k writes and would
>>>> instead seek the disk twice.
>>>>
>>>> This patch imposes limits and explicitly understands the size of
>>>> contiguous I/O during issue. It also will combine contiguous I/O
>>>> in all circumstances, not just when writeback is requested to be
>>>> relatively fast.
>>>>
>>>> It is a win on its own, but also lays the groundwork for skip writes to
>>>> short keys to make the I/O more sequential/contiguous.
>>>>
>>>> Signed-off-by: Michael Lyle <ml...@lyle.org>
[snip code]
--
Coly Li
502.00 0.00 19648.00 0 38112
>>>
>>> or we are combining about 4.9 extents to a contiguous writeback, and writing
>>> back at about half the rate.
Hi Mike,
Get it. Now I am testing your patches (all 5 patches). It has been 12+
hours, should be 12+ hours more. The backing device is a raid0 composed
by 4x1.8T 2.5inch harddisk, cache device is a 3.8T NVMe SSD. Block size
is 512K.
Hope it works as you expected on my server.
--
Coly Li
ess is slower than I expected, tomorrow morning I will get the
data. Hope 2 days later I may have an benchmark analysis to share.
I will update the result then, if I didn't do anything wrong during my
performance testing.
Coly Li
> On Sat, Sep 30, 2017 at 9:51 PM, Coly Li <i...@coly.li> w
are right. OK, then let's just
> queue it up as-is, I'll add the Fixes line this time.
>
Hi Jens,
Copied, next time for similar situation, Fixes will be there.
Thanks for doing this.
--
Coly Li
On 2017/9/26 下午3:16, 박병철/선임연구원/SW
Platform(연)AOT팀(byungchul.p...@lge.com) wrote:
>> -Original Message-
>> From: Coly Li [mailto:i...@coly.li]
>> Sent: Tuesday, September 26, 2017 4:09 PM
>> To: Michael Lyle; Coly Li
>> Cc: linux-bca...@vger.kernel.org; linu
ch an implicit race behind bcache
code. I just post a patch to explain how this race may happen and
corrupt the reverse list iteration. Could you please to review the fix ?
And thanks to Michael again to catch this bug.
--
Coly Li
On 2017/9/26 下午2:39, 박병철/선임연구원/SW
Platform(연)AOT팀(byungchul.p...@lge.com) wrote:
>> -Original Message-
>> From: Michael Lyle [mailto:ml...@lyle.org]
>> Sent: Tuesday, September 26, 2017 1:38 PM
>> To: Coly Li
>> Cc: linux-bca...@vger.kernel.org; linu
chance to mislead
llist_for_each_entry() to iterate wrong list.
llist_for_each_entry_safe() should be used here. I will send a fix to
Jens, hope to catch up 4.14 still.
Thanks!
--
Coly Li
On 2017/9/26 下午3:15, 박병철/선임연구원/SW
Platform(연)AOT팀(byungchul.p...@lge.com) wrote:
>> -Original Message-
>> From: Coly Li [mailto:i...@coly.li]
>> Sent: Tuesday, September 26, 2017 4:09 PM
>> To: 박병철/선임연구원/SW Platform(연)AOT팀(byungchul.p...@lge.com);
>> Michael
Hi Jens,
Michael Lyle catches a race bug in bcache 4.14 patch set. Here is the fix
for this issue. Could you please to pick it for 4.14-rc4 ? Then we don't need
to sta...@vger.kernel.org in next cycle.
Thanks in advance.
Coly Li
Then the copy of next node will make
sure list iteration stays on original reverse list.
Signed-off-by: Coly Li <col...@suse.de>
Reported-by: Michael Lyle <ml...@lyle.org>
Reviewed-by: Byungchul Park <byungchul.p...@lge.com>
---
drivers/md/bcache/closure.c | 4 ++--
1 file change
[root@localhost internal]# echo 1 > trigger_gc
But it does not work, I debug the code in gc_should_run(), It works only
if in invalidating or sectors_to_gc < 0. So set sectors_to_gc to -1 to
meet the condition when we trigger gc by manual command.
(Code comments aded by Coly Li
On 2017/10/2 上午1:34, Michael Lyle wrote:
> On Sun, Oct 1, 2017 at 10:23 AM, Coly Li <i...@coly.li> wrote:
>> Hi Mike,
>>
>> Your data set is too small. Normally bcache users I talk with, they use
>> bcache for distributed storage cluster or commercial data bas
lay the groundwork for further
> improvements, through the use of plugging the block layer and to allow
> accelerated writeback when the device is idle.
>
[snip]
Hi Mike,
Thank you for the detailed information!
In your test, dirty data occupies 1/8 space of CACHEDEVICE, can I know
exact sizes of the cache device and cached device, then I will set up a
similar configuration on my machine, and try to reproduce the test.
--
Coly Li
mpted out, since its status is
TASK_INTERRUPTIBLE, it means scheduler won't pick it back to run forever,
and the allocator thread may hang in do_exit().
This patch sets allocator kthread state back to TASK_RUNNING before it
returns to do_exit(), which avoids a potential deadlock.
Signed-off-by: Coly Li
On 22/11/2017 10:55 PM, Sebastian Andrzej Siewior wrote:
> On 2017-11-22 15:10:51 [+0100], Hannes Reinecke wrote:
>> On 11/22/2017 01:33 PM, Coly Li wrote:
>>> Kthread function bch_allocator_thread() references allocator_wait(ca, cond)
>>> and when kthread_should_stop()
Pavel Goran <via-bca...@pvgoran.name>
> Reported-by: Campbell Steven <caste...@gmail.com>
Reviewed-by: Coly Li <col...@suse.de>
Coly Li
> Cc: Christoph Hellwig <h...@lst.de>
> Cc: Jens Axboe <ax...@kernel.dk>
> Cc: <sta...@vger.kernel.org>
> ---
occurred on the layers above any of them.
>
> On the 3rd server where some read errors occurred, I cannot verify if
> there were positive values in cache_read_races as I moved the data from
> there onto other storage, and shut down the bcache resources where the
> errors occurred.
>
> If I can provide any other info which might help with this issue, please
> let me know.
Hi Eddie,
This is very informative, thank you so much :-)
Coly Li
ck_lock, which means a potential better I/O
latency for front end I/O requests. Because in writeback mode, front end
I/O request also needs to acquire dc->writeback_lock for btree operations.
Signed-off-by: Coly Li <col...@suse.de>
---
drivers/md/bcache/bcache.h| 2 +-
drivers/md/
1 - 100 of 503 matches
Mail list logo