aboutsummaryrefslogtreecommitdiff
path: root/sys/kern/vfs_vnops.c
diff options
context:
space:
mode:
authorFabien Thomas <fabient@FreeBSD.org>2015-10-08 09:54:33 +0000
committerFabien Thomas <fabient@FreeBSD.org>2015-10-08 09:54:33 +0000
commit78e79434d2df9f384094fb18fddf3d1073ebf6e1 (patch)
treeb438aa2b17b4b35ee361d7e11bad4909aabed379 /sys/kern/vfs_vnops.c
parent66ca84a7ba2411b82e948f7db2b932679d7d9a44 (diff)
downloadsrc-78e79434d2df9f384094fb18fddf3d1073ebf6e1.tar.gz
src-78e79434d2df9f384094fb18fddf3d1073ebf6e1.zip
Fix r283998 that broke mapin events for hwpmc.
Reviewed by: jhb Sponsored by: Stormshield
Notes
Notes: svn path=/head/; revision=289024
Diffstat (limited to 'sys/kern/vfs_vnops.c')
-rw-r--r--sys/kern/vfs_vnops.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c
index f07df31bbb2f..6d07e7f9d45c 100644
--- a/sys/kern/vfs_vnops.c
+++ b/sys/kern/vfs_vnops.c
@@ -43,6 +43,8 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
+#include "opt_hwpmc_hooks.h"
+
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/disk.h>
@@ -84,6 +86,10 @@ __FBSDID("$FreeBSD$");
#include <vm/vm_page.h>
#include <vm/vnode_pager.h>
+#ifdef HWPMC_HOOKS
+#include <sys/pmckern.h>
+#endif
+
static fo_rdwr_t vn_read;
static fo_rdwr_t vn_write;
static fo_rdwr_t vn_io_fault;
@@ -2461,7 +2467,7 @@ vn_mmap(struct file *fp, vm_map_t map, vm_offset_t *addr, vm_size_t size,
/* Inform hwpmc(4) if an executable is being mapped. */
if (error == 0 && (prot & VM_PROT_EXECUTE) != 0) {
pkm.pm_file = vp;
- pkm.pm_address = (uintptr_t) addr;
+ pkm.pm_address = (uintptr_t) *addr;
PMC_CALL_HOOK(td, PMC_FN_MMAP, (void *) &pkm);
}
#endif