Hi Hiroshi-san, Please see my comments below.
On 03/11/2014 06:37 AM, Hiroshi Shimamoto wrote: > From: Hiroshi Shimamoto <h-shimamoto at ct.jp.nec.com> > > There is a race condition, on transmit to vSwitch. I think we should not talk specifically about vSwitch, as another implementation of host memnic is possible. Maybe using the term "host" is more appropriate? > + if (idx != ACCESS_ONCE(adapter->down_idx)) { > + /* > + * vSwitch freed this and got false positive, > + * need to recover the status and retry. > + */ > + p->status = MEMNIC_PKT_ST_FREE; > + goto retry; > + } > + The patch indeed looks to improve reliability, even if it's difficult to me to be sure that there is no other race condition. Again, I would replace "vSwitch" by "host". By the way, I guess the Linux code in linux/memnic_net.c should be modified in the same way. Regards, Olivier