<div><br>Hello, <br>I reviewed intel driver in Mesa7.2 and found there seems a problem in <br>======================================================<br>intel_region_release(struct intel_region **region)<br>{<br>   if (!*region)<br>      return;<br><br>   DBG("%s %d\n", __FUNCTION__, (*region)->refcount - 1);<br><br>   ASSERT((*region)->refcount > 0);<br>   (*region)->refcount--;<br><br>   if ((*region)->refcount == 0) {<br>      assert((*region)->map_refcount == 0);<br><br>      if ((*region)->pbo)<br>     (*region)->pbo->region = NULL;<br>      (*region)->pbo = NULL;<br>      dri_bo_unreference((*region)->buffer);<br>      free(*region);<br>   }<br>   *region = NULL;<br>}<br>==========================================<br>If there are two contexts made current on this region of rb, after "(*region)->refcount--;"  is it possible refcount still be larger than "0", and it will not be free then leaked?<br><br>thanks,<br><br><br></div><br><br><span title="neteasefooter"/><hr/>
<a href="http://fanxian.163.com/fanxian/?keyfrom=163mail.footer">网易邮箱用户购物独享现金返还</a>
</span>