I ran into this very issue many moons ago. Good post by Vinay!
What does the RTD-1-ADDR_FLAP system message mean?
The RTD-1-ADDR_FLAP error message indicates that a MAC address is moving consistently between different ports. This error message is only applicable on the Catalyst 2900XL and 3500XL switches.
If users move from one Access Point (AP) to another and the MAC address shows up on a different switch port, the error messages are displayed. These messages do not necessarily mean that there is a problem. They are displayed for informational purposes only.
It is part of normal operation for a switch to re-learn the MAC address every time it is seen on a different port. This action always generates this message. The RTD-1-ADDR_FLAP system status messages should not necessarily be considered errors, particularly on ports where there are APs attached.
For example, if there are APs attached to ports 3/4 and 3/5, and clients associated to those APs are roaming back and forth between the two APs, the MAC addresses of the clients are truly moving back and forth between those two switch ports. The status messages are accurate, and there is no cause for alarm.
RTD-1-ADDR_FLAP [chars] relearning [dec] addrs per min
Normally, MAC addresses are learned once on a port. Occasionally, when a switched network reconfigures, due to either manual or STP reconfiguration, addresses learned on one port are relearned on a different port. However, if there is a port anywhere in the switched domain that is looped back to itself, addresses will jump back and forth between the real port and the port that is in the path to the looped back port. In this message, [chars] is the interface, and [dec] is the number of addresses being learnt.
Determine the real path (port) to the MAC address. Use the debug ethernet-controller addr command to see the alternate path-port on which the address is being learned. Go to the switch attached to that port. Note that the show cdp neighbors command is useful in determining the next switch. Repeat this procedure until the port is found that is receiving what it is transmitting, and remove that port from the network.