oss-tsukuba / gfarm

distributed file system for large-scale cluster computing and wide-area data sharing. provides fine-grained replica location control.
Other
32 stars 12 forks source link

theoretical race condition about peer_free() #454

Closed gfarm-admin closed 4 years ago

gfarm-admin commented 12 years ago

theoretically this problem can make gfmd crash,
but the window of the race condition is small,
and we never heard such symptom.

the race condition is:

  1. peer_free() is called before abstract_host_peer_unset() is called, because it's requested by peer_free_request()
  2. thus, host_sender_lock() or host_receiver_lock() succeeds against the freed peer
  3. crash

Reported by: n-soda

Original Ticket: gfarm/tickets/454

gfarm-admin commented 12 years ago

fixed in r6692 on the main trunk,
and in r6693 on the 2.5 branch

Original comment by: n-soda