Skip site navigation (1)Skip section navigation (2)
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>