Index: uspace/lib/c/generic/stats.c
===================================================================
--- uspace/lib/c/generic/stats.c	(revision 2afb650952fa50390d07e579422af9f1607b9ad6)
+++ uspace/lib/c/generic/stats.c	(revision c0f13d2675d8c8db426acccaba56a4377f515dc3)
@@ -184,4 +184,48 @@
 }
 
+/** Get exception statistics.
+ *
+ * @param count Number of records returned.
+ *
+ * @return Array of stats_exc_t structures.
+ *         If non-NULL then it should be eventually freed
+ *         by free().
+ *
+ */
+stats_exc_t *stats_get_exceptions(size_t *count)
+{
+	size_t size = 0;
+	stats_exc_t *stats_exceptions =
+	    (stats_exc_t *) sysinfo_get_data("system.exceptions", &size);
+	
+	assert((size % sizeof(stats_exc_t)) == 0);
+	
+	*count = size / sizeof(stats_exc_t);
+	return stats_exceptions;
+}
+
+/** Get single exception statistics
+ *
+ * @param excn Exception number we are interested in.
+ *
+ * @return Pointer to the stats_exc_t structure.
+ *         If non-NULL then it should be eventually freed
+ *         by free().
+ *
+ */
+stats_exc_t *stats_get_exception(unsigned int excn)
+{
+	char name[SYSINFO_STATS_MAX_PATH];
+	snprintf(name, SYSINFO_STATS_MAX_PATH, "system.exceptionss.%u", excn);
+	
+	size_t size = 0;
+	stats_exc_t *stats_exception =
+	    (stats_exc_t *) sysinfo_get_data(name, &size);
+	
+	assert((size == sizeof(stats_exc_t)) || (size == 0));
+	
+	return stats_exception;
+}
+
 /** Get system load
  *
