Date: Thu, 27 Apr 2006 23:21:09 -0600 From: Scott Long <scottl@samsco.org> To: "Eugene M. Kim" <gene@nttmcl.com> Cc: scottl@freebsd.org, John-Mark Gurney <gurney_j@resnet.uoregon.edu>, freebsd-stable@freebsd.org Subject: Re: link_elf: symbol cam_simq_alloc undefined Message-ID: <4451A645.6050807@samsco.org> In-Reply-To: <4451A140.7090100@nttmcl.com> References: <44518421.60408@nttmcl.com> <20060428032115.GP728@funkthat.com> <4451A140.7090100@nttmcl.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi, I broke the amr_cam interface several months ago when I locked the driver. I've been neglecting it ever since due to lack of time, and due to the amr_cam interface not being terribly useful. If you do in fact have a use for it, let me know and I'll add it to my TODO list. Scott Eugene M. Kim wrote: > Thanks, that fixed it! : ) > > scottl: Could you commit (and MFC) the fix? It's as simple as adding a > MODULE_DEPEND line: > > MODULE_DEPEND(amr, cam, 1, 1, 1); > > after the DRIVER_MODULE line in src/sys/dev/amr/amr_pci.c > > I'm not sure about amr_linux though; it seems that there's no CAM > reference in amr_linux.c, but that amr_linux is just a compatibility > layer on top of amr. In that light, perhaps: > > MODULE_DEPEND(amr_linux, amr, 1, 1, 1); > > is in order. Also, the existing MODULE_DEPEND line probably should be > changed to: > > MODULE_DEPEND(amr_linux, linux, 1, 1, 1); > > Cheers, > Eugene > > John-Mark Gurney wrote: > >>Eugene M. Kim wrote this message on Thu, Apr 27, 2006 at 19:55 -0700: >> >>>I'm trying to upgrade from 5-stable to 6-stable; after rebooting to the >>>new kernel, the amr(4) module (amr.ko) refuses to load with this message: >>> >>> link_elf: symbol cam_simq_alloc undefined >>> >>>However, a quick nm(1) on /boot/kernel/cam.ko does show: >>> >>> ... >>> 0000f0ac T cam_sim_set_path >>> 0000efc4 T cam_simq_alloc >>> 0000efd4 T cam_simq_free >>> ... >>> >>>and cam.ko is already loaded before amr.ko. >>> >>>What am I missing here? *scratches head 'o 'a* >> >>amr is missing a: >>MODULE_DEPEND(amr, cam, 1, 1, 1); >> >>which means the module doesn't get cam's symbols... might as well add >>that line to amr_linux.c next to MODULE_DEPEND already there... >> > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4451A645.6050807>