Path: utzoo!news-server.csri.toronto.edu!cs.utexas.edu!uwm.edu!zaphod.mps.ohio-state.edu!maverick.ksu.ksu.edu!unmvax!nmt.edu!nraoaoc From: rmilner@zia.aoc.nrao.edu (Ruth Milner) Newsgroups: comp.unix.aix Subject: Re: vn_ routines Message-ID: <1991Mar14.013705.18876@nmt.edu> Date: 14 Mar 91 01:37:05 GMT References: <1991Mar8.002636.4940@nmt.edu> <5849@awdprime.UUCP> Reply-To: rmilner@zia.aoc.nrao.edu (Ruth Milner) Organization: National Radio Astronomy Observatory, Socorro NM Lines: 44 In article <5849@awdprime.UUCP> rudy@chukran.austin.ibm.com () writes: >In article <1991Mar8.002636.4940@nmt.edu>, rmilner@zia.aoc.nrao.edu >(Ruth Milner) writes: >> >> Does anyone know where all the vn_ routines are kept? Only two of them are >> described as "kernel services", the rest are all "subroutines". But ld can't >> find them in the standard libraries, and despite doing "ar t" on all the .a >> files in /lib and /usr/lib, none of them show up anywhere. >These routines are in the kernel. To resolve them at link time, you need to >add the following option to your link command. > >-bI:/lib/kernex.exp > Uh, no, not quite. We already found that file, and only the two which are described as "kernel services" in the documentation (vn_get and vn_free) are in /lib/kernex.exp. Even when that kernel services file is imported into ld, numerous symbols remain undefined, e.g. vn_create, vn_open, vn_close, etc. etc. There's about a dozen or so of them described in the man pages which are completely unknown. These are the ones listed as "subroutines". In addition, if you read the documentation (even hardcopy stuff on writing kernel code), it specifically says "the six kernel services" related to virtual filesystem handling - and then proceeds to list the six of which, again, only two are vn_ routines, the same two. None of the rest are included in any other list of kernel services, even the purely alphabetical one. So there is either considerable misinformation, or considerable missing information. Maybe they are kernel services after all, but if so, nothing in either the system or the documentation knows that. In which case, how do we get hold of them? And why are they specifically called "subroutines" as distinct from "kernel services"? I did get a note via my local IBM software expert to the effect that there is a missing include file, /usr/include/sys/vnops.h . Is it possible that the above routines are actually macros which would be defined in there? Thanks again. -- Ruth Milner Systems Manager NRAO/VLA Socorro NM rmilner@zia.aoc.nrao.edu