Hi Anatoly, > -----Original Message----- > From: Burakov, Anatoly > Sent: Monday, December 11, 2017 6:00 PM > To: Tan, Jianfeng; dev@dpdk.org > Cc: Richardson, Bruce; Ananyev, Konstantin; tho...@monjalon.net > Subject: Re: [PATCH 0/3] generic channel for multi-process communication > > On 30-Nov-17 6:44 PM, Jianfeng Tan wrote: > > This patchset adds a generic channel for multi-process (primary/secondary) > > communication. > > > > Patch 1: addess the purpose and howto; > > Patch 2: add a syncrhonous way for those messages which need a response > immediately. > > Patch 3: Rework vfio to use this generic communication channel. > > > > Hi Jianfeng, > > Just a general comment: I am assuming this has the limitation of > "everything happens through primary process's involvement". This will > work for VFIO, as secondary always needs to ask the primary before doing > anything, but it doesn't address other issues that could have been > addressed with IPC. > > For example, if a primary process would've hotplugged a device, it can't > notify all secondary processes about this; rather, it has to wait until > secondary processes ask for this info.
No need to wait the secondary to pull such info. It can work like this: (1) Register a hotplug callback for each process at initialization; (2) Whenever a process wants to hotplug a device, it will broadcast the info, by broadcast, I mean: - if plugin happens at the primary, the primary will tell all of the secondary processes; - if plugin happens at one secondary, it will firstly tell the primary, and the primary will broadcast it to all the secondary process. > Neither can it do anything if > secondary requests a primary to do something, and notify other secondary > processes about it (i.e. if secondary wants to hotplug a device, but > there are other secondaries also running). It would be great to have a > standard way of doing things like this in future revisions of our IPC. Please review above thing; If you are OK with that, I'll include this in the next version. Thanks, Jianfeng > > -- > Thanks, > Anatoly