mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 03:27:44 -04:00
soc: qcom: smp2p: Correct addressing of outgoing value
The valid_entries index should not be incremented until after we have
acquired the pointer to the value, or we will read and write data one
item off.
Fixes: 50e9964141 ("soc: qcom: smp2p: Qualcomm Shared Memory Point to Point")
Cc: [email protected]
Signed-off-by: Bjorn Andersson <[email protected]>
Signed-off-by: Andy Gross <[email protected]>
This commit is contained in:
parent
6be2b3d084
commit
63af8e44ea
1 changed files with 2 additions and 1 deletions
|
|
@ -344,11 +344,12 @@ static int qcom_smp2p_outbound_entry(struct qcom_smp2p *smp2p,
|
|||
/* Allocate an entry from the smem item */
|
||||
strlcpy(buf, entry->name, SMP2P_MAX_ENTRY_NAME);
|
||||
memcpy_toio(out->entries[out->valid_entries].name, buf, SMP2P_MAX_ENTRY_NAME);
|
||||
out->valid_entries++;
|
||||
|
||||
/* Make the logical entry reference the physical value */
|
||||
entry->value = &out->entries[out->valid_entries].value;
|
||||
|
||||
out->valid_entries++;
|
||||
|
||||
entry->state = qcom_smem_state_register(node, &smp2p_state_ops, entry);
|
||||
if (IS_ERR(entry->state)) {
|
||||
dev_err(smp2p->dev, "failed to register qcom_smem_state\n");
|
||||
|
|
|
|||
Loading…
Reference in a new issue