)]}'
{
  "log": [
    {
      "commit": "d5a8620f7c8a5bcade730e2fa1224191f289fb00",
      "tree": "40fc44449ff6553af283df00f804bc7d4ce356af",
      "parents": [
        "1673d0de40ab46cac3b456ad50e1c8d6a31bfd66"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 18 20:47:29 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Mar 28 15:58:07 2009 -0400"
      },
      "message": "SUNRPC: Simplify svc_unregister()\n\nOur initial implementation of svc_unregister() assumed that PMAP_UNSET\ncleared all rpcbind registrations for a [program, version] tuple.\nHowever, we now have evidence that PMAP_UNSET clears only \"inet\"\nentries, and not \"inet6\" entries, in the rpcbind database.\n\nFor backwards compatibility with the legacy portmapper, the\nsvc_unregister() function also must work if user space doesn\u0027t support\nrpcbind version 4 at all.\n\nThus we\u0027ll send an rpcbind v4 UNSET, and if that fails, we\u0027ll send a\nPMAP_UNSET.\n\nThis simplifies the code in svc_unregister() and provides better\nbackwards compatibility with legacy user space that does not support\nrpcbind version 4.  We can get rid of the conditional compilation in\nhere as well.\n\nThis patch is part of a series that addresses\n   http://bugzilla.kernel.org/show_bug.cgi?id\u003d12256\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "1673d0de40ab46cac3b456ad50e1c8d6a31bfd66",
      "tree": "0d643ac1b4ad99d6d1bdee3cadfe9d6cf07810b1",
      "parents": [
        "126e4bc3b3b446482696377f67a634c76eaf2e9c"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 18 20:47:21 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Mar 28 15:57:00 2009 -0400"
      },
      "message": "SUNRPC: Allow callers to pass rpcb_v4_register a NULL address\n\nThe user space TI-RPC library uses an empty string for the universal\naddress when unregistering all target addresses for [program, version].\nThe kernel\u0027s rpcb client should behave the same way.\n\nHere, we are switching between several registration methods based on\nthe protocol family of the incoming address.  Rename the other rpcbind\nv4 registration functions to make it clear that they, as well, are\nswitched on protocol family.  In /etc/netconfig, this is either \"inet\"\nor \"inet6\".\n\nNB: The loopback protocol families are not supported in the kernel.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "126e4bc3b3b446482696377f67a634c76eaf2e9c",
      "tree": "baa96bad06505f212e59b7e1fa557658412979c8",
      "parents": [
        "3aba45536fe8f92aa07bcdfd2fb1cf17eec7d786"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 18 20:47:14 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Mar 28 15:56:04 2009 -0400"
      },
      "message": "SUNRPC: rpcbind actually interprets r_owner string\n\nRFC 1833 has little to say about the contents of r_owner; it only\nspecifies that it is a string, and states that it is used to control\nwho can UNSET an entry.\n\nOur port of rpcbind (from Sun) assumes this string contains a numeric\nUID value, not alphabetical or symbolic characters, but checks this\nvalue only for AF_LOCAL RPCB_SET or RPCB_UNSET requests.  In all other\ncases, rpcbind ignores the contents of the r_owner string.\n\nThe reference user space implementation of rpcb_set(3) uses a numeric\nUID for all SET/UNSET requests (even via the network) and an empty\nstring for all other requests.  We emulate that behavior here to\nmaintain bug-for-bug compatibility.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "3aba45536fe8f92aa07bcdfd2fb1cf17eec7d786",
      "tree": "256848234e49c3e1f8758afeb1e85ad2b005db10",
      "parents": [
        "ba5c35e0c7e30b095636cd58b0854fdbd3c32947"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 18 20:47:06 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Mar 28 15:55:52 2009 -0400"
      },
      "message": "SUNRPC: Clean up address type casts in rpcb_v4_register()\n\nClean up: Simplify rpcb_v4_register() and its helpers by moving the\ndetails of sockaddr type casting to rpcb_v4_register()\u0027s helper\nfunctions.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ba5c35e0c7e30b095636cd58b0854fdbd3c32947",
      "tree": "43f59f4c98576811e66567e06470f0d840db18ab",
      "parents": [
        "fc28decdc93633a65d54e42498e9e819d466329c"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 18 20:46:59 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Mar 28 15:55:40 2009 -0400"
      },
      "message": "SUNRPC: Don\u0027t return EPROTONOSUPPORT in svc_register()\u0027s helpers\n\nThe RPC client returns -EPROTONOSUPPORT if there is a protocol version\nmismatch (ie the remote RPC server doesn\u0027t support the RPC protocol\nversion sent by the client).\n\nHelpers for the svc_register() function return -EPROTONOSUPPORT if they\ndon\u0027t recognize the passed-in IPPROTO_ value.\n\nThese are two entirely different failure modes.\n\nHave the helpers return -ENOPROTOOPT instead of -EPROTONOSUPPORT.  This\nwill allow callers to determine more precisely what the underlying\nproblem is, and decide to report or recover appropriately.\n\nThis patch is part of a series that addresses\n   http://bugzilla.kernel.org/show_bug.cgi?id\u003d12256\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "fc28decdc93633a65d54e42498e9e819d466329c",
      "tree": "19361a89093649d16c48e421ac2dfadc63c97fc6",
      "parents": [
        "7d21c0f9845f0ce4e81baac3519fbb2c6c2cc908"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 18 20:46:51 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Mar 28 15:55:28 2009 -0400"
      },
      "message": "SUNRPC: Use IPv4 loopback for registering AF_INET6 kernel RPC services\n\nThe kernel uses an IPv6 loopback address when registering its AF_INET6\nRPC services so that it can tell whether the local portmapper is\nactually IPv6-enabled.\n\nSince the legacy portmapper doesn\u0027t listen on IPv6, however, this\ncauses a long timeout on older systems if the kernel happens to try\ncreating and registering an AF_INET6 RPC service.  Originally I wanted\nto use a connected transport (either TCP or connected UDP) so that the\nupcall would fail immediately if the portmapper wasn\u0027t listening on\nIPv6, but we never agreed on what transport to use.\n\nIn the end, it\u0027s of little consequence to the kernel whether the local\nportmapper is listening on IPv6.  It\u0027s only important whether the\nportmapper supports rpcbind v4.  And the kernel can\u0027t tell that at all\nif it is sending requests via IPv6 -- the portmapper will just ignore\nthem.\n\nSo, send both rpcbind v2 and v4 SET/UNSET requests via IPv4 loopback\nto maintain better backwards compatibility between new kernels and\nlegacy user space, and prevent multi-second hangs in some cases when\nthe kernel attempts to register RPC services.\n\nThis patch is part of a series that addresses\n\n   http://bugzilla.kernel.org/show_bug.cgi?id\u003d12256\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "7d21c0f9845f0ce4e81baac3519fbb2c6c2cc908",
      "tree": "8e4eefa86dfc05bfc0f36452863f55c570c82456",
      "parents": [
        "26298caacac3e4754194b13aef377706d5de6cf6"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 18 20:46:44 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Mar 28 15:55:18 2009 -0400"
      },
      "message": "SUNRPC: Set IPV6ONLY flag on PF_INET6 RPC listener sockets\n\nWe are about to convert to using separate RPC listener sockets for\nPF_INET and PF_INET6.  This echoes the way IPv6 is handled in user\nspace by TI-RPC, and eliminates the need for ULPs to worry about\nmapped IPv4 AF_INET6 addresses when doing address comparisons.\n\nStart by setting the IPV6ONLY flag on PF_INET6 RPC listener sockets.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "26298caacac3e4754194b13aef377706d5de6cf6",
      "tree": "ca5bcec9c81af2ad5f7d8b4dc91fd3a22aee71f4",
      "parents": [
        "49a9072f29a1039f142ec98b44a72d7173651c02"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 18 20:46:36 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Mar 28 15:55:06 2009 -0400"
      },
      "message": "NFS: Revert creation of IPv6 listeners for lockd and NFSv4 callbacks\n\nWe\u0027re about to convert over to using separate PF_INET and PF_INET6\nlisteners, instead of a single PF_INET6 listener that also receives\nAF_INET requests and maps them to AF_INET6.\n\nClear the way by removing the logic in lockd and the NFSv4 callback\nserver that creates an AF_INET6 service listener.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "49a9072f29a1039f142ec98b44a72d7173651c02",
      "tree": "d2a87541cb699fb6b1fbdef492f3dc6c305aa541",
      "parents": [
        "9652ada3fb5914a67d8422114e8a76388330fa79"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 18 20:46:29 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Mar 28 15:54:48 2009 -0400"
      },
      "message": "SUNRPC: Remove @family argument from svc_create() and svc_create_pooled()\n\nSince an RPC service listener\u0027s protocol family is specified now via\nsvc_create_xprt(), it no longer needs to be passed to svc_create() or\nsvc_create_pooled().  Remove that argument from the synopsis of those\nfunctions, and remove the sv_family field from the svc_serv struct.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "9652ada3fb5914a67d8422114e8a76388330fa79",
      "tree": "b37d77bf972dda04b46794c4e50ec6f6d044dc79",
      "parents": [
        "baf01caf09e87579c2d157e5ee29975db8551522"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 18 20:46:21 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Mar 28 15:54:36 2009 -0400"
      },
      "message": "SUNRPC: Change svc_create_xprt() to take a @family argument\n\nThe sv_family field is going away.  Pass a protocol family argument to\nsvc_create_xprt() instead of extracting the family from the passed-in\nsvc_serv struct.\n\nAgain, as this is a listener socket and not an address, we make this\nnew argument an \"int\" protocol family, instead of an \"sa_family_t.\"\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "baf01caf09e87579c2d157e5ee29975db8551522",
      "tree": "e7ab4f9eb5b8c2d158a2a330e935cfd8be9e356a",
      "parents": [
        "4b62e58cccff9c5e7ffc7023f7ec24c75fbd549b"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 18 20:46:13 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Mar 28 15:54:23 2009 -0400"
      },
      "message": "SUNRPC: svc_setup_socket() gets protocol family from socket\n\nSince the sv_family field is going away, modify svc_setup_socket() to\nextract the protocol family from the passed-in socket instead of from\nthe passed-in svc_serv struct.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4b62e58cccff9c5e7ffc7023f7ec24c75fbd549b",
      "tree": "34965810fe2a9aff001dd193a3cb925c2c3e1abd",
      "parents": [
        "156e62094a74cf43f02f56ef96b6cda567501357"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 18 20:46:06 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Mar 28 15:54:12 2009 -0400"
      },
      "message": "SUNRPC: Pass a family argument to svc_register()\n\nThe sv_family field is going away.  Instead of using sv_family, have\nthe svc_register() function take a protocol family argument.\n\nSince this argument represents a protocol family, and not an address\nfamily, this argument takes an int, as this is what is passed to\nsock_create_kern().  Also make sure svc_register\u0027s helpers are\nchecking for PF_FOO instead of AF_FOO.  The value of [AP]F_FOO are\nequivalent; this is simply a symbolic change to reflect the semantics\nof the value stored in that variable.\n\nsock_create_kern() should return EPFNOSUPPORT if the passed-in\nprotocol family isn\u0027t supported, but it uses EAFNOSUPPORT for this\ncase.  We will stick with that tradition here, as svc_register()\nis called by the RPC server in the same path as sock_create_kern().\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "156e62094a74cf43f02f56ef96b6cda567501357",
      "tree": "100fdf25a7f13f8c2ebebd241d02a9ed46e89292",
      "parents": [
        "adbbe929569e6eec8ff9feca23f1f2b40b42853d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 18 20:45:58 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Mar 28 15:53:57 2009 -0400"
      },
      "message": "SUNRPC: Clean up svc_find_xprt() calling sequence\n\nClean up: add documentating comment and use appropriate data types for\nsvc_find_xprt()\u0027s arguments.\n\nThis also eliminates a mixed sign comparison: @port was an int, while\nthe return value of svc_xprt_local_port() is an unsigned short.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "adbbe929569e6eec8ff9feca23f1f2b40b42853d",
      "tree": "2a22bb3d333f1471c1c6629e5947f56dd850611a",
      "parents": [
        "efb3288b423d7e3533a68dccecaa05a56a281a4e"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 18 20:45:51 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Mar 28 15:53:42 2009 -0400"
      },
      "message": "NFSD: If port value written to /proc/fs/nfsd/portlist is invalid, return EINVAL\n\nMake sure port value read from user space by write_ports is valid before\npassing it to svc_find_xprt().  If it wasn\u0027t, the writer would get ENOENT\ninstead of EINVAL.\n\nNoticed-by: J. Bruce Fields \u003cbfields@fieldses.org\u003e\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "efb3288b423d7e3533a68dccecaa05a56a281a4e",
      "tree": "083d0f507c5e3552cf0ab5ae1efadbe7e2bf2d8f",
      "parents": [
        "776bd5c7a207de546918f805090bfc823d2660c8"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 18 20:45:43 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Mar 28 15:53:22 2009 -0400"
      },
      "message": "SUNRPC: Clean up static inline functions in svc_xprt.h\n\nClean up:  Enable the use of const arguments in higher level svc_ APIs\nby adding const to the arguments of the helper functions in svc_xprt.h\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "776bd5c7a207de546918f805090bfc823d2660c8",
      "tree": "bf99838d1e073b8caee80bd79027d69892585d5c",
      "parents": [
        "7fe5c398fc2186ed586db11106a6692d871d0d58"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 18 20:45:28 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Mar 28 15:52:08 2009 -0400"
      },
      "message": "SUNRPC: Don\u0027t flag empty RPCB_GETADDR reply as bogus\n\nIn 2007, commit e65fe3976f594603ed7b1b4a99d3e9b867f573ea added\nadditional sanity checking to rpcb_decode_getaddr() to make sure we\nwere getting a reply that was long enough to be an actual universal\naddress.  If the uaddr string isn\u0027t long enough, the XDR decoder\nreturns EIO.\n\nHowever, an empty string is a valid RPCB_GETADDR response if the\nrequested service isn\u0027t registered.  Moreover, \"::.n.m\" is also a\nvalid RPCB_GETADDR response for IPv6 addresses that is shorter\nthan rpcb_decode_getaddr()\u0027s lower limit of 11.  So this sanity\ncheck introduced a regression for rpcbind requests against IPv6\nremotes.\n\nSo revert the lower bound check added by commit\ne65fe3976f594603ed7b1b4a99d3e9b867f573ea, and add an explicit check\nfor an empty uaddr string, similar to libtirpc\u0027s rpcb_getaddr(3).\n\nPointed-out-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "7fe5c398fc2186ed586db11106a6692d871d0d58",
      "tree": "1133bd775a23fb07ca759e4d6c44132c14576b75",
      "parents": [
        "b1e4adf4ea41bb8b5a7bfc1a7001f137e65495df"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Mar 19 15:35:50 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Mar 19 15:35:50 2009 -0400"
      },
      "message": "NFS: Optimise NFS close()\n\nClose-to-open cache consistency rules really only require us to flush out\nwrites on calls to close(), and require us to revalidate attributes on the\nvery last close of the file.\n\nCurrently we appear to be doing a lot of extra attribute revalidation\nand cache flushes.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b1e4adf4ea41bb8b5a7bfc1a7001f137e65495df",
      "tree": "2e244acb15347bfe749cd8758466e3351fde0cb6",
      "parents": [
        "47c62564200609b6de60f535f61f0c73dd10c7c9"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Mar 19 15:35:49 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Mar 19 15:35:49 2009 -0400"
      },
      "message": "NFS: Fix the notifications when renaming onto an existing file\n\nNFS appears to be returning an unnecessary \"delete\" notification when\nwe\u0027re doing an atomic rename. See\n\n  http://bugzilla.gnome.org/show_bug.cgi?id\u003d575684\n\nThe fix is to get rid of the redundant call to d_delete().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "47c62564200609b6de60f535f61f0c73dd10c7c9",
      "tree": "9d21b42cd34b14e75574dcb22eb945aefccfe345",
      "parents": [
        "2e3c230bc7149a6af65d26a0c312e230e0c33cc3"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Mar 16 08:13:41 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Mar 19 15:17:40 2009 -0400"
      },
      "message": "NFS: Fix up a mismerged patch\n\nMove the definition of nfs_need_commit() into the #ifdef CONFIG_NFS_V3\nsection as originally intended in the patch \"NFS: cleanup - remove\nstruct nfs_inode-\u003encommit\"\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "2e3c230bc7149a6af65d26a0c312e230e0c33cc3",
      "tree": "11375e4bcc5ce17265ef41d210d21a3ac8860a2e",
      "parents": [
        "55420c24a0d4d1fce70ca713f84aa00b6b74a70e"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "tmtalpey@gmail.com",
        "time": "Thu Mar 12 22:21:21 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Mar 19 15:17:37 2009 -0400"
      },
      "message": "SVCRDMA: fix recent printk format warnings.\n\nprintk formats in prior commit were reversed/incorrect.\nCompiled without warning on x86 and x86_64, but detected on ppc.\n\nSigned-off-by: Tom Talpey \u003ctmtalpey@gmail.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "55420c24a0d4d1fce70ca713f84aa00b6b74a70e",
      "tree": "9e7e931122cb77e7ae1249b6dde81d83f60a894d",
      "parents": [
        "b61d59fffd3e5b6037c92b4c840605831de8a251"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 15:29:24 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Mar 19 15:17:36 2009 -0400"
      },
      "message": "SUNRPC: Ensure we close the socket on EPIPE errors too...\n\nAs long as one task is holding the socket lock, then calls to\nxprt_force_disconnect(xprt) will not succeed in shutting down the socket.\nIn particular, this would mean that a server initiated shutdown will not\nsucceed until the lock is relinquished.\nIn order to avoid the deadlock, we should ensure that xs_tcp_send_request()\ncloses the socket on EPIPE errors too.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b61d59fffd3e5b6037c92b4c840605831de8a251",
      "tree": "329bfecb1c8c66364e7b2797c51eab779ee2540d",
      "parents": [
        "25fe6142a57c720452c5e9ddbc1f32309c1e5c19"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:38:04 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Mar 19 15:17:35 2009 -0400"
      },
      "message": "SUNRPC: xs_tcp_connect_worker{4,6}: merge common code\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "25fe6142a57c720452c5e9ddbc1f32309c1e5c19",
      "tree": "54ace9992e13ff9d3644bbb98ec8b74baf22b241",
      "parents": [
        "7d1e8255cf959fba7ee2317550dfde39f0b936ae"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:38:03 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Mar 19 15:17:34 2009 -0400"
      },
      "message": "SUNRPC: Add a sysctl to control the duration of the socket linger timeout\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "7d1e8255cf959fba7ee2317550dfde39f0b936ae",
      "tree": "0a046b83e5ac29501849c34408059480d4c210be",
      "parents": [
        "5e3771ce2d6a69e10fcc870cdf226d121d868491"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:38:03 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Mar 19 15:17:34 2009 -0400"
      },
      "message": "SUNRPC: Add the equivalent of the linger and linger2 timeouts to RPC sockets\n\nThis fixes a regression against FreeBSD servers as reported by Tomas\nKasparek. Apparently when using RPC over a TCP socket, the FreeBSD servers\ndon\u0027t ever react to the client closing the socket, and so commit\ne06799f958bf7f9f8fae15f0c6f519953fb0257c (SUNRPC: Use shutdown() instead of\nclose() when disconnecting a TCP socket) causes the setup to hang forever\nwhenever the client attempts to close and then reconnect.\n\nWe break the deadlock by adding a \u0027linger2\u0027 style timeout to the socket,\nafter which, the client will abort the connection using a TCP \u0027RST\u0027.\n\nThe default timeout is set to 15 seconds. A subsequent patch will put it\nunder user control by means of a systctl.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5e3771ce2d6a69e10fcc870cdf226d121d868491",
      "tree": "3c20ee45ae8b87621ae95cedb6b385bf0e6d7a2f",
      "parents": [
        "8a2cec295f4499cc9d4452e9b02d4ed071bb42d3"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:38:01 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:38:01 2009 -0400"
      },
      "message": "SUNRPC: Ensure that xs_nospace return values are propagated\n\nIf xs_nospace() finds that the socket has disconnected, it attempts to\nreturn ENOTCONN, however that value is then squashed by the callers.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "8a2cec295f4499cc9d4452e9b02d4ed071bb42d3",
      "tree": "148f1658cb923a2faafdb1e993dd63832c860eb1",
      "parents": [
        "2a4919919a97911b0aa4b9f5ac1eab90ba87652b"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:38:01 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:38:01 2009 -0400"
      },
      "message": "SUNRPC: Delay, then retry on connection errors.\n\nEnforce the comment in xs_tcp_connect_worker4/xs_tcp_connect_worker6 that\nwe should delay, then retry on certain connection errors.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "2a4919919a97911b0aa4b9f5ac1eab90ba87652b",
      "tree": "c12eb42c34f0d0b79130ae93ebd56159e8366ee8",
      "parents": [
        "482f32e65d31cbf88d08306fa5d397cc945c3c26"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:38:00 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:38:00 2009 -0400"
      },
      "message": "SUNRPC: Return EAGAIN instead of ENOTCONN when waking up xprt-\u003epending\n\nWhile we should definitely return socket errors to the task that is\ncurrently trying to send data, there is no need to propagate the same error\nto all the other tasks on xprt-\u003epending. Doing so actually slows down\nrecovery, since it causes more than one tasks to attempt socket recovery.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "482f32e65d31cbf88d08306fa5d397cc945c3c26",
      "tree": "e0a8adf7925ecfce413506b68d67a94f6c1b1131",
      "parents": [
        "c8485e4d634f6df155040293928707f127f0d06d"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:38:00 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:38:00 2009 -0400"
      },
      "message": "SUNRPC: Handle socket errors correctly\n\nEnsure that we pick up and handle socket errors as they occur.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c8485e4d634f6df155040293928707f127f0d06d",
      "tree": "72ec8a7ea829e4f7df4648e646353c55a037e50e",
      "parents": [
        "40d2549db5f515e415894def98b49db7d4c56714"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:37:59 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:37:59 2009 -0400"
      },
      "message": "SUNRPC: Handle ECONNREFUSED correctly in xprt_transmit()\n\nIf we get an ECONNREFUSED error, we currently go to sleep on the\n\u0027xprt-\u003esending\u0027 wait queue. The problem is that no timeout is set there,\nand there is nothing else that will wake the task up later.\n\nWe should deal with ECONNREFUSED in call_status, given that is where we\nalso deal with -EHOSTDOWN, and friends.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "40d2549db5f515e415894def98b49db7d4c56714",
      "tree": "6c301c61cd3a9215bf39deee53623e1fd97a895f",
      "parents": [
        "670f94573104b4a25525d3fcdcd6496c678df172"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:37:58 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:37:58 2009 -0400"
      },
      "message": "SUNRPC: Don\u0027t disconnect if a connection is still in progress.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "670f94573104b4a25525d3fcdcd6496c678df172",
      "tree": "3beaadb8ee2841972c0e719c67c64e1cc27bb7ea",
      "parents": [
        "15f081ca8ddfe150fb639c591b18944a539da0fc"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:37:58 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:37:58 2009 -0400"
      },
      "message": "SUNRPC: Ensure we set XPRT_CLOSING only after we\u0027ve sent a tcp FIN...\n\n...so that we can distinguish between when we need to shutdown and when we\ndon\u0027t. Also remove the call to xs_tcp_shutdown() from xs_tcp_connect(),\nsince xprt_connect() makes the same test.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "15f081ca8ddfe150fb639c591b18944a539da0fc",
      "tree": "24261e97034770ab827d153cc541222e04701ac3",
      "parents": [
        "a67d18f89f5782806135aad4ee012ff78d45aae7"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:37:57 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:37:57 2009 -0400"
      },
      "message": "SUNRPC: Avoid an unnecessary task reschedule on ENOTCONN\n\nIf the socket is unconnected, and xprt_transmit() returns ENOTCONN, we\ncurrently give up the lock on the transport channel. Doing so means that\nthe lock automatically gets assigned to the next task in the xprt-\u003esending\nqueue, and so that task needs to be woken up to do the actual connect.\n\nThe following patch aims to avoid that unnecessary task switch.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "a67d18f89f5782806135aad4ee012ff78d45aae7",
      "tree": "8ee9712d4217d585199a95da7388dd0761c3e32d",
      "parents": [
        "441e3e242903f9b190d5764bed73edb58f977413"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "tmtalpey@gmail.com",
        "time": "Wed Mar 11 14:37:56 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:37:56 2009 -0400"
      },
      "message": "NFS: load the rpc/rdma transport module automatically\n\nWhen mounting an NFS/RDMA server with the \"-o proto\u003drdma\" or\n\"-o rdma\" options, attempt to dynamically load the necessary\n\"xprtrdma\" client transport module. Doing so improves usability,\nwhile avoiding a static module dependency and any unnecesary\nresources.\n\nSigned-off-by: Tom Talpey \u003ctmtalpey@gmail.com\u003e\nCc: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "441e3e242903f9b190d5764bed73edb58f977413",
      "tree": "3898c80feadee3cdeb3c99cb7d62861127f1b4ef",
      "parents": [
        "b38ab40ad58c1fc43ea590d6342f6a6763ac8fb6"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "tmtalpey@gmail.com",
        "time": "Wed Mar 11 14:37:56 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:37:56 2009 -0400"
      },
      "message": "SUNRPC: dynamically load RPC transport modules on-demand\n\nProvide an api to attempt to load any necessary kernel RPC\nclient transport module automatically. By convention, the\ndesired module name is \"xprt\"+\"transport name\". For example,\nwhen NFS mounting with \"-o proto\u003drdma\", attempt to load the\n\"xprtrdma\" module.\n\nSigned-off-by: Tom Talpey \u003ctmtalpey@gmail.com\u003e\nCc: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b38ab40ad58c1fc43ea590d6342f6a6763ac8fb6",
      "tree": "f2e701eff6bed88f1085a95a9a240db105776831",
      "parents": [
        "b1e1e158779f1d99c2cc18e466f6bf9099fc0853"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "tmtalpey@gmail.com",
        "time": "Wed Mar 11 14:37:55 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:37:55 2009 -0400"
      },
      "message": "XPRTRDMA: correct an rpc/rdma inline send marshaling error\n\nCertain client rpc\u0027s which contain both lengthy page-contained\nmetadata and a non-empty xdr_tail buffer require careful handling\nto avoid overlapped memory copying. Rearranging of existing rpcrdma\nmarshaling code avoids it; this fixes an NFSv4 symlink creation error\ndetected with connectathon basic/test8 to multiple servers.\n\nSigned-off-by: Tom Talpey \u003ctmtalpey@gmail.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b1e1e158779f1d99c2cc18e466f6bf9099fc0853",
      "tree": "6f73394f824f6234e8da245f4633ed8323293919",
      "parents": [
        "e1ebfd33be068ec933f8954060a499bd22ad6f69"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "tmtalpey@gmail.com",
        "time": "Wed Mar 11 14:37:55 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:37:55 2009 -0400"
      },
      "message": "SVCRDMA: remove faulty assertions in rpc/rdma chunk validation.\n\nCertain client-provided RPCRDMA chunk alignments result in an\nadditional scatter/gather entry, which triggered nfs/rdma server\nassertions incorrectly. OpenSolaris nfs/rdma client connectathon\ntesting was blocked by these in the special/locking section.\n\nSigned-off-by: Tom Talpey \u003ctmtalpey@gmail.com\u003e\nCc: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e1ebfd33be068ec933f8954060a499bd22ad6f69",
      "tree": "eede58106b4c2e10198a73f47ad14850d617f4c1",
      "parents": [
        "72cb77f4a5ace37b12dcb47a0e8637a2c28ad881"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:37:54 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:37:54 2009 -0400"
      },
      "message": "NFS: Kill the \"defined but not used\" compile error on nommu machines\n\nBryan Wu reports that when compiling NFS on nommu machines he gets a\n\"defined but not used\" error on nfs_file_mmap().\n\nThe easiest fix is simply to get rid of the special casing in NFS, and\njust always call generic_file_mmap() to set up the file.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "72cb77f4a5ace37b12dcb47a0e8637a2c28ad881",
      "tree": "62fbdd7a34884f3ea9e1b0ba6bd5a4d78263f847",
      "parents": [
        "fb8a1f11b64e213d94dfa1cebb2a42a7b8c115c4"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:30 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:30 2009 -0400"
      },
      "message": "NFS: Throttle page dirtying while we\u0027re flushing to disk\n\nThe following patch is a combination of a patch by myself and Peter\nStaubach.\n\nTrond: If we allow other processes to dirty pages while a process is doing\na consistency sync to disk, we can end up never making progress.\n\nPeter: Attached is a patch which addresses a continuing problem with\nthe NFS client generating out of order WRITE requests.  While\nthis is compliant with all of the current protocol\nspecifications, there are servers in the market which can not\nhandle out of order WRITE requests very well.  Also, this may\nlead to sub-optimal block allocations in the underlying file\nsystem on the server.  This may cause the read throughputs to\nbe reduced when reading the file from the server.\n\nPeter: There has been a lot of work recently done to address out of\norder issues on a systemic level.  However, the NFS client is\nstill susceptible to the problem.  Out of order WRITE\nrequests can occur when pdflush is in the middle of writing\nout pages while the process dirtying the pages calls\ngeneric_file_buffered_write which calls\ngeneric_perform_write which calls\nbalance_dirty_pages_rate_limited which ends up calling\nwriteback_inodes which ends up calling back into the NFS\nclient to writes out dirty pages for the same file that\npdflush happens to be working with.\n\nSigned-off-by: Peter Staubach \u003cstaubach@redhat.com\u003e\n[modification by Trond to merge the two similar patches]\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "fb8a1f11b64e213d94dfa1cebb2a42a7b8c115c4",
      "tree": "4b21038fae0e1a8a763d4118bd6543dc77e9b5aa",
      "parents": [
        "a65318bf3afc93ce49227e849d213799b072c5fd"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:29 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:29 2009 -0400"
      },
      "message": "NFS: cleanup - remove struct nfs_inode-\u003encommit\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "a65318bf3afc93ce49227e849d213799b072c5fd",
      "tree": "754aad8596310825b96956012b7f584fff5b7a54",
      "parents": [
        "69aaaae18f7027d9594bce100378f102926cc0be"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:28 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:28 2009 -0400"
      },
      "message": "NFSv4: Simplify some cache consistency post-op GETATTRs\n\nCertain asynchronous operations such as write() do not expect\n(or care) that other metadata such as the file owner, mode, acls, ...\nchange. All they want to do is update and/or check the change attribute,\nctime, and mtime.\nBy skipping the file owner and group update, we also avoid having to do a\npotential idmapper upcall for these asynchronous RPC calls.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "69aaaae18f7027d9594bce100378f102926cc0be",
      "tree": "151c903e1a1eae360f9cf22870dcec6c41295467",
      "parents": [
        "409924e4c943072a63c43bb6b77576bf12f1896b"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:28 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:28 2009 -0400"
      },
      "message": "NFSv4: A referral is assumed to always point to a directory.\n\nFix a bug whereby we would fail to create a mount point for a referral.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "409924e4c943072a63c43bb6b77576bf12f1896b",
      "tree": "cf598400a995a61c1566db9b1e552a39d5a1dc53",
      "parents": [
        "f26c7a78876ccd6c9b477ab4ca127aa1a4ef68c7"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:27 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:27 2009 -0400"
      },
      "message": "NFSv4: Make decode_getfattr() set fattr-\u003evalid to reflect what was decoded\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "f26c7a78876ccd6c9b477ab4ca127aa1a4ef68c7",
      "tree": "6a51ae1f642883a1c63616d7872ec6f7d87e20e7",
      "parents": [
        "bca794785c2c12ecddeb09e70165b8ff80baa6ae"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:26 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:26 2009 -0400"
      },
      "message": "NFSv4: Clean up decode_getfattr()\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "bca794785c2c12ecddeb09e70165b8ff80baa6ae",
      "tree": "8e8fefa535c799240846082ba580dc87d0a98cbf",
      "parents": [
        "1ca277d88dafdbc3c5a69d32590e7184b9af6371"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:26 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:26 2009 -0400"
      },
      "message": "NFS: Fix the type of struct nfs_fattr-\u003emode\n\nThere is no point in using anything other than umode_t, since we copy the\ncontent pretty much directly into inode-\u003ei_mode.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "1ca277d88dafdbc3c5a69d32590e7184b9af6371",
      "tree": "8cd36f442796e7e83c1dfcd72a036846f1b3950f",
      "parents": [
        "9e6e70f8d8b6698e0017c56b86525aabe9c7cd4c"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:25 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:25 2009 -0400"
      },
      "message": "NFS: Shrink the struct nfs_fattr\n\nWe don\u0027t need the bitmap[] field anymore, since the \u0027valid\u0027 field tells us\nall we need to know about which attributes were filled in...\nAlso move the pre-op attributes in order to improve the structure packing.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "9e6e70f8d8b6698e0017c56b86525aabe9c7cd4c",
      "tree": "3364c61dc3fdb1cc69b18e0cf16947abc49c0be5",
      "parents": [
        "78f945f88ef83dcc7c962614a080e0a9a2db5889"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:24 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:24 2009 -0400"
      },
      "message": "NFSv4: Support NFSv4 optional attributes in the struct nfs_fattr\n\nCurrently, filling struct nfs_fattr is more or less an all or nothing\noperation, since NFSv2 and NFSv3 have only mandatory attributes.\nIn NFSv4, some attributes are optional, and so we may simply not be able to\nfill in those fields. Furthermore, NFSv4 allows you to specify which\nattributes you are interested in retrieving, thus permitting you to\noptimise away retrieval of attributes that you know will no change...\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "78f945f88ef83dcc7c962614a080e0a9a2db5889",
      "tree": "1a3ab02259b3b6ddce570aa8afcd3375de71a0cc",
      "parents": [
        "37d9d76d8b3a2ac5817e1fa3263cfe0fdb439e51"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:23 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:23 2009 -0400"
      },
      "message": "NFSv4: Ignore errors on the post-op attributes in SETATTR calls\n\nThere is no need to fail or retry a SETATTR call just because the post-op\nGETATTR failed.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "37d9d76d8b3a2ac5817e1fa3263cfe0fdb439e51",
      "tree": "ccbf57ce8f85ad8277838c50f723cbe79950eebc",
      "parents": [
        "2b57dc6cf9bf31edc0df430ea18dd1dbd3028975"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed Mar 11 14:10:23 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:23 2009 -0400"
      },
      "message": "NFS: flush cached directory information slightly more readily.\n\nIf cached directory contents becomes incorrect, there is no way to\nflush the contents.  This contrasts with files where file locking is\nthe recommended way to ensure cache consistency between multiple\napplications (a read-lock always flushes the cache).\n\nAlso while changes to files often change the size of the file (thus\ntriggering a cache flush), changes to directories often do not change\nthe apparent size (as the size is often rounded to a block size).\n\nSo it is particularly important with directories to avoid the\npossibility of an incorrect cache wherever possible.\n\nWhen the link count on a directory changes it implies a change in the\nnumber of child directories, and so a change in the contents of this\ndirectory.  So use that as a trigger to flush cached contents.\n\nWhen the ctime changes but the mtime does not, there are two possible\nreasons.\n 1/ The owner/mode information has been changed.\n 2/ utimes has been used to set the mtime backwards.\n\nIn the first case, a data-cache flush is not required.\nIn the second case it is.\n\nSo on the basis that correctness trumps performance, flush the\ndirectory contents cache in this case also.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "2b57dc6cf9bf31edc0df430ea18dd1dbd3028975",
      "tree": "3d70e9e220fd665fa08b2d0566eb35bf593cfcd7",
      "parents": [
        "fe315e76fc3a3f9f7e1581dc22fec7e7719f0896"
      ],
      "author": {
        "name": "Suresh Jayaraman",
        "email": "sjayaraman@suse.de",
        "time": "Wed Mar 11 14:10:22 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:22 2009 -0400"
      },
      "message": "NFS: Minor __nfs_revalidate_inode cleanup\n\nRemove redundant NFS_STALE() check, a leftover due to the commit\n691beb13cdc88358334ef0ba867c080a247a760f\n\nSigned-off-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "fe315e76fc3a3f9f7e1581dc22fec7e7719f0896",
      "tree": "15ba17ab92691d55f3e3168df8fef2fb366339c0",
      "parents": [
        "01d37c428ae080563c0a3bb8bdfa88c65a6891d3"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 11 14:10:21 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:10:21 2009 -0400"
      },
      "message": "SUNRPC: Avoid spurious wake-up during UDP connect processing\n\nTo clear out old state, the UDP connect workers unconditionally invoke\nxs_close() before proceeding with a new connect.  Nowadays this causes\na spurious wake-up of the task waiting for the connect to complete.\n\nThis is a little racey, but usually harmless.  The waiting task\nimmediately retries the connect via a call_bind/call_connect sequence,\nwhich usually finds the transport already in the connected state\nbecause the connect worker has finished in the background.\n\nTo avoid a spurious wake-up, factor the xs_close() logic that resets\nthe underlying socket into a helper, and have the UDP connect workers\ncall that helper instead of xs_close().\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "01d37c428ae080563c0a3bb8bdfa88c65a6891d3",
      "tree": "bfc1c9a6336d4b7058c742d4a3178f8f588f5b66",
      "parents": [
        "fba91afbec2c004e2c8733ae9e0ca6998e962c64"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:09:39 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:09:39 2009 -0400"
      },
      "message": "SUNRPC: xprt_connect() don\u0027t abort the task if the transport isn\u0027t bound\n\nIf the transport isn\u0027t bound, then we should just return ENOTCONN, letting\ncall_connect_status() and/or call_status() deal with retrying. Currently,\nwe appear to abort all pending tasks with an EIO error.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "fba91afbec2c004e2c8733ae9e0ca6998e962c64",
      "tree": "025d7c07b8d41d4e5752fb9da7396a0b596856da",
      "parents": [
        "d7371c41b0cda782256b1df759df4e8d4724584c"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:06:41 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:06:41 2009 -0400"
      },
      "message": "SUNRPC: Fix an Oops due to socket not set up yet...\n\nWe can Oops in both xs_udp_send_request() and xs_tcp_send_request() if the\ncall to xs_sendpages() returns an error due to the socket not yet being\nset up.\nDeal with that situation by returning a new error: ENOTSOCK, so that we\nknow to avoid dereferencing transport-\u003esock.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d7371c41b0cda782256b1df759df4e8d4724584c",
      "tree": "c5807f0cb163db7bb4a03cdd6c986d8fa40545e0",
      "parents": [
        "a71ee337b31271e701f689d544b6153b75609bc5"
      ],
      "author": {
        "name": "Ian Dall",
        "email": "ian@beware.dropbear.id.au",
        "time": "Tue Mar 10 20:33:22 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Mar 10 20:33:22 2009 -0400"
      },
      "message": "Bug 11061, NFS mounts dropped\n\nAddresses: http://bugzilla.kernel.org/show_bug.cgi?id\u003d11061\n\nsockaddr structures can\u0027t be reliably compared using memcmp() because\nthere are padding bytes in the structure which can\u0027t be guaranteed to\nbe the same even when the sockaddr structures refer to the same\nsocket. Instead compare all the relevant fields. In the case of IPv6\nsin6_flowinfo is not compared because it only affects QoS and\nsin6_scope_id is only compared if the address is \"link local\" because\n\"link local\" addresses need only be unique to a specific link.\n\nSigned-off-by: Ian Dall \u003cian@beware.dropbear.id.au\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "a71ee337b31271e701f689d544b6153b75609bc5",
      "tree": "56871bcec70c8f46a1fcc4b2f76763e948b508f0",
      "parents": [
        "57df675c60c5cf0748ddba9c7f85afde1530d74d"
      ],
      "author": {
        "name": "Suresh Jayaraman",
        "email": "sjayaraman@suse.de",
        "time": "Tue Mar 10 20:33:21 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Mar 10 20:33:21 2009 -0400"
      },
      "message": "NFS: Handle -ESTALE error in access()\n\nHi Trond,\n\nI have been looking at a bugreport where trying to open applications on KDE\non a NFS mounted home fails temporarily. There have been multiple reports on\ndifferent kernel versions pointing to this common issue:\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d12557\nhttps://bugs.launchpad.net/ubuntu/+source/linux/+bug/269954\nhttp://bugs.debian.org/cgi-bin/bugreport.cgi?bug\u003d508866.html\n\nThis issue can be reproducible consistently by doing this on a NFS mounted\nhome (KDE):\n1. Open 2 xterm sessions\n2. From one of the xterm session, do \"ssh -X \u003cremote host\u003e\"\n3. \"stat ~/.Xauthority\" on the remote SSH session\n4. Close the two xterm sessions\n5. On the server do a \"stat ~/.Xauthority\"\n6. Now on the client, try to open xterm\nThis will fail.\n\nEven if the filehandle had become stale, the NFS client should invalidate\nthe cache/inode and should repeat LOOKUP. Looking at the packet capture when\nthe failure occurs shows that there were two subsequent ACCESS() calls with\nthe same filehandle and both fails with -ESTALE error.\n\nI have tested the fix below. Now the client issue a LOOKUP after the\nACCESS() call fails with -ESTALE. If all this makes sense to you, can you\nconsider this for inclusion?\n\nThanks,\n\n\nIf the server returns an -ESTALE error due to stale filehandle in response to\nan ACCESS() call, we need to invalidate the cache and inode so that LOOKUP()\ncan be retried. Without this change, the nfs client retries ACCESS() with the\nsame filehandle, fails again and could lead to temporary failure of\napplications running on nfs mounted home.\n\nSigned-off-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "57df675c60c5cf0748ddba9c7f85afde1530d74d",
      "tree": "9ee0df8d0b0b2b374bcaf66ead94886f39ac7220",
      "parents": [
        "78851e1aa4c3b796d5f0bb11b445016726302b44"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Mar 10 20:33:20 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Mar 10 20:33:20 2009 -0400"
      },
      "message": "NLM: Fix GRANT callback address comparison when IPv6 is enabled\n\nThe NFS mount command may pass an AF_INET server address to lockd.  If\nlockd happens to be using a PF_INET6 listener, the nlm_cmp_addr() in\nnlmclnt_grant() will fail to match requests from that host because they\nwill all have a mapped IPv4 AF_INET6 address.\n\nAdopt the same solution used in nfs_sockaddr_match_ipaddr() for NFSv4\ncallbacks: if either address is AF_INET, map it to an AF_INET6 address\nbefore doing the comparison.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "78851e1aa4c3b796d5f0bb11b445016726302b44",
      "tree": "f3ab7900494d6e98d95211e90a5bcdcee66bd13b",
      "parents": [
        "ae46141ff08f1965b17c531b571953c39ce8b9e2"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Mar 10 20:33:19 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Mar 10 20:33:19 2009 -0400"
      },
      "message": "NLM: Shrink the IPv4-only version of nlm_cmp_addr()\n\nClean up/micro-optimatization:  Make the AF_INET-only version of\nnlm_cmp_addr() smaller.  This matches the style of\nnlm_privileged_requester(), and makes the AF_INET-only version of\nnlm_cmp_addr() nearly the same size as it was before IPv6 support.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ae46141ff08f1965b17c531b571953c39ce8b9e2",
      "tree": "12e9b19461fb00c7ba21d93272ddd470ca0e82b0",
      "parents": [
        "ef95d31e6de6be9602ce950b85fb7ab8af46ae42"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Mar 10 20:33:18 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Mar 10 20:33:18 2009 -0400"
      },
      "message": "NFSv3: Fix posix ACL code\n\nFix a memory leak due to allocation in the XDR layer. In cases where the\nRPC call needs to be retransmitted, we end up allocating new pages without\nclearing the old ones. Fix this by moving the allocation into\nnfs3_proc_setacls().\n\nAlso fix an issue discovered by Kevin Rudd, whereby the amount of memory\nreserved for the acls in the xdr_buf-\u003ehead was miscalculated, and causing\ncorruption.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ef95d31e6de6be9602ce950b85fb7ab8af46ae42",
      "tree": "aeb7d7a9893374a0c8975a5d060f07ab05283319",
      "parents": [
        "eb9b55ab4d73280597fd183b367d50452f4d7846"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Mar 10 20:33:17 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Mar 10 20:33:17 2009 -0400"
      },
      "message": "NFS: Fix misparsing of nfsv4 fs_locations attribute (take 2)\n\nThe changeset ea31a4437c59219bf3ea946d58984b01a45a289c (nfs: Fix\nmisparsing of nfsv4 fs_locations attribute) causes the mountpath that is\ncalculated at the beginning of try_location() to be clobbered when we\nlater strncpy a non-nul terminated hostname using an incorrect buffer\nlength.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "eb9b55ab4d73280597fd183b367d50452f4d7846",
      "tree": "80e0c4e5315ea5fd18bb5ba9d37ec5f77170631a",
      "parents": [
        "16b71fdf97599f1b1b7f38418ee9922d9f117396"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Mar 10 20:33:16 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Mar 10 20:33:16 2009 -0400"
      },
      "message": "SUNRPC: Tighten up the task locking rules in __rpc_execute()\n\nWe should probably not be testing any flags after we\u0027ve cleared the\nRPC_TASK_RUNNING flag, since rpc_make_runnable() is then free to assign the\nrpc_task to another workqueue, which may then destroy it.\n\nWe can fix any races with rpc_make_runnable() by ensuring that we only\nclear the RPC_TASK_RUNNING flag while holding the rpc_wait_queue-\u003elock that\nthe task is supposed to be sleeping on (and then checking whether or not\nthe task really is sleeping).\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "16b71fdf97599f1b1b7f38418ee9922d9f117396",
      "tree": "86ceac6117f5a678aaa177bbcdf8d84d2559010c",
      "parents": [
        "9233ecc5c4b5f31921d914b3ef3baa3dc1ae4cc6"
      ],
      "author": {
        "name": "Samuel CUELLA",
        "email": "samuel.cuella@supinfo.com",
        "time": "Tue Mar 10 12:56:00 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:12 2009 -0700"
      },
      "message": "i810: fix kernel crash fix when struct fb_var_screeninfo is supplied\n\nPrevent the kernel from being crashed by a divide-by-zero operation when\nsupplied an incorrectly filled \u0027struct fb_var_screeninfo\u0027 from userland.\n\nPreviously i810_main.c:1005 (i810_check_params) was using the global\n\u0027yres\u0027 symbol previously defined at i810_main.c:145 as a module parameter\nvalue holder (i810_main.c:2174).  If i810fb is compiled-in or if this\nparam doesn\u0027t get a default value, this direct usage leads to a\ndivide-by-zero at i810_main.c:1005 (i810_check_params).  The patch simply\nreplace the \u0027yres\u0027 global, perhaps undefined symbol usage by a given\nparameter structure lookup.\n\nThis problem occurs with directfb, mplayer -vo fbdev, SDL library.\nIt was also reported ( but non solved ) at:\n\n\thttp://mail.directfb.org/pipermail/directfb-dev/2008-March/004050.html\n\nSigned-off-by: Samuel CUELLA \u003csamuel.cuella@supinfo.com\u003e\nCc: Jiri Kosina \u003cjkosina@suse.cz\u003e\nCc: Krzysztof Helt \u003ckrzysztof.h1@poczta.fm\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9233ecc5c4b5f31921d914b3ef3baa3dc1ae4cc6",
      "tree": "bca6b2ea3edbf65582df13e46edbdbb6f67f42a0",
      "parents": [
        "9333d826813a2722d3babfbfd0f65c21b75127b3"
      ],
      "author": {
        "name": "Steven King",
        "email": "sfking@fdwdc.com",
        "time": "Tue Mar 10 12:55:58 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:12 2009 -0700"
      },
      "message": "m68knommu: m528x build fix\n\nThere isn\u0027t any mcfqspi.h in the tree, and without it everything inside the\n#ifdef CONFIG_SPI is uncompilable.\n\nSigned-off-by: Steven King \u003csfking@fdwdc.com\u003e\nAcked-by: Greg Ungerer \u003cgerg@snapgear.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9333d826813a2722d3babfbfd0f65c21b75127b3",
      "tree": "18b8fa629b9e99f96837ce684f0f8267bf459de6",
      "parents": [
        "0612ea00a010e36fde61e7b7649a1105b0ef1080"
      ],
      "author": {
        "name": "Steven King",
        "email": "sfking@fdwdc.com",
        "time": "Tue Mar 10 12:55:57 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:12 2009 -0700"
      },
      "message": "m68knommu: m5206e build fix\n\nSigned-off-by: Steven King \u003csfking@fdwdc.com\u003e\nAcked-by: Greg Ungerer \u003cgerg@snapgear.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0612ea00a010e36fde61e7b7649a1105b0ef1080",
      "tree": "3e543336430dafbd67237075954f9ce0ccab2e65",
      "parents": [
        "be50b8342dead8cacf57d4839240106b225d31f5"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Mar 10 12:55:57 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:11 2009 -0700"
      },
      "message": "rcu: documentation 1Q09 update\n\nUpdate the RCU documentation to call out the need for callers of\nprimitives like call_rcu() and synchronize_rcu() to prevent subsequent RCU\nreaders from hazard.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "be50b8342dead8cacf57d4839240106b225d31f5",
      "tree": "a5f40b583e4c008313b090426fa785d178348e76",
      "parents": [
        "d58ab5cf09679d8cb4824e22cae900c0eab5ab31"
      ],
      "author": {
        "name": "Dhaval Giani",
        "email": "dhaval@linux.vnet.ibm.com",
        "time": "Tue Mar 10 12:55:56 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:11 2009 -0700"
      },
      "message": "kernel/user.c: fix a memory leak when freeing up non-init usernamespaces users\n\nWe were returning early in the sysfs directory cleanup function if the\nuser belonged to a non init usernamespace.  Due to this a lot of the\ncleanup was not done and we were left with a leak.  Fix the leak.\n\nReported-by: Serge Hallyn \u003cserue@linux.vnet.ibm.com\u003e\nSigned-off-by: Dhaval Giani \u003cdhaval@linux.vnet.ibm.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nTested-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d58ab5cf09679d8cb4824e22cae900c0eab5ab31",
      "tree": "090e82a516fe8db760a1b7514ed072bb458c1e2f",
      "parents": [
        "9c1e8a4ebcc04226cb6f3a1bf1d72f4cafd6b089"
      ],
      "author": {
        "name": "Atsushi Nemoto",
        "email": "anemo@mba.ocn.ne.jp",
        "time": "Tue Mar 10 12:55:55 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:11 2009 -0700"
      },
      "message": "mtd: physmap: fix NULL pointer dereference in error path\n\ncommit e480814f138cd5d78a8efe397756ba6b6518fdb6 (\"[MTD] [MAPS] physmap:\nfix wrong free and del_mtd_{partition,device}\") introduces a NULL pointer\ndereference in physmap_flash_remove when called from the error path in\nphysmap_flash_probe (if map_probe failed).\n\nCall del_mtd_{partition,device} only if info-\u003ecmtd was not NULL.\n\nReported-by: pHilipp Zabel \u003cphilipp.zabel@gmail.com\u003e\nSigned-off-by: Atsushi Nemoto \u003canemo@mba.ocn.ne.jp\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9c1e8a4ebcc04226cb6f3a1bf1d72f4cafd6b089",
      "tree": "30a76767516304283f29d1997cd6a285e39d160a",
      "parents": [
        "229cc58ba2b5a83b0b55764c6cb98695c106238a"
      ],
      "author": {
        "name": "Lubomir Rintel",
        "email": "lkundrak@v3.sk",
        "time": "Tue Mar 10 12:55:54 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:11 2009 -0700"
      },
      "message": "intel-agp: fix a panic with 1M of shared memory, no GTT entries\n\nWhen GTT size is equal to amount of video memory, the amount of GTT\nentries is computed lower than zero, which is invalid and leads to\noff-by-one error in intel_i915_configure()\n\nOriginally posted here:\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d12539\nhttp://bugzilla.redhat.com/show_bug.cgi?id\u003d445592\n\nSigned-off-by: Lubomir Rintel \u003clkundrak@v3.sk\u003e\nCc: Lubomir Rintel \u003clkundrak@v3.sk\u003e\nCc: Dave Airlie \u003cairlied@linux.ie\u003e\nReviewed-by: Eric Anholt \u003ceric@anholt.net\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "229cc58ba2b5a83b0b55764c6cb98695c106238a",
      "tree": "16816a73113a9f6f961b569c2a09c70a5b075607",
      "parents": [
        "1b23336ad98b3666c216617227c7767cd60a22be"
      ],
      "author": {
        "name": "Will Newton",
        "email": "will.newton@gmail.com",
        "time": "Tue Mar 10 12:55:53 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:11 2009 -0700"
      },
      "message": "mtd_dataflash: fix probing of AT45DB321C chips.\n\nCommit 771999b65f79264acde4b855e5d35696eca5e80c (\"[MTD] DataFlash: bugfix,\nbinary page sizes now handled\") broke support for probing AT45DB321C flash\nchips.  These chips do not support the \"page size\" status bit, so if we\nmatch the JEDEC id return early.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Will Newton \u003cwill.newton@gmail.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nAcked-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1b23336ad98b3666c216617227c7767cd60a22be",
      "tree": "8743554370742f55d993bfd6b5a281f81bc4dd0b",
      "parents": [
        "260219cc48cfb22486e5d0d706c978228a080d63"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Mar 10 12:55:52 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:11 2009 -0700"
      },
      "message": "idr: make idr_remove_all() do removal -before- free_layer()\n\nFix a problem in the IDR system, where an idr_remove_all() hands a data\nelement to call_rcu() (via free_layer()) before making that data element\ninaccessible to new readers.  This is very bad, and results in readers\nstill having a reference to this data element at the end of the grace\nperiod.\n\nTests on large machines that concurrently map and unmap user-space memory\nwithin the same multithreaded process result in crashes within about five\nminutes.  Applying this patch increases the kernel\u0027s longevity to the\nthree-to-eight-hour range.\n\nThere appear to be other similar problems in idr_get_empty_slot() and\nsub_remove(), but I fixed the easy one in idr_remove_all() first.  It is\ntherefore no surprise that failures still occur.\n\nLocated-by: Milton Miller II \u003cmiltonm@austin.ibm.com\u003e\nTested-by: Milton Miller II \u003cmiltonm@austin.ibm.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "260219cc48cfb22486e5d0d706c978228a080d63",
      "tree": "2346222cc38d9e8da0aca1988d08b6e0ecdf0d0a",
      "parents": [
        "2f68891314b14e7e0ef07b4e77a8ea6e917fc74b"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Mar 10 12:55:51 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:11 2009 -0700"
      },
      "message": "devpts: remove graffiti\n\nVery annoying when working with containters.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2f68891314b14e7e0ef07b4e77a8ea6e917fc74b",
      "tree": "28cbe3692f20f33a21524550901f978b38e1586e",
      "parents": [
        "5a891ed5adef39aca0b7662c58a2566c7a16237e"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Tue Mar 10 12:55:50 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:11 2009 -0700"
      },
      "message": "x86/agp: tighten check to update amd nb aperture\n\nImpact: fix bug to make agp work with dri\n\nJeffrey reported that dri does work with 64bit, but doesn\u0027t work with\n32bit it turns out NB aperture is 32M, aperture on agp is 128M\n\n64bit is using 64M for vaidation for 64 iommu/gart 32bit is only using\n32M..., and will not update the nb aperture.\n\nSo try to compare nb apterture and agp apterture before leaving not\ntouch nb aperture.\n\nReported-by: Jeffrey Trull \u003cjetrull@sbcglobal.net\u003e\nTested-by: Jeffrey Trull \u003cjetrull@sbcglobal.net\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nAcked-by: Dave Airlie \u003cairlied@linux.ie\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5a891ed5adef39aca0b7662c58a2566c7a16237e",
      "tree": "481ad376236c6f1efdd172e96ee6178b6f89f0c2",
      "parents": [
        "8ef1f0291a5d126f678b2f0225843c1ab550559c"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Mar 10 12:55:49 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:10 2009 -0700"
      },
      "message": "xtensa: fix compilation somewhat\n\n* -\u003eput_char changes\n * HIGHMEM is bogus it seems, there is no kmap_atomic() et al\n * some includes\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Chris Zankel \u003czankel@tensilica.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8ef1f0291a5d126f678b2f0225843c1ab550559c",
      "tree": "68831716d0992a656132dce8ad159755df39d4e3",
      "parents": [
        "c15ade65788b70797c947f7de3e049e6a23f407f"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "djwong@us.ibm.com",
        "time": "Tue Mar 10 12:55:48 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:10 2009 -0700"
      },
      "message": "lm85: add VRM10 support for adt7468 chip\n\nThe adt7468 chip supports VRM10 sensors just like the adt7463; add a\nmissing check for it.\n\nSigned-off-by: Darrick J. Wong \u003cdjwong@us.ibm.com\u003e\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c15ade65788b70797c947f7de3e049e6a23f407f",
      "tree": "cc19185bd91f520046864cf3725e4d2da0ae590b",
      "parents": [
        "b943c460ff8556a193b28e2145b513f8b978e869"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "djwong@us.ibm.com",
        "time": "Tue Mar 10 12:55:47 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:10 2009 -0700"
      },
      "message": "lm85: fix the version check that broke adt7468 probing\n\nThe verstep check in the lm85 driver fails because the upper nibble of\nthe version register is 0x7, not 0x6, on the adt7468 chip.  Probing of\nall adt7468s was broken by 69fc1feba2d5856ff74dedb6ae9d8c490210825c\n(\"hwmon: (lm85) Rework the device detection\"), and this patch fixes\nthat.  Also add in a missing i2c_device_id that accidentally got dropped\nfrom the original patch.\n\nSigned-off-by: Darrick J. Wong \u003cdjwong@us.ibm.com\u003e\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b943c460ff8556a193b28e2145b513f8b978e869",
      "tree": "766b11d2bb85bcd74675971dd933c26667d0f446",
      "parents": [
        "475049809977bf3975d78f2d2fd992e19ce2d59e"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue Mar 10 12:55:46 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:10 2009 -0700"
      },
      "message": "menu: fix embedded menu snafu\n\nThe COMPAT_BRK kconfig symbol does not depend on EMBEDDED, but it is in\nthe midst of the EMBEDDED menu symbols, so it mucks up the EMBEDDED menu.\nFix by moving it to just after all of the EMBEDDED menu symbols.  Also,\nANON_INODES has a similar problem, so move it to just above the EMBEDDED\nmenu items since it is used in the EMBEDDED menu.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "475049809977bf3975d78f2d2fd992e19ce2d59e",
      "tree": "36cda7a7735a38e92a6dc2ed58395cd3f337494d",
      "parents": [
        "1abaf3326bf2a2fabd6a0b6258e9cb33d734050a"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Tue Mar 10 12:55:45 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:10 2009 -0700"
      },
      "message": "mm: get_nid_for_pfn() returns int\n\nget_nid_for_pfn() returns int\n\nPresumably the (nid \u003c 0) case has never happened.\n\nWe do know that it is happening on one system while creating a symlink for\na memory section so it should also happen on the same system if\nunregister_mem_sect_under_nodes() were called to remove the same symlink.\n\nThe test was actually added in response to a problem with an earlier\nversion reported by Yasunori Goto where one or more of the leading pages\nof a memory section on the 2nd node of one of his systems was\nuninitialized because I believe they coincided with a memory hole.\n\nThat earlier version did not ignore uninitialized pages and determined\nthe nid by considering only the 1st page of each memory section.  This\ncaused the symlink to the 1st memory section on the 2nd node to be\nincorrectly created in /sys/devices/system/node/node0 instead of\n/sys/devices/system/node/node1.  The problem was fixed by adding the\ntest to skip over uninitialized pages.\n\nI suspect we have not seen any reports of the non-removal\nof a symlink due to the incorrect declaration of the nid\nvariable in unregister_mem_sect_under_nodes() because\n  - systems where a memory section could have an uninitialized\n    range of leading pages are probably rare.\n  - memory remove is probably not done very frequently on the\n    systems that are capable of demonstrating the problem.\n  - lingering symlink(s) that should have been removed may\n    have simply gone unnoticed.\n\n[garyhade@us.ibm.com: wrote changelog]\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nCc: Gary Hade \u003cgaryhade@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1abaf3326bf2a2fabd6a0b6258e9cb33d734050a",
      "tree": "dd51de5b7036139c6c17f27cbae8b259bebdeb75",
      "parents": [
        "a651d7997978bdecfc9891b05b9ee3dccb42f588",
        "d0fc63f7bd07cb779a06dc1cdd0c5a14e7f5d562"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 12:03:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 12:03:30 2009 -0700"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86 mmiotrace: fix remove_kmmio_fault_pages()\n"
    },
    {
      "commit": "a651d7997978bdecfc9891b05b9ee3dccb42f588",
      "tree": "e56ec2555639d5354dab6847c336dcb488cdc75a",
      "parents": [
        "bad948ffee7cbf73a7dd3e4b8272985d5c3c8b55",
        "467fc4988986865b5dbcc8cc6a86c9b650cb0c6f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 09:31:19 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 09:31:19 2009 -0700"
      },
      "message": "Merge branch \u0027sh/for-2.6.29\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6\n\n* \u0027sh/for-2.6.29\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6:\n  video: deferred io cleanup fix for sh_mobile_lcdcfb\n  sh: Add media/soc_camera.h to board setup of Renesas AP325RXA\n"
    },
    {
      "commit": "467fc4988986865b5dbcc8cc6a86c9b650cb0c6f",
      "tree": "ef990fb4c02340c54deb550d506a16097158a31c",
      "parents": [
        "ba087e6f69381de6c91d6634aa0f603a2fdc96a9"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Tue Mar 10 06:08:49 2009 +0000"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Tue Mar 10 15:23:01 2009 +0900"
      },
      "message": "video: deferred io cleanup fix for sh_mobile_lcdcfb\n\nFix deferred io cleanup patch in the sh_mobile_lcdcfb driver.\n\nIf probe() fails early the sh_mobile_lcdc_stop() function will\nbe called to clean up deferred io. This patch modifies the\ncode to only call fb_deferred_io_cleanup() after deferred io\nhas been initialized.\n\nWith this patch applied we no longer hit BUG_ON() inside\nfb_deferred_io_cleanup(). Triggers on a Migo-R with the\nSYS QVGA panel board unmounted.\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "ba087e6f69381de6c91d6634aa0f603a2fdc96a9",
      "tree": "62ab6fb45e7d079ff33c192547012c58a3d1b114",
      "parents": [
        "99adcd9d67aaf04e28f5ae96df280f236bde4b66"
      ],
      "author": {
        "name": "Nobuhiro Iwamatsu",
        "email": "iwamatsu.nobuhiro@renesas.com",
        "time": "Fri Mar 06 02:51:14 2009 +0000"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Tue Mar 10 15:20:54 2009 +0900"
      },
      "message": "sh: Add media/soc_camera.h to board setup of Renesas AP325RXA\n\nOther compilation errors were revised by commit of\n\"sh: ap325rxa: Revert ov772x support\"\n(08c2f5b4d76f83213e379b12df504269d21c9e7c) but other compilation\nerrors are given.\nWe revert this commit and need to add new header(media/soc_camera.h).\nThis change revises new compilation error.\n\nSigned-off-by: Nobuhiro Iwamatsu \u003ciwamatsu.nobuhiro@renesas.com\u003e\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "bad948ffee7cbf73a7dd3e4b8272985d5c3c8b55",
      "tree": "0bc675ff15d51bac630f03acaeb157aef0ede280",
      "parents": [
        "99adcd9d67aaf04e28f5ae96df280f236bde4b66",
        "5fd3a17ed456637a224cf4ca82b9ad9d005bc8d4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 20:50:11 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 20:50:11 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://neil.brown.name/md\n\n* \u0027for-linus\u0027 of git://neil.brown.name/md:\n  md: fix deadlock when stopping arrays\n"
    },
    {
      "commit": "99adcd9d67aaf04e28f5ae96df280f236bde4b66",
      "tree": "4fd43e20697199bd2884a21a8d469f0ff6632cbd",
      "parents": [
        "2d5516cbb9daf7d0e342a2e3b0fc6f8c39a81205",
        "753b7aea8e4611433c13ac157f944d8b4bf42482"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 13:23:59 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 13:23:59 2009 -0700"
      },
      "message": "Merge branch \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq\n\n* \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq:\n  [CPUFREQ] Add p4-clockmod sysfs-ui removal to feature-removal schedule.\n  Revert \"[CPUFREQ] Disable sysfs ui for p4-clockmod.\"\n"
    },
    {
      "commit": "2d5516cbb9daf7d0e342a2e3b0fc6f8c39a81205",
      "tree": "7f3fa06b708a508f4cc0fa6ef7894ede14101c87",
      "parents": [
        "df0b4a5080ca668636831b641a6356500fb5c637"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Mar 02 22:58:45 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 13:23:25 2009 -0700"
      },
      "message": "copy_process: fix CLONE_PARENT \u0026\u0026 parent_exec_id interaction\n\nCLONE_PARENT can fool the -\u003eself_exec_id/parent_exec_id logic. If we\nre-use the old parent, we must also re-use -\u003eparent_exec_id to make\nsure exit_notify() sees the right -\u003exxx_exec_id\u0027s when the CLONE_PARENT\u0027ed\ntask exits.\n\nAlso, move down the \"p-\u003eparent_exec_id \u003d p-\u003eself_exec_id\" thing, to place\ntwo different cases together.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Serge E. Hallyn \u003cserge@hallyn.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "753b7aea8e4611433c13ac157f944d8b4bf42482",
      "tree": "4d57088ac9ddf4cc1b08f29f6afcc5909280f0b0",
      "parents": [
        "129f8ae9b1b5be94517da76009ea956e89104ce8"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Mar 09 15:14:37 2009 -0400"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Mar 09 15:14:37 2009 -0400"
      },
      "message": "[CPUFREQ] Add p4-clockmod sysfs-ui removal to feature-removal schedule.\n\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "129f8ae9b1b5be94517da76009ea956e89104ce8",
      "tree": "f79cbe8397dd2578349d3aefe25dc72f26eab291",
      "parents": [
        "694593e3374a67d95ece6a275a1f181644c2c4d8"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Mar 09 15:07:33 2009 -0400"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Mar 09 15:07:33 2009 -0400"
      },
      "message": "Revert \"[CPUFREQ] Disable sysfs ui for p4-clockmod.\"\n\nThis reverts commit e088e4c9cdb618675874becb91b2fd581ee707e6.\n\nRemoving the sysfs interface for p4-clockmod was flagged as a\nregression in bug 12826.\n\nCourse of action:\n - Find out the remaining causes of overheating, and fix them\n   if possible. ACPI should be doing the right thing automatically.\n   If it isn\u0027t, we need to fix that.\n - mark p4-clockmod ui as deprecated\n - try again with the removal in six months.\n\nIt\u0027s not really feasible to printk about the deprecation, because\nit needs to happen at all the sysfs entry points, which means adding\na lot of strcmp(\"p4-clockmod\".. calls to the core, which.. bleuch.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "df0b4a5080ca668636831b641a6356500fb5c637",
      "tree": "aaab82b392b4e1fdc672ab55efb017c91fdc6616",
      "parents": [
        "39a3478c1c0122640b1a0ead0d7cccd0804b1750",
        "c0350024723b4a69e38655816484d934aca8eb30"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 09:15:40 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 09:15:40 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (29 commits)\n  p54: fix race condition in memory management\n  cfg80211: test before subtraction on unsigned\n  iwlwifi: fix error flow in iwl*_pci_probe\n  rt2x00 : more devices to rt73usb.c\n  rt2x00 : more devices to rt2500usb.c\n  bonding: Fix device passed into -\u003endo_neigh_setup().\n  vlan: Fix vlan-in-vlan crashes.\n  net: Fix missing dev-\u003eneigh_setup in register_netdevice().\n  tmspci: fix request_irq race\n  pkt_sched: act_police: Fix a rate estimator test.\n  tg3: Fix 5906 link problems\n  SCTP: change sctp_ctl_sock_init() to try IPv4 if IPv6 fails\n  IPv6: add \"disable\" module parameter support to ipv6.ko\n  sungem: another error printed one too early\n  aoe: error printed 1 too early\n  net pcmcia: worklimit reaches -1\n  net: more timeouts that reach -1\n  net: fix tokenring license\n  dm9601: new vendor/product IDs\n  netlink: invert error code in netlink_set_err()\n  ...\n"
    },
    {
      "commit": "39a3478c1c0122640b1a0ead0d7cccd0804b1750",
      "tree": "6d6468eaf5b98f5a9ec46d2ac2d9014e4d1b9bdc",
      "parents": [
        "1c91ffc896cf839a3a0923c0062ff61c930a21e0",
        "6db6a5f3ae2ca6b874b0fd97ae16fdc9b5cdd6cc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 09:14:17 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 09:14:17 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  lguest: fix for CONFIG_SPARSE_IRQ\u003dy\n  lguest: fix crash \u0027unhandled trap 13 at \u003cnative_read_msr_safe\u003e\u0027\n"
    },
    {
      "commit": "1c91ffc896cf839a3a0923c0062ff61c930a21e0",
      "tree": "aa17696055c9a3176f3be3cfdda009e7b71922cc",
      "parents": [
        "6d5b5acca9e566515ef3f1ed617e7295c4f94345",
        "b9447ef80bd301b932ac4d85c9622e929de5fd62"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 09:13:16 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 09:13:16 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable:\n  Btrfs: fix spinlock assertions on UP systems\n"
    },
    {
      "commit": "b9447ef80bd301b932ac4d85c9622e929de5fd62",
      "tree": "6d0bb1f287ed09f7850b77e2f622c3bebb35112b",
      "parents": [
        "4e06bdd6cbd5105376e7caf4e683ed131e777389"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Mar 09 11:45:38 2009 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Mar 09 11:45:38 2009 -0400"
      },
      "message": "Btrfs: fix spinlock assertions on UP systems\n\nbtrfs_tree_locked was being used to make sure a given extent_buffer was\nproperly locked in a few places.  But, it wasn\u0027t correct for UP compiled\nkernels.\n\nThis switches it to using assert_spin_locked instead, and renames it to\nbtrfs_assert_tree_locked to better reflect how it was really being used.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "6d5b5acca9e566515ef3f1ed617e7295c4f94345",
      "tree": "cad7d2487a95bacbf18ca06be3cef96d4dcf87c9",
      "parents": [
        "7a203f3b089be4410fe065dd9927027eade94557"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Mar 09 13:31:59 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 08:13:35 2009 -0700"
      },
      "message": "Fix fixpoint divide exception in acct_update_integrals\n\nFrans Pop reported the crash below when running an s390 kernel under Hercules:\n\n  Kernel BUG at 000738b4  verbose debug info unavailable!\n  fixpoint divide exception: 0009  #1! SMP\n  Modules linked in: nfs lockd nfs_acl sunrpc ctcm fsm tape_34xx\n     cu3088 tape ccwgroup tape_class ext3 jbd mbcache dm_mirror dm_log dm_snapshot\n     dm_mod dasd_eckd_mod dasd_mod\n  CPU: 0 Not tainted 2.6.27.19 #13\n  Process awk (pid: 2069, task: 0f9ed9b8, ksp: 0f4f7d18)\n  Krnl PSW : 070c1000 800738b4 (acct_update_integrals+0x4c/0x118)\n             R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:0 CC:1 PM:0\n  Krnl GPRS: 00000000 000007d0 7fffffff fffff830\n             00000000 ffffffff 00000002 0f9ed9b8\n             00000000 00008ca0 00000000 0f9ed9b8\n             0f9edda4 8007386e 0f4f7ec8 0f4f7e98\n  Krnl Code: 800738aa: a71807d0         lhi     %r1,2000\n             800738ae: 8c200001         srdl    %r2,1\n             800738b2: 1d21             dr      %r2,%r1\n            \u003e800738b4: 5810d10e         l       %r1,270(%r13)\n             800738b8: 1823             lr      %r2,%r3\n             800738ba: 4130f060         la      %r3,96(%r15)\n             800738be: 0de1             basr    %r14,%r1\n             800738c0: 5800f060         l       %r0,96(%r15)\n  Call Trace:\n  ( \u003c000000000004fdea\u003e! blocking_notifier_call_chain+0x1e/0x2c)\n    \u003c0000000000038502\u003e! do_exit+0x106/0x7c0\n    \u003c0000000000038c36\u003e! do_group_exit+0x7a/0xb4\n    \u003c0000000000038c8e\u003e! SyS_exit_group+0x1e/0x30\n    \u003c0000000000021c28\u003e! sysc_do_restart+0x12/0x16\n    \u003c0000000077e7e924\u003e! 0x77e7e924\n\nReason for this is that cpu time accounting usually only happens from\ninterrupt context, but acct_update_integrals gets also called from\nprocess context with interrupts enabled.\n\nSo in acct_update_integrals we may end up with the following scenario:\n\nBetween reading tsk-\u003estime/tsk-\u003eutime and tsk-\u003eacct_timexpd an interrupt\nhappens which updates accouting values.  This causes acct_timexpd to be\ngreater than the former stime + utime.  The subsequent calculation of\n\n\tdtime \u003d cputime_sub(time, tsk-\u003eacct_timexpd);\n\nwill be negative and the division performed by\n\n\tcputime_to_jiffies(dtime)\n\nwill generate an exception since the result won\u0027t fit into a 32 bit\nregister.\n\nIn order to fix this just always disable interrupts while accessing any\nof the accounting values.\n\nReported by: Frans Pop \u003celendil@planet.nl\u003e\nTested by: Frans Pop \u003celendil@planet.nl\u003e\nCc: stable@kernel.org\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6db6a5f3ae2ca6b874b0fd97ae16fdc9b5cdd6cc",
      "tree": "567ab7d3593f6ab63fecfb8c9797fb4efda67ea7",
      "parents": [
        "cbd88c8e6f5cdb8d4b9af01df825305200240382"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 09 10:06:28 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 09 10:06:29 2009 +1030"
      },
      "message": "lguest: fix for CONFIG_SPARSE_IRQ\u003dy\n\nImpact: remove lots of lguest boot WARN_ON() when CONFIG_SPARSE_IRQ\u003dy\n\nWe now need to call irq_to_desc_alloc_cpu() before\nset_irq_chip_and_handler_name(), but we can\u0027t do that from init_IRQ (no\nkmalloc available).\n\nSo do it as we use interrupts instead.  Also means we only alloc for\nirqs we use, which was the intent of CONFIG_SPARSE_IRQ anyway.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\n"
    },
    {
      "commit": "cbd88c8e6f5cdb8d4b9af01df825305200240382",
      "tree": "4ec4c5123fab9f08e7a31fe7843ab4f7b9197656",
      "parents": [
        "7a203f3b089be4410fe065dd9927027eade94557"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 09 10:06:22 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 09 10:06:28 2009 +1030"
      },
      "message": "lguest: fix crash \u0027unhandled trap 13 at \u003cnative_read_msr_safe\u003e\u0027\n\nImpact: fix lguest boot crash on modern Intel machines\n\nThe code in early_init_intel does:\n\n\tif (c-\u003ex86 \u003e 6 || (c-\u003ex86 \u003d\u003d 6 \u0026\u0026 c-\u003ex86_model \u003e\u003d 0xd)) {\n\t\tu64 misc_enable;\n\n\t\trdmsrl(MSR_IA32_MISC_ENABLE, misc_enable);\n\nAnd that rdmsr faults (not allowed from non-0 PL).  We can get around\nthis by mugging the family ID part of the cpuid.  5 seems like a good\nnumber.\n\nOf course, this is a hack (how very lguest!).  We could just indicate\nthat we don\u0027t support MSRs, or implement lguest_rdmst.\n\nReported-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nTested-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "d0fc63f7bd07cb779a06dc1cdd0c5a14e7f5d562",
      "tree": "9d4dd9976bbc20709d6f8e0242537f76141bdc7d",
      "parents": [
        "73bf1b62f561fc8ecb00e2810efe4fe769f4933e"
      ],
      "author": {
        "name": "Stuart Bennett",
        "email": "stuart@freedesktop.org",
        "time": "Sun Mar 08 20:21:35 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 08 19:51:23 2009 +0100"
      },
      "message": "x86 mmiotrace: fix remove_kmmio_fault_pages()\n\nImpact: fix race+crash in mmiotrace\n\nThe list manipulation in remove_kmmio_fault_pages() was broken. If more\nthan one consecutive kmmio_fault_page was re-added during the grace\nperiod between unregister_kmmio_probe() and remove_kmmio_fault_pages(),\nthe list manipulation failed to remove pages from the release list.\n\nAfter a second grace period the pages get into rcu_free_kmmio_fault_pages()\nand raise a BUG_ON() kernel crash.\n\nThe list manipulation is fixed to properly remove pages from the release\nlist.\n\nThis bug has been present from the very beginning of mmiotrace in the\nmainline kernel. It was introduced in 0fd0e3da (\"x86: mmiotrace full\npatch, preview 1\");\n\nAn urgent fix for Linus. Tested by Stuart (on 32-bit) and Pekka\n(on amd and intel 64-bit systems, nouveau and nvidia proprietary).\n\nSigned-off-by: Stuart Bennett \u003cstuart@freedesktop.org\u003e\nSigned-off-by: Pekka Paalanen \u003cpq@iki.fi\u003e\nLKML-Reference: \u003c20090308202135.34933feb@daedalus.pq.iki.fi\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7a203f3b089be4410fe065dd9927027eade94557",
      "tree": "dfccff61334ba6cf6047cbfca09fd6147a3a8d8a",
      "parents": [
        "dbb9be8a79802d1d1fd487d54ad48ac0b7fc17df",
        "cda56ac29f2d8288d62978272856884d26e0b47b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:37:57 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:37:57 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc:\n  mmc: fix data timeout for SEND_EXT_CSD\n"
    },
    {
      "commit": "dbb9be8a79802d1d1fd487d54ad48ac0b7fc17df",
      "tree": "1a6f93549250fc611bec649d78f510bb939be0ce",
      "parents": [
        "05e12a699e2ec5bd9697754320dc77253a241bdf",
        "64ca5ab913f1594ef316556e65f5eae63ff50cee"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:30:18 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:30:18 2009 -0700"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  rcu: increment quiescent state counter in ksoftirqd()\n"
    },
    {
      "commit": "05e12a699e2ec5bd9697754320dc77253a241bdf",
      "tree": "82eedc611b954dda78ca143a1bcca343ee55f1db",
      "parents": [
        "cd3c1cde262b0f068d27d980648892b2843966d4",
        "73bf1b62f561fc8ecb00e2810efe4fe769f4933e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:27:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:27:13 2009 -0700"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86, pebs: correct qualifier passed to ds_write_config() from ds_request_pebs()\n  x86, bts: remove bad warning\n  x86: add Dell XPS710 reboot quirk\n  x86, math-emu: fix init_fpu for task !\u003d current\n  x86: EFI: Back efi_ioremap with init_memory_mapping instead of FIX_MAP\n  x86: fix DMI on EFI\n"
    },
    {
      "commit": "cd3c1cde262b0f068d27d980648892b2843966d4",
      "tree": "b3c4433b39b790894836ac1fde2ee6d5f878e296",
      "parents": [
        "5b61f6accfd6449150aefe13a7679ec360abcc16",
        "c9a0c8a6845b5efb64841f40b8efb4c387051d46"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:25:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:25:13 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:\n  [WATCHDOG] orion5x_wdt.c: \u0027ORION5X_TCLK\u0027 undeclared\n  [WATCHDOG] gef_wdt.c: fsl_get_sys_freq() failure not noticed\n  [WATCHDOG] ks8695_wdt.c: \u0027CLOCK_TICK_RATE\u0027 undeclared\n  [WATCHDOG] rc32434_wdt: fix sections\n  [WATCHDOG] rc32434_wdt: fix watchdog driver\n"
    },
    {
      "commit": "5b61f6accfd6449150aefe13a7679ec360abcc16",
      "tree": "19544bac887b5849e6a3b4cbd2f78d7cd6774268",
      "parents": [
        "14016899967739585b7450d486681f4c5deec149",
        "7ce9d5d1f3c8736511daa413c64985a05b2feee3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:24:57 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:24:57 2009 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:\n  ext4: fix ext4_free_inode() vs. ext4_claim_inode() race\n"
    },
    {
      "commit": "14016899967739585b7450d486681f4c5deec149",
      "tree": "9fe2925887b6d24cf8c8bab1e4ba78008fc11d1c",
      "parents": [
        "5dc18f51a2c06ddab708184e30b7967fb71c1784",
        "f3f704d375fcc92950f688ccb3dd0f650acace92"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:24:39 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:24:39 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6: (28 commits)\n  Blackfin arch: SPI_MMC is now mainlined MMC_SPI\n  Blackfin arch: disable legacy /proc/scsi/ support by default\n  Blackfin arch: remove duplicated ANOMALY_05000448 ifdef check\n  Blackfin arch: add stubs for anomalies 447 and 448\n  Blackfin arch: cleanup bfin_sport.h header and export it to userspace\n  Blackfin arch: fix bug - gdb signull case make trunk kernel panic frequently\n  Blackfin arch: remove spurious dash when dcache is off\n  Blackfin arch: mark init_pda as __init as only __init funcs all it\n  Blackfin arch: fix bug - On bf548-ezkit, ethernet fails to work after wakeup from \"mem\"\n  Blackfin arch: Random read/write errors are a bad thing\n  Blackfin arch: update default kernel config, select KSZ8893M driver for BF518\n  Blackfin arch: Fix bug - KGDB single step into the middle of a 4 bytes instruction on bf561 after soft bp is hit\n  Blackfin arch: Fix bug - make ksz8893m driver available when bfin_mac is enabled\n  Blackfin arch: make sure people do not set the kernel load address too high\n  Blackfin arch: fix bug - The SPORT_HYS bit is not set for BF561 0.5\n  Blackfin arch: update anomaly sheets to match latest public info\n  Blackfin arch: Fix BUG - kernel fails to build in pm.c when allow wakeup fromi standby by GPIO\n  Blackfin arch: PM_BFIN_WAKE_GP: update help\n  Blackfin arch: fix bug - kgdb fails to continue after setting breakpoint on bf561-ezkit kernel with smp patch\n  Blackfin arch: Enable Write Back Cache on all Blackfin Boards\n  ...\n"
    },
    {
      "commit": "5dc18f51a2c06ddab708184e30b7967fb71c1784",
      "tree": "b080f2a651f694f523491487bf92d28c3c63d981",
      "parents": [
        "fd6ec5f3acfe7e94469d83374b83ff183953fa45",
        "7cbd4877e5b167b56a3d6033b926a9f925186e12"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:23:05 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:23:05 2009 -0700"
      },
      "message": "Merge branch \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx\n\n* \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx:\n  dmatest: fix use after free in dmatest_exit\n  ipu_idmac: fix spinlock type\n  iop-adma, mv_xor: fix mem leak on self-test setup failure\n  fsldma: fix off by one in dma_halt\n  I/OAT: fail self-test if callback test reaches timeout\n  I/OAT: update driver version and copyright dates\n  I/OAT: list usage cleanup\n  I/OAT: set tcp_dma_copybreak to 256k for I/OAT ver.3\n  I/OAT: cancel watchdog before dma remove\n  I/OAT: fail initialization on zero channels detection\n  I/OAT: do not set DCACTRL_CMPL_WRITE_ENABLE for I/OAT ver.3\n  I/OAT: add verification for proper APICID_TAG_MAP setting by BIOS\n  dmaengine: update kerneldoc\n"
    },
    {
      "commit": "fd6ec5f3acfe7e94469d83374b83ff183953fa45",
      "tree": "6f7aa80a8e95c054424d9e8229da3df0dd694ecd",
      "parents": [
        "83d5a325107cd0befa2b863e795675bc8ff881d7",
        "d42ad15b759d05a87f22b484af63987eff38ea88"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:22:22 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:22:22 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6:\n  ata: add CFA specific identify data words\n  remove stale comment from \u003clinux/hdreg.h\u003e\n  AT91: initialize Compact Flash on AT91SAM9263 cpu\n  ide: add at91_ide driver\n  ide: allow to wrap interrupt handler\n  ide-iops: fix odd-length ATAPI PIO transfers\n  ide: NULL noise: drivers/ide/ide-*.c\n  ide: expiry() returns int, negative expiry() return values won\u0027t be noticed\n"
    }
  ],
  "next": "83d5a325107cd0befa2b863e795675bc8ff881d7"
}
