From owner-freebsd-alpha Wed Dec 4 9:25:40 2002 Delivered-To: freebsd-alpha@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3D10737B401 for ; Wed, 4 Dec 2002 09:25:39 -0800 (PST) Received: from mail.speakeasy.net (mail16.speakeasy.net [216.254.0.216]) by mx1.FreeBSD.org (Postfix) with ESMTP id 73C3543E4A for ; Wed, 4 Dec 2002 09:25:38 -0800 (PST) (envelope-from jhb@FreeBSD.org) Received: (qmail 1985 invoked from network); 4 Dec 2002 17:25:42 -0000 Received: from unknown (HELO server.baldwin.cx) ([216.27.160.63]) (envelope-sender ) by mail16.speakeasy.net (qmail-ldap-1.03) with DES-CBC3-SHA encrypted SMTP for ; 4 Dec 2002 17:25:42 -0000 Received: from laptop.baldwin.cx (gw1.twc.weather.com [216.133.140.1]) by server.baldwin.cx (8.12.6/8.12.6) with ESMTP id gB4HPauH041402; Wed, 4 Dec 2002 12:25:36 -0500 (EST) (envelope-from jhb@FreeBSD.org) Message-ID: X-Mailer: XFMail 1.5.2 on FreeBSD X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit MIME-Version: 1.0 In-Reply-To: <15854.1646.533496.929062@grasshopper.cs.duke.edu> Date: Wed, 04 Dec 2002 12:25:43 -0500 (EST) From: John Baldwin To: Andrew Gallatin Subject: Re: link_elf: symbol osf1_wait4 undefined Cc: alpha@FreeBSD.ORG Cc: alpha@FreeBSD.ORG, Yoriaki FUJIMORI , alex Sender: owner-freebsd-alpha@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org On 04-Dec-2002 Andrew Gallatin wrote: > > alex writes: > > ahhhh. That solved the problem. > > What is the technical reason for having to load the osf1 module first ? > > Linux/alpha uses the same ABI as OSF/1 for a number of functions, > since they bootstrapped themselves from OSF/1 on alpha and never > bothered to go fully native. This ABI is already provided by our > osf1.ko module. > > The problem is that the osf1.ko module is SUPPOSED to be automatically > loaded as a dependancy of the linux module. I've asked the person who > wrote the module dependancy code for help on this, but he's moved on > to other things and has never answered. If somebody wants to look > into this, that would be great. I've never been able to figure it > out. The problem is here: > grep MODULE * linux_sysvec.c:MODULE_VERSION(linux, 1); linux_sysvec.c:MODULE_DEPEND(linux, osf1, 1, 1, 1); linux_sysvec.c:MODULE_DEPEND(linux, sysvmsg, 1, 1, 1); linux_sysvec.c:MODULE_DEPEND(linux, sysvsem, 1, 1, 1); linux_sysvec.c:MODULE_DEPEND(linux, sysvshm, 1, 1, 1); linux_sysvec.c:DECLARE_MODULE(linuxelf, linux_elf_mod, SI_SUB_EXEC, SI_ORDER_ANY); All the dependencies are recorded for the non-existent linux module. In actuality, on Alpha there is a linuxelf module, and on i386 there are linuxelf and linuxaout modules. I'm trying to think about the best way to go about fixing this. Well, I have an untested patch at http://www.FreeBSD.org/~jhb/patches/linux.patch that might fix this. FWIW, the dependency of linux compat on the SYSV modules was broken on both i386 and alpha for the same reason. Use 'patch -p6' to apply this patch btw. -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-alpha" in the body of the message