[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Minios-devel] [UNIKRAFT PATCH v3 00/23] import vfs from OSv



This series is an initial import. I tryied to keep ammount of
modifications small. And failed.

Series has a lot of style problems. But fixing style would blow it
even more. I will provide follow-ups cleaning up this mess.

And sorry for the patch sizes. At least these huge patches contain only
mechanical modifications (e.g. new -> malloc, delete -> free,
replacing OSv functions with Unikraft analogues). I hope this helps.

Changes since v1:
 - rebase to the current "staging" branch
 - update license headers*** SUBJECT HERE ***

Changes since v2:
 - add unlink to exports and to nolibc prototypes
 - add note about weak alias and LTO
 - fix compilation problems in the middle of the series

Yuri Volchkov (23):
  include/uk: introduce __weak_alias macro
  lib/nolibc: import mount.h
  lib/nolibc: adapt mount.h to Unikraft
  lib/vfscore: Initial import of OSv vfs
  lib/vfscore: tabify imported vfs code
  lib/vfscore: update license header for imported files
  lib/vfscore: remove obvious c++isms and irrelevant code
  lib/vfscore: use Unikraft includes
  lib/vfscore: use Unikraft types and functions
  lib/vfscore: add utility funcs&defs to support imported
  lib/vfscore: introduce UK_FS_REGISTER
  lib/vfscore: prefix exported functions
  lib/vfscore: introduce fget, fdrop, fdalloc
  lib/vfscore: keep vnode locked during drele call
  lib/vfscore: add necessary field in vfscore_file
  lib/vfscore: remove _KERNEL ifdefs
  lib/vfscore: introduce fdclose
  lib/vfscore: add necessary internal prototypes
  lib/vfscore: fix compiler complains
  lib/vfscore: add main constructor
  lib/nolibc: add prototypes for functions from vfscore
  lib/vfscore: re-implement stdio and enable new code
  lib/vfscore: remove sys prefix from vfs api functions

 include/uk/essentials.h                       |   10 +
 lib/nolibc/include/sys/mount.h                |  109 +
 lib/nolibc/include/sys/uio.h                  |   35 +
 lib/nolibc/include/unistd.h                   |    6 +
 lib/vfscore/Config.uk                         |    1 +
 lib/vfscore/Makefile.uk                       |   11 +
 lib/vfscore/dentry.c                          |  236 ++
 lib/vfscore/exportsyms.uk                     |   27 +
 lib/vfscore/extra.ld                          |    9 +
 lib/vfscore/fd.c                              |   67 +-
 lib/vfscore/file.c                            |   61 +-
 lib/vfscore/fops.c                            |  140 ++
 .../include/vfscore/dentry.h}                 |   44 +-
 lib/vfscore/include/vfscore/file.h            |   17 +-
 lib/vfscore/include/vfscore/fs.h              |   28 +
 lib/vfscore/include/vfscore/mount.h           |  145 ++
 .../include/vfscore/prex.h}                   |   40 +-
 lib/vfscore/include/vfscore/uio.h             |   62 +
 lib/vfscore/include/vfscore/vnode.h           |  263 +++
 lib/vfscore/lookup.c                          |  375 +++
 lib/vfscore/main.c                            | 2058 +++++++++++++++++
 lib/vfscore/mount.c                           |  494 ++++
 lib/vfscore/stdio.c                           |   73 +-
 lib/vfscore/subr_uio.c                        |   78 +
 lib/vfscore/syscalls.c                        | 1512 ++++++++++++
 lib/vfscore/task.c                            |  154 ++
 lib/vfscore/vfs.h                             |  169 ++
 lib/vfscore/vnode.c                           |  530 +++++
 28 files changed, 6626 insertions(+), 128 deletions(-)
 create mode 100644 lib/nolibc/include/sys/mount.h
 create mode 100644 lib/vfscore/dentry.c
 create mode 100644 lib/vfscore/extra.ld
 create mode 100644 lib/vfscore/fops.c
 copy lib/{nolibc/include/unistd.h => vfscore/include/vfscore/dentry.h} (70%)
 create mode 100644 lib/vfscore/include/vfscore/fs.h
 create mode 100644 lib/vfscore/include/vfscore/mount.h
 copy lib/{nolibc/include/unistd.h => vfscore/include/vfscore/prex.h} (75%)
 create mode 100644 lib/vfscore/include/vfscore/uio.h
 create mode 100644 lib/vfscore/include/vfscore/vnode.h
 create mode 100644 lib/vfscore/lookup.c
 create mode 100644 lib/vfscore/main.c
 create mode 100644 lib/vfscore/mount.c
 create mode 100644 lib/vfscore/subr_uio.c
 create mode 100644 lib/vfscore/syscalls.c
 create mode 100644 lib/vfscore/task.c
 create mode 100644 lib/vfscore/vfs.h
 create mode 100644 lib/vfscore/vnode.c

-- 
2.19.2


_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.