nvmem: core: Fix cell lookup when no cell is found
authorAlban Bedel <albeu@free.fr>
Mon, 28 Jan 2019 15:55:02 +0000 (15:55 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 31 Jan 2019 15:24:14 +0000 (16:24 +0100)
commit1c83267473b881cf75247acf1129456ef33aba86
tree4f070f823fed0fbb446221a19388429f549fb200
parent5087cc198e545ff9974b20daf2d43658f7711aa0
nvmem: core: Fix cell lookup when no cell is found

If the cell list is not empty and nvmem_find_cell_by_node/name() is
called for a cell that is not present in the list they will return an
invalid pointer instead of NULL. This happen because
list_for_each_entry() stop once it reach the list head again, but as
the list head is not contained in a struct nvmem_cell the iteration
variable then contains an invalid value.

This is easily solved by using a variable to iterate over the list and
one to return the cell found.

Signed-off-by: Alban Bedel <albeu@free.fr>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/nvmem/core.c