--- v11
+++ v9
@@ -13,7 +13,7 @@
introducing a new socket address family AF_HYPERV.
You can also get the patch by:
-https://github.com/dcui/linux/commits/decui/hv_sock/net-next/20160512_v10
+https://github.com/dcui/linux/commits/decui/hv_sock/net-next/20160502_v09
Note: the VMBus driver side's supporting patches have been in the mainline
tree.
@@ -103,66 +103,26 @@
sock_no_setsockopt/sock_no_getsockopt
- inline'd some small list helper functions
-Changes since v9
-- minimized struct hvsock_sock by making the send/recv buffers pointers.
- the buffers are allocated by kmalloc() in __hvsock_create() now.
-- minimized the sizes of the send/recv buffers and the vmbus ringbuffers.
-
-Changes since v10
-
-1) add module params: send_ring_page, recv_ring_page. They can be used to
-enlarge the ringbuffer size to get better performance, e.g.,
-# modprobe hv_sock recv_ring_page=16 send_ring_page=16
-By default, recv_ring_page is 3 and send_ring_page is 2.
-
-2) add module param max_socket_number (the default is 1024).
-A user can enlarge the number to create more than 1024 hv_sock sockets.
-By default, 1024 sockets take about 1024 * (3+2+1+1) * 4KB = 28M bytes.
-(Here 1+1 means 1 page for send/recv buffers per connection, respectively.)
-
-3) implement the TODO in hvsock_shutdown().
-
-4) fix a bug in hvsock_close_connection():
- I remove "sk->sk_socket->state = SS_UNCONNECTED;" -- actually this line
-is not really useful. For a connection triggered by a host app’s connect(),
-sk->sk_socket remains NULL before the connection is accepted by the server
-app (in Linux VM): see hvsock_accept() -> hvsock_accept_wait() ->
-sock_graft(connected, newsock). If the host app exits before the server
-app’s accept() returns, the host can send a rescind-message to close the
-connection and later in the Linux VM’s message handler
-i.e. vmbus_onoffer_rescind()), Linux will get a NULL de-referencing crash.
-
-5) fix a bug in hvsock_open_connection()
- I move the vmbus_set_chn_rescind_callback() to a later place, because
-when vmbus_open() fails, hvsock_close_connection() can do nothing and we
-count on vmbus_onoffer_rescind() -> vmbus_device_unregister() to clean up
-the device.
-
-6) some stylistic modificiation.
-
-Dexuan Cui (1):
+Dexuan Cui (2):
hv_sock: introduce Hyper-V Sockets
+ net: add the AF_HYPERV entries to family name tables
MAINTAINERS | 2 +
- include/linux/hyperv.h | 14 +
- include/linux/socket.h | 4 +-
- include/net/af_hvsock.h | 78 +++
+ include/linux/hyperv.h | 16 +
+ include/linux/socket.h | 5 +-
+ include/net/af_hvsock.h | 55 ++
include/uapi/linux/hyperv.h | 25 +
net/Kconfig | 1 +
net/Makefile | 1 +
+ net/core/sock.c | 6 +-
net/hv_sock/Kconfig | 10 +
net/hv_sock/Makefile | 3 +
- net/hv_sock/af_hvsock.c | 1520 +++++++++++++++++++++++++++++++++++++++++++
- 10 files changed, 1657 insertions(+), 1 deletion(-)
+ net/hv_sock/af_hvsock.c | 1434 +++++++++++++++++++++++++++++++++++++++++++
+ 11 files changed, 1553 insertions(+), 5 deletions(-)
create mode 100644 include/net/af_hvsock.h
create mode 100644 net/hv_sock/Kconfig
create mode 100644 net/hv_sock/Makefile
create mode 100644 net/hv_sock/af_hvsock.c
--
-2.7.4
-
-_______________________________________________
-devel mailing list
-devel@linuxdriverproject.org
-http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
+2.1.0