)]}'
{
  "commit": "09fe83c7073f0c6d8268ecdc91e07972cea413e1",
  "tree": "840c9834aa9775c0e71ba3add07a985e236c1bf6",
  "parents": [
    "4c7ab87a2396d61beae362d5f0c900dfe452a6c9"
  ],
  "author": {
    "name": "Boqun Feng",
    "email": "boqun.feng@gmail.com",
    "time": "Tue Oct 29 09:28:46 2024 -0700"
  },
  "committer": {
    "name": "Boqun Feng",
    "email": "boqun.feng@gmail.com",
    "time": "Sun Jun 15 12:32:50 2025 -0700"
  },
  "message": "rust: sync: Add memory barriers\n\nMemory barriers are building blocks for concurrent code, hence provide\na minimal set of them.\n\nThe compiler barrier, barrier(), is implemented in inline asm instead of\nusing core::sync::atomic::compiler_fence() because memory models are\ndifferent: kernel\u0027s atomics are implemented in inline asm therefore the\ncompiler barrier should be implemented in inline asm as well. Also it\u0027s\ncurrently only public to the kernel crate until there\u0027s a reasonable\ndriver usage.\n\nSigned-off-by: Boqun Feng \u003cboqun.feng@gmail.com\u003e\n",
  "tree_diff": [
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "cdf28ce8e5116728c97e24893cf12ef41578d3ac",
      "new_mode": 33188,
      "new_path": "rust/helpers/barrier.c"
    },
    {
      "type": "modify",
      "old_id": "0e7e7b3880627f00a925622209762d4b263477c9",
      "old_mode": 33188,
      "old_path": "rust/helpers/helpers.c",
      "new_id": "928eca7fbbb4e0ca391e7bc3e058b06515f3d3ad",
      "new_mode": 33188,
      "new_path": "rust/helpers/helpers.c"
    },
    {
      "type": "modify",
      "old_id": "b620027e0641905b2391de6273cee6760bf4b4f3",
      "old_mode": 33188,
      "old_path": "rust/kernel/sync.rs",
      "new_id": "c7c0e552bafe0f5587a37fd3dfa2b60a6e65833c",
      "new_mode": 33188,
      "new_path": "rust/kernel/sync.rs"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "36a5c70e6716e4e52e5c686a2718622efb0b8458",
      "new_mode": 33188,
      "new_path": "rust/kernel/sync/barrier.rs"
    }
  ]
}
