summaryrefslogtreecommitdiff
path: root/lib/intel_drm.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/intel_drm.c')
-rw-r--r--lib/intel_drm.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/lib/intel_drm.c b/lib/intel_drm.c
index f8eca7d8..9e25448a 100644
--- a/lib/intel_drm.c
+++ b/lib/intel_drm.c
@@ -106,3 +106,24 @@ intel_get_total_ram_mb(void)
return retval / (1024*1024);
}
+
+uint64_t
+intel_get_total_swap_mb(void)
+{
+ uint64_t retval;
+
+#ifdef HAVE_STRUCT_SYSINFO_TOTALRAM /* Linux */
+ struct sysinfo sysinf;
+ int ret;
+
+ ret = sysinfo(&sysinf);
+ assert(ret == 0);
+
+ retval = sysinf.totalswap;
+ retval *= sysinf.mem_unit;
+#else
+#error "Unknown how to get swap size for this OS"
+#endif
+
+ return retval / (1024*1024);
+}