Home | History | Annotate | Download | only in libsa
History log of /src/sys/lib/libsa/minixfs3.c
RevisionDateAuthorComments
 1.13  29-Apr-2022  rin Re-introduce SA_HARDCODED_SECSIZE hack, by which hardcoded DEV_BSIZE is
used instead of secsize obtained by SAIOSECSIZE ioctl.

This hack avoids divdi3 and friends from being linked, in order to
support variable secsize for some archs.

Should be useful for ancient archs, for which secsize is fixed.

Thanks christos@ for comment.
 1.12  27-Apr-2022  rin Revert previous at the moment.

This is wrong reasoning; 68020 and above (incl. 040 and 060) support
32-bit displacements for PC relative addressing (via "fully extension
addressing mode" with null index register).

I've still not figured out what goes wrong with amiga/boot(8) when
compiled without -l option for gas(1)...

On 2022/04/27 20:48, Rin Okuyama wrote:
> Module Name: src
> Committed By: rin
> Date: Wed Apr 27 11:48:26 UTC 2022
>
> Modified Files:
> src/sys/lib/libsa: ext2fs.c minixfs3.c stand.h ufs.c
>
> Log Message:
> Introduce SA_HARDCODED_SECSIZE hack, by which hardcoded DEV_BSIZE is
> used instead of secsize obtained by SAIOSECSIZE ioctl.
>
> This hack avoids divdi3 and friends from being linked, in order to
> support variable secsize.
>
> This is useful for amiga/boot(8); it is loaded by firmware into
> unpredictable address, and therefore all symbols should be
> addressable by PC relative mode with only 16-bit displacements.
>
> See sys/arch/amiga/stand/bootblock/{boot/bbstart.s,elf2bb,txlt} for
> more details.
>
>
> To generate a diff of this commit:
> cvs rdiff -u -r1.31 -r1.32 src/sys/lib/libsa/ext2fs.c
> cvs rdiff -u -r1.10 -r1.11 src/sys/lib/libsa/minixfs3.c
> cvs rdiff -u -r1.83 -r1.84 src/sys/lib/libsa/stand.h src/sys/lib/libsa/ufs.c
>
> Please note that diffs are not public domain; they are subject to the
> copyright notices on the relevant files.
 1.11  27-Apr-2022  rin Introduce SA_HARDCODED_SECSIZE hack, by which hardcoded DEV_BSIZE is
used instead of secsize obtained by SAIOSECSIZE ioctl.

This hack avoids divdi3 and friends from being linked, in order to
support variable secsize.

This is useful for amiga/boot(8); it is loaded by firmware into
unpredictable address, and therefore all symbols should be
addressable by PC relative mode with only 16-bit displacements.

See sys/arch/amiga/stand/bootblock/{boot/bbstart.s,elf2bb,txlt} for
more details.
 1.10  24-Apr-2022  mlelstv Ask driver about sector size to support reading superblocks from fixed
byte offsets.
 1.9  19-Apr-2022  skrll Typo in comment. avoinds -> avoids
 1.8  31-Mar-2019  christos fix warnings, printf formats, etc.
 1.7  20-Mar-2014  christos branches: 1.7.30;
reduce size by 1K by sharing the ls code.
 1.6  03-Nov-2013  christos make a gcc unitialized variable
 1.5  23-Jun-2013  dholland branches: 1.5.2;
Stick ffs_, ext2_, chfs_, filecore_, cd9660_, or mfs_ in front of
the following symbols so as to disambiguate fully. (Christos already
did the lfs ones.)

lblkno
lblktosize
lfragtosize
numfrags
blkroundup
fragroundup
 1.4  23-Jun-2013  dholland fsbtodb() -> FFS_FSBTODB(), EXT2_FSBTODB(), or MFS_FSBTODB()
dbtofsb() -> FFS_DBTOFSB() or EXT2_DBTOFSB()

(Christos already did the lfs ones a few days back)
 1.3  19-Jun-2013  dholland blkoff() -> mfs_blkoff()

XXX: this shouldn't be using "mfs" for its symbols as we also have
XXX: sys/ufs/mfs.
 1.2  19-Jun-2013  dholland Rename ambiguous macros:
MAXDIRSIZE -> UFS_MAXDIRSIZE or LFS_MAXDIRSIZE
NINDIR -> FFS_NINDIR, EXT2_NINDIR, LFS_NINDIR, or MFS_NINDIR
INOPB -> FFS_INOPB, LFS_INOPB
INOPF -> FFS_INOPF, LFS_INOPF
blksize -> ffs_blksize, ext2_blksize, or lfs_blksize
sblksize -> ffs_blksize

These are not the only ambiguously defined filesystem macros, of
course, there's a pile more. I may not have found all the ambiguous
definitions of blksize(), too, as there are a lot of other things
called 'blksize' in the system.
 1.1  16-Jan-2012  christos branches: 1.1.4; 1.1.6; 1.1.10;
PR/45796: Evgeniy Ivanov minixfs3 support.
Split out fn_match since we have 3 copies now.
 1.1.10.2  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1  23-Jun-2013  tls resync from head
 1.1.6.3  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.6.2  17-Apr-2012  yamt sync with head
 1.1.6.1  16-Jan-2012  yamt file minixfs3.c was added on branch yamt-pagecache on 2012-04-17 00:08:33 +0000
 1.1.4.2  18-Feb-2012  mrg merge to -current.
 1.1.4.1  16-Jan-2012  mrg file minixfs3.c was added on branch jmcneill-usbmp on 2012-02-18 07:35:35 +0000
 1.5.2.1  18-May-2014  rmind sync with head
 1.7.30.1  10-Jun-2019  christos Sync with HEAD

RSS XML Feed