mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-14 09:47:20 +00:00
csr1212: check results of keyval reads
csr1212_parse_csr() did not properly check return values when reading keyvals. Fix this by using _csr1212_read_keyval() instead of csr1212_get_keyval() and checking the return code. Signed-off-by: Jody McIntyre <scjody@steamballoon.com>
This commit is contained in:
parent
b12479ddce
commit
5303a986c3
@ -1610,15 +1610,16 @@ int csr1212_parse_csr(struct csr1212_csr *csr)
|
||||
csr->root_kv->valid = 0;
|
||||
csr->root_kv->next = csr->root_kv;
|
||||
csr->root_kv->prev = csr->root_kv;
|
||||
csr1212_get_keyval(csr, csr->root_kv);
|
||||
ret = _csr1212_read_keyval(csr, csr->root_kv);
|
||||
if (ret != CSR1212_SUCCESS)
|
||||
return ret;
|
||||
|
||||
/* Scan through the Root directory finding all extended ROM regions
|
||||
* and make cache regions for them */
|
||||
for (dentry = csr->root_kv->value.directory.dentries_head;
|
||||
dentry; dentry = dentry->next) {
|
||||
if (dentry->kv->key.id == CSR1212_KV_ID_EXTENDED_ROM) {
|
||||
csr1212_get_keyval(csr, dentry->kv);
|
||||
|
||||
ret = _csr1212_read_keyval(csr, dentry->kv);
|
||||
if (ret != CSR1212_SUCCESS)
|
||||
return ret;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user