From: Derrick Brashear Date: Tue, 9 Mar 2010 16:02:13 +0000 (-0500) Subject: darwin report kext load address X-Git-Tag: openafs-devel-1_5_73~79 X-Git-Url: http://git.openafs.org/?p=openafs.git;a=commitdiff_plain;h=804a29034ffcabaf0009b3f41d4acd4f9ba0b056 darwin report kext load address also report unload. in event of panic after module is unloaded (which *shouldn't* happen but i have evidence it might) you can retcon where the module was Change-Id: I07f89d2393605c4b7cac853cbe09b5a4a52ea4cd Reviewed-on: http://gerrit.openafs.org/1544 Reviewed-by: Derrick Brashear Tested-by: Derrick Brashear --- diff --git a/src/afs/DARWIN/osi_module.c b/src/afs/DARWIN/osi_module.c index 020a89e..3ed61f3 100644 --- a/src/afs/DARWIN/osi_module.c +++ b/src/afs/DARWIN/osi_module.c @@ -36,7 +36,7 @@ extern int ioctl(); extern int setgroups(); extern int maxvfsconf; kern_return_t -afs_modload(struct kmod_info *ki, void *data) +afs_modload(struct kmod_info *kmod_info, void *data) { osi_Init(); #ifdef AFS_DARWIN80_ENV @@ -95,11 +95,15 @@ afs_modload(struct kmod_info *ki, void *data) sysent[AFS_SYSCALL].sy_funnel = KERNEL_FUNNEL; #endif #endif + printf("%s kext loaded; %u pages at 0x%lx (load tag %u).\n", + kmod_info->name, (unsigned)kmod_info->size / PAGE_SIZE, + (unsigned long)kmod_info->address, (unsigned)kmod_info->id); + return KERN_SUCCESS; } kern_return_t -afs_modunload(struct kmod_info * ki, void *data) +afs_modunload(struct kmod_info * kmod_info, void *data) { if (afs_globalVFS) return KERN_FAILURE; @@ -121,6 +125,8 @@ afs_modunload(struct kmod_info * ki, void *data) MUTEX_FINISH(); lck_mtx_free(afs_global_lock, openafs_lck_grp); #endif + printf("%s kext unloaded; (load tag %u).\n", + kmod_info->name, (unsigned)kmod_info->id); return KERN_SUCCESS; }