Hello.
A simple way would be to use global variables, but here is another way. Please note that in this example, the main VI cannot stop the loop in the subVI; since you said you had already achieved that I didn't worry about that part, just the part of the subVI stopping the main VI's loop.
Here are a pair of VIs. When the subVI's loop finishes, the subVI finishes execution (which is a requirement for this method) and changes an indicator in the main VI. The value of this indicator is read by a local variable and used to stop the loop in the main VI.
Hope this helps.