mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-05 00:33:55 -06:00
qemu-char: Print strerror message on failure
The only way for chardev drivers to communicate an error was to return a NULL pointer, which resulted in an error message that said _that_ something went wrong, but not _why_. This patch changes the interface to return 0/-errno and updates qemu_chr_open_opts to use strerror to display a more helpful error message. Signed-off-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
84682834eb
commit
6e1db57b2a
8 changed files with 117 additions and 83 deletions
|
@ -576,7 +576,7 @@ static void baum_close(struct CharDriverState *chr)
|
|||
qemu_free(baum);
|
||||
}
|
||||
|
||||
CharDriverState *chr_baum_init(QemuOpts *opts)
|
||||
int chr_baum_init(QemuOpts *opts, CharDriverState **_chr)
|
||||
{
|
||||
BaumDriverState *baum;
|
||||
CharDriverState *chr;
|
||||
|
@ -629,7 +629,8 @@ CharDriverState *chr_baum_init(QemuOpts *opts)
|
|||
|
||||
qemu_chr_generic_open(chr);
|
||||
|
||||
return chr;
|
||||
*_chr = chr;
|
||||
return 0;
|
||||
|
||||
fail:
|
||||
qemu_free_timer(baum->cellCount_timer);
|
||||
|
@ -638,5 +639,5 @@ fail_handle:
|
|||
qemu_free(handle);
|
||||
qemu_free(chr);
|
||||
qemu_free(baum);
|
||||
return NULL;
|
||||
return -EIO;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue