On 12/14/12 14:45, Paolo Bonzini wrote: > Il 14/12/2012 14:18, Gerd Hoffmann ha scritto: >> Hi, >> >>> { 'enum': 'ChardevFileMode', 'data': >>> # pty = console under Windows >>> # serial = tty under POSIX >>> [ 'file', 'pipe', 'parport', 'pty', 'serial' ] } >> >> Hmm, why this enum? I'd stay close to -chardev, i.e. specify the type >> by backend name. > > Because... > >>> { 'enum: 'ChardevFileSource', 'data': >>> [ 'path', 'fd' ] } >> >> I guess I'd just create a new backend type for file descriptor passing >> instead of fitting that into all the existing ones. > > ... are you passing a file descriptor for a pipe, a file or a > parallel/serial port?
The open function of the file-based backends basically do (1) create file handles and (2) call qemu_chr_open_fd(). So of you already have an fd the differences are gone. Well, almost. tty has an special ioctl callback to configure line speed. cheers, Gerd