• P
    chardev/char-fe: Allow NULL chardev in qemu_chr_fe_init() · 12051d82
    Peter Maydell 提交于
    All the functions in char-fe.c handle the CharBackend
    having a NULL Chardev pointer, which means that the
    backend exists but is not connected to anything. The
    exception is qemu_chr_fe_init(), which will crash if
    passed a NULL Chardev pointer argument. This can happen
    for various boards if they're started with 'nodefaults':
     arm-softmmu/qemu-system-arm -S -nodefaults -M cubieboard
     riscv32-softmmu/qemu-system-riscv32 -nodefaults -M sifive_e
    
    Make qemu_chr_fe_init() accept a NULL chardev. This allows
    UART models to handle NULL chardev properties without
    generally needing to special case them or to manually
    create a NullChardev.
    Reported-by: NThomas Huth <thuth@redhat.com>
    Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
    Message-Id: <20180323152948.27048-1-peter.maydell@linaro.org>
    Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
    12051d82
char-fe.c 8.7 KB