Index: contrib/arch/uspace/srv/vfs/vfs.bp
===================================================================
--- contrib/arch/uspace/srv/vfs/vfs.bp	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ contrib/arch/uspace/srv/vfs/vfs.bp	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -129,9 +129,9 @@
 	?fstat {
 		tentative {
-			?ipc_m_data_read /* struct stat */ {
+			?ipc_m_data_read /* vfs_stat_t */ {
 				alternative (fs; tmpfs; fat; devfs) {
 					[fnc.vfs_grab_phone] ;
 					!fs.stat {
-						!fs.ipc_m_data_read /* forward struct stat */
+						!fs.ipc_m_data_read /* forward vfs_stat_t */
 					} ;
 					[fnc.vfs_release_phone]
@@ -144,10 +144,10 @@
 		?ipc_m_data_write /* path */ ;
 		tentative {
-			?ipc_m_data_read /* struct stat */ {
+			?ipc_m_data_read /* vfs_stat_t */ {
 				alternative (fs; tmpfs; fat; devfs) {
 					[fnc.vfs_lookup_internal] ;
 					tentative {
 						!fs.stat {
-							!fs.ipc_m_data_read /* forward struct stat */
+							!fs.ipc_m_data_read /* forward vfs_stat_t */
 						}
 					}
Index: uspace/app/bdsh/cmds/modules/cat/cat.c
===================================================================
--- uspace/app/bdsh/cmds/modules/cat/cat.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/app/bdsh/cmds/modules/cat/cat.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -215,5 +215,5 @@
 
 	if (tail != CAT_FULL_FILE) {
-		struct stat st;
+		vfs_stat_t st;
 
 		if (vfs_stat(fd, &st) != EOK) {
Index: uspace/app/bdsh/cmds/modules/cp/cp.c
===================================================================
--- uspace/app/bdsh/cmds/modules/cp/cp.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/app/bdsh/cmds/modules/cp/cp.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -80,5 +80,5 @@
 static dentry_type_t get_type(const char *path)
 {
-	struct stat s;
+	vfs_stat_t s;
 
 	errno_t r = vfs_stat_path(path, &s);
@@ -340,6 +340,6 @@
 		 */
 		while ((dp = readdir(dir))) {
-			struct stat src_s;
-			struct stat dest_s;
+			vfs_stat_t src_s;
+			vfs_stat_t dest_s;
 
 			char src_dent[PATH_MAX];
@@ -392,5 +392,5 @@
 	char *buff = NULL;
 	aoff64_t posr = 0, posw = 0;
-	struct stat st;
+	vfs_stat_t st;
 
 	if (vb)
Index: uspace/app/bdsh/cmds/modules/ls/ls.h
===================================================================
--- uspace/app/bdsh/cmds/modules/ls/ls.h	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/app/bdsh/cmds/modules/ls/ls.h	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -23,5 +23,5 @@
 struct dir_elem_t {
 	char *name;
-	struct stat s;
+	vfs_stat_t s;
 };
 
Index: uspace/app/bdsh/cmds/modules/touch/touch.c
===================================================================
--- uspace/app/bdsh/cmds/modules/touch/touch.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/app/bdsh/cmds/modules/touch/touch.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -82,5 +82,5 @@
 	int longind;
 	bool no_create = false;
-	struct stat file_stat;
+	vfs_stat_t file_stat;
 	int fd = -1;
 	char *buff = NULL;
Index: uspace/app/bdsh/compl.c
===================================================================
--- uspace/app/bdsh/compl.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/app/bdsh/compl.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -360,5 +360,5 @@
 				char *ent_path;
 				asprintf(&ent_path, "%s/%s", *cs->path, dent->d_name);
-				struct stat ent_stat;
+				vfs_stat_t ent_stat;
 				if (vfs_stat_path(ent_path, &ent_stat) != EOK) {
 					/* Error */
Index: uspace/app/df/df.c
===================================================================
--- uspace/app/df/df.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/app/df/df.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -58,5 +58,5 @@
 static errno_t size_to_human_readable(uint64_t, size_t, char **);
 static void print_header(void);
-static errno_t print_statfs(struct statfs *, char *, char *);
+static errno_t print_statfs(vfs_statfs_t *, char *, char *);
 static void print_usage(void);
 
@@ -64,5 +64,5 @@
 {
 	int optres, errflg = 0;
-	struct statfs st;
+	vfs_statfs_t st;
 	errno_t rc;
 
@@ -147,5 +147,5 @@
 }
 
-static errno_t print_statfs(struct statfs *st, char *name, char *mountpoint)
+static errno_t print_statfs(vfs_statfs_t *st, char *name, char *mountpoint)
 {
 	uint64_t const used_blocks = st->f_blocks - st->f_bfree;
Index: uspace/app/init/init.c
===================================================================
--- uspace/app/init/init.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/app/init/init.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -152,5 +152,5 @@
 static errno_t srv_startl(const char *path, ...)
 {
-	struct stat s;
+	vfs_stat_t s;
 	if (vfs_stat_path(path, &s) != EOK) {
 		printf("%s: Unable to stat %s\n", NAME, path);
Index: uspace/app/sysinst/futil.c
===================================================================
--- uspace/app/sysinst/futil.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/app/sysinst/futil.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -108,5 +108,5 @@
 	DIR *dir;
 	struct dirent *de;
-	struct stat s;
+	vfs_stat_t s;
 	char *srcp, *destp;
 	errno_t rc;
@@ -165,5 +165,5 @@
 	size_t fsize;
 	char *data;
-	struct stat st;
+	vfs_stat_t st;
 
 	rc = vfs_lookup_open(srcp, WALK_REGULAR, MODE_READ, &sf);
Index: uspace/app/viewer/viewer.c
===================================================================
--- uspace/app/viewer/viewer.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/app/viewer/viewer.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -115,5 +115,5 @@
 		return false;
 	
-	struct stat stat;
+	vfs_stat_t stat;
 	rc = vfs_stat(fd, &stat);
 	if (rc != EOK) {
Index: uspace/drv/bus/isa/isa.c
===================================================================
--- uspace/drv/bus/isa/isa.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/drv/bus/isa/isa.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -279,5 +279,5 @@
 	errno_t rc;
 	size_t nread;
-	struct stat st;
+	vfs_stat_t st;
 
 	rc = vfs_lookup_open(conf_path, WALK_REGULAR, MODE_READ, &fd);
Index: uspace/lib/bithenge/src/failure.c
===================================================================
--- uspace/lib/bithenge/src/failure.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/lib/bithenge/src/failure.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -225,5 +225,5 @@
 }
 
-errno_t bithenge_failure_fstat(int fd, struct stat *buf)
+errno_t bithenge_failure_fstat(int fd, vfs_stat_t *buf)
 {
 	if (bithenge_should_fail()) {
Index: uspace/lib/bithenge/src/failure.h
===================================================================
--- uspace/lib/bithenge/src/failure.h	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/lib/bithenge/src/failure.h	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -52,5 +52,5 @@
 char *bithenge_failure_str_ndup(const char *, size_t);
 errno_t bithenge_failure_open(const char *, int);
-errno_t bithenge_failure_fstat(int, struct stat *);
+errno_t bithenge_failure_fstat(int, vfs_stat_t *);
 
 #ifndef BITHENGE_FAILURE_DECLS_ONLY
Index: uspace/lib/bithenge/src/file.c
===================================================================
--- uspace/lib/bithenge/src/file.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/lib/bithenge/src/file.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -102,5 +102,5 @@
 	assert(out);
 
-	struct stat stat;
+	vfs_stat_t stat;
 	errno_t rc = vfs_stat(fd, &stat);
 	if (rc != EOK) {
Index: uspace/lib/c/generic/io/io.c
===================================================================
--- uspace/lib/c/generic/io/io.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/lib/c/generic/io/io.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -814,5 +814,5 @@
 	stream->ungetc_chars = 0;
 
-	struct stat st;
+	vfs_stat_t st;
 	switch (whence) {
 	case SEEK_SET:
Index: uspace/lib/c/generic/vfs/mtab.c
===================================================================
--- uspace/lib/c/generic/vfs/mtab.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/lib/c/generic/vfs/mtab.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -42,5 +42,5 @@
 #include <str.h>
 
-static void process_mp(const char *path, struct stat *stat, list_t *mtab_list)
+static void process_mp(const char *path, vfs_stat_t *stat, list_t *mtab_list)
 {
 	mtab_ent_t *ent;
@@ -54,5 +54,5 @@
 	ent->service_id = stat->service_id;
 
-	struct statfs stfs;
+	vfs_statfs_t stfs;
 	if (vfs_statfs_path(path, &stfs) == EOK)
 		str_cpy(ent->fs_name, sizeof(ent->fs_name), stfs.fs_name);
@@ -75,5 +75,5 @@
 	while ((dirent = readdir(dir)) != NULL) {
 		char *child;
-		struct stat st;
+		vfs_stat_t st;
 		errno_t rc;
 		int ret;
@@ -123,5 +123,5 @@
 errno_t vfs_get_mtab_list(list_t *mtab_list)
 {
-	struct stat st;
+	vfs_stat_t st;
 
 	errno_t rc = vfs_stat_path("/", &st);
Index: uspace/lib/c/generic/vfs/vfs.c
===================================================================
--- uspace/lib/c/generic/vfs/vfs.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/lib/c/generic/vfs/vfs.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -352,5 +352,5 @@
 async_sess_t *vfs_fd_session(int file, iface_t iface)
 {
-	struct stat stat;
+	vfs_stat_t stat;
 	errno_t rc = vfs_stat(file, &stat);
 	if (rc != EOK)
@@ -1052,5 +1052,5 @@
  * @return              EOK on success or an error code
  */
-errno_t vfs_stat(int file, struct stat *stat)
+errno_t vfs_stat(int file, vfs_stat_t *stat)
 {
 	errno_t rc;
@@ -1060,5 +1060,5 @@
 	
 	req = async_send_1(exch, VFS_IN_STAT, file, NULL);
-	rc = async_data_read_start(exch, (void *) stat, sizeof(struct stat));
+	rc = async_data_read_start(exch, (void *) stat, sizeof(vfs_stat_t));
 	if (rc != EOK) {
 		vfs_exchange_end(exch);
@@ -1086,5 +1086,5 @@
  * @return              EOK on success or an error code
  */
-errno_t vfs_stat_path(const char *path, struct stat *stat)
+errno_t vfs_stat_path(const char *path, vfs_stat_t *stat)
 {
 	int file;
@@ -1107,5 +1107,5 @@
  * @return              EOK on success or an error code
  */
-errno_t vfs_statfs(int file, struct statfs *st)
+errno_t vfs_statfs(int file, vfs_statfs_t *st)
 {
 	errno_t rc, ret;
@@ -1132,5 +1132,5 @@
  * @return              EOK on success or an error code
  */
-errno_t vfs_statfs_path(const char *path, struct statfs *st)
+errno_t vfs_statfs_path(const char *path, vfs_statfs_t *st)
 {
 	int file;
Index: uspace/lib/c/include/vfs/vfs.h
===================================================================
--- uspace/lib/c/include/vfs/vfs.h	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/lib/c/include/vfs/vfs.h	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -57,5 +57,5 @@
 
 
-struct stat {
+typedef struct {
 	fs_handle_t fs_handle;
 	service_id_t service_id;
@@ -66,12 +66,12 @@
 	aoff64_t size;
 	service_id_t service;
-};
+} vfs_stat_t;
 
-struct statfs { 
+typedef struct {
 	char fs_name[FS_NAME_MAXLEN + 1];
 	uint32_t f_bsize;    /* fundamental file system block size */
 	uint64_t f_blocks;   /* total data blocks in file system */
 	uint64_t f_bfree;    /* free blocks in fs */
-};
+} vfs_statfs_t;
 
 /** List of file system types */
@@ -111,8 +111,8 @@
 extern int vfs_root(void);
 extern errno_t vfs_root_set(int);
-extern errno_t vfs_stat(int, struct stat *);
-extern errno_t vfs_stat_path(const char *, struct stat *);
-extern errno_t vfs_statfs(int, struct statfs *);
-extern errno_t vfs_statfs_path(const char *, struct statfs *);
+extern errno_t vfs_stat(int, vfs_stat_t *);
+extern errno_t vfs_stat_path(const char *, vfs_stat_t *);
+extern errno_t vfs_statfs(int, vfs_statfs_t *);
+extern errno_t vfs_statfs_path(const char *, vfs_statfs_t *);
 extern errno_t vfs_sync(int);
 extern errno_t vfs_unlink(int, const char *, int);
Index: uspace/lib/fs/libfs.c
===================================================================
--- uspace/lib/fs/libfs.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/lib/fs/libfs.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -733,5 +733,5 @@
 	size_t size;
 	if ((!async_data_read_receive(&callid, &size)) ||
-	    (size != sizeof(struct stat))) {
+	    (size != sizeof(vfs_stat_t))) {
 		ops->node_put(fn);
 		async_answer_0(callid, EINVAL);
@@ -740,6 +740,6 @@
 	}
 
-	struct stat stat;
-	memset(&stat, 0, sizeof(struct stat));
+	vfs_stat_t stat;
+	memset(&stat, 0, sizeof(vfs_stat_t));
 
 	stat.fs_handle = fs_handle;
@@ -755,5 +755,5 @@
 
 
-	async_data_read_finalize(callid, &stat, sizeof(struct stat));
+	async_data_read_finalize(callid, &stat, sizeof(vfs_stat_t));
 	async_answer_0(rid, EOK);
 }
@@ -772,10 +772,10 @@
 	size_t size;
 	if ((!async_data_read_receive(&callid, &size)) ||
-	    (size != sizeof(struct statfs))) {
+	    (size != sizeof(vfs_statfs_t))) {
 		goto error;
 	}
 
-	struct statfs st;
-	memset(&st, 0, sizeof(struct statfs));
+	vfs_statfs_t st;
+	memset(&st, 0, sizeof(vfs_statfs_t));
 
 	str_cpy(st.fs_name, sizeof(st.fs_name), fs_name);
@@ -800,5 +800,5 @@
 
 	ops->node_put(fn);
-	async_data_read_finalize(callid, &st, sizeof(struct statfs));
+	async_data_read_finalize(callid, &st, sizeof(vfs_statfs_t));
 	async_answer_0(rid, EOK);
 	return;
Index: uspace/lib/posix/source/sys/stat.c
===================================================================
--- uspace/lib/posix/source/sys/stat.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/lib/posix/source/sys/stat.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -52,5 +52,5 @@
  * @return 0 on success, -1 on error.
  */
-static int stat_to_posix(struct posix_stat *dest, struct stat *src)
+static int stat_to_posix(struct posix_stat *dest, vfs_stat_t *src)
 {
 	memset(dest, 0, sizeof(struct posix_stat));
@@ -88,5 +88,5 @@
 int posix_fstat(int fd, struct posix_stat *st)
 {
-	struct stat hst;
+	vfs_stat_t hst;
 	if (failed(vfs_stat(fd, &hst)))
 		return -1;
@@ -116,5 +116,5 @@
 int posix_stat(const char *restrict path, struct posix_stat *restrict st)
 {
-	struct stat hst;
+	vfs_stat_t hst;
 	if (failed(vfs_stat_path(path, &hst)))
 		return -1;
Index: uspace/lib/posix/source/unistd.c
===================================================================
--- uspace/lib/posix/source/unistd.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/lib/posix/source/unistd.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -245,5 +245,5 @@
 posix_off_t posix_lseek(int fildes, posix_off_t offset, int whence)
 {
-	struct stat st;
+	vfs_stat_t st;
 
 	switch (whence) {
Index: uspace/srv/devman/driver.c
===================================================================
--- uspace/srv/devman/driver.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/srv/devman/driver.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -140,5 +140,5 @@
 	
 	/* Check whether the driver's binary exists. */
-	struct stat s;
+	vfs_stat_t s;
 	if (vfs_stat_path(drv->binary_path, &s) != EOK) {
 		log_msg(LOG_DEFAULT, LVL_ERROR, "Driver not found at path `%s'.",
Index: uspace/srv/devman/match.c
===================================================================
--- uspace/srv/devman/match.c	(revision d8023313b00bbb8e958c404ffdc81f4bf36d7f00)
+++ uspace/srv/devman/match.c	(revision 393302009dc835da26285d65656e166c29b4540f)
@@ -200,5 +200,5 @@
 	int fd;
 	size_t len = 0;
-	struct stat st;
+	vfs_stat_t st;
 	
 	errno_t rc = vfs_lookup_open(conf_path, WALK_REGULAR, MODE_READ, &fd);
