View | Details | Raw Unified | Return to bug 242620 | Differences between
and this patch

Collapse All | Expand All

(-)sysutils/lsof/files/patch-dialects_freebsd_dproc.c (+27 lines)
Line 0 Link Here
1
--- dialects/freebsd/dproc.c.orig	2019-05-08 09:32:25.000000000 +0200
2
+++ dialects/freebsd/dproc.c	2019-12-17 14:59:19.905502000 +0100
3
@@ -655,7 +655,15 @@ kread(addr, buf, len)
4
 	return((br == len) ? 0 : 1);
5
 }
6
 
7
+static int
8
+procstat_vm_map_reader(void *token, vm_map_entry_t addr, vm_map_entry_t dest)
9
+{
10
+	kvm_t *kd;
11
 
12
+	kd = (kvm_t *)token;
13
+	return (kvm_read(kd, (unsigned long)addr, dest, sizeof(*dest)));
14
+}
15
+
16
 /*
17
  * process_text() - process text information
18
  */
19
@@ -690,7 +698,7 @@ process_text(vm)
20
 	    if (i == 0)
21
 		e = &vmsp.vm_map.header;
22
 	    else {
23
-		if (!(ka = (KA_T)e->next))
24
+		if (!(ka = (KA_T)vm_map_entry_read_succ(Kd, e, procstat_vm_map_reader)))
25
 		    return;
26
 		e = &vmme;
27
 		if (kread(ka, (char *)e, sizeof(vmme)))

Return to bug 242620