What determines the length of MAC PDU and how much I can multiplex SDUs in one PDU?

Hello experts.

From reading on MAC 5G NR it seems that several MAC SDUs can be fitted in one MAC PDU. For example a MAC PDU could be

Header SDU1 Header SDU2 … Header MAC CE … padding

Question is, what determines the length of MAC PDU and how much I can multiplex SDUs in one PDU? Can I multiplex different QoS flows in same PDU? Can I multiplex same QoS flows in same PDU?

Thank you very mich for any insights