Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Apr 2006 21:59:44 -0700
From:      "Eugene M. Kim" <gene@nttmcl.com>
To:        John-Mark Gurney <gurney_j@resnet.uoregon.edu>
Cc:        scottl@freebsd.org, freebsd-stable@freebsd.org
Subject:   Re: link_elf: symbol cam_simq_alloc undefined
Message-ID:  <4451A140.7090100@nttmcl.com>
In-Reply-To: <20060428032115.GP728@funkthat.com>
References:  <44518421.60408@nttmcl.com> <20060428032115.GP728@funkthat.com>

next in thread | previous in thread | raw e-mail | index | archive | help
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?4451A140.7090100>