)]}'
{
  "commit": "dd67d32dbc5de299d70cc9e10c6c1e29ffa56b92",
  "tree": "1c43ae45d54e0be328546df95fc4e29c150fcdf8",
  "parents": [
    "5edee61edeaaebafe584f8fb7074c1ef4658596b"
  ],
  "author": {
    "name": "Tejun Heo",
    "email": "tj@kernel.org",
    "time": "Tue Oct 16 15:03:14 2012 -0700"
  },
  "committer": {
    "name": "Tejun Heo",
    "email": "tj@kernel.org",
    "time": "Tue Oct 16 15:03:14 2012 -0700"
  },
  "message": "freezer: add missing mb\u0027s to freezer_count() and freezer_should_skip()\n\nA task is considered frozen enough between freezer_do_not_count() and\nfreezer_count() and freezers use freezer_should_skip() to test this\ncondition.  This supposedly works because freezer_count() always calls\ntry_to_freezer() after clearing %PF_FREEZER_SKIP.\n\nHowever, there currently is nothing which guarantees that\nfreezer_count() sees %true freezing() after clearing %PF_FREEZER_SKIP\nwhen freezing is in progress, and vice-versa.  A task can escape the\nfreezing condition in effect by freezer_count() seeing !freezing() and\nfreezer_should_skip() seeing %PF_FREEZER_SKIP.\n\nThis patch adds smp_mb()\u0027s to freezer_count() and\nfreezer_should_skip() such that either %true freezing() is visible to\nfreezer_count() or !PF_FREEZER_SKIP is visible to\nfreezer_should_skip().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: stable@vger.kernel.org\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d09af4b67cf121ad91fd4ca02bec01560b6110fd",
      "old_mode": 33188,
      "old_path": "include/linux/freezer.h",
      "new_id": "ee899329e65a6e43320ddfbedd38f427f6d39125",
      "new_mode": 33188,
      "new_path": "include/linux/freezer.h"
    }
  ]
}
