From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id 95B44C13E for ; Tue, 16 Feb 2016 15:48:34 +0100 (CET) Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga103.fm.intel.com with ESMTP; 16 Feb 2016 06:48:33 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.22,455,1449561600"; d="scan'208";a="48730842" Received: from irvmail001.ir.intel.com ([163.33.26.43]) by fmsmga004.fm.intel.com with ESMTP; 16 Feb 2016 06:48:32 -0800 Received: from sivlogin002.ir.intel.com (sivlogin002.ir.intel.com [10.237.217.37]) by irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id u1GEmVTA011187; Tue, 16 Feb 2016 14:48:31 GMT Received: from sivlogin002.ir.intel.com (localhost [127.0.0.1]) by sivlogin002.ir.intel.com with ESMTP id u1GEmVTw016371; Tue, 16 Feb 2016 14:48:31 GMT Received: (from fyigit@localhost) by sivlogin002.ir.intel.com with œ id u1GEmUMp016367; Tue, 16 Feb 2016 14:48:30 GMT X-Authentication-Warning: sivlogin002.ir.intel.com: fyigit set sender to ferruh.yigit@intel.com using -f Date: Tue, 16 Feb 2016 14:48:30 +0000 From: Ferruh Yigit To: dev@dpdk.org, stephen@networkplumber.org, aconole@redhat.com, pmatilai@redhat.com, rolette@infiniteio.com, christian.ehrhardt@canonical.com Message-ID: <20160216144830.GA2297@sivlogin002.ir.intel.com> Mail-Followup-To: dev@dpdk.org, stephen@networkplumber.org, aconole@redhat.com, pmatilai@redhat.com, rolette@infiniteio.com, christian.ehrhardt@canonical.com MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.17 (2007-11-01) Subject: [dpdk-dev] Replacing KCP (Kernel Control Path) out-of-tree kernel module with in-kernel module X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Feb 2016 14:48:35 -0000 This is continuation of previous mail thread: http://dpdk.org/ml/archives/dev/2016-February/032701.html Since there were no comments, I want to give another try, this can be good opportunity to escape from out-of-kernel Linux module. First high level important question: - Do you think will Linux community welcome a network driver that enables/supports userspace network driver? And let me rephrase what I have in my mind: - Implement a Linux network driver, that uses rtnetlink, so that userspace applications can create network interfaces. - This driver implements net_device_ops as a forwarding layer to userspace; using netlink sockets. - Each userspace network driver has a unique identifier. - Userspace drivers listens netlink group created by kernel driver. - An application, or userspace driver itself, attaches userspace driver, by providing its unique id, to the created network interface. This associates network interface to userspace driver. - After this point userspace driver detects its own id in netlink messages and responds back to the requests. - Anytime userspace driver can be detached and network interface can be removed by a userspace application. I believe this can work, but not sure if this worths to the investment because this can be quite some work. Also not sure if this gets accepted by Linux upstream. I would like to have some support/feedback to undertake something like this. Any comment is welcome. Thanks, ferruh