• Benjamin Herrenschmidt's avatar
    fsi: Don't use device_unregister() in fsi_master_register() · 265aac26
    Benjamin Herrenschmidt authored
    In the error path of fsi_master_register(), we currently
    use device_unregister(). This will cause the last reference
    to the structure to be dropped, thus freeing the enclosing
    structure, which isn't what the callers want.
    
    Use device_del() instead so that we return to the caller
    with a refcount of 1. The caller can then assume that it
    must use put_device() after a call to fsi_master_register()
    regardless of whether the latter suceeded or failed.
    Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
    265aac26
fsi-core.c 25 KB