)]}'
{
  "commit": "f44aebcc566d1d6275f7191867b9633dc11de2ee",
  "tree": "a5faaf5ca8e1360f359ee22ad29582992596c3e6",
  "parents": [
    "c05594b62125c528d93af3a78229793aae36df7f"
  ],
  "author": {
    "name": "Eric Paris",
    "email": "eparis@redhat.com",
    "time": "Wed Jul 15 15:49:52 2009 -0400"
  },
  "committer": {
    "name": "Eric Paris",
    "email": "eparis@redhat.com",
    "time": "Tue Jul 21 15:26:27 2009 -0400"
  },
  "message": "inotify: use GFP_NOFS under potential memory pressure\n\ninotify can have a watchs removed under filesystem reclaim.\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[ INFO: inconsistent lock state ]\n2.6.31-rc2 #16\n---------------------------------\ninconsistent {IN-RECLAIM_FS-W} -\u003e {RECLAIM_FS-ON-W} usage.\nkhubd/217 [HC0[0]:SC0[0]:HE1:SE1] takes:\n (iprune_mutex){+.+.?.}, at: [\u003cc10ba899\u003e] invalidate_inodes+0x20/0xe3\n{IN-RECLAIM_FS-W} state was registered at:\n  [\u003cc10536ab\u003e] __lock_acquire+0x2c9/0xac4\n  [\u003cc1053f45\u003e] lock_acquire+0x9f/0xc2\n  [\u003cc1308872\u003e] __mutex_lock_common+0x2d/0x323\n  [\u003cc1308c00\u003e] mutex_lock_nested+0x2e/0x36\n  [\u003cc10ba6ff\u003e] shrink_icache_memory+0x38/0x1b2\n  [\u003cc108bfb6\u003e] shrink_slab+0xe2/0x13c\n  [\u003cc108c3e1\u003e] kswapd+0x3d1/0x55d\n  [\u003cc10449b5\u003e] kthread+0x66/0x6b\n  [\u003cc1003fdf\u003e] kernel_thread_helper+0x7/0x10\n  [\u003cffffffff\u003e] 0xffffffff\n\nTwo things are needed to fix this.  First we need a method to tell\nfsnotify_create_event() to use GFP_NOFS and second we need to stop using\none global IN_IGNORED event and allocate them one at a time.  This solves\ncurrent issues with multiple IN_IGNORED on a queue having tail drop\nproblems and simplifies the allocations since we don\u0027t have to worry about\ntwo tasks opperating on the IGNORED event concurrently.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ec2f7bd76818411b7a64b2784e86abec2eb9611b",
      "old_mode": 33188,
      "old_path": "fs/notify/fsnotify.c",
      "new_id": "037e878e03fcac70005fd6da12f776c76d89b38f",
      "new_mode": 33188,
      "new_path": "fs/notify/fsnotify.c"
    },
    {
      "type": "modify",
      "old_id": "726118a5845b680ba06c6ab6c33d88c9876d05fc",
      "old_mode": 33188,
      "old_path": "fs/notify/inotify/inotify_user.c",
      "new_id": "f30d9bbc2e1bf80f61d16eaa46efc09a5f1bc8d5",
      "new_mode": 33188,
      "new_path": "fs/notify/inotify/inotify_user.c"
    },
    {
      "type": "modify",
      "old_id": "2b20feaf263a2db0dc756f5a47c925972b485f67",
      "old_mode": 33188,
      "old_path": "fs/notify/notification.c",
      "new_id": "521368574e97b5841ec90c52ae8b4215ddc36dd4",
      "new_mode": 33188,
      "new_path": "fs/notify/notification.c"
    },
    {
      "type": "modify",
      "old_id": "6c3de999fb3486b56bc677c3a359f23a4a2b66bf",
      "old_mode": 33188,
      "old_path": "include/linux/fsnotify_backend.h",
      "new_id": "4d6f47b51189742aedf4c5ef3f379ff2db7aead5",
      "new_mode": 33188,
      "new_path": "include/linux/fsnotify_backend.h"
    }
  ]
}
