Uploaded image for project: 'WiredTiger'
  1. WiredTiger
  2. WT-2578

remove write barriers from the TAILQ_INSERT_XXX macros

    • Type: Icon: Improvement Improvement
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • WT2.9.0, 3.2.10, 3.3.11
    • Affects Version/s: None
    • Component/s: None
    • None

      We added write barriers to the BSD TAILQ_INSERT_XXX functions, here's the comment in the include/queue.h file:

      Additionally, we've altered the TAILQ_INSERT_XXX functions to include a write barrier, in order to ensure we never insert a partially built structure onto a list (this is required because the spinlocks we use don't necessarily imply a write barrier).

      The changes for the PPC required all of our spinlocks to imply write barriers, and barriers in the macros are probably no longer required.

      If possible, we should remove those write barriers, and revert to using the unmodified BSD macros.

            Assignee:
            keith.bostic@mongodb.com Keith Bostic (Inactive)
            Reporter:
            keith.bostic@mongodb.com Keith Bostic (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: