aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ieee1394
diff options
context:
space:
mode:
authorJody McIntyre <scjody@steamballoon.com>2005-11-22 12:17:11 -0500
committerJody McIntyre <scjody@modernduck.com>2005-11-22 12:17:11 -0500
commit5303a986c33ae6c75d5ffb57d06ccf9246a8725a (patch)
tree9e305aeba9188fd0693be26a96ff1eb2efa09cbe /drivers/ieee1394
parentb12479ddce4aed112e0018fdf8bbb7cfb349ebdc (diff)
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>
Diffstat (limited to 'drivers/ieee1394')
-rw-r--r--drivers/ieee1394/csr1212.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/ieee1394/csr1212.c b/drivers/ieee1394/csr1212.c
index c0f8ed6fca8a..4812d59e8976 100644
--- a/drivers/ieee1394/csr1212.c
+++ b/drivers/ieee1394/csr1212.c
@@ -1610,15 +1610,16 @@ int csr1212_parse_csr(struct csr1212_csr *csr)
1610 csr->root_kv->valid = 0; 1610 csr->root_kv->valid = 0;
1611 csr->root_kv->next = csr->root_kv; 1611 csr->root_kv->next = csr->root_kv;
1612 csr->root_kv->prev = csr->root_kv; 1612 csr->root_kv->prev = csr->root_kv;
1613 csr1212_get_keyval(csr, csr->root_kv); 1613 ret = _csr1212_read_keyval(csr, csr->root_kv);
1614 if (ret != CSR1212_SUCCESS)
1615 return ret;
1614 1616
1615 /* Scan through the Root directory finding all extended ROM regions 1617 /* Scan through the Root directory finding all extended ROM regions
1616 * and make cache regions for them */ 1618 * and make cache regions for them */
1617 for (dentry = csr->root_kv->value.directory.dentries_head; 1619 for (dentry = csr->root_kv->value.directory.dentries_head;
1618 dentry; dentry = dentry->next) { 1620 dentry; dentry = dentry->next) {
1619 if (dentry->kv->key.id == CSR1212_KV_ID_EXTENDED_ROM) { 1621 if (dentry->kv->key.id == CSR1212_KV_ID_EXTENDED_ROM) {
1620 csr1212_get_keyval(csr, dentry->kv); 1622 ret = _csr1212_read_keyval(csr, dentry->kv);
1621
1622 if (ret != CSR1212_SUCCESS) 1623 if (ret != CSR1212_SUCCESS)
1623 return ret; 1624 return ret;
1624 } 1625 }