lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Mon, 06 May 2019 16:32:23 -0400
From:   Gabriel Krisman Bertazi <krisman@...labora.com>
To:     "Theodore Ts'o" <tytso@....edu>
Cc:     fstests@...r.kernel.org, linux-ext4@...r.kernel.org
Subject: Re: [PATCH xfstests 1/2] common/casefold: Add infrastructure to test filename casefold feature

"Theodore Ts'o" <tytso@....edu> writes:

> On Mon, May 06, 2019 at 02:59:40PM -0400, Gabriel Krisman Bertazi wrote:
>> +_require_test_casefold_feature () {
>> +    _has_casefold_feature $TEST_DEV || \
>> +	_notrun "Feature casefold required for this test"
>> +}
>> +_require_scratch_casefold_feature () {
>> +    _has_casefold_feature $SCRATCH_DEV || \
>> +	_notrun "Feature casefold required for this test"
>> +}
>
> I've just pushed out a commit to ext4.git tree which will cause
> /sys/fs/ext4/features/casefold will exist iff CONFIG_UNICODE is
> present.  This will allow the test to check whether or not the kernel
> version and configuration will support the casefold feature.
>
> Could you add a check for this flag if the file system type is ext4?

Hello Ted,

I will follow up with this change on a v2.

> A file system independent way of doing this would be to create a test
> file system on the test file system, calling "chattr +F" on the
> directory.  If it fails, then either the file system doesn't support
> it or the chattr program is too old and doesn't support casefold.  If
> the chattr +F succeeds, then the test should call lsattr -d on the
> directory and make sure the request to set casefold flag was actually
> honored; some file systems will simply fail to set flags that they
> don't support, so we do need to do a SETFLAGS followed by a GETFLAGS
> to be sure that it was supported.

> Speaking of file system independent casefold, I believe that it will
> be likely that the casefold feature will be supported by f2fs in the
> fullness of time.  If that happens, how to test for the file system
> feature will be different (since dumpe2fs is ext4-specific), but I
> would expect "chattr +F" interface to be the same between ext4 and
> f2fs.

I planned to add the per-filesystem test inside common/casefold.  Not
sure how it would be done for f2fs, but i don't think we'd have a
unified interface other than SETFLAGS followed by GETFLAGS to test
this.  I think I could make this method the fallback.

>
> This might mean that we should add casefold tests to either generic/
> or shared/ instead of ext4/ --- I think it would be shared since at
> least initially it would only be ext4 and f2fs, and I haven't seen any
> indication than other file systems would be interested in adding
> casefold support.  Or we can move the casefold tests later from ext4/
> to shared/ once the f2fs support materializes.

Last thing I did before submitting this series was moving from generic/
to ext4/.  I plan to move it back into generic/ or shared/ once another
filesystem uses it.

I didn't have a chance to discuss with xfs folks yet, but I spoke to
Chris Mason and I plan to propose this feature for xfs and btrfs soon.

-- 
Gabriel Krisman Bertazi

Powered by blists - more mailing lists