mirror of
https://github.com/opennetworkinglab/onos.git
synced 2025-10-15 17:31:31 +02:00
Spec says: the default entry for a table is always set. It can be set at compile-time by the P4 programmer - or defaults to NoAction (which is a no-op) otherwise - and assuming it is not declared as const, can be modified by the P4Runtime client. Because the default entry is always set, we do not allow INSERT and DELETE updates on the default entry and the P4Runtime server must return an INVALID_ARGUMENT error code if the client attempts one. With this patch we convert insert or delete operations into modify ones (unless specified by a driver property, to support non-compliant devices). For delete, we use the interpreter to suggest a default action that is the same as the one when the pipeline was originally deployed. Also, we introduce the capability of synchronizing the device mirror with the device state. Change-Id: I3758fc11780eb0f1cf4ed5a295bd98b54b182e29