NetBSD-Bugs archive

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

kern/54875: "modload compat_50" fails on kernel without "options QUOTA"



>Number:         54875
>Category:       kern
>Synopsis:       "modload compat_50" fails on kernel without "options QUOTA"
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Jan 18 21:35:00 +0000 2020
>Originator:     Izumi Tsutsui
>Release:        NetBSD 9.0_RC1
>Organization:
>Environment:
System: NetBSD  9.0_RC1 NetBSD 9.0_RC1 (MODULAR) #2: Sun Jan 19 04:54:01 JST 2020  tsutsui@mirage:/s/netbsd-9/src/sys/arch/sun3/compile/MODULAR sun3
Architecture: m68k
Machine: sun3
>Description:
On NetBSD/sun3 9.0_RC1 (options QUOTE is disabled by default)
"modload compat_50" fails:
---
# modload compat_50
[ 3411.1500220] kobj_checksyms, 988: [compat_50]: linker error: symbol `dqblk_to_quotavals' not found
[ 3411.2000220] kobj_checksyms, 988: [compat_50]: linker error: symbol `quotavals_to_dqblk' not found
[ 3411.2300220] WARNING: module error: unable to affix module `compat_50', error 8
modload: compat_50: Exec format error
# 
---

This means all compat modules prior 5.0 also fail:
---
# modload compat_40
[ 3497.8800220] kobj_checksyms, 988: [compat_50]: linker error: symbol `dqblk_to_quotavals' not found
[ 3497.9300220] kobj_checksyms, 988: [compat_50]: linker error: symbol `quotavals_to_dqblk' not found
[ 3497.9600220] WARNING: module error: unable to affix module `compat_50', error 8
[ 3497.9800220] WARNING: module error: recursive load failed for `compat_40' (`compat_50' required), error 8
modload: compat_40: Exec format error
#
---

The missing dqblk_to_quotavals() and quotavals_to_dqblk() are
in quota1_subr.c, but it's pulled only if options QUOTA
(and ufs derived filesystems) are configured:
---
file	ufs/ufs/quota1_subr.c		quota & (ffs | mfs | ext2fs | chfs)
---

>How-To-Repeat:
- build NetBSD/sun3 kernel with options MODULAR
  (or build kernel without QUOTA)
- modload compat_50 on single user

>Fix:
No idea how such options in compat modules should be handled.

---
Izumi Tsutsui



Home | Main Index | Thread Index | Old Index