diff options
Diffstat (limited to 'drivers/base/core.c')
| -rw-r--r-- | drivers/base/core.c | 3 | 
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/base/core.c b/drivers/base/core.c index 15986cc2fe5e..249da496581a 100644 --- a/drivers/base/core.c +++ b/drivers/base/core.c @@ -687,7 +687,8 @@ struct device_link *device_link_add(struct device *consumer,  {  	struct device_link *link; -	if (!consumer || !supplier || flags & ~DL_ADD_VALID_FLAGS || +	if (!consumer || !supplier || consumer == supplier || +	    flags & ~DL_ADD_VALID_FLAGS ||  	    (flags & DL_FLAG_STATELESS && flags & DL_MANAGED_LINK_FLAGS) ||  	    (flags & DL_FLAG_SYNC_STATE_ONLY &&  	     (flags & ~DL_FLAG_INFERRED) != DL_FLAG_SYNC_STATE_ONLY) ||  | 
