Index: uspace/app/bdsh/cmds/modules/mount/mount.c
===================================================================
--- uspace/app/bdsh/cmds/modules/mount/mount.c	(revision 1737bfbb56d25e2fecc4883511f0989a03a3ce26)
+++ uspace/app/bdsh/cmds/modules/mount/mount.c	(revision c08fb0409a41ab16f906db5ceb53c79bd182e3d9)
@@ -30,4 +30,5 @@
 #include <stdlib.h>
 #include <vfs/vfs.h>
+#include <adt/list.h>
 #include <errno.h>
 #include <getopt.h>
@@ -60,4 +61,35 @@
 	}
 	return;
+}
+
+static void print_mtab_list(void)
+{
+	LIST_INITIALIZE(mtab_list);
+	get_mtab_list(&mtab_list);
+
+	mtab_list_ent_t *old_ent = NULL;
+
+	list_foreach(mtab_list, cur) {
+		mtab_list_ent_t *ent = list_get_instance(cur, mtab_list_ent_t,
+		    link);
+
+		mtab_ent_t *mtab_ent = &ent->mtab_ent;
+
+		if (old_ent)
+			free(old_ent);
+
+		old_ent = ent;
+
+		printf("%s on %s ", mtab_ent->fs_name, mtab_ent->mp);
+
+		if (str_size(mtab_ent->opts) > 0)
+			printf("opts=%s ", mtab_ent->opts);
+
+		printf("(instance=%d, flags=%d, fs_handle=%d)\n",
+		    mtab_ent->instance, mtab_ent->flags, mtab_ent->fs_handle);
+	}
+
+	if (old_ent)
+		free(old_ent);
 }
 
@@ -94,8 +126,12 @@
 		t_argv = &argv[0];
 
-	if ((argc < 3) || (argc > 5)) {
+	if ((argc == 2) || (argc > 5)) {
 		printf("%s: invalid number of arguments. Try `mount --help'\n",
 		    cmdname);
 		return CMD_FAILURE;
+	}
+	if (argc == 1) {
+		print_mtab_list();
+		return CMD_SUCCESS;
 	}
 	if (argc > 3)
