You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
From my understanding to drop the hazard bag we use the atomic pointer at the start of the list and perform a CAS operation with the next node. But in order to get access to the next node, we have to dereference the head node. But in between the instructions of our head.load(), deref head to get next pointer and CAS. The head pointer could already be free'd, and then we would be trying to dereference a free'd pointer.
I can't think of any way to get around this. Is there anything I am missing?
The text was updated successfully, but these errors were encountered:
From my understanding to drop the hazard bag we use the atomic pointer at the start of the list and perform a CAS operation with the next node. But in order to get access to the next node, we have to dereference the head node. But in between the instructions of our head.load(), deref head to get next pointer and CAS. The head pointer could already be free'd, and then we would be trying to dereference a free'd pointer.
I can't think of any way to get around this. Is there anything I am missing?
The text was updated successfully, but these errors were encountered: