X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fextensions%2Fext_trans_mem.c;h=7fb816409eea055ea61984320d46cd65d52089c6;hb=2282a040e60b24d3fb7c48bb197c5bff6636df67;hp=5849f04db9b350df2d41e51022a8f7ed580379e8;hpb=f0b0012ea7e527abf517545e4280f19d6b6b5f1c;p=palacios.git diff --git a/palacios/src/extensions/ext_trans_mem.c b/palacios/src/extensions/ext_trans_mem.c index 5849f04..7fb8164 100644 --- a/palacios/src/extensions/ext_trans_mem.c +++ b/palacios/src/extensions/ext_trans_mem.c @@ -1742,9 +1742,7 @@ deinit_trans_mem_core (struct guest_info * core, v3_lock_deinit(&(tm->addr_ctxt_lock)); v3_lock_deinit(&(tm->access_type_lock)); - if (tm) { - V3_Free(tm); - } + V3_Free(tm); return 0; } @@ -1776,14 +1774,10 @@ tm_handle_xend (struct guest_info * core, /* XEND should raise a GPF when RTM mode is not on */ if (tm->TM_MODE != TM_ON) { TM_ERR(core, UD, "Encountered XEND while not in a transactional region\n"); - v3_free_staging_page(tm); - v3_clr_vtlb(core); - v3_clear_tm_lists(tm); - if (v3_raise_exception(core, GPF_EXCEPTION) == -1) { - TM_ERR(core, UD, "couldn't raise GPF\n"); - return -1; - } + + v3_raise_exception(core, GPF_EXCEPTION); return 0; + } /* Our transaction finished! */