Messages in this thread | | | Date | Mon, 6 Mar 2023 17:27:59 +0000 | From | Al Viro <> | Subject | Re: [PATCH] fs/sysv: Don't round down address for kunmap_flush_on_unmap() |
| |
On Mon, Mar 06, 2023 at 01:51:50PM +0100, Fabio M. De Francesco wrote: > The kernel virtual address passed to kunmap_flush_on_unmap() has no more > any need to be rounded down. > > Therefore, delete the rounding down of "page_addr" when passed to > kunmap_local() in dir_put_page(). > > Don't backport without commit 88d7b12068b9 ("highmem: round down the > address passed to kunmap_flush_on_unmap()").
Applied (#work.misc). FWIW, I've rebased the ext2 series to -rc1 (and realized what got Jan confused about ext2_rename() changes).
Re minixfs: it's actually very close to sysv, so much that at one point I considered merging them - making minixfs one of sysvfs flavours.
Think of it as v7 filesystem with the simpler improvements copied from FFS. Cylinder groups and variable-sized directory entries - too complex for Minix purposes. Lifting the name length limit from 14 to 30 - sure, why not? 32bit block numbers - eventually made it, so did 32bit inode numbers (in v3).
The main advance compared to v7 is the use of bitmaps for block and inode allocation. Unlike FFS it's all in one lump, but at least it's not the "free block list".
For directory contents handling it doesn't matter at all - there minixfs is really just another sysvfs variant. Directory is stored the same way as a regular file would've been, the data in it is an array of fixed-sized entries (16, 32 or 64 bytes, depending upon the filesystem version), each consisting of inode number (2 or 4 bytes) + array of characters representing the name; name shorter than the longest possible are NUL-terminated.
Anyway, I've slapped together a counterpart of your sysv series, see #work.minix
| |