Page MenuHomeFreeBSD

fsu (Fedor Uporov)
User

Projects

User does not belong to any projects.

User Details

User Since
Mar 27 2017, 5:46 PM (401 w, 2 d)

Recent Activity

Aug 31 2023

fsu requested review of D41663: ext2fs: Migrate to modern uintXX_t from u_intXX_t.
Aug 31 2023, 5:27 AM

Jul 26 2023

fsu abandoned D13267: Export extattr_*vp() functions to allow to use it in the linuxulator in future .

Close because of:
https://reviews.freebsd.org/D35544

Jul 26 2023, 6:44 PM
fsu abandoned D13209: linuxulator: Add user xattrs support for i386 and amd64 platforms..

Close because of:
https://reviews.freebsd.org/D35544

Jul 26 2023, 6:43 PM

May 21 2023

fsu committed rG50be18cc77b2: ext2fs: Add large sectorsize disks support (authored by fsu).
ext2fs: Add large sectorsize disks support
May 21 2023, 5:21 AM
fsu closed D40047: ext2fs: Add large sectorsize disks support.
May 21 2023, 5:21 AM

May 10 2023

fsu requested review of D40047: ext2fs: Add large sectorsize disks support.
May 10 2023, 5:16 PM

Mar 20 2023

fsu committed rGbb95e6fa98a3: Fix compilation issue, when DTRACE is not defined (authored by fsu).
Fix compilation issue, when DTRACE is not defined
Mar 20 2023, 8:08 PM

Mar 18 2023

fsu committed rG3c2dc524c333: Do not panic in case of corrupted directory (authored by fsu).
Do not panic in case of corrupted directory
Mar 18 2023, 6:18 AM
fsu closed D38503: Do not panic in case of corrupted directory.
Mar 18 2023, 6:18 AM
fsu closed D38502: Add root directory entry check..
Mar 18 2023, 6:17 AM
fsu committed rG366da717deda: Add root directory entry check. (authored by fsu).
Add root directory entry check.
Mar 18 2023, 6:17 AM

Mar 12 2023

fsu updated the diff for D38503: Do not panic in case of corrupted directory.

Ok, let's ignore mangled dir entry on rename.
The situation will looks like:

root@fb:/mnt # mkdir -p DIR0/dirbad2 DIR1
root@fb:/mnt # mv ./DIR0/dirbad2 ./DIR1
root@fb:/mnt # tree
.
├── DIR0
├── DIR1
│   └── dirbad2
└── lost+found
Mar 12 2023, 10:54 AM

Mar 10 2023

fsu updated the diff for D38503: Do not panic in case of corrupted directory.

I thought about this patch little bit more and found, that it is not so simple to not panic in all places.
First place:

	/*
	 * Check that directory length properly reflects presence
	 * of this entry.
	 */
	if (entryoffsetinblock + EXT2_DIR_REC_LEN(ep->e2d_namlen) >
	    dp->i_size) {
		ext2_dirbad(dp, i_offset, "i_size too small");
		brelse(bp);
		return (EIO);
	}
	brelse(bp);

It is possible do not panic in this case, because it is just incorrect i_size and could be simple fixed by fsck.

Mar 10 2023, 12:21 PM

Feb 25 2023

fsu updated the diff for D38503: Do not panic in case of corrupted directory.

Ok, in case of ext2fs, we not need printf and leave only dtrace probe with error reporting.
I hope user will smart enough to unmount and run fsck, if will get errors on directory listing.

Feb 25 2023, 6:29 AM

Feb 18 2023

fsu added a comment to D38503: Do not panic in case of corrupted directory.
In D38503#876411, @pfg wrote:

Hmm.. we should keep consistency with UFS .. and that means panic in ext2_dirbad(). My guess is that for this case you shouldn' t call ext2_dirbad().

Feb 18 2023, 7:22 AM
fsu updated the diff for D38502: Add root directory entry check..

Ok, let's remove ext2_check_root_direntry() completely.

Feb 18 2023, 7:16 AM

Feb 11 2023

fsu requested review of D38503: Do not panic in case of corrupted directory.
Feb 11 2023, 7:40 AM
fsu requested review of D38502: Add root directory entry check..
Feb 11 2023, 7:39 AM
fsu committed rGcbac1f346495: Fix pjfstest issue tests/rename/09.t (authored by fsu).
Fix pjfstest issue tests/rename/09.t
Feb 11 2023, 7:04 AM
fsu closed D38245: [tmpfs]: Fix tmpfs issure reproduced by pjdfstest tests/rename/09.t.
Feb 11 2023, 7:04 AM

Feb 4 2023

fsu added a comment to D38245: [tmpfs]: Fix tmpfs issure reproduced by pjdfstest tests/rename/09.t.
In D38245#869181, @kib wrote:

This change triggered me because explicit cr_uid checks mean that e.g. a future implementation of ACLs would be broken there.
VOP_ACCESS()/VOP_ACCESSX() should encapsulate such knowledge of permissions.

Also, isn't remove from sticky directory has similar problem?

The similar test for removing will pass (tests/rmdir/11.t).
Let's consider the test explanation from pjdfstest comment [https://github.com/pjd/pjdfstest/blob/master/tests/rename/09.t#L121]:

# User owns the source sticky directory, but doesn't own the source file.
# This fails when changing parent directory, because this will modify
# source directory inode (the .. link in it), but we can still rename it
# without changing its parent directory.

So, it mean, we cannot modify renamed inode, but can remove it.
Let's add some graphics:

sticky directory                child directory
owned by user (ino 100500)      not owned by user (ino 100501)
         |                              |
        \|/                            \|/
directory entries:                  directory entries: 
- "."     (ino 100500)              - "."     (ino 100501)
- ".."    (ino XXXXXX)    <-----    - ".."    (ino 100500)  <- cannot be modified
...                                 ...
- "child" (ino 100501)     ----->   ...
Feb 4 2023, 8:28 AM
fsu updated the diff for D38245: [tmpfs]: Fix tmpfs issure reproduced by pjdfstest tests/rename/09.t.
Feb 4 2023, 8:24 AM

Jan 29 2023

fsu added inline comments to D38051: [tmpfs]: Fix misc issues reproduced by pjdfstest.
Jan 29 2023, 8:37 AM
fsu requested review of D38245: [tmpfs]: Fix tmpfs issure reproduced by pjdfstest tests/rename/09.t.
Jan 29 2023, 8:36 AM
fsu added inline comments to D38052: [tmpfs]: Add extended attributes.
Jan 29 2023, 8:22 AM
fsu committed rG56242a4c6566: Add extended attributes (authored by fsu).
Add extended attributes
Jan 29 2023, 8:21 AM
fsu committed rG0de4895aac4e: Fix pjfstest issue tests/rename/23.t (authored by fsu).
Fix pjfstest issue tests/rename/23.t
Jan 29 2023, 8:21 AM
fsu committed rG9ad2d4c4907d: Fix pjfstest issue tests/rename/19.t (authored by fsu).
Fix pjfstest issue tests/rename/19.t
Jan 29 2023, 8:21 AM
fsu closed D38052: [tmpfs]: Add extended attributes.
Jan 29 2023, 8:21 AM
fsu closed D38051: [tmpfs]: Fix misc issues reproduced by pjdfstest.
Jan 29 2023, 8:21 AM
fsu committed rG344243fc9213: Fix block bitmap end position computation (authored by fsu).
Fix block bitmap end position computation
Jan 29 2023, 8:21 AM
fsu committed rG509ee39ff28d: Fix developer second name. (authored by fsu).
Fix developer second name.
Jan 29 2023, 8:20 AM

Jan 22 2023

fsu added inline comments to D38052: [tmpfs]: Add extended attributes.
Jan 22 2023, 10:57 AM
fsu added a comment to D38052: [tmpfs]: Add extended attributes.

Changes:

  • Implement extended attributes max size variable as mount option instead of sysctl, the value could be changed during remount (MNT_UPDATE)
  • Misc refactoring:
    • Remove tmpfs_extattr_valid_attrname() function to avoid double strlen call.
    • The if expressions fixes.
    • Decrease number of blank lines.
Jan 22 2023, 10:54 AM
fsu added inline comments to D38051: [tmpfs]: Fix misc issues reproduced by pjdfstest.
Jan 22 2023, 10:52 AM
fsu updated the diff for D38052: [tmpfs]: Add extended attributes.
Jan 22 2023, 10:52 AM

Jan 14 2023

fsu added reviewers for D38052: [tmpfs]: Add extended attributes: kib, markj.
Jan 14 2023, 12:26 PM
fsu added reviewers for D38051: [tmpfs]: Fix misc issues reproduced by pjdfstest: kib, markj.
Jan 14 2023, 12:26 PM
fsu requested review of D38052: [tmpfs]: Add extended attributes.
Jan 14 2023, 12:25 PM
fsu added a comment to D38051: [tmpfs]: Fix misc issues reproduced by pjdfstest.

Add links to testcases to source code.

Jan 14 2023, 12:24 PM
fsu requested review of D38051: [tmpfs]: Fix misc issues reproduced by pjdfstest.
Jan 14 2023, 12:21 PM

Dec 30 2021

fsu committed rGf1d5e2c862ef: Improve extents verification logic (authored by fsu).
Improve extents verification logic
Dec 30 2021, 6:16 AM
fsu committed rGced217282230: Add more accurate check for root inode (authored by fsu).
Add more accurate check for root inode
Dec 30 2021, 6:16 AM
fsu committed rGbb9f1ba4b55c: Add more accurate directory entries check (authored by fsu).
Add more accurate directory entries check
Dec 30 2021, 6:16 AM
fsu committed rG5034b44574c4: Remove unnecessary e2fs_first_dblock value check (authored by fsu).
Remove unnecessary e2fs_first_dblock value check
Dec 30 2021, 6:16 AM
fsu closed D33375: Improve extents verification logic.
Dec 30 2021, 6:15 AM
fsu closed D33374: Add more accurate directory entries check.
Dec 30 2021, 6:15 AM

Dec 10 2021

fsu requested review of D33375: Improve extents verification logic.
Dec 10 2021, 5:23 PM
fsu requested review of D33374: Add more accurate directory entries check.
Dec 10 2021, 5:23 PM

Nov 28 2021

fsu accepted D33029: ext2: Check for e2fs_first_dblock in ext2_compute_sb_data().
Nov 28 2021, 2:41 PM

Nov 19 2021

fsu added a comment to D33029: ext2: Check for e2fs_first_dblock in ext2_compute_sb_data().

This version of e2fs_first_dblock check will fail on 1k block size. The

fs->e2fs->e2fs_bcount >= 1024

is always true.

Nov 19 2021, 2:46 PM

Nov 18 2021

fsu accepted D33030: ext2fs: check for eh_depth in ext4_ext_check_header().

I am working on more complex extents verification logic, but let it to be committed.

Nov 18 2021, 10:33 AM
fsu added a comment to D33029: ext2: Check for e2fs_first_dblock in ext2_compute_sb_data().

The first data block value check should be more complex. See s_first_data_block superblock field here:
https://ext4.wiki.kernel.org/index.php/Ext4_Disk_Layout

Nov 18 2021, 10:33 AM

Nov 8 2021

fsu added a comment to D32879: ext2fs: extract crc16 into sys/crc16.h.

I think it will be better to commit another crc16 implementation and then apply 'code duplication fix' by moving function used in both places to independent header. The reason is, that I cannot confirm that it is 'generic' and 'right' crc16 implementation. I can only confirm, that this implementation is suitable for ext2fs.

Nov 8 2021, 3:57 PM

May 8 2021

fsu committed rG2a984c2b4982: Make encode/decode extra time functions inline. (authored by fsu).
Make encode/decode extra time functions inline.
May 8 2021, 3:44 AM

May 7 2021

fsu closed D29933: Fix inode extra time fields overflow..
May 7 2021, 7:50 AM
fsu committed rGc40a160fd0aa: Make inode extra time fields updating logic more closer to linux. (authored by fsu).
Make inode extra time fields updating logic more closer to linux.
May 7 2021, 7:50 AM
fsu closed D29932: Improve extents verification logic..
May 7 2021, 7:29 AM
fsu closed D29931: Invalidate inode extents cache on truncation..
May 7 2021, 7:29 AM
fsu committed rGb3f46656393f: Invalidate inode extents cache on truncation. (authored by fsu).
Invalidate inode extents cache on truncation.
May 7 2021, 7:29 AM
fsu committed rG5679656e09fb: Improve extents verification logic. (authored by fsu).
Improve extents verification logic.
May 7 2021, 7:29 AM
fsu committed rG1ed5f62d61ac: Add chr/blk devices support. (authored by fsu).
Add chr/blk devices support.
May 7 2021, 7:10 AM
fsu committed rG1484574843a3: Fix inode birthtime updating logic. (authored by fsu).
Fix inode birthtime updating logic.
May 7 2021, 7:10 AM
fsu closed D29930: Add chr/blk devices support..
May 7 2021, 7:10 AM
fsu closed D29929: Fix inode birthtime updating..
May 7 2021, 7:10 AM

Apr 23 2021

fsu added inline comments to D29933: Fix inode extra time fields overflow..
Apr 23 2021, 2:46 PM
fsu updated the diff for D29932: Improve extents verification logic..

Fix printf message as requested

Apr 23 2021, 2:40 PM
fsu updated the diff for D29930: Add chr/blk devices support..

Make functions inline

Apr 23 2021, 2:37 PM
fsu added inline comments to D29929: Fix inode birthtime updating..
Apr 23 2021, 2:33 PM
fsu updated the diff for D29929: Fix inode birthtime updating..

Fix and expression order.

Apr 23 2021, 2:32 PM

Apr 22 2021

fsu requested review of D29933: Fix inode extra time fields overflow..
Apr 22 2021, 5:25 PM
fsu requested review of D29932: Improve extents verification logic..
Apr 22 2021, 5:25 PM
fsu requested review of D29931: Invalidate inode extents cache on truncation..
Apr 22 2021, 5:25 PM
fsu requested review of D29929: Fix inode birthtime updating..
Apr 22 2021, 5:25 PM
fsu requested review of D29930: Add chr/blk devices support..
Apr 22 2021, 5:25 PM

Feb 17 2021

fsu accepted D28679: vnode: move write cluster support data to inodes..

Looks good from ext2fs side.

Feb 17 2021, 1:47 PM
fsu added a comment to D28679: vnode: move write cluster support data to inodes..

@kib, you mentioned in SUMMARY:
"ext2fs change to reset clusterw on truncation should be a bug fix."

Feb 17 2021, 11:14 AM

Jul 17 2020

fsu accepted D25707: ext2fs: Stop checking for failures from malloc(M_WAITOK)..

Thank you for fix.

Jul 17 2020, 4:44 PM

Jun 12 2020

fsu committed rS362098: MFC r361135:.
MFC r361135:
Jun 12 2020, 1:55 PM
fsu committed rS362097: MFC r361134:.
MFC r361134:
Jun 12 2020, 1:54 PM
fsu committed rS362096: MFC r361133:.
MFC r361133:
Jun 12 2020, 1:52 PM

May 17 2020

fsu committed rS361136: Add BE architectures support..
Add BE architectures support.
May 17 2020, 2:53 PM
fsu closed D24685: ext2fs: initial support for byteswapping (was https://reviews.freebsd.org/D23259).
May 17 2020, 2:53 PM · PowerPC
fsu committed rS361135: Restrict the max runp and runb return values in case of extents mapping..
Restrict the max runp and runb return values in case of extents mapping.
May 17 2020, 2:11 PM
fsu committed rS361134: Fix incorrect inode link count check in case of rename..
Fix incorrect inode link count check in case of rename.
May 17 2020, 2:03 PM
fsu committed rS361133: Add inode bitmap tail initialization..
Add inode bitmap tail initialization.
May 17 2020, 2:01 PM

May 4 2020

fsu added a comment to D23259: ext2fs: initial support for byteswapping..
In D23259#543519, @pfg wrote:
In D23259#543516, @fsu wrote:
In D23259#543509, @pfg wrote:

Sorry I meant to approve this:
https://reviews.freebsd.org/D24685

(fsu should have comandeered this one instead of opening a new one)

I did not managed with new diff uploading, diff did not want to attach to this revision.
Seems like, I can attach diffs only to revisions, which were opened by me.
Please correct me if I am wrong or lose something in the Phabricator UI.

You had to comandeer it in the Action box. You can't do it anymore because it is closed but I know because other people have comandeered my WIP changes ;).

No problem about the new revision though ... Good Job !

May 4 2020, 4:39 PM
fsu added a comment to D23259: ext2fs: initial support for byteswapping..
In D23259#543509, @pfg wrote:

Sorry I meant to approve this:
https://reviews.freebsd.org/D24685

(fsu should have comandeered this one instead of opening a new one)

May 4 2020, 4:19 PM
fsu requested review of D24685: ext2fs: initial support for byteswapping (was https://reviews.freebsd.org/D23259).
May 4 2020, 1:41 PM · PowerPC

Apr 15 2020

fsu added a comment to D13209: linuxulator: Add user xattrs support for i386 and amd64 platforms..
In D13209#537208, @pfg wrote:

Ping? What's the status of this?

FWIW, I recall kib had objections and fsu needed clarifications but he never got them.
There was never urgency as there is no known program using this code so the issue has been dormant for a long time.

As I remember, the task appeared to be more difficult than it was expected by me. More changes appeared to be required to implement, than it was expected from start.

Apr 15 2020, 2:15 PM

Mar 3 2020

fsu committed rS358578: MFC r358073:.
MFC r358073:
Mar 3 2020, 2:59 PM

Feb 18 2020

fsu committed rS358073: Add a EXT2FS-specific implementation for lseek(SEEK_DATA)..
Add a EXT2FS-specific implementation for lseek(SEEK_DATA).
Feb 18 2020, 4:40 PM
fsu closed D23605: Add a EXT2FS-specific implementation for lseek(SEEK_DATA)..
Feb 18 2020, 4:40 PM

Feb 10 2020

fsu created D23605: Add a EXT2FS-specific implementation for lseek(SEEK_DATA)..
Feb 10 2020, 5:18 PM

Jan 19 2020

fsu added a comment to D23259: ext2fs: initial support for byteswapping..

I am not sure that dinode and superblock conversion will be enough, as I checked on linux side, the group descriptors should be converted too, possible same for bitmaps.
From https://ext4.wiki.kernel.org/index.php/Ext4_Disk_Layout
"All fields in ext4 are written to disk in little-endian order"

Jan 19 2020, 1:20 PM

Jul 27 2019

fsu committed rS350385: MFC r349800,r349801,r349802:.
MFC r349800,r349801,r349802:
Jul 27 2019, 7:29 PM
fsu committed rS350384: MFC r349800,r349801:.
MFC r349800,r349801:
Jul 27 2019, 7:29 PM

Jul 7 2019

fsu committed rS349802: Add additional check for 'blocks per group' and 'fragments per group'….
Add additional check for 'blocks per group' and 'fragments per group'…
Jul 7 2019, 8:58 AM
fsu committed rS349801: Remove ufs fragments logic..
Remove ufs fragments logic.
Jul 7 2019, 8:56 AM
fsu committed rS349800: Remove unneeded mount point unlock call..
Remove unneeded mount point unlock call.
Jul 7 2019, 8:54 AM