Hi,
using an MPU9250 and the Invensense motion driver (6.12), I'm able to put compass data in the fifo while DMP is enabled.
I achieved this result by changing the original fifo reset function: the slave 1 fifo bit must be enabled before activating the fifo and dmp features in user control register.
The resulting saved record is: 8 byte of compass data (compass status1 + 6 bytes of true data + compass status 2) followed by the original DMP record.