Odd, iirc works on my image, an arch linux derivative. I think what I did was set up getty to just work on the USB gadget serial interface, then getty sould only run when the device file appears, which is slow given the clunky way that USB gadget comes up.
Iirc, I had several problems with the slow speed of USB gadget coming up, and solution for both serial and ethernet, was just to ensure startup is conditional on the relevant device appearing …
I’m travelling right now, but will post my method when I return.