Return to BSD News archive
Path: euryale.cc.adfa.oz.au!newshost.carno.net.au!harbinger.cc.monash.edu.au!nntp.coast.net!howland.erols.net!news.mathworks.com!fu-berlin.de!irz401!orion.sax.de!uriah.heep!news From: j@uriah.heep.sax.de (J Wunsch) Newsgroups: comp.unix.bsd.freebsd.misc Subject: Re: SYS_utrace not found in libc.so Date: 19 Nov 1996 01:55:41 GMT Organization: Private BSD site, Dresden Lines: 74 Message-ID: <56r42t$3sr@uriah.heep.sax.de> References: <567lu6$cv8@rosebud.sdsc.edu> <56822v$24b@klemm.gtn.com> <56akl6$lbr@rosebud.sdsc.edu> Reply-To: joerg_wunsch@uriah.heep.sax.de (Joerg Wunsch) NNTP-Posting-Host: localhost.heep.sax.de Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Newsreader: knews 0.9.6 X-Phone: +49-351-2012 669 X-PGP-Fingerprint: DC 47 E6 E4 FF A6 E9 8F 93 21 E0 7D F9 12 D6 4E steube@groucho.sdsc.edu (Ken Steube) wrote: > >> sys/Makefile.inc references a file utrace.o, but there's no corresponding > >> C file. Right. If you look further, you'll notice that it's in the ASM section of the Makefile.inc. The following magic is apparently supposed to create all those objects: ${ASM}: ${.CURDIR}/${MACHINE}/SYS.h /usr/include/sys/syscall.h @${ECHO} creating ${.PREFIX}.o @printf '#include "SYS.h"\nRSYSCALL(${.PREFIX})\n' | \ ${CPP} ${CFLAGS:M-[ID]*} ${AINC} | ${AS} -o ${.PREFIX}.o @${LD} -O ${.PREFIX}.o -x -r ${.PREFIX}.o ...so it must be found here: j@uriah 360% fgrep utrace /usr/include/sys/syscall.h #define SYS_utrace 205 > There were several things I had to fix during 'make world'. All were That's normal. `make world' tries to make the transition easy, but that's not always possible. > pretty easy except this one involving the missing utrace.c. There is > no place where utrace and SYS_utrace are referenced in /usr/src, so > I don't even know why these are needed. It's a system call. Unfortunately, without any documentation. It looks as if it were possible to include user data into your own kernel trace file that can later be displayed with kdump(1). > Another thing I have to ask about: the fixit.fpl floppy supplied with > 2.2-960801-snap doesn't have a /dev/sd0e, which is the device I need > to fix my /usr. Since the floppy also lacks MAKEDEV, I am stuck. One > way would be to acquire another floppy drive and put MAKEDEV on a > floppy and mount it. Is there an easier way? Yes. mknod it yourself. ;-) If you look at j@uriah 374% ls -l /dev/sd0[abc] brw-r----- 1 root operator 4, 0 Jun 10 1995 /dev/sd0a brw-r----- 1 root operator 4, 1 Aug 13 1995 /dev/sd0b brw-r----- 1 root operator 4, 2 Jun 10 1995 /dev/sd0c ...it should be obvious that you need mknod /dev/sd0e b 4 4 > I'm surprised the fixit floppy doesn't have this device, since without > it one can't repair the default /usr partition set up by sysinstall. sysinstall normally uses /dev/sd0s1e or something like this. Anyway, there are too many different combinations for the various systems around to fit onto a single fixit floppy. DEVFS is the proposed way out, but it still requires some polishing. For the time being, you must fiddle the missing dev nodes yourself. (But i hope you were aware that the fixit's dev nodes are under the rather silly directory /mnt2/dev, right?) The fixit in 2.2R will be a little better (among other things, it has a working MAKEDEV script), but you might still be required to remove some unnecessary nodes before going on. Remember that you could (and should) personalize your fixit floppy in advance to better fit your particular configuration. -- cheers, J"org joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-)