The sub-assembly will not be under-defined in a top-level-assembly unless you don't fully mate it (or fix it).
Your rotating components are, most likely, what's under-defining your sub-assembly.
Hope this info helps
Yes, exactly this.
I have tried Ctrl+Q but it did not change anything in regards to the under defined status.
If you compress the history tree on the main feature tree of your assembly it will show what could be under defining your assembly. With the tree collapsed it gives you a visual of the parent child relationship of your assembly. Your sub assembly internal mates should have no bearing on whether or not the top level assembly is defined or not. Look for any ( -) signs next to subs or parts in the tree.
I would also check the mates folder for your top level assembly to make sure there is not a main defining mate that is suppressed.