mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v5 00/13] introduce the Xen PV Calls frontend:wq
@ 2017-10-07  0:30 Stefano Stabellini
  2017-10-07  0:30 ` [PATCH v5 01/13] xen/pvcalls: introduce the pvcalls xenbus frontend Stefano Stabellini
  0 siblings, 1 reply; 37+ messages in thread
From: Stefano Stabellini @ 2017-10-07  0:30 UTC (permalink / raw)
  To: xen-devel; +Cc: linux-kernel, sstabellini, jgross, boris.ostrovsky

Hi all,

this series introduces the frontend for the newly introduced PV Calls
procotol.

PV Calls is a paravirtualized protocol that allows the implementation of
a set of POSIX functions in a different domain. The PV Calls frontend
sends POSIX function calls to the backend, which implements them and
returns a value to the frontend and acts on the function call.

For more information about PV Calls, please read:

https://xenbits.xen.org/docs/unstable/misc/pvcalls.html

This patch series only implements the frontend driver. It doesn't
attempt to redirect POSIX calls to it. The functions exported in
pvcalls-front.h are meant to be used for that. A separate patch series
will be sent to use them and hook them into the system.


Changes in v5:
- add a comment about single frontend-backend connection
- remove atomic_inc/dec in pvcalls_enter/exit
- add reviewed-by
- redefine pvcalls_enter/exit as pvcalls_enter/exit()
- move initial error checks in functions as early as possible (before
  locks, refcounts, etc)
- remove WRITE_ONCE when used after a barrier
- fix code style
- move init_waitqueue_head(&map->passive.inflight_accept_req) to patch #8
- clear PVCALLS_FLAG_ACCEPT_INFLIGHT on errors in accept
- clear INFLIGHT then set RET in pvcalls_front_event_handler, see
  alpine.DEB.2.10.1710061515060.3073@sstabellini-ThinkPad-X260
- add smp_rmb() after reading req_id before reading ret in all functions
- remove smp_mb() after reading ret and before clearing req_id
- create an empty pvcalls_front_free_map in patch #2


Stefano Stabellini (13):
      xen/pvcalls: introduce the pvcalls xenbus frontend
      xen/pvcalls: implement frontend disconnect
      xen/pvcalls: connect to the backend
      xen/pvcalls: implement socket command and handle events
      xen/pvcalls: implement connect command
      xen/pvcalls: implement bind command
      xen/pvcalls: implement listen command
      xen/pvcalls: implement accept command
      xen/pvcalls: implement sendmsg
      xen/pvcalls: implement recvmsg
      xen/pvcalls: implement poll command
      xen/pvcalls: implement release command
      xen: introduce a Kconfig option to enable the pvcalls frontend

 drivers/xen/Kconfig         |    9 +
 drivers/xen/Makefile        |    1 +
 drivers/xen/pvcalls-front.c | 1275 +++++++++++++++++++++++++++++++++++++++++++
 drivers/xen/pvcalls-front.h |   28 +
 4 files changed, 1313 insertions(+)
 create mode 100644 drivers/xen/pvcalls-front.c
 create mode 100644 drivers/xen/pvcalls-front.h

^ permalink raw reply	[flat|nested] 37+ messages in thread

end of thread, other threads:[~2017-10-24 17:17 UTC | newest]

Thread overview: 37+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-10-07  0:30 [PATCH v5 00/13] introduce the Xen PV Calls frontend:wq Stefano Stabellini
2017-10-07  0:30 ` [PATCH v5 01/13] xen/pvcalls: introduce the pvcalls xenbus frontend Stefano Stabellini
2017-10-07  0:30   ` [PATCH v5 02/13] xen/pvcalls: implement frontend disconnect Stefano Stabellini
2017-10-17 16:01     ` Boris Ostrovsky
2017-10-23 22:44       ` Stefano Stabellini
2017-10-07  0:30   ` [PATCH v5 03/13] xen/pvcalls: connect to the backend Stefano Stabellini
2017-10-07  0:30   ` [PATCH v5 04/13] xen/pvcalls: implement socket command and handle events Stefano Stabellini
2017-10-17 16:59     ` Boris Ostrovsky
2017-10-20  1:26       ` Stefano Stabellini
2017-10-20 14:24         ` Boris Ostrovsky
2017-10-07  0:30   ` [PATCH v5 05/13] xen/pvcalls: implement connect command Stefano Stabellini
2017-10-07  0:30   ` [PATCH v5 06/13] xen/pvcalls: implement bind command Stefano Stabellini
2017-10-17 17:39     ` Boris Ostrovsky
2017-10-20  1:31       ` Stefano Stabellini
2017-10-20 14:40         ` Boris Ostrovsky
2017-10-07  0:30   ` [PATCH v5 07/13] xen/pvcalls: implement listen command Stefano Stabellini
2017-10-07  0:30   ` [PATCH v5 08/13] xen/pvcalls: implement accept command Stefano Stabellini
2017-10-17 18:34     ` Boris Ostrovsky
2017-10-23 23:03       ` Stefano Stabellini
2017-10-24 13:52         ` Boris Ostrovsky
2017-10-24 16:42           ` Stefano Stabellini
2017-10-07  0:30   ` [PATCH v5 09/13] xen/pvcalls: implement sendmsg Stefano Stabellini
2017-10-17 21:06     ` Boris Ostrovsky
2017-10-20  1:41       ` Stefano Stabellini
2017-10-20 14:44         ` Boris Ostrovsky
2017-10-07  0:30   ` [PATCH v5 10/13] xen/pvcalls: implement recvmsg Stefano Stabellini
2017-10-17 21:35     ` Boris Ostrovsky
2017-10-20  1:38       ` Stefano Stabellini
2017-10-20 14:43         ` Boris Ostrovsky
2017-10-07  0:30   ` [PATCH v5 11/13] xen/pvcalls: implement poll command Stefano Stabellini
2017-10-17 22:15     ` Boris Ostrovsky
2017-10-23 23:06       ` Stefano Stabellini
2017-10-24 14:02         ` Boris Ostrovsky
2017-10-07  0:30   ` [PATCH v5 12/13] xen/pvcalls: implement release command Stefano Stabellini
2017-10-24 14:17     ` Boris Ostrovsky
2017-10-24 17:17       ` Stefano Stabellini
2017-10-07  0:30   ` [PATCH v5 13/13] xen: introduce a Kconfig option to enable the pvcalls frontend Stefano Stabellini

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome