This is an automated email from Gerrit.

Matthias Welwarsky ([email protected]) just uploaded a new patch set to 
Gerrit, which you can find at http://openocd.zylin.com/3951

-- gerrit

commit ba2f4408ed6135ddd1f252f95965c668e5523969
Author: Matthias Welwarsky <[email protected]>
Date:   Thu Jan 19 16:57:04 2017 +0100

    arm_dpm: avoid duplicating the register cache
    
    This bug was already attempted to fix in an earlier patch but
    merging the "defer-examine" feature caused a regression, which this patch
    tries to fix again.
    
    Change-Id: Ie1ad1516f0d7f130d44e003d6c29dcc1a02a82ca
    Signed-off-by: Matthias Welwarsky <[email protected]>

diff --git a/src/target/arm_dpm.c b/src/target/arm_dpm.c
index 8ad6575..62c6175 100644
--- a/src/target/arm_dpm.c
+++ b/src/target/arm_dpm.c
@@ -972,11 +972,14 @@ int arm_dpm_setup(struct arm_dpm *dpm)
        arm->read_core_reg = arm_dpm_read_core_reg;
        arm->write_core_reg = arm_dpm_write_core_reg;
 
-       cache = arm_build_reg_cache(target, arm);
-       if (!cache)
-               return ERROR_FAIL;
+       /* avoid duplicating the register cache */
+       if (arm->core_cache == NULL) {
+               cache = arm_build_reg_cache(target, arm);
+               if (!cache)
+                       return ERROR_FAIL;
 
-       *register_get_last_cache_p(&target->reg_cache) = cache;
+               *register_get_last_cache_p(&target->reg_cache) = cache;
+       }
 
        /* coprocessor access setup */
        arm->mrc = dpm_mrc;

-- 

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
OpenOCD-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openocd-devel

Reply via email to