)]}'
{
  "commit": "849a1cf13d4394d398d91752166e92e9ecd64f8d",
  "tree": "475c08721cb327b924035144f771dd2d85eda0cd",
  "parents": [
    "11fcee0293a6d9f0973e04f8b3fb6cd15a55bcce"
  ],
  "author": {
    "name": "Mi Jinlong",
    "email": "mijinlong@cn.fujitsu.com",
    "time": "Tue Aug 30 17:18:41 2011 +0800"
  },
  "committer": {
    "name": "J. Bruce Fields",
    "email": "bfields@redhat.com",
    "time": "Wed Sep 14 08:21:48 2011 -0400"
  },
  "message": "SUNRPC: Replace svc_addr_u by sockaddr_storage\n\nFor IPv6 local address, lockd can not callback to client for\nmissing scope id when binding address at inet6_bind:\n\n 324       if (addr_type \u0026 IPV6_ADDR_LINKLOCAL) {\n 325               if (addr_len \u003e\u003d sizeof(struct sockaddr_in6) \u0026\u0026\n 326                   addr-\u003esin6_scope_id) {\n 327                       /* Override any existing binding, if another one\n 328                        * is supplied by user.\n 329                        */\n 330                       sk-\u003esk_bound_dev_if \u003d addr-\u003esin6_scope_id;\n 331               }\n 332\n 333               /* Binding to link-local address requires an interface */\n 334               if (!sk-\u003esk_bound_dev_if) {\n 335                       err \u003d -EINVAL;\n 336                       goto out_unlock;\n 337               }\n\nReplacing svc_addr_u by sockaddr_storage, let rqstp-\u003erq_daddr contains more info\nbesides address.\n\nReviewed-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nReviewed-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Mi Jinlong \u003cmijinlong@cn.fujitsu.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b7c99bfb3da6dcb9897a85b201f1a2212b03bace",
      "old_mode": 33188,
      "old_path": "fs/lockd/host.c",
      "new_id": "6f29836ec0cbd81913cfda0f41852e3a4aa3fb4b",
      "new_mode": 33188,
      "new_path": "fs/lockd/host.c"
    },
    {
      "type": "modify",
      "old_id": "0cd346477f29ce511e7f8b5579090fbba797c52c",
      "old_mode": 33188,
      "old_path": "fs/nfsd/nfs4state.c",
      "new_id": "e7f83bd9b4a82b41bf300725564c2ff473b34dbc",
      "new_mode": 33188,
      "new_path": "fs/nfsd/nfs4state.c"
    },
    {
      "type": "modify",
      "old_id": "a78a51e93373549b1dcccbf03ac255fbe1e3e94f",
      "old_mode": 33188,
      "old_path": "include/linux/sunrpc/svc.h",
      "new_id": "d8d5d93071b3809315e48a567a93ae340d04c0a8",
      "new_mode": 33188,
      "new_path": "include/linux/sunrpc/svc.h"
    },
    {
      "type": "modify",
      "old_id": "bd31208bbb61b877b39e276c9e627548b6f2bcb7",
      "old_mode": 33188,
      "old_path": "net/sunrpc/svc_xprt.c",
      "new_id": "d86bb673e1f68be3da207fb252e86dbf5a26417d",
      "new_mode": 33188,
      "new_path": "net/sunrpc/svc_xprt.c"
    },
    {
      "type": "modify",
      "old_id": "767d494de7a262e40a59e8842ca316ae8a61059d",
      "old_mode": 33188,
      "old_path": "net/sunrpc/svcsock.c",
      "new_id": "dfd686eb0b7f2de3c75132e69194da8dfba7672a",
      "new_mode": 33188,
      "new_path": "net/sunrpc/svcsock.c"
    }
  ]
}
