NetBSD Problem Report #56772

From paul@whooppee.com  Tue Mar 29 22:21:47 2022
Return-Path: <paul@whooppee.com>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
	by mollari.NetBSD.org (Postfix) with ESMTPS id 6DCDE1A921F
	for <gnats-bugs@gnats.NetBSD.org>; Tue, 29 Mar 2022 22:21:47 +0000 (UTC)
Message-Id: <20220329222140.DCB0230F2C4@speedy.whooppee.com>
Date: Tue, 29 Mar 2022 15:21:40 -0700 (PDT)
From: paul@whooppee.com
Reply-To: paul@whooppee.com
To: gnats-bugs@NetBSD.org
Subject: various modules cannot load - missing symbols
X-Send-Pr-Version: 3.95

>Number:         56772
>Category:       kern
>Synopsis:       various modules fail to load
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          suspended
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Mar 29 22:25:00 +0000 2022
>Closed-Date:    
>Last-Modified:  Sat Jun 04 03:32:30 +0000 2022
>Originator:     Paul Goyette
>Release:        NetBSD 9.99.93
>Organization:
+--------------------+--------------------------+----------------------+
| Paul Goyette       | PGP Key fingerprint:     | E-mail addresses:    |
| (Retired)          | FA29 0E3B 35AF E8AE 6651 | paul@whooppee.com    |
| Software Developer | 0786 F758 55DE 53BA 7731 | pgoyette@netbsd.org  |
| & Network Engineer |                          | pgoyette99@gmail.com |
+--------------------+--------------------------+----------------------+
>Environment:


System: NetBSD speedy.whooppee.com 9.99.93 NetBSD 9.99.93 (SPEEDY 2022-01-08 03:00:28 UTC) #0: Sat Jan 8 13:04:35 UTC 2022 paul@speedy.whooppee.com:/build/netbsd-local/obj/amd64/sys/arch/amd64/compile/SPEEDY amd64
Architecture: x86_64
Machine: amd64
>Description:
Module ``cgd'' fails to load due to references to adiantum-related symbols
which are not included in the module nor in the kernel.

Module ``midi'' fails to load due to reference to ``midiseq_in''

Module sht3xtemp'' fails to load due to reference to ``iic_use_direct_match''

Module ``iscsi'' fails to load due to references to ``sscsiprint'' and
``scsi_bustype''

>How-To-Repeat:
Use modload(8)

>Fix:
Either
	a) include the appropriate sources in the module(s), or
	b) add module dependencies to those modules where the symbols are
	   defined, or
	c) include the appropriate sources in the kernel, whether or not
	   the module is being built-in or loadable.


>Release-Note:

>Audit-Trail:
From: Brad Spencer <brad@anduin.eldar.org>
To: gnats-bugs@netbsd.org
Cc: kern-bug-people@netbsd.org, gnats-admin@netbsd.org, netbsd-bugs@netbsd.org
Subject: Re: kern/56772: various modules cannot load - missing symbols
Date: Tue, 29 Mar 2022 19:30:09 -0400

 paul@whooppee.com writes:

 > Module sht3xtemp'' fails to load due to reference to ``iic_use_direct_match''

 This is just a guess, but if sht3xtemp needs this, so does the
 following:

 am2315.c
 dbcool.c
 hytp14.c
 scmdi2c.c
 sgp40.c
 sht4x.c
 si70xx.c
 spdmem_i2c.c

 All of those use iic_use_direct_match() and pretty much the same MODULE
 line and I can't see how they could have the symbol while sht3xtemp
 didn't.  I think all that would be needed is for "iic" to be included as
 a dependency in the MODULE lines.  I can't test this personally right
 now, however.  I know I successfully modload'ed sht3xtemp (and
 sht4xtemp, si70xxtemp and sgp40mox) while I was developing those drivers
 as that is my typical way to test things.  However, it is entirely
 possible that the iic module was already present in the kernel and/or
 already loaded otherwise and I didn't notice the dependency.

 There are other drivers in src/sys/dev/i2c that use
 iic_use_direct_match() but none of the rest appear to be configured to
 be a module.


 -- 
 Brad Spencer - brad@anduin.eldar.org - KC8VKS - http://anduin.eldar.org

From: Paul Goyette <paul@whooppee.com>
To: Brad Spencer <brad@anduin.eldar.org>
Cc: gnats-bugs@netbsd.org, kern-bug-people@netbsd.org, gnats-admin@netbsd.org, 
    netbsd-bugs@netbsd.org
Subject: Re: kern/56772: various modules cannot load - missing symbols
Date: Tue, 29 Mar 2022 16:34:54 -0700 (PDT)

 Yes, this probably needs to have a new dependency added for the i2c
 module.

 It would be great if you could handle the update, and verify that the
 other listed modules are already OK.

 Thanks!


 On Tue, 29 Mar 2022, Brad Spencer wrote:

 > paul@whooppee.com writes:
 >
 >> Module sht3xtemp'' fails to load due to reference to ``iic_use_direct_match''
 >
 > This is just a guess, but if sht3xtemp needs this, so does the
 > following:
 >
 > am2315.c
 > dbcool.c
 > hytp14.c
 > scmdi2c.c
 > sgp40.c
 > sht4x.c
 > si70xx.c
 > spdmem_i2c.c
 >
 > All of those use iic_use_direct_match() and pretty much the same MODULE
 > line and I can't see how they could have the symbol while sht3xtemp
 > didn't.  I think all that would be needed is for "iic" to be included as
 > a dependency in the MODULE lines.  I can't test this personally right
 > now, however.  I know I successfully modload'ed sht3xtemp (and
 > sht4xtemp, si70xxtemp and sgp40mox) while I was developing those drivers
 > as that is my typical way to test things.  However, it is entirely
 > possible that the iic module was already present in the kernel and/or
 > already loaded otherwise and I didn't notice the dependency.
 >
 > There are other drivers in src/sys/dev/i2c that use
 > iic_use_direct_match() but none of the rest appear to be configured to
 > be a module.
 >
 >
 > -- 
 > Brad Spencer - brad@anduin.eldar.org - KC8VKS - http://anduin.eldar.org
 >
 >
 > !DSPAM:624396b487601717019159!
 >
 >

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

From: Paul Goyette <paul@whooppee.com>
To: Brad Spencer <brad@anduin.eldar.org>
Cc: gnats-bugs@netbsd.org, kern-bug-people@netbsd.org, gnats-admin@netbsd.org, 
    netbsd-bugs@netbsd.org
Subject: Re: kern/56772: various modules cannot load - missing symbols
Date: Tue, 29 Mar 2022 16:58:10 -0700 (PDT)

 On Tue, 29 Mar 2022, Brad Spencer wrote:

 > Paul Goyette <paul@whooppee.com> writes:
 >
 >> Yes, this probably needs to have a new dependency added for the i2c
 >> module.
 >>
 >> It would be great if you could handle the update, and verify that the
 >> other listed modules are already OK.
 >>
 >> Thanks!
 >
 > I can do it, but it won't be for a week or two at least as there is too
 > much personal stuff going on right now.

 No worry - I will handle it.

From: Brad Spencer <brad@anduin.eldar.org>
To: Paul Goyette <paul@whooppee.com>
Cc: gnats-bugs@netbsd.org, kern-bug-people@netbsd.org, gnats-admin@netbsd.org,
        netbsd-bugs@netbsd.org
Subject: Re: kern/56772: various modules cannot load - missing symbols
Date: Tue, 29 Mar 2022 19:57:12 -0400

 Paul Goyette <paul@whooppee.com> writes:

 > Yes, this probably needs to have a new dependency added for the i2c
 > module.
 >
 > It would be great if you could handle the update, and verify that the
 > other listed modules are already OK.
 >
 > Thanks!

 I can do it, but it won't be for a week or two at least as there is too
 much personal stuff going on right now.



 -- 
 Brad Spencer - brad@anduin.eldar.org - KC8VKS - http://anduin.eldar.org

From: Paul Goyette <paul@whooppee.com>
To: gnats-bugs@netbsd.org
Cc: 
Subject: Re: kern/56772: various modules cannot load - missing symbols
Date: Wed, 30 Mar 2022 08:19:02 -0700 (PDT)

 > Module ``midi'' fails to load due to reference to ``midiseq_in''

 This is actually a circular dependency between midi and sequencer
 modules.  Until this dependency is resolved, these modules cannot
 be successfully loaded, and must be "built-in" to the kernel.

From: matthew green <mrg@eterna.com.au>
To: gnats-bugs@netbsd.org
Cc: kern-bug-people@netbsd.org, gnats-admin@netbsd.org,
    netbsd-bugs@netbsd.org, paul@whooppee.com
Subject: re: kern/56772: various modules cannot load - missing symbols
Date: Thu, 31 Mar 2022 10:19:06 +1100

 >  > Module ``midi'' fails to load due to reference to ``midiseq_in''
 >  
 >  This is actually a circular dependency between midi and sequencer
 >  modules.  Until this dependency is resolved, these modules cannot
 >  be successfully loaded, and must be "built-in" to the kernel.

 why are they separate?  probably best to just move the
 sequencer code into the midi module directly.  they are
 just two different ways to do midi.


 .mrg.

From: Paul Goyette <paul@whooppee.com>
To: gnats-bugs@netbsd.org
Cc: 
Subject: re: kern/56772: various modules cannot load - missing symbols
Date: Wed, 30 Mar 2022 16:24:25 -0700 (PDT)

 On Wed, 30 Mar 2022, matthew green wrote:

 > >  > Module ``midi'' fails to load due to reference to ``midiseq_in''
 > >
 > >  This is actually a circular dependency between midi and sequencer
 > >  modules.  Until this dependency is resolved, these modules cannot
 > >  be successfully loaded, and must be "built-in" to the kernel.
 >
 > why are they separate?  probably best to just move the
 > sequencer code into the midi module directly.  they are
 > just two different ways to do midi.

 That would simplify a lot!  I'll put this on my To-Do list.

From: Paul Goyette <paul@whooppee.com>
To: gnats-bugs@netbsd.org
Cc: 
Subject: re: kern/56772: various modules cannot load - missing symbols
Date: Thu, 31 Mar 2022 12:43:30 -0700 (PDT)

 On Wed, 30 Mar 2022, matthew green wrote:

 > >  > Module ``midi'' fails to load due to reference to ``midiseq_in''
 >>>
 > >  This is actually a circular dependency between midi and sequencer
 > >  modules.  Until this dependency is resolved, these modules cannot
 > >  be successfully loaded, and must be "built-in" to the kernel.

 > why are they separate?  probably best to just move the
 > sequencer code into the midi module directly.  they are
 > just two different ways to do midi.

 OK, seems that config(1) won't cooperate in merging two device driver
 modules.  The ioconf command seems to process only one device, even
 if multiple devices are specified.  This prevents me from using

  	pseudo-root midibus*
  	midi* at midibus?

  	pseudo-root midi*
  	pseudo-device sequencer

 It creates the ioconf.[ch] files, but ioconf.c contains zero data
 structures for sequencer.


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

State-Changed-From-To: open->suspended
State-Changed-By: pgoyette@NetBSD.org
State-Changed-When: Thu, 14 Apr 2022 17:03:56 +0000
State-Changed-Why:
midi/sequencer issue depends on changes to config(1), which are not likely
to occur in the near-term.  cgd issue depends on initialization of aes,
which cannot happen until driver modules have all been loaded;  this also
is unlikely to be resolved in the near-term.

Remaining issues (with i2c drivers and iscsi) have been resolved.


State-Changed-From-To: suspended->open
State-Changed-By: pgoyette@NetBSD.org
State-Changed-When: Fri, 03 Jun 2022 20:22:50 +0000
State-Changed-Why:
The midi/sequencer issue can be fixed after all, without any changes
to config(1).  Fix is being worked.

Note that cgd issue will remain open.


State-Changed-From-To: open->suspended
State-Changed-By: pgoyette@NetBSD.org
State-Changed-When: Sat, 04 Jun 2022 03:32:30 +0000
State-Changed-Why:
midi/sequencer issue resolved, but the cgd issue remains.


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.46 2020/01/03 16:35:01 leot Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2020 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.