)]}'
{
  "log": [
    {
      "commit": "15fd943af50dbc5f7f4de33835795c72595f7bf4",
      "tree": "b35e37da3edf0b0166f14cf1d71e665d506b7fdf",
      "parents": [
        "5a081caa0414b9bbb82c17ffab9d6fe66edbb72f"
      ],
      "author": {
        "name": "Ohad Ben-Cohen",
        "email": "ohad@wizery.com",
        "time": "Thu Jun 07 15:39:35 2012 +0300"
      },
      "committer": {
        "name": "Ohad Ben-Cohen",
        "email": "ohad@wizery.com",
        "time": "Wed Jul 04 11:51:59 2012 +0300"
      },
      "message": "rpmsg: make sure inflight messages don\u0027t invoke just-removed callbacks\n\nWhen inbound messages arrive, rpmsg core looks up their associated\nendpoint (by destination address) and then invokes their callback.\n\nWe\u0027ve made sure that endpoints will never be de-allocated after they\nwere found by rpmsg core, but we also need to protect against the\n(rare) scenario where the rpmsg driver was just removed, and its\ncallback function isn\u0027t available anymore.\n\nThis is achieved by introducing a callback mutex, which must be taken\nbefore the callback is invoked, and, obviously, before it is removed.\n\nCc: stable \u003cstable@vger.kernel.org\u003e\nReported-by: Fernando Guzman Lugo \u003cfernando.lugo@ti.com\u003e\nSigned-off-by: Ohad Ben-Cohen \u003cohad@wizery.com\u003e\n"
    },
    {
      "commit": "5a081caa0414b9bbb82c17ffab9d6fe66edbb72f",
      "tree": "de3c3d2044db5843e836690732a4f688985e35af",
      "parents": [
        "6887a4131da3adaab011613776d865f4bcfb5678"
      ],
      "author": {
        "name": "Ohad Ben-Cohen",
        "email": "ohad@wizery.com",
        "time": "Wed Jun 06 10:09:25 2012 +0300"
      },
      "committer": {
        "name": "Ohad Ben-Cohen",
        "email": "ohad@wizery.com",
        "time": "Wed Jul 04 11:51:42 2012 +0300"
      },
      "message": "rpmsg: avoid premature deallocation of endpoints\n\nWhen an inbound message arrives, the rpmsg core looks up its\nassociated endpoint and invokes the registered callback.\n\nIf a message arrives while its endpoint is being removed (because\nthe rpmsg driver was removed, or a recovery of a remote processor\nhas kicked in) we must ensure atomicity, i.e.:\n\n- Either the ept is removed before it is found\n\nor\n\n- The ept is found but will not be freed until the callback returns\n\nThis is achieved by maintaining a per-ept reference count, which,\nwhen drops to zero, will trigger deallocation of the ept.\n\nWith this in hand, it is now forbidden to directly deallocate\nepts once they have been added to the endpoints idr.\n\nCc: stable \u003cstable@vger.kernel.org\u003e\nReported-by: Fernando Guzman Lugo \u003cfernando.lugo@ti.com\u003e\nSigned-off-by: Ohad Ben-Cohen \u003cohad@wizery.com\u003e\n"
    },
    {
      "commit": "bcabbccabffe7326f046f25737ba1084f463c65c",
      "tree": "40b6f277fcebb64d1a3904ca43e1718be69038dd",
      "parents": [
        "34ed5a33b1218efbe8b01e37738063800ccdcdcd"
      ],
      "author": {
        "name": "Ohad Ben-Cohen",
        "email": "ohad@wizery.com",
        "time": "Thu Oct 20 21:10:55 2011 +0200"
      },
      "committer": {
        "name": "Ohad Ben-Cohen",
        "email": "ohad@wizery.com",
        "time": "Wed Feb 08 22:53:58 2012 +0200"
      },
      "message": "rpmsg: add virtio-based remote processor messaging bus\n\nAdd a virtio-based inter-processor communication bus, which enables\nkernel drivers to communicate with entities, running on remote\nprocessors, over shared memory using a simple messaging protocol.\n\nEvery pair of AMP processors share two vrings, which are used to send\nand receive the messages over shared memory.\n\nThe header of every message sent on the rpmsg bus contains src and dst\naddresses, which make it possible to multiplex several rpmsg channels on\nthe same vring.\n\nEvery rpmsg channel is a device on this bus. When a channel is added,\nand an appropriate rpmsg driver is found and probed, it is also assigned\na local rpmsg address, which is then bound to the driver\u0027s callback.\n\nWhen inbound messages carry the local address of a bound driver,\nits callback is invoked by the bus.\n\nThis patch provides a kernel interface only; user space interfaces\nwill be later exposed by kernel users of this rpmsg bus.\n\nDesigned with Brian Swetland \u003cswetland@google.com\u003e.\n\nSigned-off-by: Ohad Ben-Cohen \u003cohad@wizery.com\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e (virtio_ids.h)\nCc: Brian Swetland \u003cswetland@google.com\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: Tony Lindgren \u003ctony@atomide.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Stephen Boyd \u003csboyd@codeaurora.org\u003e\n"
    }
  ]
}
