Skip to content

Commit

Permalink
scsi: ufs: ufshcd: fix potential NULL pointer dereference in ufshcd_c…
Browse files Browse the repository at this point in the history
…onfig_vreg

_vreg_ is being dereferenced before it is null checked, hence there is a
potential null pointer dereference.

Fix this by moving the pointer dereference after _vreg_ has been null
checked.

This issue was detected with the help of Coccinelle.

Fixes: aa49761 ("ufs: Add regulator enable support")
Signed-off-by: Gustavo A. R. Silva <garsilva@embeddedor.com>
Reviewed-by: Subhash Jadavani <subhashj@codeaurora.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
  • Loading branch information
Gustavo A. R. Silva authored and Martin K. Petersen committed Nov 22, 2017
1 parent e471729 commit 7275359
Showing 1 changed file with 5 additions and 2 deletions.
7 changes: 5 additions & 2 deletions drivers/scsi/ufs/ufshcd.c
Original file line number Diff line number Diff line change
Expand Up @@ -6559,12 +6559,15 @@ static int ufshcd_config_vreg(struct device *dev,
struct ufs_vreg *vreg, bool on)
{
int ret = 0;
struct regulator *reg = vreg->reg;
const char *name = vreg->name;
struct regulator *reg;
const char *name;
int min_uV, uA_load;

BUG_ON(!vreg);

reg = vreg->reg;
name = vreg->name;

if (regulator_count_voltages(reg) > 0) {
min_uV = on ? vreg->min_uV : 0;
ret = regulator_set_voltage(reg, min_uV, vreg->max_uV);
Expand Down

0 comments on commit 7275359

Please sign in to comment.