On Wed, Nov 29, 2017 at 06:35:35AM +0000, Vishal Deep Ajmera wrote:
> On Thu, Nov 16, 2017 at 06:01:54AM +0000, Vishal Deep Ajmera wrote:
> > Today in OVS, when errors are encountered during the execution of an 
> > action the entire batch of packets may be deleted (for e.g. in 
> > processing push_tnl_action, if the port is not found in the port_cache 
> > of PMD). The remaining actions continue to be executed even though 
> > there are no packets to be processed.
> > It is assumed that the code dealing with each action checks that the 
> > batch is not empty before executing. Crashes may occur if the 
> > assumption is not met.
> > 
> > The patch makes OVS skip processing of further actions from the 
> > action-set once a batch is emptied. Doing so centralizes the check in 
> > one place and avoids the possibility of crashes.
> > 
> > Signed-off-by: Vishal Deep Ajmera <[email protected]>
> 
> Is this a bug fix or a precaution?  That is, are there actual cases in the 
> code today where such a crash occurs?
> 
> [Vishal] This is only a precaution. As of now, I do not see a case where a 
> crash 
> can happen if we continue to execute the actions on an empty batch. 
> However any new actions we add in future will need to take care of empty 
> batches.

OK, thanks.  Will you please make that clear in the commit message?  It
can be important when reading a commit message later to know whether it
fixes a bug.

> In the code, please do not add extra () where they are not needed:
>                 if (last_action || (batch->count == 0)) {
> 
> [Vishal] Should I spin a V2 patch addressing your comment ?

Please do, with an updated commit message too.

Thanks,

Ben.
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to