dm9000_release_board calls release_resource with the platform resource
instead of the requested resource:

db->addr_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
db->addr_req = request_mem_region(db->addr_res->start, i, pdev->name);

dm9000_release_board:

    if (db->addr_res != NULL) {
        release_resource(db->addr_res);
        kfree(db->addr_req);

With this behavior the kernel will crash on the second removal. The
attached patch fix this problem.


Signed-off-by: Dirk Opfer <[EMAIL PROTECTED]>

Attachment: dm9000-fix-release-ressource.patch
Description: Binary data

Reply via email to