The DFWD process encountered an error while trying to send an interface configuration to the kernel over the routing socket.
The issue is triggered during activation or deactivation of GRES, where DFWD handles filter additions and deletions. In a rare scenario, DFWD identifies a configuration delta to push to the kernel. However, during this process, the filter may get deleted before being applied, causing the filter state update to fail. As part of recovery, the daemon re-adds the filter state. But when it attempts to push the filter header (HEAD) to the kernel, it fails because the filter has already been deleted. Unlike the state object, the HEAD is not re-added, and the process exits. At this point, only the filter state blob remains in the system, leading to inconsistencies. Due to these inconsistencies, DFWD logs error messages, and filter programming issues may occur if filters with the same index are re-added.
The issue can be detected by auditing logs for DFWD_CONFIG_WRITE_FAILED: Failed to write firewall filter configuration for FILTER idx=X owned by CLI. Error: File exists. Please note that the presence of this error message alone does not necessarily indicate a problem.
Recovery for this issue is to delete the filter and re-add it with the different name.