The problem here is that applications linked to the cgmanager client library are not calling nih_main_loop(). That's a problem because the nih-dbus code calls nih_main_loop_interrupt() which adds a byte to the main loop interrupt pipe. After 65536 bytes have been added to that pipe, the next call to nih_main_loop_interrupt() will result in the repeated EAGAIN shown above.
The correct solution is for the clients to use an nih main loop.
The problem here is that applications linked to the cgmanager client library are not calling nih_main_loop(). That's a problem because the nih-dbus code calls nih_main_ loop_interrupt( ) which adds a byte to the main loop interrupt pipe. After 65536 bytes have been added to that pipe, the next call to nih_main_ loop_interrupt( ) will result in the repeated EAGAIN shown above.
The correct solution is for the clients to use an nih main loop.