Hi! > Commit ea3d8465ab9b ("tty: n_gsm: Allow ADM response in addition to UA for > control dlci") added support for DLCI to stay in Asynchronous Disconnected > Mode (ADM). But we still get long delays waiting for commands to other > DLCI to complete: > > --> 5) C: SABM(P) > Q> 0) C: UIH(F) > Q> 0) C: UIH(F) > Q> 0) C: UIH(F) > ... > > This happens because gsm_control_send() sets cretries timer to T2 that is > by default set to 34. This will cause resend for T2 times for the control > frame. In ADM mode, we will never get a response so the control frame, so > retries are just delaying all the commands. > > Let's fix the issue by setting DLCI_MODE_ADM flag after detecting the ADM > mode for the control DLCI. Then we can use that in gsm_control_send() to > set retries to 1. This means the control frame will be sent once allowing > the other end at an opportunity to switch from ADM to ABM mode. > > Note that retries will be decremented in gsm_control_retransmit() so > we don't want to set it to 0 here. Thanks! I guess I'd like to test this on Droid4; there are fso-gsm0710muxd and gsm0710muxd packages in Debian, but I assume those do multiplexing in userspace and thus are not suitable? Do you have a tool to use and a script? Thanks and best regards, Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
Attachment:
signature.asc
Description: Digital signature