On 5/14/25 10:30 AM, Jaegeuk Kim wrote:
> Hi, Hongbo,
>
> It seems we're getting more issues in the patch set. May I ask for some
> help sending the new patch series having all the fixes that I made as well
> as addressing the concerns? You can get the patches from [1].
>
> [1]
> https://git.ker
On 5/11/25 10:43 PM, Chao Yu wrote:
> On 5/8/25 23:59, Eric Sandeen wrote:
>> On 5/8/25 4:19 AM, Chao Yu wrote:
>>>> @@ -2645,21 +2603,11 @@ static int f2fs_remount(struct
>>>> super_block *sb, int *flags, char *data)
>>>>
>>>> default_o
On 5/8/25 10:52 AM, Eric Sandeen wrote:
>>> +
>>> + if (f2fs_test_compress_extension(F2FS_CTX_INFO(ctx).noextensions,
>>> + F2FS_CTX_INFO(ctx).nocompress_ext_cnt,
>>> +
On 5/8/25 4:19 AM, Chao Yu wrote:
>> @@ -2645,21 +2603,11 @@ static int f2fs_remount(struct super_block *sb, int
>> *flags, char *data)
>>
>> default_options(sbi, true);
>>
>> -memset(&fc, 0, sizeof(fc));
>> -memset(&ctx, 0, sizeof(ctx));
>> -fc.fs_private = &ctx;
>> -fc.p
On 5/8/25 3:13 AM, Chao Yu wrote:
> On 4/24/25 01:08, Eric Sandeen wrote:
>> From: Hongbo Li
...
>> +if (ctx->qname_mask) {
>> +for (i = 0; i < MAXQUOTAS; i++) {
>> +if (!(ctx->qname_mask & (1 <<
On 5/7/25 3:28 PM, Jaegeuk Kim wrote:
>> But as far as I can tell, at least for the extent cache, remount is handled
>> properly already (with the hunk above):
>>
>> # mkfs/mkfs.f2fs -c /dev/v...@vdc.file /dev/vdb
>> # mount /dev/vdb mnt
>> # mount -o remount,noextent_cache mnt
>> mount: /root/mnt:
On 5/7/25 2:48 PM, Jaegeuk Kim wrote:
> On 05/07, Eric Sandeen wrote:
>> On 5/7/25 9:46 AM, Jaegeuk Kim wrote:
>>
>>> I meant:
>>>
>>> # mkfs/mkfs.f2fs -c /dev/v...@vdc.file /dev/vdb
>>> # mount /dev/vdb mnt
>>>
>>> It&
On 5/7/25 9:46 AM, Jaegeuk Kim wrote:
> I meant:
>
> # mkfs/mkfs.f2fs -c /dev/v...@vdc.file /dev/vdb
> # mount /dev/vdb mnt
>
> It's supposed to be successful, since extent_cache is enabled by default.
I'm sorry, clearly I was too sleepy last night. This fixes it for me.
We have to test the ma
On 5/7/25 6:26 AM, Chao Yu wrote:
> On 4/20/25 23:25, Eric Sandeen wrote:
>> From: Hongbo Li
>>
>> In handle_mount_opt, we use fs_parameter to parse each option.
>> However we're still using the old API to get the options string.
>> Using fsparams parse_o
On 5/6/25 9:56 PM, Eric Sandeen wrote:
> On 5/6/25 8:23 PM, Jaegeuk Kim wrote:
...
>> What about:
>> # mount -o loop,noextent_cache f2fsfile.img mnt
>>
>> In this case, 1) ctx_clear_opt(), 2) set_opt() in default_options,
>> 3) clear_opt since mask is set?
&
On 5/6/25 8:23 PM, Jaegeuk Kim wrote:
> On 05/06, Eric Sandeen wrote:
>> On 5/6/25 7:35 PM, Jaegeuk Kim wrote:
>>> Hmm, I had to drop the series at the moment, since it seems needing more
>>> work to deal with default_options(), which breaks my device setup.
&
On 5/6/25 7:35 PM, Jaegeuk Kim wrote:
> Hmm, I had to drop the series at the moment, since it seems needing more
> work to deal with default_options(), which breaks my device setup.
> For example, set_opt(sbi, READ_EXTENT_CACHE) in default_options is not
> propagating
> to the below logics. In thi
On 5/6/25 5:01 PM, Jaegeuk Kim wrote:
>> +static int f2fs_check_opt_consistency(struct fs_context *fc,
>> + struct super_block *sb)
>> +{
>> +struct f2fs_fs_context *ctx = fc->fs_private;
>> +struct f2fs_sb_info *sbi = F2FS_SB(sb);
>> +int err;
>> +
>
On 5/6/25 11:02 AM, Jaegeuk Kim wrote:
> On 05/05, Eric Sandeen wrote:
>> Hi all - it would be nice to get some review or feedback on this;
>> seems that these patches tend to go stale fairly quickly as f2fs
>> evolves. :)
>
> Thank you so much for the work! Let me queu
Hi all - it would be nice to get some review or feedback on this;
seems that these patches tend to go stale fairly quickly as f2fs
evolves. :)
Thanks,
-Eric
On 4/23/25 12:08 PM, Eric Sandeen wrote:
> V3:
> - Rebase onto git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs.git
&
This commit is in no way a bugfix and I don't see any reason to
backport it to stable kernels.
Thanks,
-Eric
On 5/5/25 5:06 PM, Sasha Levin wrote:
> From: Eric Sandeen
>
> [ Upstream commit 9cca49875997a1a7e92800a828a62bacb0f577b9 ]
>
> Defer the readonly-vs-norecove
Signed-off-by: Hongbo Li
[sandeen: forward port, minor fixes and updates]
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 1061 ++-
1 file changed, 406 insertions(+), 655 deletions(-)
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index eb
fsparam_enum]
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 122
1 file changed, 122 insertions(+)
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index 22f26871b7aa..ebea03bba054 100644
--- a/fs/f2fs/super.c
+++ b/fs/f2fs/super.c
@@ -27,6 +27,7
updates]
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 693 +++-
1 file changed, 510 insertions(+), 183 deletions(-)
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index 15befeb45c94..149134775870 100644
--- a/fs/f2fs/super.c
+++ b/fs/f2fs/super.c
f2fs_fs_context
only records the mount options, it will be copied in sb/sbi in
later process. (At this point in the series, mount options are
temporarily not set during mount.)
Signed-off-by: Hongbo Li
[sandeen: forward port, minor fixes and updates]
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 419
V3:
- Rebase onto git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs.git
dev branch
- Fix up some 0day robot warnings
This is a forward-port of Hongbo's original f2fs mount API conversion,
posted last August at
https://lore.kernel.org/linux-f2fs-devel/20240814023912.3959299-1-lihongb...
/mount_api.rst for more information.
Signed-off-by: Hongbo Li
[sandeen: forward port]
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 156 +++-
1 file changed, 62 insertions(+), 94 deletions(-)
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index
From: Hongbo Li
The handle_mount_opt() helper is used to parse mount parameters,
and so we can rename this function to f2fs_parse_param() and set
it as .param_param in fs_context_operations.
Signed-off-by: Hongbo Li
[sandeen: forward port]
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 8
From: Hongbo Li
At the parsing phase of the new mount api, sbi will not be
available. So here allows sbi to be NULL in f2fs log helpers
and use that in handle_mount_opt().
Signed-off-by: Hongbo Li
[sandeen: forward port]
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 90
On 4/20/25 10:24 AM, Eric Sandeen wrote:
> This is a forward-port of Hongbo's original f2fs mount API conversion,
> posted last August at
> https://lore.kernel.org/linux-f2fs-devel/20240814023912.3959299-1-lihongb...@huawei.com/
I'll rebase this onto jaegeuk's dev tr
Signed-off-by: Hongbo Li
[sandeen: forward port, minor fixes and updates]
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 1063 ++-
1 file changed, 407 insertions(+), 656 deletions(-)
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index c3
fsparam_enum]
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 122
1 file changed, 122 insertions(+)
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index f087b2b71c89..c3623e052cde 100644
--- a/fs/f2fs/super.c
+++ b/fs/f2fs/super.c
@@ -27,6 +27,7
From: Hongbo Li
At the parsing phase of the new mount api, sbi will not be
available. So here allows sbi to be NULL in f2fs log helpers
and use that in handle_mount_opt().
Signed-off-by: Hongbo Li
[sandeen: forward port]
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 90
updates]
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 694 +++-
1 file changed, 510 insertions(+), 184 deletions(-)
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index 11bf936b0d3c..818db1e9549b 100644
--- a/fs/f2fs/super.c
+++ b/fs/f2fs/super.c
From: Hongbo Li
The handle_mount_opt() helper is used to parse mount parameters,
and so we can rename this function to f2fs_parse_param() and set
it as .param_param in fs_context_operations.
Signed-off-by: Hongbo Li
[sandeen: forward port]
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 8
This is a forward-port of Hongbo's original f2fs mount API conversion,
posted last August at
https://lore.kernel.org/linux-f2fs-devel/20240814023912.3959299-1-lihongb...@huawei.com/
I had been trying to approach this with a little less complexity,
but in the end I realized that Hongbo's approach
f2fs_fs_context
only records the mount options, it will be copied in sb/sbi in
later process. (At this point in the series, mount options are
temporarily not set during mount.)
Signed-off-by: Hongbo Li
[sandeen: forward port, minor fixes and updates]
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 419
/mount_api.rst for more information.
Signed-off-by: Hongbo Li
[sandeen: forward port]
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 156 +++-
1 file changed, 62 insertions(+), 94 deletions(-)
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index
On 4/12/25 12:17 PM, Eric Sandeen wrote:
...
> FYI - I don't think I will be able to complete this conversion task myself -
> f2fs is
> by far the most difficult conversion I've encountered, and my time for these
> sorts of
> projects is sadly limited. I do have o
On 4/1/25 3:33 PM, Eric Sandeen wrote:
> On 3/31/25 3:31 AM, Chao Yu wrote:
>> On 3/29/25 12:18, Eric Sandeen wrote:
>>> I was working on next steps for this, and I have a followup question.
>>>
>>> Today, several mount options are simply ignored if the on-d
I was working on next steps for this, and I have a followup question.
Today, several mount options are simply ignored if the on-disk format
does not support them. For example:
case Opt_compress_mode:
if (!f2fs_sb_has_compression(sbi)) {
On 3/31/25 3:31 AM, Chao Yu wrote:
> On 3/29/25 12:18, Eric Sandeen wrote:
>> I was working on next steps for this, and I have a followup question.
>>
>> Today, several mount options are simply ignored if the on-disk format
>> does not support them. For example:
On 3/11/25 10:10 PM, Chao Yu wrote:
> On 3/4/25 01:12, Eric Sandeen wrote:
>> From: Eric Sandeen
>>
>> The current options parsing function both parses options and validates
>> them - factor the validation out to reduce the size of the function and
>> make transit
I have been struggling to get to a good series to convert f2fs to the
new mount API. f2fs is more complex, because much of the option parsing
assumes that the superblock has already been read from disk, and uses
that to test various on-disk features, etc. All of those tests will need
to be moved to
he fs context will have RO state available.)
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 10 +++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index 8866a74ce6aa..bc1aab749689 100644
--- a/fs/f2fs/super.c
+++ b/fs/f2fs/super.c
@@ -727,10 +
This removes another sb instance from parse_options()
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index e63b3bd75f85..8866a74ce6aa 100644
--- a/fs/f2fs/super.c
+++ b/fs/f2fs/super.c
nge for now.
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 20 ++--
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index bc1aab749689..9edb200caae7 100644
--- a/fs/f2fs/super.c
+++ b/fs/f2fs/super.c
@@ -383,10 +383,10 @@ static v
Rather than using F2FS_HAS_FEATURE directly, use f2fs_sb_has_device_alias
macro during option parsing for consistency.
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index 19b67828ae32
CONFIG_F2FS_FS_XATTR was disabled.
Collapse xattr, acl, and fault injection errors into a single string, for
simplicity, and handle the missing inline_xattr_size case.
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 18 --
1 file changed, 4 insertions(+), 14 deletions(-)
diff
From: Eric Sandeen
Set INLINECRYPT into sbi during parsing, and transfer it to the sb in
fill_super, so that an sb is not required during option parsing.
Signed-off-by: Eric Sandeen
---
fs/f2fs/f2fs.h | 1 +
fs/f2fs/super.c | 5 -
2 files changed, 5 insertions(+), 1 deletion(-)
diff
syscall, so this option must remain.)
Signed-off-by: Eric Sandeen
---
fs/f2fs/f2fs.h | 5 +
fs/f2fs/super.c | 11 ---
2 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h
index 15e4f5a77eb5..5c83e3a558f9 100644
--- a/fs/f2fs/f2fs.h
+++ b/fs
will
need to be deferred to later before we can use the new mount API.)
Signed-off-by: Eric Sandeen
---
fs/f2fs/super.c | 7 +++
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index 9edb200caae7..579c96a80fe2 100644
--- a/fs/f2fs/super.c
+++ b
From: Eric Sandeen
The current options parsing function both parses options and validates
them - factor the validation out to reduce the size of the function and
make transition to the new mount API possible, because under the new mount
API, options are parsed one at a time, and cannot all be
On 11/20/24 2:38 PM, Jaegeuk Kim wrote:
> On 11/20, Eric Sandeen wrote:
...
>> (Note that f2fs is the only filesystem that attempts to handle lazytime
>> within
>> the filesystem itself):
>>
>> [linux]# grep -r \"lazytime\" fs/*/
>> fs/f2fs/s
On 11/20/24 8:27 AM, Eric Sandeen wrote:
> On 11/12/24 3:39 PM, Jaegeuk Kim wrote:
>> Hi Eric,
>>
>> Could you please check this revert as it breaks the mount()?
>> It seems F2FS needs to implement new mount support.
>>
>> Thanks,
>
> I'm sorry, I
On 11/12/24 3:39 PM, Jaegeuk Kim wrote:
> Hi Eric,
>
> Could you please check this revert as it breaks the mount()?
> It seems F2FS needs to implement new mount support.
>
> Thanks,
I'm sorry, I missed this email. I will look into it more today.
As for f2fs new mount API support, I have been st
On 8/13/24 9:39 PM, Hongbo Li wrote:
> Use an array of `fs_parameter_spec` called f2fs_param_specs to
> hold the mount option specifications for the new mount api.
>
> Signed-off-by: Hongbo Li
> ---
> fs/f2fs/super.c | 79 +
> 1 file changed, 79 in
Just FWIW -
I had missed this thread when I got temporarily unsubscribed from fsdevel.
I have a series that I was hacking on for this same work, at
https://git.kernel.org/pub/scm/linux/kernel/git/sandeen/linux.git/commit/?h=f2fs-mount-api
but it's very rough and almost certainly contains bugs. It
(because Opt_nolazytime is never seen in f2fs
parsing).
If lazytime is desired to be configurable, and default off is OK,
default_options() could be updated to stop setting it by default
and allow mount option control.
Signed-off-by: Eric Sandeen
---
(I came across this when looking at mount API
On 4/4/23 11:27 AM, Darrick J. Wong wrote:
> diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c
> index d40de32362b1..b6e99ed3b187 100644
> --- a/fs/xfs/xfs_super.c
> +++ b/fs/xfs/xfs_super.c
> @@ -30,6 +30,7 @@
> #include "xfs_filestream.h"
> #include "xfs_quota.h"
> #include "xfs_sysfs.h"
>
On 7/1/20 3:32 AM, Christoph Hellwig wrote:
> On Tue, Jun 30, 2020 at 08:59:34AM -0500, Eric Sandeen wrote:
>> On 6/30/20 12:42 AM, Christoph Hellwig wrote:
>>> On Mon, Jun 29, 2020 at 02:08:09PM -0500, Eric Sandeen wrote:
>>>> f2fs and xfs have both adde
On 6/30/20 12:42 AM, Christoph Hellwig wrote:
> On Mon, Jun 29, 2020 at 02:08:09PM -0500, Eric Sandeen wrote:
>> f2fs and xfs have both added support for cgroup writeback:
>>
>> 578c647 f2fs: implement cgroup writeback support
>> adfb5fb xfs: implement cgroup aware wri
f2fs and xfs have both added support for cgroup writeback:
578c647 f2fs: implement cgroup writeback support
adfb5fb xfs: implement cgroup aware writeback
so add them to the supported list in the docs.
Signed-off-by: Eric Sandeen
---
TBH I wonder about the wisdom of having this detail in
the
On 12/28/17 1:09 AM, Dave Chinner wrote:
...
> There's a whole lot more detail in the kernel commit 2be63d5ce929
> ("Btrfs: fix file loss on log replay after renaming a file and
> fsync") but my point is that we considered this a btrfs filesystem
> bug and so changing the test defeats it's purpose
On 12/24/17 10:30 PM, Chen Rong wrote:
>
>
> On 2017年12月25日 13:56, Eric Sandeen wrote:
>> On 12/24/17 9:28 PM, Chen Rong wrote:
>>> Hi, everyone:
>>>
>>> the issue as below:
>> First we need to look - what does the test do?
>>
>> # T
On 12/24/17 9:28 PM, Chen Rong wrote:
> Hi, everyone:
>
> the issue as below:
First we need to look - what does the test do?
# Test that if we rename a file, create a new file that has the old name of the
# other file and is a child of the same parent directory, fsync the new inode,
# power fail
On 2/26/15 7:23 PM, Jaegeuk Kim wrote:
> The f2fs provides 64KB size with 0 data after fsync was done to directory
> file.
>
> Cc: Filipe Manana
> Signed-off-by: Jaegeuk Kim
> ---
> tests/generic/065 | 4
> 1 file changed, 4 insertions(+)
>
> diff --git a/tests/generic/065 b/tests/generi
On 1/8/15 2:18 PM, Jaegeuk Kim wrote:
> On Thu, Jan 08, 2015 at 01:54:20PM -0600, Eric Sandeen wrote:
>> On 1/8/15 12:10 PM, Jaegeuk Kim wrote:
>>> This patch add an ioctl to shutdown f2fs, which stops all the further block
>>> writes after this point.
>>
>>
On 1/8/15 12:10 PM, Jaegeuk Kim wrote:
> This patch add an ioctl to shutdown f2fs, which stops all the further block
> writes after this point.
would it make sense to just re-use the xfs ioctl nr, if the semantics are
the same?
That way any test using it will "just work" on f2fs...
-Eric
> Sign
On 1/8/15 12:31 PM, Jaegeuk Kim wrote:
> This patch triggers the F2FS-related ioctl for godown.
hohum, wouldn't it be a whole lot easier to just re-use the XFS ioctl
number in f2fs? Then you wouldn't have to duplicate all this code.
If you really want your own unique ioctl number, what about
jus
65 matches
Mail list logo