From: Saurabh Sengar <ssengar@linux.microsoft.com>
To: kys@microsoft.com, haiyangz@microsoft.com, wei.liu@kernel.org,
decui@microsoft.com, mikelley@microsoft.com,
gregkh@linuxfoundation.org, corbet@lwn.net,
linux-kernel@vger.kernel.org, linux-hyperv@vger.kernel.org,
linux-doc@vger.kernel.org
Subject: [PATCH v2 0/5] UIO driver for low speed Hyper-V devices
Date: Wed, 14 Jun 2023 11:15:07 -0700 [thread overview]
Message-ID: <1686766512-2589-1-git-send-email-ssengar@linux.microsoft.com> (raw)
Hyper-V is adding some low speed "specialty" synthetic devices.
This patch series propose the solution to support these devices.
Instead of writing new kernel-level VMBus drivers for all of
these devices, we propose a solution wherein these devices are
made accessible to user space through a dedicated UIO-based
hv_vmbus_client driver, allowing for efficient device handling
via user space drivers. This solution aims to optimize the
development process by eliminating the need to create
individual kernel-level VMBus drivers for each device and
provide flexibility to user space applications to control the
ring buffer independently.
Since all these new synthetic devices are low speed devices,
they don't support monitor bits and we must use vmbus_setevent()
to enable interrupts from the host. The new uio driver supports
all these requirements effectively. Additionally, this new driver
also provide the support for having smaller/cutom ringbuffer
size.
Furthermore, this patch series includes a revision of the fcopy
application to leverage the new interface seamlessly along with
removal of old driver and application. However, please note that
the development of other similar drivers is still a work in
progress, and will be shared as they become available.
[V2]
1. Update driver info in Documentation/driver-api/uio-howto.rst
2. Update ring_size sysfs info in Documentation/ABI/stable/sysfs-bus-vmbus
3. Remove DRIVER_VERSION
4. Remove refcnt
5. scnprintf -> sysfs_emit
6. sysfs_create_file -> ATTRIBUTE_GROUPS + ".driver.groups";
7. sysfs_create_bin_file -> device_create_bin_file
8. dev_notice -> dev_err
9. Removed invalid free of devm_ allocated data
10. Updated application with simpler sysfs path
Saurabh Sengar (5):
uio: Add hv_vmbus_client driver
tools: hv: Add vmbus_bufring
tools: hv: Add new fcopy application based on uio driver
tools: hv: Remove hv_fcopy_daemon
Drivers: hv: Remove fcopy driver
Documentation/ABI/stable/sysfs-bus-vmbus | 7 +
Documentation/driver-api/uio-howto.rst | 46 +++
drivers/hv/Makefile | 2 +-
drivers/hv/hv_fcopy.c | 427 --------------------
drivers/hv/hv_util.c | 12 -
drivers/uio/Kconfig | 12 +
drivers/uio/Makefile | 1 +
drivers/uio/uio_hv_vmbus_client.c | 217 ++++++++++
tools/hv/Build | 3 +-
tools/hv/Makefile | 10 +-
tools/hv/hv_fcopy_daemon.c | 266 ------------
tools/hv/hv_fcopy_uio_daemon.c | 489 +++++++++++++++++++++++
tools/hv/vmbus_bufring.c | 322 +++++++++++++++
tools/hv/vmbus_bufring.h | 158 ++++++++
14 files changed, 1260 insertions(+), 712 deletions(-)
delete mode 100644 drivers/hv/hv_fcopy.c
create mode 100644 drivers/uio/uio_hv_vmbus_client.c
delete mode 100644 tools/hv/hv_fcopy_daemon.c
create mode 100644 tools/hv/hv_fcopy_uio_daemon.c
create mode 100644 tools/hv/vmbus_bufring.c
create mode 100644 tools/hv/vmbus_bufring.h
--
2.34.1
next reply other threads:[~2023-06-14 18:16 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-14 18:15 Saurabh Sengar [this message]
2023-06-14 18:15 ` [PATCH v2 1/5] uio: Add hv_vmbus_client driver Saurabh Sengar
2023-06-14 21:13 ` Greg KH
2023-06-20 5:19 ` [EXTERNAL] " Saurabh Singh Sengar
2023-06-20 7:06 ` Greg KH
2023-06-20 7:41 ` Saurabh Singh Sengar
2023-06-14 18:15 ` [PATCH v2 2/5] tools: hv: Add vmbus_bufring Saurabh Sengar
2023-06-14 21:16 ` Greg KH
2023-06-20 5:25 ` [EXTERNAL] " Saurabh Singh Sengar
2023-06-20 7:05 ` Greg KH
2023-06-22 17:47 ` Saurabh Singh Sengar
2023-06-22 18:12 ` Greg KH
2023-06-22 17:46 ` Saurabh Singh Sengar
2023-06-14 18:15 ` [PATCH v2 3/5] tools: hv: Add new fcopy application based on uio driver Saurabh Sengar
2023-06-14 21:17 ` Greg KH
2023-06-14 18:15 ` [PATCH v2 4/5] tools: hv: Remove hv_fcopy_daemon Saurabh Sengar
2023-06-14 18:15 ` [PATCH v2 5/5] Drivers: hv: Remove fcopy driver Saurabh Sengar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1686766512-2589-1-git-send-email-ssengar@linux.microsoft.com \
--to=ssengar@linux.microsoft.com \
--cc=corbet@lwn.net \
--cc=decui@microsoft.com \
--cc=gregkh@linuxfoundation.org \
--cc=haiyangz@microsoft.com \
--cc=kys@microsoft.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-hyperv@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mikelley@microsoft.com \
--cc=wei.liu@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).