)]}'
{
  "commit": "095f1fc4ebf36c64fddf9b6db29b1ab5517378e6",
  "tree": "39aae9d5b05d8501d1794e92c6115331c0a40848",
  "parents": [
    "2291990ab36b4b2d8a81b1f92e7a046e51632a60"
  ],
  "author": {
    "name": "Lee Schermerhorn",
    "email": "lee.schermerhorn@hp.com",
    "time": "Mon Apr 28 02:13:23 2008 -0700"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@linux-foundation.org",
    "time": "Mon Apr 28 08:58:24 2008 -0700"
  },
  "message": "mempolicy: rework shmem mpol parsing and display\n\nmm/shmem.c currently contains functions to parse and display memory policy\nstrings for the tmpfs \u0027mpol\u0027 mount option.  Move this to mm/mempolicy.c with\nthe rest of the mempolicy support.  With subsequent patches, we\u0027ll be able to\nremove knowledge of the details [mode, flags, policy, ...] completely from\nshmem.c\n\n1) replace shmem_parse_mpol() in mm/shmem.c with mpol_parse_str() in\n   mm/mempolicy.c.  Rework to use the policy_types[] array [used by\n   mpol_to_str()] to look up mode by name.\n\n2) use mpol_to_str() to format policy for shmem_show_mpol().  mpol_to_str()\n   expects a pointer to a struct mempolicy, so temporarily construct one.\n   This will be replaced with a reference to a struct mempolicy in the tmpfs\n   superblock in a subsequent patch.\n\n   NOTE 1: I changed mpol_to_str() to use a colon \u0027:\u0027 rather than an equal\n   sign \u0027\u003d\u0027 as the nodemask delimiter to match mpol_parse_str() and the\n   tmpfs/shmem mpol mount option formatting that now uses mpol_to_str().  This\n   is a user visible change to numa_maps, but then the addition of the mode\n   flags already changed the display.  It makes sense to me to have the mounts\n   and numa_maps display the policy in the same format.  However, if anyone\n   objects strongly, I can pass the desired nodemask delimeter as an arg to\n   mpol_to_str().\n\n   Note 2: Like show_numa_map(), I don\u0027t check the return code from\n   mpol_to_str().  I do use a longer buffer than the one provided by\n   show_numa_map(), which seems to have sufficed so far.\n\nSigned-off-by: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b0fab9e80655b919d65e55496bb9677daa3884bb",
      "old_mode": 33188,
      "old_path": "include/linux/mempolicy.h",
      "new_id": "dcc17378c9527dac0485b9a17689b18767c1fd33",
      "new_mode": 33188,
      "new_path": "include/linux/mempolicy.h"
    },
    {
      "type": "modify",
      "old_id": "3c8ee31572ec5c0dbbc1ee88a05c65642369d9ce",
      "old_mode": 33188,
      "old_path": "mm/mempolicy.c",
      "new_id": "155bb284dbf1b8c5f0b8e10b6ee2088d9abbb2d9",
      "new_mode": 33188,
      "new_path": "mm/mempolicy.c"
    },
    {
      "type": "modify",
      "old_id": "0b591c669b2de67527763e1f59c79d59021a1586",
      "old_mode": 33188,
      "old_path": "mm/shmem.c",
      "new_id": "3c620dc101357a04dc588d161b7503c3918d8a5b",
      "new_mode": 33188,
      "new_path": "mm/shmem.c"
    }
  ]
}
