[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Minios-devel] [UNIKRAFT PATCH v2 08/23] lib/vfscore: use Unikraft includes
Oops, sorry about that. The v3 fixes that. Sharan Santhanam <sharan.santhanam@xxxxxxxxx> writes: > Hello Yuri, > > The patch fails with the compilation error. > > In file included from Unikraft/lib/vfscore/include/vfscore/file.h:41:0, > from Unikraft/lib/vfscore/fd.c:40: > Unikraft/lib/vfscore/include/vfscore/dentry.h:45:2: error: expected > specifier-qualifier-list before ‘LIST_ENTRY’ > LIST_ENTRY(dentry) d_link; /* link for hash list */ > > Probably it would be wise to fix it. > > > There is also a dependency on UK_LOCK which is missing in Config.uk but > this is added as a part of patch 22. > > Thanks & Regards > Sharan > > > On 2/4/19 3:37 PM, Yuri Volchkov wrote: >> Signed-off-by: Yuri Volchkov <yuri.volchkov@xxxxxxxxx> >> --- >> lib/vfscore/dentry.c | 7 ++-- >> lib/vfscore/fops.c | 11 +++---- >> lib/vfscore/include/vfscore/dentry.h | 4 +-- >> lib/vfscore/include/vfscore/file.h | 1 + >> lib/vfscore/include/vfscore/mount.h | 6 ++-- >> lib/vfscore/include/vfscore/prex.h | 1 - >> lib/vfscore/include/vfscore/uio.h | 1 - >> lib/vfscore/include/vfscore/vnode.h | 13 ++++---- >> lib/vfscore/lookup.c | 4 +-- >> lib/vfscore/main.c | 48 ++++++---------------------- >> lib/vfscore/mount.c | 21 +++++------- >> lib/vfscore/stdio.c | 3 ++ >> lib/vfscore/subr_uio.c | 4 +-- >> lib/vfscore/syscalls.c | 12 ++++--- >> lib/vfscore/task.c | 2 +- >> lib/vfscore/vfs.h | 23 +++---------- >> lib/vfscore/vnode.c | 6 ++-- >> 17 files changed, 63 insertions(+), 104 deletions(-) >> >> diff --git a/lib/vfscore/dentry.c b/lib/vfscore/dentry.c >> index efc10bd6..ccce07d1 100644 >> --- a/lib/vfscore/dentry.c >> +++ b/lib/vfscore/dentry.c >> @@ -32,10 +32,11 @@ >> >> #include <string.h> >> #include <stdlib.h> >> -#include <sys/param.h> >> >> -#include <osv/dentry.h> >> -#include <osv/vnode.h> >> +#include <uk/list.h> >> +#include <vfscore/dentry.h> >> +#include <vfscore/vnode.h> >> +#include <uk/mutex.h> >> #include "vfs.h" >> >> #define DENTRY_BUCKETS 32 >> diff --git a/lib/vfscore/fops.c b/lib/vfscore/fops.c >> index f1c161e7..b4583d20 100644 >> --- a/lib/vfscore/fops.c >> +++ b/lib/vfscore/fops.c >> @@ -33,14 +33,13 @@ >> * THIS HEADER MAY NOT BE EXTRACTED OR MODIFIED IN ANY WAY. >> */ >> >> +#define _GNU_SOURCE >> #include <fcntl.h> >> #include <sys/stat.h> >> -#include <osv/file.h> >> -#include <osv/poll.h> >> -#include <fs/vfs/vfs.h> >> -#include <osv/vfs_file.hh> >> -#include <osv/mmu.hh> >> -#include <osv/pagecache.hh> >> +#include <vfscore/file.h> >> +#include "vfs.h" >> + >> +#include <uk/assert.h> >> >> int vfs_close(struct vfscore_file *fp) >> { >> diff --git a/lib/vfscore/include/vfscore/dentry.h >> b/lib/vfscore/include/vfscore/dentry.h >> index 9cfe8dac..ba1c3457 100644 >> --- a/lib/vfscore/include/vfscore/dentry.h >> +++ b/lib/vfscore/include/vfscore/dentry.h >> @@ -36,8 +36,8 @@ >> #ifndef _OSV_DENTRY_H >> #define _OSV_DENTRY_H 1 >> >> -#include <osv/mutex.h> >> -#include <bsd/sys/sys/queue.h> >> +#include <uk/mutex.h> >> +#include <uk/list.h> >> >> struct vnode; >> >> diff --git a/lib/vfscore/include/vfscore/file.h >> b/lib/vfscore/include/vfscore/file.h >> index 9985706f..7387265d 100644 >> --- a/lib/vfscore/include/vfscore/file.h >> +++ b/lib/vfscore/include/vfscore/file.h >> @@ -38,6 +38,7 @@ >> >> #include <stdint.h> >> #include <sys/types.h> >> +#include <vfscore/dentry.h> >> >> #ifdef __cplusplus >> extern "C" { >> diff --git a/lib/vfscore/include/vfscore/mount.h >> b/lib/vfscore/include/vfscore/mount.h >> index b68d3c98..e12a1039 100644 >> --- a/lib/vfscore/include/vfscore/mount.h >> +++ b/lib/vfscore/include/vfscore/mount.h >> @@ -32,10 +32,10 @@ >> #ifndef _SYS_MOUNT_H_ >> #define _SYS_MOUNT_H_ >> >> -#include <sys/cdefs.h> >> #include <sys/statfs.h> >> -#include <osv/vnode.h> >> -#include <bsd/sys/sys/queue.h> >> +#include <limits.h> >> +#include <uk/list.h> >> +#include <vfscore/vnode.h> >> >> #ifdef _KERNEL >> >> diff --git a/lib/vfscore/include/vfscore/prex.h >> b/lib/vfscore/include/vfscore/prex.h >> index 6cbe3130..8a306d54 100644 >> --- a/lib/vfscore/include/vfscore/prex.h >> +++ b/lib/vfscore/include/vfscore/prex.h >> @@ -38,7 +38,6 @@ >> >> >> #include <unistd.h> >> -#include <osv/fcntl.h> >> >> #define BSIZE 512 /* size of secondary block (bytes) */ >> >> diff --git a/lib/vfscore/include/vfscore/uio.h >> b/lib/vfscore/include/vfscore/uio.h >> index d7f7fce9..8ad1e3fb 100644 >> --- a/lib/vfscore/include/vfscore/uio.h >> +++ b/lib/vfscore/include/vfscore/uio.h >> @@ -33,7 +33,6 @@ >> #ifndef _UIO_H_ >> #define _UIO_H_ >> >> -#include <sys/cdefs.h> >> #include <sys/types.h> >> #include <sys/uio.h> >> #include <limits.h> >> diff --git a/lib/vfscore/include/vfscore/vnode.h >> b/lib/vfscore/include/vfscore/vnode.h >> index d30a9411..49fd4d36 100644 >> --- a/lib/vfscore/include/vfscore/vnode.h >> +++ b/lib/vfscore/include/vfscore/vnode.h >> @@ -35,13 +35,14 @@ >> >> #ifdef _KERNEL >> >> -#include <sys/cdefs.h> >> #include <sys/stat.h> >> -#include <osv/prex.h> >> -#include <osv/uio.h> >> -#include <osv/mutex.h> >> -#include "file.h" >> -#include "dirent.h" >> +#include <dirent.h> >> + >> +#include <uk/mutex.h> >> +#include <uk/list.h> >> +#include <time.h> >> +#include <vfscore/uio.h> >> +#include <vfscore/dentry.h> >> >> struct vfsops; >> struct vnops; >> diff --git a/lib/vfscore/lookup.c b/lib/vfscore/lookup.c >> index f7a38c4f..9837e81f 100644 >> --- a/lib/vfscore/lookup.c >> +++ b/lib/vfscore/lookup.c >> @@ -36,8 +36,8 @@ >> #include <stdlib.h> >> #include <sys/param.h> >> >> -#include <osv/dentry.h> >> -#include <osv/vnode.h> >> +#include <vfscore/dentry.h> >> +#include <vfscore/vnode.h> >> #include "vfs.h" >> >> static ssize_t >> diff --git a/lib/vfscore/main.c b/lib/vfscore/main.c >> index 74876dc1..90df3d71 100644 >> --- a/lib/vfscore/main.c >> +++ b/lib/vfscore/main.c >> @@ -30,53 +30,23 @@ >> * SUCH DAMAGE. >> */ >> >> -#include <sys/param.h> >> +#define _GNU_SOURCE >> + >> #include <sys/statvfs.h> >> #include <sys/stat.h> >> -#include <sys/time.h> >> -#include <sys/sendfile.h> >> - >> #include <limits.h> >> -#include <unistd.h> >> -#include <stdio.h> >> -#include <stdint.h> >> -#include <stdlib.h> >> #include <string.h> >> #include <errno.h> >> -#include <signal.h> >> -#define open __open_variadic >> -#define fcntl __fcntl_variadic >> #include <fcntl.h> >> -#undef open >> -#undef fcntl >> - >> -#include <osv/prex.h> >> -#include <osv/vnode.h> >> -#include <osv/stubbing.hh> >> -#include <osv/ioctl.h> >> -#include <osv/trace.hh> >> -#include <osv/run.hh> >> -#include <drivers/console.hh> >> - >> +#include <vfscore/prex.h> >> +#include <vfscore/vnode.h> >> #include "vfs.h" >> - >> -#include "libc/internal/libc.h" >> - >> -#include <algorithm> >> -#include <unordered_map> >> - >> #include <sys/file.h> >> - >> -#include "fs/fs.hh" >> -#include "libc/libc.hh" >> - >> -#include <mntent.h> >> -#include <sys/mman.h> >> - >> -#include <osv/clock.hh> >> -#include <api/utime.h> >> -#include <chrono> >> - >> +#include <stdarg.h> >> +#include <vfscore/file.h> >> +#include <vfscore/mount.h> >> +#include <vfscore/fs.h> >> +#include <uk/errptr.h> >> >> #ifdef DEBUG_VFS >> int vfs_debug = VFSDB_FLAGS; >> diff --git a/lib/vfscore/mount.c b/lib/vfscore/mount.c >> index 10c27fad..06922ffb 100644 >> --- a/lib/vfscore/mount.c >> +++ b/lib/vfscore/mount.c >> @@ -34,27 +34,22 @@ >> * vfs_mount.c - mount operations >> */ >> >> -#include <sys/stat.h> >> #include <sys/param.h> >> -#include <dirent.h> >> - >> #include <limits.h> >> #include <unistd.h> >> #include <stdlib.h> >> #include <string.h> >> #include <stdio.h> >> #include <errno.h> >> -#include <fcntl.h> >> - >> -#include <osv/prex.h> >> -#include <osv/vnode.h> >> -#include <osv/device.h> >> -#include <osv/debug.h> >> -#include <osv/mutex.h> >> #include "vfs.h" >> - >> -#include <memory> >> -#include <list> >> +#include <sys/types.h> >> +#include <sys/stat.h> >> +#include <time.h> >> +#include <uk/list.h> >> +#include <uk/mutex.h> >> +#include <vfscore/prex.h> >> +#include <vfscore/dentry.h> >> +#include <vfscore/vnode.h> >> >> /* >> * List for VFS mount points. >> diff --git a/lib/vfscore/stdio.c b/lib/vfscore/stdio.c >> index a9bdfd61..7d749442 100644 >> --- a/lib/vfscore/stdio.c >> +++ b/lib/vfscore/stdio.c >> @@ -34,9 +34,12 @@ >> */ >> >> #include <vfscore/file.h> >> +#include <vfscore/fs.h> >> #include <uk/plat/console.h> >> #include <uk/essentials.h> >> #include <termios.h> >> +#include <vfscore/vnode.h> >> +#include <unistd.h> >> >> /* One function for stderr and stdout */ >> static ssize_t stdout_write(struct vfscore_file *vfscore_file __unused, >> diff --git a/lib/vfscore/subr_uio.c b/lib/vfscore/subr_uio.c >> index 8276d6d4..bbca3362 100644 >> --- a/lib/vfscore/subr_uio.c >> +++ b/lib/vfscore/subr_uio.c >> @@ -39,11 +39,11 @@ >> * @(#)kern_subr.c 8.3 (Berkeley) 1/21/94 >> */ >> >> -#include <assert.h> >> +#include <uk/assert.h> >> #include <errno.h> >> #include <stdlib.h> >> #include <string.h> >> -#include <osv/uio.h> >> +#include <vfscore/uio.h> >> >> int >> uiomove(void *cp, int n, struct uio *uio) >> diff --git a/lib/vfscore/syscalls.c b/lib/vfscore/syscalls.c >> index 4e55337f..f50fb38f 100644 >> --- a/lib/vfscore/syscalls.c >> +++ b/lib/vfscore/syscalls.c >> @@ -35,7 +35,8 @@ >> * a VFS system call. >> */ >> >> -#include <sys/stat.h> >> +#define _BSD_SOURCE >> +#define _GNU_SOURCE >> #include <dirent.h> >> >> #include <limits.h> >> @@ -46,11 +47,12 @@ >> #include <errno.h> >> #include <fcntl.h> >> >> -#include <osv/prex.h> >> -#include <osv/vnode.h> >> -#include <osv/vfs_file.hh> >> +#include <vfscore/prex.h> >> +#include <vfscore/vnode.h> >> +#include <vfscore/file.h> >> + >> #include "vfs.h" >> -#include <fs/fs.hh> >> +#include <vfscore/fs.h> >> >> extern struct task *main_task; >> >> diff --git a/lib/vfscore/task.c b/lib/vfscore/task.c >> index 4ceb123b..7635bd7a 100644 >> --- a/lib/vfscore/task.c >> +++ b/lib/vfscore/task.c >> @@ -41,7 +41,7 @@ >> #include <stdio.h> >> #include <errno.h> >> >> -#include <osv/prex.h> >> +#include <vfscore/prex.h> >> #include "vfs.h" >> >> >> diff --git a/lib/vfscore/vfs.h b/lib/vfscore/vfs.h >> index cd940979..2531f730 100644 >> --- a/lib/vfscore/vfs.h >> +++ b/lib/vfscore/vfs.h >> @@ -33,24 +33,12 @@ >> #ifndef _VFS_H >> #define _VFS_H >> >> -#include <sys/cdefs.h> >> -#include <assert.h> >> -#include <dirent.h> >> -#include <limits.h> >> - >> -#include <osv/prex.h> >> -#include <osv/file.h> >> -#include <osv/mount.h> >> -#include <osv/vnode.h> >> -#include <osv/dentry.h> >> -#include <osv/error.h> >> - >> -/* >> - * Import vnode attributes flags >> - */ >> -#include <osv/vnode_attr.h> >> +#define _GNU_SOURCE >> +#include <vfscore/mount.h> >> >> -/* #define DEBUG_VFS 1 */ >> +#include <limits.h> >> +#include <fcntl.h> >> +#include <sys/statfs.h> >> >> /* >> * Tunable parameters >> @@ -58,7 +46,6 @@ >> #define FSMAXNAMES 16 /* max length of 'file system' name */ >> >> #ifdef DEBUG_VFS >> -#include <osv/debug.h> >> >> extern int vfs_debug; >> >> diff --git a/lib/vfscore/vnode.c b/lib/vfscore/vnode.c >> index f564577f..81f78be8 100644 >> --- a/lib/vfscore/vnode.c >> +++ b/lib/vfscore/vnode.c >> @@ -36,14 +36,16 @@ >> >> #include <limits.h> >> #include <unistd.h> >> +#include <stdint.h> >> #include <string.h> >> #include <stdlib.h> >> #include <stdio.h> >> #include <errno.h> >> #include <sys/stat.h> >> >> -#include <osv/prex.h> >> -#include <osv/vnode.h> >> +#include <vfscore/prex.h> >> +#include <vfscore/dentry.h> >> +#include <vfscore/vnode.h> >> #include "vfs.h" >> >> enum vtype iftovt_tab[16] = { >> -- Yuri Volchkov Software Specialist NEC Europe Ltd Kurfürsten-Anlage 36 D-69115 Heidelberg _______________________________________________ Minios-devel mailing list Minios-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/minios-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |