From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stephen Hemminger Subject: Re: [RFC] Add hot plug event in rte eal interrupt and inplement it in i40e driver. Date: Thu, 29 Jun 2017 10:27:48 -0700 Message-ID: <20170629102748.2b5caa72@xeon-e3> References: <1495986280-26207-1-git-send-email-jia.guo@intel.com> <20170530071400.GN14914@bidouze.vm.6wind.com> <9BB6961774997848B5B42BEC655768F810D9C9FA@SHSMSX103.ccr.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: =?UTF-8?B?R2HDq3Rhbg==?= Rivet , "Guo, Jia" , "Zhang, Helin" , "Richardson, Bruce" , "Ananyev, Konstantin" , "Liu, Yuanhan" , "dev@dpdk.org" To: "Wu, Jingjing" Return-path: Received: from mail-pg0-f46.google.com (mail-pg0-f46.google.com [74.125.83.46]) by dpdk.org (Postfix) with ESMTP id E452A5699 for ; Thu, 29 Jun 2017 19:27:52 +0200 (CEST) Received: by mail-pg0-f46.google.com with SMTP id t186so51343653pgb.1 for ; Thu, 29 Jun 2017 10:27:52 -0700 (PDT) In-Reply-To: <9BB6961774997848B5B42BEC655768F810D9C9FA@SHSMSX103.ccr.corp.intel.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Wed, 7 Jun 2017 07:40:37 +0000 "Wu, Jingjing" wrote: > > > > > >Secondly, in order to read out the uevent that monitoring, we need to add uevent API in rte > > layer. We plan add 2 , rte_uevent_connect and rte_get_uevent. All driver interrupt handler > > could use these API to enable the uevent monitoring, and read out the uevent type , then > > corresponding to handle these uevent, such as detach the device when get the remove type. > > > > > > > I find having a generic uevent API interesting. > > > > However, all specifics pertaining to UIO use (hotplug_fd, subsystem > > enum) should stay in UIO specific code (eal_pci_uio.c?). > > > Yes, but it can be also considered as interrupt mechanism, right? > > > I am currently moving the PCI bus out of the EAL. EAL subsystems should > > not rely on PCI specifics, as they won't be available afterward. > > Will the interrupt handling be kept in EAL, right? > > > It should also allow you to clean up your API. Exposing hotplug_fd and > > requiring PMDs to link it can be avoided and should result in a simpler > > API. You were right given the current model this is the correct way to do it. It would be good if the interrupt model stuff could be moved back into EAL so that if device is removed, no code in driver needs to be added. All the bus -> device -> interrupt state is visible, and EAL should be able to unwind from there. Thinking more of the Linux model where there is no need (in general) for hot plug specific code in each driver.