Check the return values of dgap_tty_register and dgap_finalize_board_init. If they fail for a particular board we should not be able to try to use that board. IE. no device entries shall be created for that board. Signed-off-by: Mark Hounschell <markh@xxxxxxxxxx> Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- drivers/staging/dgap/dgap.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/drivers/staging/dgap/dgap.c b/drivers/staging/dgap/dgap.c index 3b73238..2c7acee 100644 --- a/drivers/staging/dgap/dgap.c +++ b/drivers/staging/dgap/dgap.c @@ -882,8 +882,13 @@ static int dgap_firmware_load(struct pci_dev *pdev, int card_type) return -EINVAL; } - dgap_tty_register(brd); - dgap_finalize_board_init(brd); + ret = dgap_tty_register(brd); + if (ret) + return ret; + + ret = dgap_finalize_board_init(brd); + if (ret) + return ret; if (fw_info[card_type].bios_name) { ret = request_firmware(&fw, fw_info[card_type].bios_name, -- 1.8.4.5 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel