)]}'
{
  "log": [
    {
      "commit": "bb803cfbecb03a0cf8dc7e1864f18dda6631af00",
      "tree": "6c0989693bea6f50cfa5c6bb14f52ec19668def3",
      "parents": [
        "3878fb6fdbceecca20b15748f807340854220f06",
        "511e11e396dc596825ce04d53d7f6d579404bc01"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 18 21:08:20 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 18 21:08:20 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/scsi/fcoe/fcoe.c\n"
    },
    {
      "commit": "9b8de7479d0dbab1ed98b5b015d44232c9d3d08e",
      "tree": "1b138996efe642f03699a7737af109dfa72ef830",
      "parents": [
        "ccc5ff94c66e628d3c501b26ace5d4339667715d"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Apr 21 23:00:24 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 21 19:39:59 2009 -0700"
      },
      "message": "FRV: Fix the section attribute on UP DECLARE_PER_CPU()\n\nIn non-SMP mode, the variable section attribute specified by DECLARE_PER_CPU()\ndoes not agree with that specified by DEFINE_PER_CPU().  This means that\narchitectures that have a small data section references relative to a base\nregister may throw up linkage errors due to too great a displacement between\nwhere the base register points and the per-CPU variable.\n\nOn FRV, the .h declaration says that the variable is in the .sdata section, but\nthe .c definition says it\u0027s actually in the .data section.  The linker throws\nup the following errors:\n\nkernel/built-in.o: In function `release_task\u0027:\nkernel/exit.c:78: relocation truncated to fit: R_FRV_GPREL12 against symbol `per_cpu__process_counts\u0027 defined in .data section in kernel/built-in.o\nkernel/exit.c:78: relocation truncated to fit: R_FRV_GPREL12 against symbol `per_cpu__process_counts\u0027 defined in .data section in kernel/built-in.o\n\nTo fix this, DECLARE_PER_CPU() should simply apply the same section attribute\nas does DEFINE_PER_CPU().  However, this is made slightly more complex by\nvirtue of the fact that there are several variants on DEFINE, so these need to\nbe matched by variants on DECLARE.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "94713bab649736177a1c33a39b7bb33cbd5af3a5",
      "tree": "ce5bb57051bd5d798308120b540985188c5e5498",
      "parents": [
        "5d57eeb52ae71a03c8e083a9b0a818a9b63ca440"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Thu Apr 09 14:09:46 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 09 17:21:22 2009 -0700"
      },
      "message": "ERR_PTR() dereference in net/rds/ib.c\n\nrdma_create_id() doesn\u0027t return NULL, only ERR_PTR().\n\nFound by smatch (http://repo.or.cz/w/smatch.git).  Compile tested.\n\nregards,\ndan carpenter\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5d57eeb52ae71a03c8e083a9b0a818a9b63ca440",
      "tree": "7f8eed714ccff8f7fab0f192bbbb65f3e76301b5",
      "parents": [
        "05a178ecdc7396b78dfbb5d8bda65108b37b8672"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Thu Apr 09 14:09:45 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 09 17:21:22 2009 -0700"
      },
      "message": "ERR_PTR() dereference in net/rds/iw.c\n\nrdma_create_id() returns ERR_PTR() not null.\n\nFound by smatch (http://repo.or.cz/w/smatch.git).  Compile tested.\n\nregards,\ndan carpenter\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "05a178ecdc7396b78dfbb5d8bda65108b37b8672",
      "tree": "f500fe4a1d732a933d72824752deb681667bfd8b",
      "parents": [
        "9c56a84478b708e5d8d34d28cc3a8e71842d5b05"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Apr 09 14:09:44 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 09 17:21:21 2009 -0700"
      },
      "message": "rds: use kmem_cache_zalloc instead of kmem_cache_alloc/memset\n\nUse kmem_cache_zalloc instead of kmem_cache_alloc/memset.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9c56a84478b708e5d8d34d28cc3a8e71842d5b05",
      "tree": "9f5e9274f64a83bdd97984c14768c0af6b9e66d8",
      "parents": [
        "830eb7d56c18ff4c29acd8b0bb48db404660321f"
      ],
      "author": {
        "name": "Huang Weiyi",
        "email": "weiyi.huang@gmail.com",
        "time": "Thu Apr 09 14:09:43 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 09 17:21:20 2009 -0700"
      },
      "message": "RDS: remove unused #include \u003cversion.h\u003e\n\nRemove unused #include \u003cversion.h\u003e in net/rds/af_rds.c.\n\nSigned-off-by: Huang Weiyi \u003cweiyi.huang@gmail.com\u003e\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "830eb7d56c18ff4c29acd8b0bb48db404660321f",
      "tree": "5c467f39c1627d3048c6bb08fa314b12c2ee7c03",
      "parents": [
        "49f696914100780f6bf8e652d3468de0015d6172"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Thu Apr 09 14:09:42 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 09 17:21:20 2009 -0700"
      },
      "message": "RDS: use get_user_pages_fast()\n\nUse the new function that is simpler and faster.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "49f696914100780f6bf8e652d3468de0015d6172",
      "tree": "7db75b8f01ed4cec915196c5c00923cda580e385",
      "parents": [
        "7acd4a794c1530af063e51f3f7171e75556458f3"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Thu Apr 09 14:09:41 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 09 17:21:19 2009 -0700"
      },
      "message": "RDS: Establish connection before parsing CMSGs\n\nThe first message to a remote node should prompt a new connection.\nEven an RDMA op via CMSG. Therefore move CMSG parsing to after\nconnection establishment.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7acd4a794c1530af063e51f3f7171e75556458f3",
      "tree": "4c213f984afa23fbb704a9e94f6f754ed50bdb5d",
      "parents": [
        "7b70d0336da777c00395cc7a503497c2cdabd1a8"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Thu Apr 09 14:09:40 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 09 17:21:18 2009 -0700"
      },
      "message": "RDS: Fix ordering in a conditional\n\nPutting the constant first is a supposed \"best practice\" that actually makes\nthe code harder to read.\n\nThanks to Roland Dreier for finding a bug in this \"simple, obviously correct\"\npatch.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7b70d0336da777c00395cc7a503497c2cdabd1a8",
      "tree": "60da1fba7bdfb7d905ab0fe9b23b5289f068265f",
      "parents": [
        "d39e0602bb987133321d358d9b837d67c27b223d"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Thu Apr 09 14:09:39 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 09 17:21:17 2009 -0700"
      },
      "message": "RDS/IW+IB: Allow max credit advertise window.\n\nFix hack that restricts the credit advertisement to 127.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d39e0602bb987133321d358d9b837d67c27b223d",
      "tree": "0353b7c1fd6b9b5672c5d4b74e1935428822a47a",
      "parents": [
        "11bc9421da3040c71fc96da1a31e95217e8cf2af"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Thu Apr 09 14:09:38 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 09 17:21:16 2009 -0700"
      },
      "message": "RDS/IW+IB: Set the RDS_LL_SEND_FULL bit when we\u0027re throttled.\n\nThe RDS_LL_SEND_FULL bit should be set when we stop transmitted due to\nflow control.  Otherwise the send worker will keep trying as opposed to\nsleeping until we unthrottle.  Saves CPU.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "11bc9421da3040c71fc96da1a31e95217e8cf2af",
      "tree": "f41ce9197671c22e63ba54ee97f2ab74e1520808",
      "parents": [
        "5cd2fe6d54c91aa76893b3034f5f3473063c0202"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Thu Apr 09 14:09:37 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 09 17:21:15 2009 -0700"
      },
      "message": "RDS: Correct some iw references in rdma_transport.c\n\nHad some lingering instances of _iw_ variable names from when\nthe listen code was centralized into rdma_transport.c\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5cd2fe6d54c91aa76893b3034f5f3473063c0202",
      "tree": "e2ffb6f8a3b9919326c1da62729aa2b542cdd017",
      "parents": [
        "a0c31fdfb7f158780faa43ab83cc08b414bebd7e"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Thu Apr 09 14:09:36 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 09 17:21:14 2009 -0700"
      },
      "message": "RDS/IW+IB: Set recv ring low water mark to 1/2 full.\n\nCurrently the recv ring low water mark is 1/4 the depth.  Performance\nmeasurements show that this limits iWARP throughput by flow controlling\nthe rds-stress senders.  Setting it to 1/2 seems to max the T3\nperformance.  I tried even higher levels but that didn\u0027t help and it\nstarted to increase the rds thread cpu utilization.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8cbd9606a6367c221a7bbcc47f3ab1a8c31b6437",
      "tree": "9ff2adf88be32383fd59dc133f1cd6670b9ee815",
      "parents": [
        "745cbccac3fe8cead529a1b3358e1e86a1505bfa"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Wed Apr 01 08:20:20 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 02 00:52:22 2009 -0700"
      },
      "message": "RDS: Use spinlock to protect 64b value update on 32b archs\n\nWe have a 64bit value that needs to be set atomically.\nThis is easy and quick on all 64bit archs, and can also be done\non x86/32 with set_64bit() (uses cmpxchg8b). However other\n32b archs don\u0027t have this.\n\nI actually changed this to the current state in preparation for\nmainline because the old way (using a spinlock on 32b) resulted in\nunsightly #ifdefs in the code. But obviously, being correct takes\nprecedence.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "745cbccac3fe8cead529a1b3358e1e86a1505bfa",
      "tree": "6c865b19881dbdd64556cc1827f6966d8a646a38",
      "parents": [
        "f1cffcbfcc53b825da7d1d26244aabd8dccb24aa"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Wed Apr 01 08:20:19 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 02 00:52:22 2009 -0700"
      },
      "message": "RDS: Rewrite connection cleanup, fixing oops on rmmod\n\nThis fixes a bug where a connection was unexpectedly\nnot on *any* list while being destroyed. It also\ncleans up some code duplication and regularizes some\nfunction names.\n\n* Grab appropriate lock in conn_free() and explain in comment\n* Ensure via locking that a conn is never not on either\n  a dev\u0027s list or the nodev list\n* Add rds_xx_remove_conn() to match rds_xx_add_conn()\n* Make rds_xx_add_conn() return void\n* Rename remove_{,nodev_}conns() to\n  destroy_{,nodev_}conns() and unify their implementation\n  in a helper function\n* Document lock ordering as nodev conn_lock before\n  dev_conn_lock\n\nReported-by: Yosef Etigin \u003cyosefe@voltaire.com\u003e\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f1cffcbfcc53b825da7d1d26244aabd8dccb24aa",
      "tree": "d71e3c271b29eecfc685b96ab0cf15404bd84ba5",
      "parents": [
        "f1782852adb57c8daf76a56146424f6c2f7410b6"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Wed Apr 01 08:20:18 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 02 00:52:21 2009 -0700"
      },
      "message": "RDS: Fix m_rs_lock deadlock\n\nrs_send_drop_to() is called during socket close. If it takes\nm_rs_lock without disabling interrupts, then\nrds_send_remove_from_sock() can run from the rx completion\nhandler and thus deadlock.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "abb79972b4d1dff00f79cb0d123173abac48a6ae",
      "tree": "13452f943a822a05ee9d7904c9f79e79df8bb23b",
      "parents": [
        "567c6c4e2b92f4b8632b043f9395b216b7e7c3ce"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue Mar 03 21:39:40 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 03 21:39:40 2009 -0800"
      },
      "message": "rds: fix iband RDMA dependencies\n\nFix RDS Infiniband dependencies for RDMA so that these\nbuild errors won\u0027t happen:\n\nERROR: \"rdma_accept\" [net/rds/rds.ko] undefined!\nERROR: \"rdma_destroy_id\" [net/rds/rds.ko] undefined!\nERROR: \"rdma_connect\" [net/rds/rds.ko] undefined!\nERROR: \"rdma_destroy_qp\" [net/rds/rds.ko] undefined!\nERROR: \"rdma_listen\" [net/rds/rds.ko] undefined!\nERROR: \"rdma_notify\" [net/rds/rds.ko] undefined!\nERROR: \"rdma_create_id\" [net/rds/rds.ko] undefined!\nERROR: \"rdma_create_qp\" [net/rds/rds.ko] undefined!\nERROR: \"rdma_bind_addr\" [net/rds/rds.ko] undefined!\nERROR: \"rdma_resolve_route\" [net/rds/rds.ko] undefined!\nERROR: \"rdma_disconnect\" [net/rds/rds.ko] undefined!\nERROR: \"rdma_reject\" [net/rds/rds.ko] undefined!\nERROR: \"rdma_resolve_addr\" [net/rds/rds.ko] undefined!\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nAcked-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c3b3240450ab8a1f3e52c5a69d53113deb6f91c5",
      "tree": "aa3d75899e030f149761fd2378a5c24f42651cc7",
      "parents": [
        "aa4abc9bcce0d2a7ec189e897f8f8c58ca04643b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 01:49:28 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 01:49:28 2009 -0800"
      },
      "message": "rds: Fix build on powerpc.\n\nAs reported by Stephen Rothwell.\n\n\u003e Today\u0027s linux-next build (powerpc allyesconfig) failed like this:\n\u003e\n\u003e net/rds/cong.c: In function \u0027rds_cong_set_bit\u0027:\n\u003e net/rds/cong.c:284: error: implicit declaration of function \u0027generic___set_le_bit\u0027\n\u003e net/rds/cong.c: In function \u0027rds_cong_clear_bit\u0027:\n\u003e net/rds/cong.c:298: error: implicit declaration of function \u0027generic___clear_le_bit\u0027\n\u003e net/rds/cong.c: In function \u0027rds_cong_test_bit\u0027:\n\u003e net/rds/cong.c:309: error: implicit declaration of function \u0027generic_test_le_bit\u0027\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fe17f84f5f2a7d6c1a31c04c06a016d4ad5f7dec",
      "tree": "e4247089b3c56c96a9933b024037f6a699816b91",
      "parents": [
        "a09ed661f756d3209a19271192abe9b892b59c7d"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:39 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:43:35 2009 -0800"
      },
      "message": "RDS: Kconfig and Makefile\n\nAdd RDS Kconfig and Makefile, and modify net/\u0027s to add\nus to the build.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "55b7ed0b582f9ff4bf3b9b44969cddda8c6763ea",
      "tree": "d8c1883c1ba00e9b99888757e86368498b622981",
      "parents": [
        "fcd8b7c0ecf792dd824b2edcd63cb2c08563c340"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:37 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:33 2009 -0800"
      },
      "message": "RDS: Common RDMA transport code\n\nAlthough most of IB and iWARP are separated from each other,\nthere is some common code required to handle their shared\nCM listen port. This code listens for CM events and then\ndispatches the event to the appropriate transport, either\nIB or iWARP.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fcd8b7c0ecf792dd824b2edcd63cb2c08563c340",
      "tree": "9ba10fe626cc9129f9138bc81b1fa61c74097e4f",
      "parents": [
        "e6babe4cc4ce48577d743cc0de19a214f2527956"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:36 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:33 2009 -0800"
      },
      "message": "RDS: Add iWARP support\n\nSupport for iWARP NICs is implemented as a separate\nRDS transport from IB. The code, however, is very\nsimilar to IB (it was forked, basically.) so let\u0027s keep\nit in one changeset.\n\nThe reason for this duplicationis that despite its similarity\nto IB, there are a number of places where it has different\nsemantics. iwarp zcopy support is still under development,\nand giving it its own sandbox ensures that IB code isn\u0027t\ndisrupted while iwarp changes. Over time these transports\nwill re-converge.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e6babe4cc4ce48577d743cc0de19a214f2527956",
      "tree": "747f29b9f5b3c0f9209c8738aac372350e9cc34a",
      "parents": [
        "1e23b3ee0e943060a2e677cd20ed666b6060e12d"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:35 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:32 2009 -0800"
      },
      "message": "RDS/IB: Stats and sysctls\n\nIB-specific stats and sysctls.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1e23b3ee0e943060a2e677cd20ed666b6060e12d",
      "tree": "609c728381e8950b3e41db326c58ced0b73cac70",
      "parents": [
        "6a0979df32296c3ba75a346db47a18292a231c6e"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:34 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:32 2009 -0800"
      },
      "message": "RDS/IB: Receive datagrams via IB\n\nHeader parsing, ring refill. It puts the incoming data into an\nrds_incoming struct, which is passed up to rds-core.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6a0979df32296c3ba75a346db47a18292a231c6e",
      "tree": "4d8cff3575e6e12e1472c6b10f837663db23d3fc",
      "parents": [
        "08b48a1ed84b19b602cbe979184ad06e7e1c025e"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:33 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:31 2009 -0800"
      },
      "message": "RDS/IB: Implement IB-specific datagram send.\n\nSpecific to IB is a credits-based flow control mechanism, in\naddition to the expected usage of the IB API to package outgoing\ndata into work requests.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "08b48a1ed84b19b602cbe979184ad06e7e1c025e",
      "tree": "3a35506ca9ef2f193cb5f6818a79e83d80e1ea0b",
      "parents": [
        "f528efe276ec16603b78f95fb63ca26b5b4c87dc"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:32 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:31 2009 -0800"
      },
      "message": "RDS/IB: Implement RDMA ops using FMRs\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f528efe276ec16603b78f95fb63ca26b5b4c87dc",
      "tree": "5eaf262dbf69918c4155c905d950c899bc08c326",
      "parents": [
        "ec16227e14141e4fd7ae76354c09dadfe2449d9e"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:31 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:30 2009 -0800"
      },
      "message": "RDS/IB: Ring-handling code.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ec16227e14141e4fd7ae76354c09dadfe2449d9e",
      "tree": "9a20de7d9a0688d721517c2b38d6be83956c7ca4",
      "parents": [
        "eff5f53bef75c0864a5da06bb688939092b848dc"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:30 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:30 2009 -0800"
      },
      "message": "RDS/IB: Infiniband transport\n\nRegisters as an RDS transport and an IB client, and uses IB CM\nAPI to allocate ids, queue pairs, and the rest of that fun stuff.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eff5f53bef75c0864a5da06bb688939092b848dc",
      "tree": "116790e2c93ba3adbbce52704810569cd5517492",
      "parents": [
        "bdbe6fbc6a2f2ccfb384b141b257677d2a8d36fb"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:29 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:29 2009 -0800"
      },
      "message": "RDS: RDMA support\n\nSome transports may support RDMA features. This handles the\nnon-transport-specific parts, like pinning user pages and\ntracking mapped regions.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bdbe6fbc6a2f2ccfb384b141b257677d2a8d36fb",
      "tree": "d95159804fa3c11576fc00d2ef2eebba909638d8",
      "parents": [
        "5c11559046c4b3498d1977a029de8a312eacce35"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:28 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:29 2009 -0800"
      },
      "message": "RDS: recv.c\n\nUpon receiving a datagram from the transport, RDS parses the\nheaders and potentially queues an ACK.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5c11559046c4b3498d1977a029de8a312eacce35",
      "tree": "a6690f5118551a86de904e7bdb16736cc4ec90ee",
      "parents": [
        "7875e18e09961d29f30424c5e2e48e704dc3789b"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:27 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:28 2009 -0800"
      },
      "message": "RDS: send.c\n\nThis is the code to send an RDS datagram.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7875e18e09961d29f30424c5e2e48e704dc3789b",
      "tree": "e0092fa58436f8f221694a94e119642331614c79",
      "parents": [
        "3e5048495c8569bfdd552750e0315973c61e7c93"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:26 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:28 2009 -0800"
      },
      "message": "RDS: Message parsing\n\nParsing of newly-received RDS message headers (including ext.\nheaders) and copy-to/from-user routines.\n\npage.c implements a per-cpu page remainder cache, to reduce the\nnumber of allocations needed for small datagrams.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3e5048495c8569bfdd552750e0315973c61e7c93",
      "tree": "92482339b7aa3ea76e3c44e8e417ab6afebae662",
      "parents": [
        "13796bf9edc9d2008cfaa3ebea89312ced0d44a9"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:25 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:26 2009 -0800"
      },
      "message": "RDS: sysctls\n\nRDS exposes a few tunable parameters via sysctls.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "13796bf9edc9d2008cfaa3ebea89312ced0d44a9",
      "tree": "4fff8d6ad10008e52ad28cad47d5d4e7b87ba274",
      "parents": [
        "00e0f34c616603ba6500f41943cbf89eb4a8a5be"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:24 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:26 2009 -0800"
      },
      "message": "RDS: loopback\n\nA simple rds transport to handle loopback connections.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "00e0f34c616603ba6500f41943cbf89eb4a8a5be",
      "tree": "19e0570b4df977b1e83f687b35cd311322176f92",
      "parents": [
        "a8c879a7ee988eb67a5e85e87fa2cc953e0ca749"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:23 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:25 2009 -0800"
      },
      "message": "RDS: Connection handling\n\nWhile arguably the fact that the underlying transport needs a\nconnection to convey RDS\u0027s datagrame reliably is not important\nto rds proper, the transports implemented so far (IB and TCP)\nhave both been connection-oriented, and so the connection\nstate machine-related code is in the common rds code.\n\nThis patch also includes several work items, to handle connecting,\nsending, receiving, and shutdown.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a8c879a7ee988eb67a5e85e87fa2cc953e0ca749",
      "tree": "493db4a3137d9f7bd1fe871ace4f5e12c1fbb2a1",
      "parents": [
        "0fbc78cbf51f3edee17c2ede42c7b3c13736158a"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:22 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:25 2009 -0800"
      },
      "message": "RDS: Info and stats\n\nRDS currently generates a lot of stats that are accessible via\nthe rds-info utility. This code implements the support for this.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0fbc78cbf51f3edee17c2ede42c7b3c13736158a",
      "tree": "94af9c97ed5883a2ae45bc6ff2a70c8838112546",
      "parents": [
        "922cb17a5c812fcc9ebee249f4109db099896941"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:21 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:24 2009 -0800"
      },
      "message": "RDS: Transport code\n\nRDS supports multiple transports. While this initial submission\nonly supports Infiniband transport, this abstraction allows others\nto be added. We\u0027re working on an iWARP transport, and also see\nUDP over DCB as another possibility.\n\nThis code handles transport registration.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "922cb17a5c812fcc9ebee249f4109db099896941",
      "tree": "7321ae3014fb01f217f9f03251b89ca23ec5222e",
      "parents": [
        "39de8281791c4a01abcb0d32879530ffa5863c01"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:20 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:24 2009 -0800"
      },
      "message": "RDS: Congestion-handling code\n\nRDS handles per-socket congestion by updating peers with a complete\ncongestion map (8KB). This code keeps track of these maps for itself\nand ones received from peers.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "39de8281791c4a01abcb0d32879530ffa5863c01",
      "tree": "04c619c2cfced30c9e792c0244259498dca406e6",
      "parents": [
        "639b321b4d8f4e412bfbb2a4a19bfebc1e68ace4"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:19 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:23 2009 -0800"
      },
      "message": "RDS: Main header file\n\nRDS\u0027s main data structure definitions and exported functions.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "639b321b4d8f4e412bfbb2a4a19bfebc1e68ace4",
      "tree": "2de81f536b54c7890295cbc507e6c2a3e57bc984",
      "parents": [
        "b775a750c3afacbfac884537d466d34d50b1023b"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "andy.grover@oracle.com",
        "time": "Tue Feb 24 15:30:18 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:39:23 2009 -0800"
      },
      "message": "RDS: Socket interface\n\nImplement the RDS (Reliable Datagram Sockets) interface.\n\nSigned-off-by: Andy Grover \u003candy.grover@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ]
}
