Source-Changes-D archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: CVS commit: src/sys/ufs



On Sun, 16 Jun 2019, Christos Zoulas wrote:

No, there is still an issue. The change adds those files in the kernel when
there are no filesystems present. Otherwise I just built a MODULAR kernel
with FFS disabled and I get:

Don't you get the same? Or don't you have quotas or extended attributes on
in your kernel?

I do not have QUOTA, QUOTA2, or UFS_EXTATTR defined in my kernel.  I
removed them when I removed all the file systems.  It didn't seem to me
to make much sense to include those options without their filesystem.

Looking at the code it seems that we either need to disable the options
if FFS is not also defined, or add a ``&& defined(FFS)'' to each of the
#if in ufs_vfsops.c and ufs_vnops.c.

FWIW, the ffs module always gets built with QUOTA and QUOTA2, but not
with UFS_EXTATTR, so support for quotas is always included in the ffs
module.  (I have never tried to use quotas, so I don't know if they
work this way.)



christos

ld: ufs_vfsops.o: in function `ufs_quotactl':
/usr/src/sys/arch/amd64/compile/MODULAR/../../../../ufs/ufs/ufs_vfsops.c:140: un
defined reference to `quota_handle_cmd'
ld: ufs_vfsops.o: in function `ufs_init':
/usr/src/sys/arch/amd64/compile/MODULAR/../../../../ufs/ufs/ufs_vfsops.c:270: undefined reference to `dqinit'
ld: ufs_vfsops.o: in function `ufs_done':
/usr/src/sys/arch/amd64/compile/MODULAR/../../../../ufs/ufs/ufs_vfsops.c:298: undefined reference to `dqdone'
ld: ufs_vfsops.o: in function `ufs_init':
/usr/src/sys/arch/amd64/compile/MODULAR/../../../../ufs/ufs/ufs_vfsops.c:276: undefined reference to `ufs_extattr_init'
ld: ufs_vfsops.o: in function `ufs_reinit':
/usr/src/sys/arch/amd64/compile/MODULAR/../../../../ufs/ufs/ufs_vfsops.c:284: undefined reference to `dqreinit'
ld: ufs_vfsops.o: in function `ufs_done':
/usr/src/sys/arch/amd64/compile/MODULAR/../../../../ufs/ufs/ufs_vfsops.c:305: undefined reference to `ufs_extattr_done'
ld: ufs_vnops.o: in function `ufs_check_possible':
/usr/src/sys/arch/amd64/compile/MODULAR/../../../../ufs/ufs/ufs_vnops.c:279: undefined reference to `chkdq'
ld: ufs_vnops.o: in function `ufs_chown':
/usr/src/sys/arch/amd64/compile/MODULAR/../../../../ufs/ufs/ufs_vnops.c:686: undefined reference to `chkdq'
ld: /usr/src/sys/arch/amd64/compile/MODULAR/../../../../ufs/ufs/ufs_vnops.c:687: undefined reference to `chkiq'
ld: /usr/src/sys/arch/amd64/compile/MODULAR/../../../../ufs/ufs/ufs_vnops.c:694: undefined reference to `chkdq'
ld: /usr/src/sys/arch/amd64/compile/MODULAR/../../../../ufs/ufs/ufs_vnops.c:704: undefined reference to `chkdq'
ld: /usr/src/sys/arch/amd64/compile/MODULAR/../../../../ufs/ufs/ufs_vnops.c:705: undefined reference to `chkiq'
ld: ufs_vnops.o: in function `ufs_setattr':
/usr/src/sys/arch/amd64/compile/MODULAR/../../../../ufs/ufs/ufs_vnops.c:559: undefined reference to `ufs_truncate_retry'
ld: ufs_vnops.o: in function `ufs_chown':
/usr/src/sys/arch/amd64/compile/MODULAR/../../../../ufs/ufs/ufs_vnops.c:695: undefined reference to `chkiq'
ld: /usr/src/sys/arch/amd64/compile/MODULAR/../../../../ufs/ufs/ufs_vnops.c:698: undefined reference to `chkdq'
*** [netbsd] Error code 1


On Jun 16, 2019, at 10:00 PM, Paul Goyette <paul%whooppee.com@localhost> wrote:

On Sun, 16 Jun 2019, Paul Goyette wrote:

If I'm understanding your changes correctly, a kernel will have a copy
of ufs_quota.c built-in, whether or not the ffs code is built-in.  So
if you have a kernel with no ffs, that kernel will still have the quota
code, and loading the ffs module will result in duplicate symbols.  The
error will occur at module load/link time, not at kernel build/link.

OK, obviously I did not understand the changes correctly!  I just did a
re-build of my no-included-filesystem kernel and the files in question
were not included, either.  So there won't be any dup symbols when the
module is eventually loaded.

Sorry for the noise.



+--------------------+--------------------------+-----------------------+
| Paul Goyette       | PGP Key fingerprint:     | E-mail addresses:     |
| (Retired)          | FA29 0E3B 35AF E8AE 6651 | paul%whooppee.com@localhost     |
| Software Developer | 0786 F758 55DE 53BA 7731 | pgoyette%netbsd.org@localhost   |
+--------------------+--------------------------+-----------------------+


!DSPAM:5d06fc1163151467713922!



+--------------------+--------------------------+-----------------------+
| Paul Goyette       | PGP Key fingerprint:     | E-mail addresses:     |
| (Retired)          | FA29 0E3B 35AF E8AE 6651 | paul%whooppee.com@localhost     |
| Software Developer | 0786 F758 55DE 53BA 7731 | pgoyette%netbsd.org@localhost   |
+--------------------+--------------------------+-----------------------+


Home | Main Index | Thread Index | Old Index