On Fri, Jun 20, 2014 at 02:19:58PM +0900, Daeseok Youn wrote:
> - rc = dgap_found_board(pdev, ent->driver_data, dgap_numboards);
> - if (rc)
> + brd = dgap_found_board(pdev, ent->driver_data, dgap_numboards);
> + if (IS_ERR(brd))
> return rc;
return ERR_PTR(brd);
>
> - brd = dgap_board[dgap_numboards++];
> rc = dgap_firmware_load(pdev, ent->driver_data, brd);
> if (rc)
> goto cleanup_brd;
> @@ -617,6 +617,8 @@ static int dgap_init_one(struct pci_dev *pdev, const
> struct pci_device_id *ent)
> brd->state = BOARD_READY;
> brd->dpastatus = BD_RUNNING;
>
> + dgap_board[dgap_numboards++] = brd;
You need to update the error handling of this function to remove the
reference do dgap_board[] as well.
> +
> return 0;
>
regards,
dan carpenter
_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel