Lines 1-6
Link Here
|
1 |
--- sysdeps/freebsd/procmap.c.orig 2017-08-07 22:43:41 UTC |
1 |
--- sysdeps/freebsd/procmap.c.orig 2017-08-07 22:43:41 UTC |
2 |
+++ sysdeps/freebsd/procmap.c |
2 |
+++ sysdeps/freebsd/procmap.c |
3 |
@@ -52,6 +52,8 @@ |
3 |
@@ -48,9 +48,12 @@ |
|
|
4 |
#undef _KERNEL |
5 |
#endif |
6 |
#define _KERNEL |
7 |
+#include <stdbool.h> |
4 |
#include <sys/mount.h> |
8 |
#include <sys/mount.h> |
5 |
#include <ufs/ufs/quota.h> |
9 |
#include <ufs/ufs/quota.h> |
6 |
#include <ufs/ufs/inode.h> |
10 |
#include <ufs/ufs/inode.h> |
Lines 9-15
Link Here
|
9 |
#include <fs/devfs/devfs.h> |
13 |
#include <fs/devfs/devfs.h> |
10 |
#if (__FreeBSD_version >= 600006) || defined(__FreeBSD_kernel__) |
14 |
#if (__FreeBSD_version >= 600006) || defined(__FreeBSD_kernel__) |
11 |
#include <fs/devfs/devfs_int.h> |
15 |
#include <fs/devfs/devfs_int.h> |
12 |
@@ -95,12 +97,14 @@ _glibtop_sysdeps_freebsd_dev_inode (glibtop *server, s |
16 |
@@ -95,12 +98,14 @@ _glibtop_sysdeps_freebsd_dev_inode (glibtop *server, s |
13 |
struct cdev_priv priv; |
17 |
struct cdev_priv priv; |
14 |
#if __FreeBSD_version < 800039 |
18 |
#if __FreeBSD_version < 800039 |
15 |
struct cdev si; |
19 |
struct cdev si; |
Lines 25-31
Link Here
|
25 |
(char *) &tagptr, sizeof (tagptr)) != sizeof (tagptr) || |
29 |
(char *) &tagptr, sizeof (tagptr)) != sizeof (tagptr) || |
26 |
kvm_read (server->machine->kd, (gulong) tagptr, |
30 |
kvm_read (server->machine->kd, (gulong) tagptr, |
27 |
(char *) tagstr, sizeof (tagstr)) != sizeof (tagstr)) |
31 |
(char *) tagstr, sizeof (tagstr)) != sizeof (tagstr)) |
28 |
@@ -231,6 +235,32 @@ _glibtop_init_proc_map_p (glibtop *server) |
32 |
@@ -231,6 +236,32 @@ _glibtop_init_proc_map_p (glibtop *server) |
29 |
server->sysdeps.proc_map = _glibtop_sysdeps_proc_map; |
33 |
server->sysdeps.proc_map = _glibtop_sysdeps_proc_map; |
30 |
} |
34 |
} |
31 |
|
35 |
|
Lines 58-64
Link Here
|
58 |
/* Provides detailed information about a process. */ |
62 |
/* Provides detailed information about a process. */ |
59 |
|
63 |
|
60 |
glibtop_map_entry * |
64 |
glibtop_map_entry * |
61 |
@@ -238,13 +268,12 @@ glibtop_get_proc_map_p (glibtop *server, glibtop_proc_ |
65 |
@@ -238,13 +269,12 @@ glibtop_get_proc_map_p (glibtop *server, glibtop_proc_ |
62 |
pid_t pid) |
66 |
pid_t pid) |
63 |
{ |
67 |
{ |
64 |
struct kinfo_proc *pinfo; |
68 |
struct kinfo_proc *pinfo; |
Lines 74-80
Link Here
|
74 |
|
78 |
|
75 |
memset (buf, 0, sizeof (glibtop_proc_map)); |
79 |
memset (buf, 0, sizeof (glibtop_proc_map)); |
76 |
|
80 |
|
77 |
@@ -273,16 +302,6 @@ glibtop_get_proc_map_p (glibtop *server, glibtop_proc_ |
81 |
@@ -273,16 +303,6 @@ glibtop_get_proc_map_p (glibtop *server, glibtop_proc_ |
78 |
return NULL; |
82 |
return NULL; |
79 |
} |
83 |
} |
80 |
|
84 |
|
Lines 91-97
Link Here
|
91 |
/* Walk through the `vm_map_entry' list ... */ |
95 |
/* Walk through the `vm_map_entry' list ... */ |
92 |
|
96 |
|
93 |
/* I tested this a few times with `mmap'; as soon as you write |
97 |
/* I tested this a few times with `mmap'; as soon as you write |
94 |
@@ -292,21 +311,17 @@ glibtop_get_proc_map_p (glibtop *server, glibtop_proc_ |
98 |
@@ -292,21 +312,17 @@ glibtop_get_proc_map_p (glibtop *server, glibtop_proc_ |
95 |
maps = g_array_sized_new(FALSE, FALSE, sizeof(glibtop_map_entry), |
99 |
maps = g_array_sized_new(FALSE, FALSE, sizeof(glibtop_map_entry), |
96 |
vmspace.vm_map.nentries); |
100 |
vmspace.vm_map.nentries); |
97 |
|
101 |
|
Lines 120-126
Link Here
|
120 |
|
124 |
|
121 |
if (entry.eflags & (MAP_ENTRY_IS_SUB_MAP)) |
125 |
if (entry.eflags & (MAP_ENTRY_IS_SUB_MAP)) |
122 |
continue; |
126 |
continue; |
123 |
@@ -377,7 +392,7 @@ glibtop_get_proc_map_p (glibtop *server, glibtop_proc_ |
127 |
@@ -377,7 +393,7 @@ glibtop_get_proc_map_p (glibtop *server, glibtop_proc_ |
124 |
if (entry.protection & VM_PROT_EXECUTE) |
128 |
if (entry.protection & VM_PROT_EXECUTE) |
125 |
mentry->perm |= GLIBTOP_MAP_PERM_EXECUTE; |
129 |
mentry->perm |= GLIBTOP_MAP_PERM_EXECUTE; |
126 |
|
130 |
|