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

[Minios-devel] [UNIKRAFT PATCH 0/8] Unikraft 9P API



This patch series introduces the 9P API, which acts as a generic
interface between the 9P transport drivers (xen, virtio) and
the 9pfs implementation. The API may also be used directly by
users.

The transport drivers register themselves with the API using the
definitions from 9pdev_trans.h and 9pdev_core.h, and implement
the connect, disconnect and request callbacks.

The protocol core types and constants can be found in 9p_core.h,
and a helper interface to the operations supported by the 9P
protocol can be found in 9p.h.

There are two kinds of objects which must be managed carefully
by the API: the request and the fid (handle to a filesystem
entity such as a file or directory, similar to a file
descriptor). The management of both of those is abstracted into
9preq.h and 9pfid.h respectively.

Cristian Banu (8):
  lib/uk9p: Add 9P library skeleton
  lib/uk9p: Add 9P transport registration
  lib/uk9p: Add 9P protocol core definitions
  lib/uk9p: Add 9P requests abstraction
  lib/uk9p: Add 9P device implementation
  lib/uk9p: Add 9P fid abstraction
  lib/uk9p: Add 9P helper API
  lib/uk9p: Clunk fids on fid release

 lib/Config.uk                     |   1 +
 lib/Makefile.uk                   |   1 +
 lib/uk9p/9p.c                     | 423 +++++++++++++++++++++++++++++
 lib/uk9p/9pdev.c                  | 460 +++++++++++++++++++++++++++++++
 lib/uk9p/9pdev_trans.c            |  86 ++++++
 lib/uk9p/9pfid.c                  |  71 +++++
 lib/uk9p/9preq.c                  | 554 ++++++++++++++++++++++++++++++++++++++
 lib/uk9p/Config.uk                |   6 +
 lib/uk9p/Makefile.uk              |  10 +
 lib/uk9p/exportsyms.uk            |  43 +++
 lib/uk9p/include/uk/9p.h          | 260 ++++++++++++++++++
 lib/uk9p/include/uk/9p_core.h     | 249 +++++++++++++++++
 lib/uk9p/include/uk/9pdev.h       | 211 +++++++++++++++
 lib/uk9p/include/uk/9pdev_core.h  | 189 +++++++++++++
 lib/uk9p/include/uk/9pdev_trans.h | 104 +++++++
 lib/uk9p/include/uk/9pfid.h       | 115 ++++++++
 lib/uk9p/include/uk/9preq.h       | 260 ++++++++++++++++++
 17 files changed, 3043 insertions(+)
 create mode 100644 lib/uk9p/9p.c
 create mode 100644 lib/uk9p/9pdev.c
 create mode 100644 lib/uk9p/9pdev_trans.c
 create mode 100644 lib/uk9p/9pfid.c
 create mode 100644 lib/uk9p/9preq.c
 create mode 100644 lib/uk9p/Config.uk
 create mode 100644 lib/uk9p/Makefile.uk
 create mode 100644 lib/uk9p/exportsyms.uk
 create mode 100644 lib/uk9p/include/uk/9p.h
 create mode 100644 lib/uk9p/include/uk/9p_core.h
 create mode 100644 lib/uk9p/include/uk/9pdev.h
 create mode 100644 lib/uk9p/include/uk/9pdev_core.h
 create mode 100644 lib/uk9p/include/uk/9pdev_trans.h
 create mode 100644 lib/uk9p/include/uk/9pfid.h
 create mode 100644 lib/uk9p/include/uk/9preq.h

-- 
2.11.0


_______________________________________________
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®.