[CC'ing Filipe as he should now better ]
On 25.03.19 г. 20:44 ч., Darrick J. Wong wrote:
> On Mon, Mar 25, 2019 at 02:31:20PM +0200, Nikolay Borisov wrote:
>> Here is v3 of the fitrim patches. Change since v2 [0]:
>>
>> * Replaced BUG_ON with WARN_ON in patch 2
>>
>> * Added RB to patches 04/05
On 26.03.19 г. 6:30 ч., Zygo Blaxell wrote:
> On Mon, Mar 25, 2019 at 10:50:28PM -0400, Zygo Blaxell wrote:
>> Running balance, rsync, and dedupe, I get kernel warnings every few
>> minutes on 5.0.4. No warnings on 5.0.3 under similar conditions.
>>
>> Mount options are: flushoncommit,space_ca
Thank you both for your input.
see below.
> > You sda and sdb are at gen 60233 while sdd and sde are at gen 60234.
> > It's possible to allow kernel to manually assemble its device list using
> > "device=" mount option.
> > Since you're using RAID6, it's possible to recover using 2 devices only,
Mount messages below.
Thanks for your input, Qu!
##
[42763.884134] BTRFS info (device sdd): disabling free space tree
[42763.884138] BTRFS info (device sdd): force clearing of disk cache
[42763.884140] BTRFS info (device sdd): has skinny extents
[42763.885207] BTRFS error (device sdd): parent tra
From: Filipe Manana
Whan a filesystem is mounted with the nologreplay mount option, which
requires it to be mounted in RO mode as well, we can not allow discard on
free space inside block groups, because log trees refer to extents that
are not pinned in a block group's free space cache (pinning t
On Tue, Mar 26, 2019 at 8:10 AM Nikolay Borisov wrote:
>
> [CC'ing Filipe as he should now better ]
>
> On 25.03.19 г. 20:44 ч., Darrick J. Wong wrote:
> > On Mon, Mar 25, 2019 at 02:31:20PM +0200, Nikolay Borisov wrote:
> >> Here is v3 of the fitrim patches. Change since v2 [0]:
> >>
> >> * Repl
On Tue, Mar 26, 2019 at 3:57 AM robbieko wrote:
>
> From: Robbie Ko
>
> When doing fallocate, we first add the range to the reserve_list
> and then reserve the quota.
> If quota reservation fails, we'll release all reserved parts of
> reserve_list.
> However, cur_offset is not updated to indicate
On 26.03.19 г. 12:49 ч., fdman...@kernel.org wrote:
> From: Filipe Manana
>
> Whan a filesystem is mounted with the nologreplay mount option, which
> requires it to be mounted in RO mode as well, we can not allow discard on
> free space inside block groups, because log trees refer to extents t
On Tue, Mar 26, 2019 at 12:17 PM Nikolay Borisov wrote:
>
>
>
> On 26.03.19 г. 12:49 ч., fdman...@kernel.org wrote:
> > From: Filipe Manana
> >
> > Whan a filesystem is mounted with the nologreplay mount option, which
> > requires it to be mounted in RO mode as well, we can not allow discard on
>
On 26.03.19 г. 14:35 ч., Filipe Manana wrote:
> On Tue, Mar 26, 2019 at 12:17 PM Nikolay Borisov wrote:
>>
>>
>>
>> On 26.03.19 г. 12:49 ч., fdman...@kernel.org wrote:
>>> From: Filipe Manana
>>>
>>> Whan a filesystem is mounted with the nologreplay mount option, which
>>> requires it to be mo
On 2019/3/26 下午6:24, berodual_xyz wrote:
> Mount messages below.
>
> Thanks for your input, Qu!
>
> ##
> [42763.884134] BTRFS info (device sdd): disabling free space tree
> [42763.884138] BTRFS info (device sdd): force clearing of disk cache
> [42763.884140] BTRFS info (device sdd): has skinny
On 2019/3/26 下午8:17, Nikolay Borisov wrote:
>
>
> On 26.03.19 г. 12:49 ч., fdman...@kernel.org wrote:
>> From: Filipe Manana
>>
>> Whan a filesystem is mounted with the nologreplay mount option, which
>> requires it to be mounted in RO mode as well, we can not allow discard on
>> free space ins
On Tue, Mar 26, 2019 at 09:40:08PM +0800, Qu Wenruo wrote:
>
>
> On 2019/3/26 下午8:17, Nikolay Borisov wrote:
> >
> >
> > On 26.03.19 г. 12:49 ч., fdman...@kernel.org wrote:
> >> From: Filipe Manana
> >>
> >> Whan a filesystem is mounted with the nologreplay mount option, which
> >> requires it t
On 25.03.19 г. 23:55 ч., Anand Jain wrote:
>
>
> On 3/25/19 10:07 PM, Nikolay Borisov wrote:
>> When a device is removed from a btrfs filesystem its superblock copies
>> must be deleted.
>
> AFAIK this bug was fixed a long time back in the kernel. Is there any
> newer fix in the kernel?
No
On Tue, Mar 26, 2019 at 07:02:20AM +0800, Qu Wenruo wrote:
> On 2019/3/26 上午1:06, David Sterba wrote:
> > On Wed, Mar 20, 2019 at 02:37:09PM +0800, Qu Wenruo wrote:
> >> By function, chunk item verification is more suitable to be done inside
> >> tree-checker.
> >>
> >> So move btrfs_check_chunk_va
On 19.03.19 г. 12:58 ч., Nikolay Borisov wrote:
> For a long time this test has been failing on all kinds of VM configuration,
> which are using virtio_blk devices. This is due to the fact that scsi
> devices are deletable and virtio_blk are not. However, this only prevents
> device replace case
On Wed, Mar 20, 2019 at 11:41:44AM +0100, Johannes Thumshirn wrote:
> Looks good,
> Reviewed-by: Johannes Thumshirn
>
> Although I think it would've been worth to explicitly mention that you
> increased the severity level from error to critical.
Agreed, changelog updated.
On Tue, Mar 26, 2019 at 10:42:31AM +0200, Nikolay Borisov wrote:
>
>
> On 26.03.19 г. 6:30 ч., Zygo Blaxell wrote:
> > On Mon, Mar 25, 2019 at 10:50:28PM -0400, Zygo Blaxell wrote:
> >> Running balance, rsync, and dedupe, I get kernel warnings every few
> >> minutes on 5.0.4. No warnings on 5.0.
On 26.03.19 г. 17:09 ч., Zygo Blaxell wrote:
> On Tue, Mar 26, 2019 at 10:42:31AM +0200, Nikolay Borisov wrote:
>>
>>
>> On 26.03.19 г. 6:30 ч., Zygo Blaxell wrote:
>>> On Mon, Mar 25, 2019 at 10:50:28PM -0400, Zygo Blaxell wrote:
Running balance, rsync, and dedupe, I get kernel warnings ev
On Wed, Mar 20, 2019 at 02:37:16PM +0800, Qu Wenruo wrote:
> @@ -1539,6 +1539,8 @@ do {
>\
> #define BTRFS_INODE_COMPRESS (1 << 11)
>
> #define BTRFS_INODE_ROOT_ITEM_INIT (1 << 31)
> +#define BTRFS_INODE_FLAG_MASK
On Tue, Mar 26, 2019 at 12:30:07AM -0400, Zygo Blaxell wrote:
> On Mon, Mar 25, 2019 at 10:50:28PM -0400, Zygo Blaxell wrote:
> > Running balance, rsync, and dedupe, [...]
> >
> > Mount options are: flushoncommit,space_cache=v2,compress=zstd.
[snip]
The 5.0.4 test machine locked up overnight.
On Tue, Mar 26, 2019 at 05:13:53PM +0200, Nikolay Borisov wrote:
>
>
> On 26.03.19 г. 17:09 ч., Zygo Blaxell wrote:
> > On Tue, Mar 26, 2019 at 10:42:31AM +0200, Nikolay Borisov wrote:
> >>
> >>
> >> On 26.03.19 г. 6:30 ч., Zygo Blaxell wrote:
> >>> On Mon, Mar 25, 2019 at 10:50:28PM -0400, Zygo
On Mon, Mar 25, 2019 at 12:27:24PM +0800, Qu Wenruo wrote:
>
>
> On 2019/3/20 下午2:37, Qu Wenruo wrote:
> > There is a report in kernel bugzilla about mismatch file type in dir
> > item and inode item.
> >
> > This inspires us to check inode mode in inode item.
> >
> > This patch will check the fo
On Tue, Mar 26, 2019 at 12:44 AM Andrei Borzenkov wrote:
>
>
> He has btrfs raid0 profile on top of hardware RAID6 devices.
sys_chunk_array[2048]:
item 0 key (FIRST_CHUNK_TREE CHUNK_ITEM 1048576)
length 4194304 owner 2 stripe_len 65536 type SYSTEM
io_align
On Tue, Mar 26, 2019 at 11:38 AM Chris Murphy wrote:
>
> On Tue, Mar 26, 2019 at 12:44 AM Andrei Borzenkov wrote:
> >
> >
> > He has btrfs raid0 profile on top of hardware RAID6 devices.
>
> sys_chunk_array[2048]:
> item 0 key (FIRST_CHUNK_TREE CHUNK_ITEM 1048576)
> length
From: Goldwyn Rodrigues
We require this to set the IOMAP_F_COW flag in
iomap structure, in the later patches.
Signed-off-by: Goldwyn Rodrigues
---
fs/btrfs/ctree.h | 2 +-
fs/btrfs/inode.c | 9 +++--
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/fs/btrfs/ctree.h b/fs/btrfs
From: Goldwyn Rodrigues
Since we will be using it in another part of the code, use a
better name to declare it non-static
Signed-off-by: Goldwyn Rodrigues
---
fs/btrfs/ctree.h | 7 +--
fs/btrfs/inode.c | 14 +-
2 files changed, 10 insertions(+), 11 deletions(-)
diff --git a/f
From: Goldwyn Rodrigues
This makes btrfs_get_extent_map_write() independent of Direct
I/O code.
Signed-off-by: Goldwyn Rodrigues
---
fs/btrfs/ctree.h | 2 ++
fs/btrfs/inode.c | 40 +++-
2 files changed, 29 insertions(+), 13 deletions(-)
diff --git a/fs/btr
From: Goldwyn Rodrigues
Perform a basic read using iomap support. The btrfs_iomap_begin()
finds the extent at the position and fills the iomap data
structure with the values.
Signed-off-by: Goldwyn Rodrigues
---
fs/btrfs/Makefile | 1 +
fs/btrfs/ctree.h | 5 +
fs/btrfs/dax.c| 49 +++
Subject: [PATCH v2 00/15] btrfs dax support
This patch set adds support for dax on the BTRFS filesystem.
In order to support for CoW for btrfs, there were changes which had to be
made to the dax handling. The important one is copying blocks into the
same dax device before using them.
I have some
From: Goldwyn Rodrigues
The IOMAP_F_COW is a flag to notify dax that it needs to copy
the data from iomap->cow_addr to iomap->addr, if the start/end
of I/O are not page aligned.
This also introduces dax_to_dax_copy() which performs a copy
from one part of the device to another, to a maximum of o
From: Goldwyn Rodrigues
This sets S_DAX in inode->i_flags, which can be used with
IS_DAX().
The dax option is restricted to non multi-device mounts.
dax interacts with the device directly instead of using bio, so
all bio-hooks which we use for multi-device cannot be performed
here. While regular
From: Goldwyn Rodrigues
This is temporary, and a TODO.
Signed-off-by: Goldwyn Rodrigues
---
fs/btrfs/ioctl.c | 13 +
fs/btrfs/send.c | 4
2 files changed, 17 insertions(+)
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
index 2e5137b01561..f532a8df2026 100644
--- a/fs/btrf
From: Goldwyn Rodrigues
Add a new vm_operations struct btrfs_dax_vm_ops
specifically for dax files.
Since we will be removing(nulling) readpages/writepages for dax
return ENOEXEC only for non-dax files.
dax_insert_entry() looks ugly. Do you think we should break it
into dax_insert_cow_entry() a
From: Goldwyn Rodrigues
dax_iomap_cow copies a page before presenting for mmap.
Signed-off-by: Goldwyn Rodrigues
---
fs/dax.c | 33 -
1 file changed, 32 insertions(+), 1 deletion(-)
diff --git a/fs/dax.c b/fs/dax.c
index e254535dd830..21ee3df6f02c 100644
--- a/
From: Goldwyn Rodrigues
Inorder to make sure mmap'd files don't change after snapshot,
writeprotect the mmap pages on snapshot. This is done by performing
a data writeback on the pages (which simply mark the pages are
wrprotected). This way if the user process tries to access the memory
we will g
From: Goldwyn Rodrigues
Signed-off-by: Goldwyn Rodrigues
---
fs/btrfs/inode.c | 34 +++---
1 file changed, 31 insertions(+), 3 deletions(-)
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index f721fc1e3f7f..21780ea14e5a 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs
From: Goldwyn Rodrigues
This is for debug purposes only and can be skipped.
Signed-off-by: Goldwyn Rodrigues
---
fs/btrfs/dax.c | 3 +++
include/trace/events/btrfs.h | 56
2 files changed, 59 insertions(+)
diff --git a/fs/btrfs/dax.c
From: Goldwyn Rodrigues
btrfs_dax_zero_block() zeros part of the page, either from the
front or the regular rest of the block.
Signed-off-by: Goldwyn Rodrigues
---
fs/btrfs/ctree.h | 1 +
fs/btrfs/dax.c| 29 +++--
fs/btrfs/inode.c | 4
fs/dax.c
From: Goldwyn Rodrigues
IOMAP_F_COW allows to inform the dax code, to first perform
a copy which are not page-aligned before performing the write.
A new struct btrfs_iomap is passed from iomap_begin() to
iomap_end(), which contains all the accounting and locking information
for CoW based writes.
From: Goldwyn Rodrigues
With dax we cannot deal with readpage() etc. So, we create a
funciton callback to perform the file data comparison and pass
it to generic_remap_file_range_prep() so it can use iomap-based
functions.
This may not be the best way to solve this. Suggestions welcome.
Signed-
Sorry, messed up the subject the first time.
This patch set adds support for dax on the BTRFS filesystem.
In order to support for CoW for btrfs, there were changes which had to be
made to the dax handling. The important one is copying blocks into the
same dax device before using them.
I have some
On Tue, Mar 26, 2019 at 02:02:47PM -0500, Goldwyn Rodrigues wrote:
> This sets S_DAX in inode->i_flags, which can be used with
> IS_DAX().
>
> The dax option is restricted to non multi-device mounts.
> dax interacts with the device directly instead of using bio, so
> all bio-hooks which we use for
On Wed, Dec 5, 2018 at 4:29 AM Goldwyn Rodrigues wrote:
>
> From: Goldwyn Rodrigues
>
> These functions are required for btrfs dax support.
>
> Signed-off-by: Goldwyn Rodrigues
> ---
> fs/dax.c| 35 ---
> include/linux/dax.h | 16
> 2
Deduplicate the btrfs file type conversion implementation - file systems
that use the same file types as defined by POSIX do not need to define
their own versions and can use the common helper functions decared in
fs_types.h and implemented in fs_types.c
Common implementation can be found via comm
On Fri, Mar 22, 2019 at 05:26:52PM +, Filipe Manana wrote:
> On Fri, Mar 22, 2019 at 3:59 PM David Sterba wrote:
> >
> > On Fri, Mar 22, 2019 at 09:32:37AM +0200, Nikolay Borisov wrote:
> > > On 22.03.19 г. 6:17 ч., Zygo Blaxell wrote:
> > > > When filesystems are mounted flushoncommit, I get
On Tue, Mar 26, 2019 at 11:13 PM Zygo Blaxell
wrote:
>
> On Fri, Mar 22, 2019 at 05:26:52PM +, Filipe Manana wrote:
> > On Fri, Mar 22, 2019 at 3:59 PM David Sterba wrote:
> > >
> > > On Fri, Mar 22, 2019 at 09:32:37AM +0200, Nikolay Borisov wrote:
> > > > On 22.03.19 г. 6:17 ч., Zygo Blaxell
On Tue, Mar 26, 2019 at 09:39:34PM +, Phillip Potter wrote:
> Deduplicate the btrfs file type conversion implementation - file systems
> that use the same file types as defined by POSIX do not need to define
> their own versions and can use the common helper functions decared in
> fs_types.h an
On 2019/3/27 上午12:02, David Sterba wrote:
> On Mon, Mar 25, 2019 at 12:27:24PM +0800, Qu Wenruo wrote:
>>
>>
>> On 2019/3/20 下午2:37, Qu Wenruo wrote:
>>> There is a report in kernel bugzilla about mismatch file type in dir
>>> item and inode item.
>>>
>>> This inspires us to check inode mode in
On Wed, Mar 27, 2019 at 12:55:39AM +0100, David Sterba wrote:
> On Tue, Mar 26, 2019 at 09:39:34PM +, Phillip Potter wrote:
> > Deduplicate the btrfs file type conversion implementation - file systems
> > that use the same file types as defined by POSIX do not need to define
> > their own versi
On Tue, Mar 19, 2019 at 11:39:59PM -0400, Zygo Blaxell wrote:
> I haven't been able to easily reproduce these in a test environment;
> however, they have been happening several times a year on servers in
> production.
>
> Kernel: most recent observation on 4.14.105 + cherry-picked deadlock
> and
Fixes gcc '-Wunused-but-set-variable' warning:
fs/btrfs/volumes.c: In function 'btrfs_grow_device':
fs/btrfs/volumes.c:2824:27: warning:
variable 'fs_devices' set but not used [-Wunused-but-set-variable]
It's not used after 6f32a50a232b ("btrfs: combine device update operations
during transactio
52 matches
Mail list logo