Skip to main content
pprince
Staff
Staff
September 16, 2024

Troubleshooting Tip: cw_acd process spikes to 99% on FortiGate Firewall

  • September 16, 2024
  • 0 replies
  • 11051 views
Description

This article describes how to resolve an issue where cw_acd, a process that handles the wireless daemon for FortiAP, gets overloaded and shows heavy CPU spikes in a large-scale FortiAP-FortiGate Controller environment.

 

The spike can be seen on the FortiGate via the following CLI command:

 

diagnose sys top

 

process.png
Scope FortiGate/FortiAP v7.2 and above.
Solution
  1. Configure multiple processors for the wireless daemon (cw_acd).

It splits the total number of FortiAPs into smaller groups where each cw_acd process manages a group.

To configure multiple cw_acd processes in the global domain, use the following FortiGate CLI command:

 

config wireless-controller global

    set acd-process-count <0-32>

end

 

The process counts the maximum values to be set as per the following table:

 

p2.png

 

For example, if there are 200 FortiAPs managed by a FortiGate, use set acd-process-count 4.

 

  1. Alternatively, kill the cw_acd process from the FortiGate CLI and check if the APs come online. 

diagnose sys process pidof cw_acd  <--- This command is used to find process-id.
diagnose sys kill 11 <pid>

 

  1. Alternatively, below command can be used as well to kill the cw_acd process:

     

fnsysctl killall cw_acd   <--- This will kill all cw_acd processes that are running. 

 

Note: An issue with cw_acd stuck at 99% CPU usage has been addressed in FortiOS v7.4.8/v7.6.3.