> All code interacting with FreeBSD data structures resides in the open > part of the kernel module; a pointer to the newly allocated object is > passed to rm_alloc_agp_pages as an opaque pointer, it is required later > when the NVIDIA AGP GART driver needs to obtain the physical addresses > of the individual pages in the allocation. This happens with calls to > nv_agp_translate_address.
I don't see rm_alloc_agp_pages anywhere in the open part of the source code. I just looked again... I see the function prototype in nv.h, but that's it. screwdriver:~/dl_temp/NVIDIA_FreeBSD-1.0-3203:> grep -R rm_alloc_agp_pages * Binary file obj/Module-nvkernel matches src/nvidia_subr.c: if (rm_alloc_agp_pages(nv, address, count, class, private, src/nvidia_subr.c: if (rm_alloc_agp_pages(nv, address, count, class, private, src/nv.h:RM_STATUS rm_alloc_agp_pages (nv_state_t *, VOID **, U032, U032, VOID **, U032 *); so from what I can tell, it IS in the proprietary part of the driver. > It'd be interesting to learn if the code path you suspect really is > the one taken in the case of this failure. Is this problem easily > reproducible on your machine? If so, how and with what hard/software > combination? > Given the above, I'm inclined to think my original trace through the code is correct, although I didn't look to closely. Ken To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-hackers" in the body of the message