oup {
> STAT_READ,
> STAT_WRITE,
> --
Personally I like current explicit way, it is simpler than an extra macro. This
is just my own points, FYI.
Thanks.
Coly Li
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
happens on dm-thin
volume when it is used as swap.
Note: this change depends on commit a666e5c05e7c ("dm: fix deadlock when
swapping to encrypted device")
Signed-off-by: Coly Li
Cc: Mikulas Patocka
Cc: Mike Snitzer
Cc: sta...@vger.kernel.org
---
Changelog,
v2: fix typo in commit l
happens on dm-thin
volume when it is used as swap.
NOTE: this change depends on commit a666e5c05e7c ("dm: fix deadlock when
swapping to encrypted device")
Signed-off-by: Coly Li
Cc: Signed-off-by: Mikulas Patocka
Cc: Mike Snitzer
Cc: sta...@vger.kernel.org
---
drivers/md/dm-thin.c |
> 2022年12月6日 22:40,Christoph Hellwig 写道:
>
> This macro is obsolete, so replace the last few uses with open coded
> bi_opf assignments.
>
> Signed-off-by: Christoph Hellwig
Acked-by: Coly Li mailto:col...@suse.de>>
BTW, may I ask why bio_set_op_attrs() is remo
> 2022年12月6日 22:49,Christoph Hellwig 写道:
>
> On Tue, Dec 06, 2022 at 10:46:31PM +0800, Coly Li wrote:
>> BTW, may I ask why bio_set_op_attrs() is removed. Quite long time ago it was
>> added to avoid open code, and now we remove it to use open coded
>> assignme
well.
>
> Since the 'kernel stack size' is limit - the amount of recursive calls is
> also limited - so having such limitation exposed on 'creation' time seems
> like fair path - compared with crashing kernel during chaing processing
Although I don’t have deep understand to device mapper, I agree that it sounds
as a simple and working way to fix.
Thanks.
Coly Li
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
dm-table reload, is it a bug or just as-designed ?
Thanks in advance.
Coly Li
[1] The kernel panic on Linux v5.3,
[ 3974.375341] BUG: stack guard page was hit at 94b9add1 (stack is
2345b2aa..1e32dd11)
[ 3974.375361] kernel stack overflow (double-fault): [#1] SMP
. Petersen
Acked-by: Christoph Böhmwalder [drbd]
Acked-by: Ryusuke Konishi [nifs2]
Acked-by: Coly Li [drbd]
Hi Christoph,
My ACK is for bcache, not drbd here.
Thanks.
Coly Li
Acked-by: David Sterba [btrfs]
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com
[snipped]
For bcache part,
Acked-by: Coly Li
Coly Li
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
On 4/6/22 2:05 PM, Christoph Hellwig wrote:
Move all the logic to limit the discard bio size into a common helper
so that it is better documented.
Signed-off-by: Christoph Hellwig
Acked-by: Coly Li
Thanks for the change.
Coly Li
---
block/blk-lib.c | 59
,
Acked-by: Coly Li
Thanks.
Coly Li
---
block/blk-core.c| 2 +-
block/blk-lib.c | 64 -
block/blk-mq-debugfs.c | 1 -
block/blk-settings.c| 16 +++-
block/fops.c
is done e.g. for write zeroes as well.
Signed-off-by: Christoph Hellwig
For the bcache part,
Acked-by: Coly Li
Thanks.
Coly Li
---
block/blk-core.c| 2 +-
block/blk-lib.c | 2 +-
block/ioctl.c | 3 +--
drivers/block/drbd
,
even if the default stacking rules would allow for it.
Signed-off-by: Christoph Hellwig
For the bcache part,
Acked-by: Coly Li
Thanks.
Coly Li
---
arch/um/drivers/ubd_kern.c| 2 --
block/blk-mq-debugfs.c| 1 -
drivers/block/drbd/drbd_nl.c | 15
On 10/13/21 1:10 PM, Christoph Hellwig wrote:
Use the equivalent block layer helper instead.
Signed-off-by: Christoph Hellwig
Acked-by: Coly Li
Thanks.
Coly Li
---
drivers/md/bcache/super.c | 2 +-
drivers/md/bcache/util.h | 4
drivers/md/bcache/writeback.c | 2 +-
3
ooks good to me.
Reviewed-by: Coly Li
Thanks.
Coly Li
> ---
> drivers/md/bcache/btree.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/md/bcache/btree.c b/drivers/md/bcache/btree.c
> index 183a58c89377..0595559de174 100644
> --- a/drivers/
t the only one example is,
871 if (s->iop.status)
872 continue_at_nobarrier(cl, cached_dev_read_error,
bcache_wq);
Maybe you should change to
if (s->iop.status != BLK_STS_OK)
continue_at_nobarrier(cl, cached_dev_read_error,
bcache_wq);
Just FYI.
Coly Li
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
On 5/21/21 1:51 PM, Christoph Hellwig wrote:
> Convert the bcache driver to use the blk_alloc_disk and blk_cleanup_disk
> helpers to simplify gendisk and request_queue allocation.
>
> Signed-off-by: Christoph Hellwig
Acked-by: Coly Li
Thanks.
Coly Li
> ---
> drivers/md/b
"bcache: fix refcount
underflow in bcache_device_free()").
Maybe add a parameter to blk_cleanup_disk() or checking (disk->flags &
GENHD_FL_UP) inside blk_cleanup_disk() ?
Coly Li
> }
>
> bioset_exit(>bio_split);
> @@ -946,7 +942,7 @@ static int bcache_device_init(s
On 1/29/21 9:57 PM, Alasdair G Kergon wrote:
> On Fri, Jan 29, 2021 at 06:40:06PM +0800, Coly Li wrote:
>> Recently I receive a report that whole system hung and no response after
>> a while with I/O load. The special configuration is the dm thin-pool
>> volume is used
se and kernel information for 1 hour+ before I reset
the machine.
My questions are,
- Can a thin-pool volume be used as swap device?
- The above description is a bug, or an already know issue which should
be avoided ?
Thanks in advance.
Coly Li
--
dm-devel mailing list
dm-devel@redhat.com
https://w
On 11/24/20 9:27 PM, Christoph Hellwig wrote:
> Add a little helper to find the kobject for a struct block_device.
>
> Signed-off-by: Christoph Hellwig
> Reviewed-by: Greg Kroah-Hartman
> Reviewed-by: Jan Kara
> Reviewed-by: Johannes Thumshirn
For the bcache part, Acked-by
ra reference in the inode and can generally
> simplify handling of struct block_device to keep the lookups contained
> in the core block layer code.
>
> Signed-off-by: Christoph Hellwig
For the bcache part, Acked-by: Coly Li
Thanks.
Coly Li
> ---
> block/ioctl.c
for torn writes. By only using the block_device field
> this problem also gets fixed.
>
> Signed-off-by: Christoph Hellwig
> Reviewed-by: Greg Kroah-Hartman
For the bcache part, Acked-by: Coly Li
Thanks.
Coly Li
> ---
> block/bio.c| 4 +-
> blo
the bcache part, Acked-by: Coly Li
> ---
> block/bio.c| 4 +-
> block/blk-core.c | 66 ++
> block/blk-flush.c | 2 +-
> block/blk-mq.c | 9 ++--
> block/blk-mq.h
On 11/18/20 5:10 PM, Greg KH wrote:
> On Wed, Nov 18, 2020 at 04:54:51PM +0800, Coly Li wrote:
>> On 11/18/20 4:47 PM, Christoph Hellwig wrote:
>>> Don't bother to call lookup_bdev for just a slightly different error
>>> message without any functional change.
>&
and observed,
and distinct a busy device and an already registered device is important
(the first one is critical error and second one is not).
Remove such error message will be a functional regression.
Coly Li
> ---
> drivers/md/bcache/super.c | 44 +--
> 1 file
s there as well by applying the same scheme based on
> max_sectors.
>
> Signed-off-by: Christoph Hellwig
> Reviewed-by: Johannes Thumshirn
For the bcache part,
Acked-by: Coly Li
Thanks.
Coly Li
> ---
> block/blk-settings.c | 5 ++---
> block/blk-sysfs.c
On 2020/9/21 16:07, Christoph Hellwig wrote:
> Inherit the optimal I/O size setting just like the readahead window,
> as any reason to do larger I/O does not apply to just readahead.
>
> Signed-off-by: Christoph Hellwig
Acked-by: Coly Li
Thanks.
Coly Li
> ---
> drivers
On 2020/9/21 22:00, Christoph Hellwig wrote:
> On Mon, Sep 21, 2020 at 05:54:59PM +0800, Coly Li wrote:
>> I am not sure whether virtual bcache device's optimal request size can
>> be simply set like this.
>>
>> Most of time inherit backing device's o
l request size of the virtual
bcache device as the least common multiple of cache device's and backing
device's optimal request sizes ?
[snipped]
Thanks.
Coly Li
--
dm-devel mailing list
dm-devel@redhat.com
https://www.redhat.com/mailman/listinfo/dm-devel
: error: unaligned partition for dax
> kernel: sda3: error: unaligned partition for dax
>
Aha, yes you are right, I agree with you.
Coly Li
> Reviewed-by: John Pittman
>
> On Thu, Sep 3, 2020 at 12:12 PM Coly Li wrote:
>>
>> On 2020/9/4 00:06, Ira Weiny wrote:
>&
purpose.
Fixes: c2affe920b0e ("dax: do not print error message for non-persistent memory
block device")
Signed-off-by: Coly Li
Reviewed-and-tested-by: Adrian Huang
Reviewed-by: Ira Weiny
Reviewed-by: Mike Snitzer
Reviewed-by: Pankaj Gupta
Cc: Jan Kara
Cc: Vishal Verma
---
Cha
On 2020/9/4 00:00, Mike Snitzer wrote:
> On Thu, Sep 03 2020 at 11:28am -0400,
> Coly Li wrote:
>
>> When calling __generic_fsdax_supported(), a dax-unsupported device may
>> not have dax_dev as NULL, e.g. the dax related code block is not enabled
>>
On 2020/9/4 00:06, Ira Weiny wrote:
> On Thu, Sep 03, 2020 at 07:55:49PM +0800, Coly Li wrote:
>> When calling __generic_fsdax_supported(), a dax-unsupported device may
>> not have dax_dev as NULL, e.g. the dax related code block is not enabled
>> by Kco
for the above purpose,
- if (!dax_dev && !bdev_dax_supported(bdev, blocksize)) {
+ if (!dax_dev || !bdev_dax_supported(bdev, blocksize)) {
Fixes: c2affe920b0e ("dax: do not print error message for non-persistent memory
block device")
Signed-off-by: Coly Li
R
for the above purpose,
- if (!dax_dev && !bdev_dax_supported(bdev, blocksize)) {
+ if (!dax_dev || !bdev_dax_supported(bdev, blocksize)) {
Fixes: c2affe920b0e ("dax: do not print error message for non-persistent memory
block device")
Signed-off-by: Coly Li
R
for the above purpose,
- if (!dax_dev && !bdev_dax_supported(bdev, blocksize)) {
+ if (!dax_dev || !bdev_dax_supported(bdev, blocksize)) {
Fixes: c2affe920b0e ("dax: do not print error message for non-persistent memory
block device")
Signed-off-by: Coly Li
Cc
On 2020/9/3 00:51, Mike Snitzer wrote:
> On Wed, Sep 02 2020 at 12:46pm -0400,
> Coly Li wrote:
>
>> On 2020/9/3 00:44, Mike Snitzer wrote:
>>> On Wed, Sep 02 2020 at 12:40pm -0400,
>>> Coly Li wrote:
>>>
>>>> On 2020/9/3 00:04, Mike Snit
On 2020/9/3 07:05, Verma, Vishal L wrote:
> On Thu, 2020-09-03 at 00:40 +0800, Coly Li wrote:
>> On 2020/9/3 00:04, Mike Snitzer wrote:
>>> 5.9 commit 231609785cbfb ("dax: print error message by pr_info() in
>>> __generic_fsdax_supported()"
On 2020/9/3 00:51, Mike Snitzer wrote:
> On Wed, Sep 02 2020 at 12:46pm -0400,
> Coly Li wrote:
>
>> On 2020/9/3 00:44, Mike Snitzer wrote:
>>> On Wed, Sep 02 2020 at 12:40pm -0400,
>>> Coly Li wrote:
>>>
>>>> On 2020/9/3 00:04, Mike Snit
On 2020/9/3 00:44, Mike Snitzer wrote:
> On Wed, Sep 02 2020 at 12:40pm -0400,
> Coly Li wrote:
>
>> On 2020/9/3 00:04, Mike Snitzer wrote:
>>> 5.9 commit 231609785cbfb ("dax: print error message by pr_info() in
>>> __generic_fsdax_supported()
iled (-95)
> [66567.503693] dm-2: error: dax access failed (-95)
>
> commit 231609785cbfb must be reverted.
>
> Please advise, thanks.
Adrian Huang from Lenovo posted a patch, which titled: dax: do not print
error message for non-persistent memory block device
It fixes the issue, but
On 2020/8/21 14:48, Leizhen (ThunderTown) wrote:
>
>
> On 8/21/2020 12:11 PM, Coly Li wrote:
>> On 2020/8/21 10:03, Zhen Lei wrote:
>>> There are too many PAGE_SECTORS definitions, and all of them are the
>>> same. It looks a bit of a mess. So why not move
gt; 4KB: currently in bcache code the
sector size is assumed to be 512 sectors, if kernel page > 4KB, it is
possible that PAGE_SECTORS in bcache will be a number > 8 ?
Thanks.
Coly Li
> ---
> drivers/block/brd.c | 1 -
> drivers/block/null_blk_main.c | 1 -
> drivers/md/
ic_make_request(). Anyway, if it is decided, for bcache
part,
Acked-by: Coly Li
> ---
> Documentation/block/biodoc.rst| 2 +-
> .../fault-injection/fault-injection.rst | 2 +-
> Documentation/trace/ftrace.rst| 4 +--
> block/bio.c
Also remove the request_queue argument to it, as
> the queue can be derived pretty trivially from the bio.
>
> Signed-off-by: Christoph Hellwig
For the bcache part,
Acked-by: Coly Li
> ---
> Documentation/block/biodoc.rst| 2 +-
> .../block/writeback_
On 2020/7/1 16:59, Christoph Hellwig wrote:
> Nothing in bcache actually uses the ->queuedata field.
>
> Signed-off-by: Christoph Hellwig
Acked-by: Coly Li
> ---
> drivers/md/bcache/super.c | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/drivers/md/bcache/
_fn stacking infrastructure.
>
> Signed-off-by: Christoph Hellwig
For the bcache part, Acked-by: Coly Li
Thanks.
Coly Li
> ---
> drivers/block/drbd/drbd_main.c | 59
> drivers/md/bcache/request.c | 43 ---
&
On 2020/5/25 19:30, Christoph Hellwig wrote:
> Switch bcache to use the nicer bio accounting helpers, and call the
> routines where we also sample the start time to give coherent accounting
> results.
>
> Signed-off-by: Christoph Hellwig
Acked-by: Coly Li
Coly Li
> ---
&g
ed-off-by: Christoph Hellwig
It looks good to me.
Reviewed-by: Coly Li
Thanks.
Coly Li
> ---
> drivers/md/bcache/request.c | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/drivers/md/bcache/request.c b/drivers/md/bcache/request.c
> index 71a90fbec314b..77d1a26975174 1006
use in this function); did you mean ‘REQ_DISCARD’?
>>
>>
>> How should we proceed with this patch?
>
> The patch seems reasonably easy to backport. Compile-tested only, and
> only against v4.4.171.
I don't have idea whether stable kernels accept rebased patches, for
t; --- a/drivers/md/bcache/writeback.h
> +++ b/drivers/md/bcache/writeback.h
> @@ -71,6 +71,9 @@ static inline bool should_writeback(struct cached_dev *dc,
> struct bio *bio,
> in_use > bch_cutoff_writeback_sync)
> return false;
>
> + if (bio_op(bio) == REQ_OP_DISCARD)
> + return false;
> +
> if (dc->partial_stripes_expensive &&
> bcache_dev_stripe_dirty(dc, bio->bi_iter.bi_sector,
> bio_sectors(bio)))
>
Hi Daniel,
Nice catch! I add this one to my for-next directory, for v5.1 merge window.
Thanks.
--
Coly Li
--
dm-devel mailing list
dm-devel@redhat.com
https://www.redhat.com/mailman/listinfo/dm-devel
On 2018/6/19 12:52 PM, Christoph Hellwig wrote:
> We immediately overwrite the biovec array, so instead just allocate
> a new bio and copy over the disk, setor and size.
>
> Signed-off-by: Christoph Hellwig
It looks good to me. Acked-by: Coly Li
Thanks.
Coly Li
> ---
>
k.io>
Hi Dongsu,
Could you please use a macro like NO_PERMISSION_CHECK to replace hard
coded 0 ? At least for me, I don't need to check what does 0 mean in the
new lookup_bdev().
Thanks.
Coly Li
> ---
> drivers/md/bcache/super.c | 2 +-
> drivers/md/dm-table.c | 2 +-
> dr
> while (*new) {
> struct dm_bio_prison_cell *cell =
> - container_of(*new, struct dm_bio_prison_cell, node);
> + rb_entry(*new, struct dm_bio_prison_cell, node);
>
> r = cmp_keys(key, >key);
>
>
Acked-
55 matches
Mail list logo