Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: serial console



On 14 ÐÐÑÑÐ 2009 21:31:59 Maciej Kazulak wrote:
> ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon
> echo ...}) = 0 ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost
> isig icanon echo ...}) = 0 ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS,
> {B38400 opost isig icanon echo ...}) = 0 readlink("/proc/self/fd/0",
> "/dev/ttyS1"..., 4095) = 10
> open("/dev/ttyS1", O_RDWR|O_NOCTTY
>
> And it stops there.

Which implies, that

- terminal is in -clocal mode
- carrier detect signal is not present

There are two issues here

- OS seems to lie. In -clocal mode lack of carrier detect should result 
in HUP signal and no communication should be possible.

- should zsh really reopen terminal? If we need additional fd, it could 
just dup() it?

Interesting, Mandriva RPM has patch that opens tty with O_NONBLOCK; 
presumably exactly to work around this issue. I am still not convinced 
that it is the right way; I would really like to understand what happens 
with tty driver. Could you dump full contents of struct termios *? I 
believe in Linux it should be something like

strace -e verbose=ioctl ...

Attachment: signature.asc
Description: This is a digitally signed message part.



Messages sorted by: Reverse Date, Date, Thread, Author