|
[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 |