When trying to run ppp(8) inside a VM against a USB serial port on the host, it appears that CTS/RTS is not handled correctly. While cu(1) can talk to the modem without issue, ppp(8) just hangs. Setting ctsrts to false in ppp(8) works around this. On the host, ppp(8) works fine without disabling ctsrts.
The bhyve VM is managed with vm-bhyve, and the USB serial port is exposed to the VM by -lcom2,/dev/cuaU0. The USB serial port is:
umodem0 on uhub1
umodem0: <HUAWEI Technology HUAWEI Mobile, class 0/0, rev 2.00/1.02, addr 1> on
umodem0: data interface 0, has no CM over data, has no break
This is on 11.2-RELEASE with GENERIC.
Here's some more detail about the setup: https://lists.freebsd.org/pipermail/freebsd-stable/2018-July/089293.html
Right now I don't have a test case better than trying to set up this exact scenario.