aboutsummaryrefslogtreecommitdiff
path: root/sys/compat
diff options
context:
space:
mode:
authorBruce Evans <bde@FreeBSD.org>2000-08-12 21:08:42 +0000
committerBruce Evans <bde@FreeBSD.org>2000-08-12 21:08:42 +0000
commitc6e4d7c5bad68558e05ba776fac741e713a558d0 (patch)
treeb725cee1330043e275d01951075c28c61e6e1dbb /sys/compat
parentb10fc2ddef88c0eec50b0147aec00558ed0d5252 (diff)
downloadsrc-c6e4d7c5bad68558e05ba776fac741e713a558d0.tar.gz
src-c6e4d7c5bad68558e05ba776fac741e713a558d0.zip
Fixed null pointer panic for accessing "meminfo" when there is no swap.
Notes
Notes: svn path=/head/; revision=64560
Diffstat (limited to 'sys/compat')
-rw-r--r--sys/compat/linprocfs/linprocfs.c9
-rw-r--r--sys/compat/linprocfs/linprocfs_misc.c9
2 files changed, 14 insertions, 4 deletions
diff --git a/sys/compat/linprocfs/linprocfs.c b/sys/compat/linprocfs/linprocfs.c
index 4babe746d3a4..5d780830282a 100644
--- a/sys/compat/linprocfs/linprocfs.c
+++ b/sys/compat/linprocfs/linprocfs.c
@@ -99,8 +99,13 @@ linprocfs_domeminfo(curp, p, pfs, uio)
*/
memused = cnt.v_wire_count * PAGE_SIZE;
memfree = memtotal - memused;
- swaptotal = swapblist->bl_blocks * 1024; /* XXX why 1024? */
- swapfree = swapblist->bl_root->u.bmu_avail * PAGE_SIZE;
+ if (swapblist == NULL) {
+ swaptotal = 0;
+ swapfree = 0;
+ } else {
+ swaptotal = swapblist->bl_blocks * 1024; /* XXX why 1024? */
+ swapfree = swapblist->bl_root->u.bmu_avail * PAGE_SIZE;
+ }
swapused = swaptotal - swapfree;
memshared = 0;
for (object = TAILQ_FIRST(&vm_object_list); object != NULL;
diff --git a/sys/compat/linprocfs/linprocfs_misc.c b/sys/compat/linprocfs/linprocfs_misc.c
index 4babe746d3a4..5d780830282a 100644
--- a/sys/compat/linprocfs/linprocfs_misc.c
+++ b/sys/compat/linprocfs/linprocfs_misc.c
@@ -99,8 +99,13 @@ linprocfs_domeminfo(curp, p, pfs, uio)
*/
memused = cnt.v_wire_count * PAGE_SIZE;
memfree = memtotal - memused;
- swaptotal = swapblist->bl_blocks * 1024; /* XXX why 1024? */
- swapfree = swapblist->bl_root->u.bmu_avail * PAGE_SIZE;
+ if (swapblist == NULL) {
+ swaptotal = 0;
+ swapfree = 0;
+ } else {
+ swaptotal = swapblist->bl_blocks * 1024; /* XXX why 1024? */
+ swapfree = swapblist->bl_root->u.bmu_avail * PAGE_SIZE;
+ }
swapused = swaptotal - swapfree;
memshared = 0;
for (object = TAILQ_FIRST(&vm_object_list); object != NULL;