In this recent post Tim shares a time when he came across a case of "cyclic dependency injection" and how he handled it.
Cyclic dependency injection is your code asking you to make a choice rather than remain on the fence. Here’s a story of what happened in my case. I ran across a troubling case of cyclic dependency injection in the constructors of some code.
In his example, one object takes in another injected as a parameter to a method. The second object then takes in an instance of the first object as a parameter to one of its methods, the circular dependency. He shares both the original code that was performing this dependency issue as well as the refactored code showing his solution (hint: moving functionality around can be a good thing).