)]}'
{
  "commit": "9549332df4ed4e761a1d41c83f2c25d28bb22431",
  "tree": "c1f3785ea480de4757f15cb125082a5ed786d202",
  "parents": [
    "e8a07c9d22afdace966353231d0273d29efe0890"
  ],
  "author": {
    "name": "David Howells",
    "email": "dhowells@redhat.com",
    "time": "Wed Oct 20 15:00:26 2021 +0100"
  },
  "committer": {
    "name": "David Howells",
    "email": "dhowells@redhat.com",
    "time": "Fri Jan 07 09:22:19 2022 +0000"
  },
  "message": "fscache: Implement cache registration\n\nImplement a register of caches and provide functions to manage it.\n\nTwo functions are provided for the cache backend to use:\n\n (1) Acquire a cache cookie:\n\n\tstruct fscache_cache *fscache_acquire_cache(const char *name)\n\n     This gets the cache cookie for a cache of the specified name and moves\n     it to the preparation state.  If a nameless cache cookie exists, that\n     will be given this name and used.\n\n (2) Relinquish a cache cookie:\n\n\tvoid fscache_relinquish_cache(struct fscache_cache *cache);\n\n     This relinquishes a cache cookie, cleans it and makes it available if\n     it\u0027s still referenced by a network filesystem.\n\nNote that network filesystems don\u0027t deal with cache cookies directly, but\nrather go straight to the volume registration.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nReviewed-by: Jeff Layton \u003cjlayton@kernel.org\u003e\ncc: linux-cachefs@redhat.com\nLink: https://lore.kernel.org/r/163819587157.215744.13523139317322503286.stgit@warthog.procyon.org.uk/ # v1\nLink: https://lore.kernel.org/r/163906889665.143852.10378009165231294456.stgit@warthog.procyon.org.uk/ # v2\nLink: https://lore.kernel.org/r/163967085081.1823006.2218944206363626210.stgit@warthog.procyon.org.uk/ # v3\nLink: https://lore.kernel.org/r/164021494847.640689.10109692261640524343.stgit@warthog.procyon.org.uk/ # v4\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f9722de32247ed4c4ba44b587ee910936c4e8fc1",
      "old_mode": 33188,
      "old_path": "fs/fscache/Makefile",
      "new_id": "d9fc22c180906c88c447e7e20723fcfab6e9f2a5",
      "new_mode": 33188,
      "new_path": "fs/fscache/Makefile"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8db77bb9f8e23a2b6d9a29693d8130b976b4aa2e",
      "new_mode": 33188,
      "new_path": "fs/fscache/cache.c"
    },
    {
      "type": "modify",
      "old_id": "f345bdb018baa5b38a2cf9df797638b86fde70f9",
      "old_mode": 33188,
      "old_path": "fs/fscache/internal.h",
      "new_id": "8fd39e7735fcb53daab834f7f836f5741e1ffae3",
      "new_mode": 33188,
      "new_path": "fs/fscache/internal.h"
    },
    {
      "type": "modify",
      "old_id": "4d866ac4177621a1ecede76e3ca206cf26821bd9",
      "old_mode": 33188,
      "old_path": "fs/fscache/proc.c",
      "new_id": "93b925709e09508053c36d5f2e90ca79b2394832",
      "new_mode": 33188,
      "new_path": "fs/fscache/proc.c"
    },
    {
      "type": "modify",
      "old_id": "d6910a913918f33102024ddfb5e1038ad5b18dab",
      "old_mode": 33188,
      "old_path": "include/linux/fscache-cache.h",
      "new_id": "18cd5c9877bbf64225f8e5008dd2ac98ecc86587",
      "new_mode": 33188,
      "new_path": "include/linux/fscache-cache.h"
    },
    {
      "type": "modify",
      "old_id": "fe214c5cc87f6cd7a2f4985248425afcd02dd7c7",
      "old_mode": 33188,
      "old_path": "include/trace/events/fscache.h",
      "new_id": "3b8e0597b2c130b4ba437a39e2752af70bffba9a",
      "new_mode": 33188,
      "new_path": "include/trace/events/fscache.h"
    }
  ]
}
