On 25.05.2018 07:43, Qu Wenruo wrote:
> There are already 2 reports about strangely corrupted super blocks,
> where csum still matches but extra garbage gets slipped into super block.
>
> The corruption would looks like:
> --
> superblock: bytenr=65536, device=/dev/sdc1
> ---
On 05/25/2018 12:43 PM, Qu Wenruo wrote:
> Refactor btrfs_check_super_valid() by the ways:
>
> 1) Rename it to btrfs_validate_mount_super()
>Now it's more obvious when the function should be called.
>
> 2) Extract core check routine into __validate_super()
>So later write time check can
This patchset can be fetched from github:
https://github.com/adam900710/linux/tree/write_time_sb_check
We have 2 reports about corrupted btrfs super block, which has some garbage
in its super block, but otherwise it's completely fine and its csum even
matches.
This means we develop memory corrupt
There are already 2 reports about strangely corrupted super blocks,
where csum still matches but extra garbage gets slipped into super block.
The corruption would looks like:
--
superblock: bytenr=65536, device=/dev/sdc1
-
csum_type
Just move btrfs_check_super_valid() before its single caller to avoid
forward declaration.
Signed-off-by: Qu Wenruo
---
fs/btrfs/disk-io.c | 299 ++---
1 file changed, 149 insertions(+), 150 deletions(-)
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.
Refactor btrfs_check_super_valid() by the ways:
1) Rename it to btrfs_validate_mount_super()
Now it's more obvious when the function should be called.
2) Extract core check routine into __validate_super()
So later write time check can reuse it, and if needed, we could also
use __validate
Preparing for supporting multipage bvec.
Cc: Chris Mason
Cc: Josef Bacik
Cc: David Sterba
Cc: linux-btrfs@vger.kernel.org
Signed-off-by: Ming Lei
---
fs/btrfs/compression.c | 5 -
fs/btrfs/extent_io.c | 5 +++--
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/fs/btrfs/com
On 05/25/2018 10:59 AM, Qu Wenruo wrote:
On 2018年05月25日 08:54, Qu Wenruo wrote:
On 2018年05月25日 00:24, Anand Jain wrote:
On misc-next this patch is causing regression, the seed sprout
functionality test [1] (in the mailing list) fails.
[1]
[PATCH] fstests: btrfs: add seed sprout fun
Balance arg info is an important information to be reviewed for the
system audit. So this patch adds them to the kernel log.
Example:
->btrfs bal start -f -mprofiles=raid1,convert=single,soft
-dlimit=10..20,usage=50 /btrfs
kernel: BTRFS info (device sdb): balance: start -f -dusage=50,limit=10..2
Balance arg info is an important information to be reviewed for the
system audit. So this patch adds them to the kernel log.
Example:
->btrfs bal start -f -mprofiles=raid1,convert=single,soft
-dlimit=10..20,usage=50 /btrfs
kernel: BTRFS info (device sdb): balance: start force D:usage=50,limit=10
On 05/24/2018 09:03 PM, David Sterba wrote:
On Wed, May 23, 2018 at 02:35:07PM +0800, Anand Jain wrote:
Balance arg info is an important information to be reviewed for the
system audit. So this patch adds them to the kernel log.
Example:
->btrfs bal start --full-balance -f -mprofiles=raid1,c
tree: https://git.kernel.org/pub/scm/linux/kernel/git/josef/btrfs-next.git
blk-iolatency
head: e4e4c15dbfeb48d4261b3746cd00e77b441be92b
commit: 2598d1c2fa24725d77032c488db69ae4895666bd [5/13] swap,blkcg: issue swap
io with the appropriate context
config: x86_64-randconfig-s2-05250808 (attache
On 2018年05月25日 08:54, Qu Wenruo wrote:
>
>
> On 2018年05月25日 00:24, Anand Jain wrote:
>>
>>
>> On misc-next this patch is causing regression, the seed sprout
>> functionality test [1] (in the mailing list) fails.
>>
>> [1]
>> [PATCH] fstests: btrfs: add seed sprout functionality test
>>
>> mor
Improve on describe_relocation() add a common helper function to describe
the block groups.
Signed-off-by: Anand Jain
Reviewed-by: David Sterba
---
v4->v4.1: Use strcpy(buf, "|NONE"); as in the original
v3->v4: Just pass full flag name in the define DESCRIBE_FLAG(flag,..),
so that it ca
On 05/24/2018 08:43 PM, David Sterba wrote:
On Wed, May 23, 2018 at 02:35:06PM +0800, Anand Jain wrote:
Improve on describe_relocation() add a common helper function to describe
the block groups.
Signed-off-by: Anand Jain
---
v3->v4: Just pass full flag name in the define DESCRIBE_FLAG(flag,
On 2018年05月25日 00:24, Anand Jain wrote:
>
>
> On misc-next this patch is causing regression, the seed sprout
> functionality test [1] (in the mailing list) fails.
>
> [1]
> [PATCH] fstests: btrfs: add seed sprout functionality test
>
> more below..
>
> On 05/11/2018 01:35 PM, Qu Wenruo wro
On Thu, May 24, 2018 at 11:44:41PM +0200, David Sterba wrote:
> On Thu, May 24, 2018 at 05:01:15PM +0800, Ming Lei wrote:
> > Preparing for supporting multipage bvec.
>
> Could you please also CC the cover letter so we have a chance to learn
> what multipage bvec means or what are the changes betw
tree: https://git.kernel.org/pub/scm/linux/kernel/git/josef/btrfs-next.git
for-4.18/block
head: 657e770d4d6e3b03c3d4b96e427b30d6f766e2e2
commit: 377f8e81c17e1e9a47ea5908b08a7a991a9faa6f [12/13] block: introduce
blk-iolatency io controller
config: i386-allmodconfig (attached as .config)
compil
On Thu, May 24, 2018 at 05:01:15PM +0800, Ming Lei wrote:
> Preparing for supporting multipage bvec.
Could you please also CC the cover letter so we have a chance to learn
what multipage bvec means or what are the changes between the
iterations? I found it in the archives, but a copy to mailinglis
From: Omar Sandoval
btrfs_ioctl_rm_dev() and btrfs_ioctl_rm_dev_v2() both manipulate this
bit. Let's move it into the common btrfs_rm_device(), which also makes
the following change to deal with swap files easier.
Signed-off-by: Omar Sandoval
---
fs/btrfs/ioctl.c | 13 -
fs/btrfs
From: Omar Sandoval
The Btrfs swap code is going to need it, so give it a btrfs_ prefix and
make it non-static.
Signed-off-by: Omar Sandoval
---
fs/btrfs/volumes.c | 22 +++---
fs/btrfs/volumes.h | 2 ++
2 files changed, 13 insertions(+), 11 deletions(-)
diff --git a/fs/btrfs
From: Omar Sandoval
Implement the swap file a_ops on Btrfs. Activation needs to make sure
that the file can be used as a swap file, which currently means it must
be fully allocated as nocow with no compression on one device. It also
sets up the swap extents directly with add_swap_extent(), so exp
From: Omar Sandoval
When a swap file is active, we must make sure that the extents of the
file are not moved and that they don't become shared. That means that
the following are not safe:
- chattr +c (enable compression)
- reflink
- dedupe
- snapshot
- defrag
- balance
- device remove/replace/re
From: Omar Sandoval
The documentation for these functions is wrong in several ways:
- swap_activate() is called with the inode locked
- swap_activate() takes a swap_info_struct * and a sector_t *
- swap_activate() can also return a positive number of extents it added
itself
- swap_deactivate()
From: Omar Sandoval
The SWP_FILE flag serves two purposes: to make swap_{read,write}page()
go through the filesystem, and to make swapoff() call
->swap_deactivate(). For Btrfs, we want the latter but not the former,
so split this flag into two. This makes us always call
->swap_deactivate() if ->s
From: Omar Sandoval
Hi,
This patch series implements swap file support for Btrfs. If you don't
remember versions 1-3, that's because they were almost 4 years ago [1]
:)
This attempt takes a very different approach from my original versions
back then. As a refresher, the original idea was to go
tree: https://git.kernel.org/pub/scm/linux/kernel/git/josef/btrfs-next.git
for-4.18/block
head: 657e770d4d6e3b03c3d4b96e427b30d6f766e2e2
commit: b5c78af7bc40baa7dd71d1b5fccb78ece59812ba [6/13] blkcg: add generic
throttling mechanism
config: sparc-defconfig (attached as .config)
compiler: spar
tree: https://git.kernel.org/pub/scm/linux/kernel/git/josef/btrfs-next.git
for-4.18/block
head: 657e770d4d6e3b03c3d4b96e427b30d6f766e2e2
commit: 03766852a022b0ff5f8c4b73f40ef205a36d095e [1/13] block: add bi_blkg to
the bio for cgroups
config: i386-randconfig-a0-201820 (attached as .config)
co
tree: https://git.kernel.org/pub/scm/linux/kernel/git/josef/btrfs-next.git
for-4.18/block
head: 657e770d4d6e3b03c3d4b96e427b30d6f766e2e2
commit: b5c78af7bc40baa7dd71d1b5fccb78ece59812ba [6/13] blkcg: add generic
throttling mechanism
config: i386-randconfig-x000-201820 (attached as .config)
co
tree: https://git.kernel.org/pub/scm/linux/kernel/git/josef/btrfs-next.git
blk-iolatency
head: 657e770d4d6e3b03c3d4b96e427b30d6f766e2e2
commit: 90f955bbc57765617e3e99f784f3239c3d8f0360 [7/13] memcontrol: schedule
throttling if we are congested
config: x86_64-randconfig-x018-201820 (attached a
tree: https://git.kernel.org/pub/scm/linux/kernel/git/josef/btrfs-next.git
for-4.18/block
head: 657e770d4d6e3b03c3d4b96e427b30d6f766e2e2
commit: 17842d132a0e6a079842f9843739aa6abec4e9ce [5/13] swap,blkcg: issue swap
io with the appropriate context
config: i386-randconfig-x016-201820 (attached
tree: https://git.kernel.org/pub/scm/linux/kernel/git/josef/btrfs-next.git
for-4.18/block
head: 657e770d4d6e3b03c3d4b96e427b30d6f766e2e2
commit: 17842d132a0e6a079842f9843739aa6abec4e9ce [5/13] swap,blkcg: issue swap
io with the appropriate context
config: x86_64-randconfig-x017-201820 (attach
tree: https://git.kernel.org/pub/scm/linux/kernel/git/josef/btrfs-next.git
blk-iolatency
head: 657e770d4d6e3b03c3d4b96e427b30d6f766e2e2
commit: 7f1e4ea0a7071711f43deaed15b123bcf0a3ee8f [8/13] blk-stat: export
helpers for modifying blk_rq_stat
config: x86_64-randconfig-x011-201820 (attached as
tree: https://git.kernel.org/pub/scm/linux/kernel/git/josef/btrfs-next.git
blk-iolatency
head: 657e770d4d6e3b03c3d4b96e427b30d6f766e2e2
commit: 03766852a022b0ff5f8c4b73f40ef205a36d095e [1/13] block: add bi_blkg to
the bio for cgroups
config: x86_64-randconfig-x011-201820 (attached as .config)
Hi,
please consider pulling a fix for btrfs. This time it's really a
one-liner and prevents leaking an internal error value 1 out of the
ftruncate syscall.
This has been observed in practice. The steps to reproduce make a common
pattern (open/write/fync/ftruncate) but also need the application to
On Fri, May 25, 2018 at 12:24:10AM +0800, Anand Jain wrote:
> On misc-next this patch is causing regression, the seed sprout
> functionality test [1] (in the mailing list) fails.
This patch merly moves the function so it must have been broken before
that already.
> > + if (memcmp(fs_info->fsid
On Tue, May 22, 2018 at 03:44:01PM -0700, Omar Sandoval wrote:
> From: Omar Sandoval
>
> If we have invalid flags set, when we error out we must drop our writer
> counter and free the buffer we allocated for the arguments. This bug is
> trivially reproduced with the following program:
>
>
On Wed, May 23, 2018 at 04:22:57PM +0800, Qu Wenruo wrote:
> James Harvey reported pretty strange kernel misbehavior where after
> reading certain btrfs compressed data, kernel crash with unrelated
> calltrace.
> (https://bugzilla.kernel.org/show_bug.cgi?id=199707 and
> https://www.spinics.net/lis
On Wed, May 23, 2018 at 07:38:28AM +0800, Qu Wenruo wrote:
> >> --- a/fs/btrfs/lzo.c
> >> +++ b/fs/btrfs/lzo.c
> >> @@ -281,6 +281,7 @@ static int lzo_decompress_bio(struct list_head *ws,
> >> struct compressed_bio *cb)
> >>unsigned long working_bytes;
> >>size_t in_len;
> >>size_t out
On misc-next this patch is causing regression, the seed sprout
functionality test [1] (in the mailing list) fails.
[1]
[PATCH] fstests: btrfs: add seed sprout functionality test
more below..
On 05/11/2018 01:35 PM, Qu Wenruo wrote:
Just move btrfs_check_super_valid() before its single ca
Create a seed device and add the sprout device to it.
Signed-off-by: Anand Jain
---
common/config | 1 +
tests/btrfs/161 | 69 +
tests/btrfs/161.out | 2 ++
tests/btrfs/group | 1 +
4 files changed, 73 insertions(+)
create mode
From: Huaisheng Ye
Use __GFP_ZONE_MOVABLE to replace (__GFP_HIGHMEM | __GFP_MOVABLE).
___GFP_DMA, ___GFP_HIGHMEM and ___GFP_DMA32 have been deleted from GFP
bitmasks, the bottom three bits of GFP mask is reserved for storing
encoded zone number.
__GFP_ZONE_MOVABLE contains encoded ZONE_MOVABLE
On Thu 24-05-18 08:18:18, Matthew Wilcox wrote:
> On Thu, May 24, 2018 at 02:23:23PM +0200, Michal Hocko wrote:
> > > If we had eight ZONEs, we could offer:
> >
> > No, please no more zones. What we have is quite a maint. burden on its
> > own. Ideally we should only have lowmem, highmem and speci
On Thu, May 24, 2018 at 02:23:23PM +0200, Michal Hocko wrote:
> > If we had eight ZONEs, we could offer:
>
> No, please no more zones. What we have is quite a maint. burden on its
> own. Ideally we should only have lowmem, highmem and special/device
> zones for directly kernel accessible memory, t
On 24 May 2018, at 4:46, robbieko wrote:
Chris Mason 於 2018-05-23 23:56 寫到:
On 23 May 2018, at 3:26, robbieko wrote:
But we're not avoiding the inode lock completely, we're just
dropping
it for the expensive parts of writing to the file. A quick guess
about what the expensive parts are:
1
On Wed, May 23, 2018 at 02:35:07PM +0800, Anand Jain wrote:
> Balance arg info is an important information to be reviewed for the
> system audit. So this patch adds them to the kernel log.
>
> Example:
>
> ->btrfs bal start --full-balance -f -mprofiles=raid1,convert=single,soft
> -dlimit=10..20,
On Wed, May 23, 2018 at 02:35:06PM +0800, Anand Jain wrote:
> Improve on describe_relocation() add a common helper function to describe
> the block groups.
>
> Signed-off-by: Anand Jain
> ---
> v3->v4: Just pass full flag name in the define DESCRIBE_FLAG(flag,..),
>so that it can be used
On 24.05.2018 13:49, Filipe Manana wrote:
> On Wed, May 23, 2018 at 4:58 PM, Josef Bacik wrote:
>> From: Josef Bacik
>>
>> There's a priority inversion that exists currently with btrfs fsync. In
>> some cases we will collect outstanding ordered extents onto a list and
>> only wait on them at t
On Wed 23-05-18 22:19:19, Matthew Wilcox wrote:
> On Tue, May 22, 2018 at 08:37:28PM +0200, Michal Hocko wrote:
> > So why is this any better than the current code. Sure I am not a great
> > fan of GFP_ZONE_TABLE because of how it is incomprehensible but this
> > doesn't look too much better, yet w
On Wed 23-05-18 16:07:16, Huaisheng HS1 Ye wrote:
> From: Michal Hocko [mailto:mho...@kernel.org]
> Sent: Wednesday, May 23, 2018 2:37 AM
> >
> > On Mon 21-05-18 23:20:21, Huaisheng Ye wrote:
> > > From: Huaisheng Ye
> > >
> > > Replace GFP_ZONE_TABLE and GFP_ZONE_BAD with encoded zone number.
>
On Tue, May 22, 2018 at 10:48:38AM -0700, Omar Sandoval wrote:
> On Tue, May 22, 2018 at 10:41:11AM -0700, Omar Sandoval wrote:
> > On Tue, May 22, 2018 at 10:37:14AM -0700, Omar Sandoval wrote:
> > > On Tue, May 22, 2018 at 07:17:48PM +0200, David Sterba wrote:
> > > > On Tue, May 22, 2018 at 09:4
On Wed, May 23, 2018 at 4:58 PM, Josef Bacik wrote:
> From: Josef Bacik
>
> There's a priority inversion that exists currently with btrfs fsync. In
> some cases we will collect outstanding ordered extents onto a list and
> only wait on them at the very last second. However this "very last
> sec
Preparing for supporting multipage bvec.
Cc: Chris Mason
Cc: Josef Bacik
Cc: David Sterba
Cc: linux-btrfs@vger.kernel.org
Signed-off-by: Ming Lei
---
fs/btrfs/compression.c | 5 -
fs/btrfs/extent_io.c | 5 +++--
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/fs/btrfs/com
Chris Mason 於 2018-05-23 23:56 寫到:
On 23 May 2018, at 3:26, robbieko wrote:
Chris Mason 於 2018-05-23 02:31 寫到:
On 22 May 2018, at 14:08, Christoph Hellwig wrote:
On Wed, May 16, 2018 at 11:52:37AM +0800, robbieko wrote:
From: Robbie Ko
This idea is from direct io. By this patch, we can ma
54 matches
Mail list logo