From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755170AbbB0QOm (ORCPT ); Fri, 27 Feb 2015 11:14:42 -0500 Received: from mx1.redhat.com ([209.132.183.28]:34662 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754787AbbB0QOi (ORCPT ); Fri, 27 Feb 2015 11:14:38 -0500 From: Vitaly Kuznetsov To: "K. Y. Srinivasan" , devel@linuxdriverproject.org Cc: Haiyang Zhang , linux-kernel@vger.kernel.org, Dexuan Cui , =?UTF-8?q?Radim=20Kr=C4=8Dm=C3=A1=C5=99?= , Greg Kroah-Hartman , linux-api@vger.kernel.org Subject: [PATCH RFC 0/3] Drivers: hv: utils: re-implement the kernel/userspace communication layer Date: Fri, 27 Feb 2015 17:14:22 +0100 Message-Id: <1425053665-635-1-git-send-email-vkuznets@redhat.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This series converts kvp/vss daemons to use misc char devices instead of netlink for userspace/kernel communication and then updates fcopy to be consistent with kvp/vss. Userspace/kernel communication via netlink has a number of issues: - It is hard for userspace to figure out if the kernel part was loaded or not and this fact can change as there is a way to enable/disable the service from host side. Racy daemon startup is also a problem. - When the userspace daemon restarts/dies kernel part doesn't receive a notification. - Netlink communication is not stable under heavy load. - ... RFC: I'm a bit puzzled on how to split commits 1 and 2 avoiding breakages. Commit 3 can definitely be split, however, it is consistent with commits 1 and 2 at this moment and I'm not sure such split will simplify the review. Vitaly Kuznetsov (3): Drivers: hv: kvp: convert userspace/kernel communication to using char device Drivers: hv: vss: convert userspace/kernel communication to using char device Drivers: hv: fcopy: make it consistent with vss/kvp drivers/hv/hv_fcopy.c | 395 +++++++++++++++++++++++++------------------ drivers/hv/hv_kvp.c | 396 +++++++++++++++++++++++++++----------------- drivers/hv/hv_snapshot.c | 335 +++++++++++++++++++++++++++---------- include/uapi/linux/hyperv.h | 10 ++ tools/hv/hv_fcopy_daemon.c | 48 ++++-- tools/hv/hv_kvp_daemon.c | 187 ++++----------------- tools/hv/hv_vss_daemon.c | 141 +++------------- 7 files changed, 824 insertions(+), 688 deletions(-) -- 1.9.3