Re: Test-case "./tests/basic/tier/tier-file-create.t" hung

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 04/12/2016 05:31 PM, Jeff Darcy wrote:
This is a memory corruption issue which is already reported and there is a
patch by Pranith in 3.7 [1] waiting to get reviews. Patch [1] will solve the
issue .
[1] : http://review.gluster.org/#/c/13574/
That patch seems to be about making and modifying a copy of xattr_req,
instead of modifying the original.  How exactly does that avoid memory
corruption?  Was some code (not that which changed) keeping a pointer
to gfid-req in its original location after that had been freed?
tier can lead to parallel lookups in two different epoll threads on hot/cold tiers. The race-window to hit the common-dictionary in lookup use-after-free is too low without dict_copy_with_ref() in either ec/afr. In either afr/ec side one thread should be executing dict_serialization in client while the other thread should be doing dict_set(). With dict_copy_with_ref() in ec probability to hit the issue is more. Once the patch in afr is also merged, there is no race anymore. We still need a neat way to fix this problem though. I mean at the dict infra level.

Pranith
_______________________________________________
Gluster-devel mailing list
Gluster-devel@xxxxxxxxxxx
http://www.gluster.org/mailman/listinfo/gluster-devel



[Index of Archives]     [Gluster Users]     [Ceph Users]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux