)]}'
{
  "log": [
    {
      "commit": "bf9c05d5b6d19b3e4c9fe21047694e94f48db89b",
      "tree": "0c5728cdd5ad4bcc8fb770a78d1521f1113f2d8a",
      "parents": [
        "1ffd57c1da2a73b0a0e5cd7a6dd52cc49e36bef9"
      ],
      "author": {
        "name": "Ryan Mallon",
        "email": "rmallon@gmail.com",
        "time": "Sat Jan 28 08:51:40 2012 +1100"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Jan 30 09:32:39 2012 +0000"
      },
      "message": "vmwgfx: Fix assignment in vmw_framebuffer_create_handle\n\nThe assignment of handle in vmw_framebuffer_create_handle doesn\u0027t actually do anything useful and is incorrectly assigning an integer value to a pointer argument. It appears that this is a typo and should be dereferencing handle rather than assigning to it directly. This fixes a bug where an undefined handle value is potentially returned to user-space.\n\nSigned-off-by: Ryan Mallon \u003crmallon@gmail.com\u003e\nReviewed-by: Jakob Bornecrantz\u003cjakob@vmware.com\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "1ffd57c1da2a73b0a0e5cd7a6dd52cc49e36bef9",
      "tree": "4e986ab45ce4cc7a6b1ad763a70d761f2330b1b0",
      "parents": [
        "dd8bc93d45c0ac4f64bf074d4be72418aac1609b"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "jdelvare@suse.de",
        "time": "Sat Jan 28 11:10:38 2012 +0100"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Jan 30 09:32:11 2012 +0000"
      },
      "message": "drm/radeon/kms: Fix device tree linkage of i2c buses\n\nProperly set the parent device of i2c buses before registering them so\nthat they will show at the right place in the device tree (rather than\nin /sys/devices directly.)\n\nSigned-off-by: Jean Delvare \u003cjdelvare@suse.de\u003e\nCc: Dave Airlie \u003cairlied@gmail.com\u003e\nReviewed-by: Alex Deucher \u003calexdeucher@gmail.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "dd8bc93d45c0ac4f64bf074d4be72418aac1609b",
      "tree": "79bc34bf0a99619b99a505642d39b38f354742e0",
      "parents": [
        "6e877b576ddf7cde5db2e9a6dcb56fef0ea77e64"
      ],
      "author": {
        "name": "Chris Wilson",
        "email": "chris@chris-wilson.co.uk",
        "time": "Sun Jan 29 16:45:32 2012 +0000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Jan 30 09:31:42 2012 +0000"
      },
      "message": "drm: Pass the real error code back during GEM bo initialisation\n\nIn particular, I found I was hitting the max-file limit in the VFS,\nand the EFILE was being magically transformed into ENOMEM. Confusion\nreigns.\n\nSigned-off-by: Chris Wilson \u003cchris@chris-wilson.co.uk\u003e\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "6e877b576ddf7cde5db2e9a6dcb56fef0ea77e64",
      "tree": "e00314c066c623ccb3ea44fad5a754ea7dc2dd2c",
      "parents": [
        "0a9626575400879d1d5e6bc8768188b938d7c501"
      ],
      "author": {
        "name": "Daniel Vetter",
        "email": "daniel.vetter@ffwll.ch",
        "time": "Sun Jan 29 17:05:52 2012 +0100"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Jan 30 09:31:25 2012 +0000"
      },
      "message": "Revert \"drm/i810: cleanup reclaim_buffers\"\n\nThis reverts commit 87499ffdcb1c70f66988cd8febc4ead0ba2f9118.\n\nWhere is that paper bag ... ah here.\n\nI\u0027ve failed to take an odd interaction between my other cleanups and\nthis reclaim_buffers patch into account and also failed to properly\ntest it. Looks like there are more dragons and hidden trapdoors in the\ndrm release path than actual lines of code.\n\nUntil I get a clue, let\u0027s just revert this.\n\nSigned-Off-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\n\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "2d8357e66df9f7593cbe23b224b4ed06aff90e73",
      "tree": "109fcb2cb068ed1fb46994db6e18b9e19899d11c",
      "parents": [
        "24a7eb7954bc22a1d514155d56a3c4cd5e9a6faa"
      ],
      "author": {
        "name": "Ryan Mallon",
        "email": "rmallon@gmail.com",
        "time": "Fri Jan 27 17:28:24 2012 +1100"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 27 11:52:07 2012 +0000"
      },
      "message": "gma500: Fix suspend/resume functions\n\nBoth the suspend and resume functions incorrectly set psbfb \u003d\nto_psb_fb(NULL) outside of the loop over all of the framebuffers. Fix\nthis by moving the assignment of psbfb inside the loop and removing the\ninitialisation of fb.\n\nSigned-off-by: Ryan Mallon \u003crmallon@gmail.com\u003e\nAcked-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "373af0c0c539b109ea978e96f217df0fc20aa261",
      "tree": "a506424edac1363cb2bc339387a2d51e1493b479",
      "parents": [
        "f15013033e2dd363b3ad181bfd27fa4e8e8ffda8"
      ],
      "author": {
        "name": "Inki Dae",
        "email": "inki.dae@samsung.com",
        "time": "Fri Jan 27 11:54:58 2012 +0900"
      },
      "committer": {
        "name": "Inki Dae",
        "email": "inki.dae@samsung.com",
        "time": "Fri Jan 27 13:03:59 2012 +0900"
      },
      "message": "drm/exynos: fixed pm feature for fimd module.\n\nthis patch separates fimd specific power on/off function from pm function\nand the pm interfaces will call that function for power on or off.\nand also removes unnecessary codes of resume function.\n\nSigned-off-by: Inki Dae \u003cinki.dae@samsung.com\u003e\nSigned-off-by: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\n"
    },
    {
      "commit": "a4b42dab293afdabc3e4ae57cbc743ad05af0e4b",
      "tree": "e211a34fa8609848d9589b9f391458277f521c7b",
      "parents": [
        "2363dc636df34abb795c31668eeadc659e815fbd"
      ],
      "author": {
        "name": "Inki Dae",
        "email": "inki.dae@samsung.com",
        "time": "Mon Jan 16 18:55:02 2012 +0900"
      },
      "committer": {
        "name": "Inki Dae",
        "email": "inki.dae@samsung.com",
        "time": "Fri Jan 27 10:43:25 2012 +0900"
      },
      "message": "drm/exynos: fixed build dependency for DRM_EXYNOS_FIMD\n\nFB based FIMD and DRM based FIMD drivers use same hardware\nso with this patch, only one of them would be selected.\n\nSigned-off-by: Inki Dae \u003cinki.dae@samsung.com\u003e\nSigned-off-by: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\n"
    },
    {
      "commit": "2363dc636df34abb795c31668eeadc659e815fbd",
      "tree": "3eaa0841d25b91ae39eedfe557ff62b1a638f8fc",
      "parents": [
        "485bc54c3360e9c1d595c48c9c82dbd3a51e133e"
      ],
      "author": {
        "name": "Seung-Woo Kim",
        "email": "sw0312.kim@samsung.com",
        "time": "Wed Jan 04 15:34:32 2012 +0900"
      },
      "committer": {
        "name": "Inki Dae",
        "email": "inki.dae@samsung.com",
        "time": "Fri Jan 27 10:43:24 2012 +0900"
      },
      "message": "drm/exynos: fix build dependency for DRM_EXYNOS_HDMI\n\nDRM_EXYNOS_HDMI driver and VIDEO_SAMSUNG_S5P_TV driver should be\nnot enabled at once because they use same HW blocks. So dependency\nfor DRM_EXYNOS_HDMI is fixed to check VIDEO_SAMSUNG_S5P_TV\u003dn.\n\nSigned-off-by: Seung-Woo Kim \u003csw0312.kim@samsung.com\u003e\nSigned-off-by: Inki Dae \u003cinki.dae@samsung.com\u003e\nSigned-off-by: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\n"
    },
    {
      "commit": "485bc54c3360e9c1d595c48c9c82dbd3a51e133e",
      "tree": "5e6f726704f8377d90081e0db5dad0e0dfa50663",
      "parents": [
        "590dfe2f3bbbbeee806ee91bef68ba2a6afc16d2"
      ],
      "author": {
        "name": "Seung-Woo Kim",
        "email": "sw0312.kim@samsung.com",
        "time": "Thu Dec 22 11:30:09 2011 +0900"
      },
      "committer": {
        "name": "Inki Dae",
        "email": "inki.dae@samsung.com",
        "time": "Fri Jan 27 10:43:23 2012 +0900"
      },
      "message": "drm/exynos: use release_mem_region instead of release_resource\n\nTo make a api pair of request_mem_region and release_mem_region,\nrelease_mem_region is used instead of release_resource.\n\nSigned-off-by: Seung-Woo Kim \u003csw0312.kim@samsung.com\u003e\nSigned-off-by: Inki Dae \u003cinki.dae@samsung.com\u003e\nSigned-off-by: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\n"
    },
    {
      "commit": "c8fe74ae9a7285767cda1a053cfe806d67f77227",
      "tree": "592cf9380cf27c66f574de62febe582e1b06bfa1",
      "parents": [
        "9f1feed2e16652a6e599ed4a73b4c501bb3d4568",
        "93b525dccf212e50a895792d79d64bdb53312f5c"
      ],
      "author": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Thu Jan 26 18:25:54 2012 +0000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Thu Jan 26 18:25:54 2012 +0000"
      },
      "message": "Merge branch \u0027drm-intel-fixes\u0027 of git://people.freedesktop.org/~keithp/linux into drm-fixes\n\n* \u0027drm-intel-fixes\u0027 of git://people.freedesktop.org/~keithp/linux: (24 commits)\n  drm/i915: fixup forcewake spinlock fallout in drpc debugfs function\n  drm/i915: debugfs: show semaphore registers also on gen7\n  drm/i915: allow userspace forcewake references also on gen7\n  drm/i915: Re-enable gen7 RC6 and GPU turbo after resume.\n  drm/i915: Correct debugfs printout for RC1e.\n  Revert \"drm/i915: Work around gen7 BLT ring synchronization issues.\"\n  drm/i915: rip out the HWSTAM missed irq workaround\n  drm/i915: paper over missed irq issues with force wake voodoo\n  drm/i915: Hold gt_lock across forcewake register reads\n  drm/i915: Hold gt_lock during reset\n  drm/i915: Move reset forcewake processing to gen6_do_reset\n  drm/i915: protect force_wake_(get|put) with the gt_lock\n  drm/i915: convert force_wake_get to func pointer in the gpu reset code\n  drm/i915: sprite init failure on pre-SNB is not a failure\n  drm/i915: VBT Parser cleanup for eDP block\n  drm/i915: mask transcoder select bits before setting them on LVDS\n  drm/i915: Add Clientron E830 to the ignore LVDS list\n  CHROMIUM: i915: Add DMI override to skip CRT initialization on ZGB\n  drm/i915: handle 3rd pipe\n  drm/i915: simplify pipe checking\n  ...\n"
    },
    {
      "commit": "9f1feed2e16652a6e599ed4a73b4c501bb3d4568",
      "tree": "4df8c894d3444f277243c8e32d58eca31496f679",
      "parents": [
        "9fc04b503df9a34ec1a691225445c5b7dfd022e7"
      ],
      "author": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Wed Jan 25 15:34:22 2012 +1000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Wed Jan 25 18:54:28 2012 +0000"
      },
      "message": "drm/ttm: fix two regressions since move_notify changes\n\nBoth changes in dc97b3409a790d2a21aac6e5cdb99558b5944119 cause serious\nregressions in the nouveau driver.\n\nmove_notify() was originally able to presume that bo-\u003emem is the old node,\nand new_mem is the new node.  The above commit moves the call to\nmove_notify() to after move() has been done, which means that now, sometimes,\nnew_mem isn\u0027t the new node at all, bo-\u003emem is, and new_mem points at a\nstale, possibly-just-been-killed-by-move node.\n\nThis is clearly not a good situation.  This patch reverts this change, and\nreplaces it with a cleanup in the move() failure path instead.\n\nThe second issue is that the call to move_notify() from cleanup_memtype_use()\ncauses the TTM ghost objects to get passed into the driver.  This is clearly\nbad as the driver knows nothing about these \"fake\" TTM BOs, and ends up\naccessing uninitialised memory.\n\nI worked around this in nouveau\u0027s move_notify() hook by ensuring the BO\ndestructor was nouveau\u0027s.  I don\u0027t particularly like this solution, and\nwould rather TTM never pass the driver these objects.  However, I don\u0027t\nclearly understand the reason why we\u0027re calling move_notify() here anyway\nand am happy to work around the problem in nouveau instead of breaking the\nbehaviour expected by other drivers.\n\nSigned-off-by: Ben Skeggs \u003cbskeggs@redhat.com\u003e\nReviewed-by: Thomas Hellstrom \u003cthellstrom@vmware.com\u003e\nCc: Jerome Glisse \u003cj.glisse@gmail.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "93b525dccf212e50a895792d79d64bdb53312f5c",
      "tree": "8fa3fb39990b700709bb9480890eea8f6571f744",
      "parents": [
        "48467a92215ced69a65c89c1b064dd84728a5ed0"
      ],
      "author": {
        "name": "Daniel Vetter",
        "email": "daniel.vetter@ffwll.ch",
        "time": "Wed Jan 25 13:52:43 2012 +0100"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Wed Jan 25 09:15:33 2012 -0800"
      },
      "message": "drm/i915: fixup forcewake spinlock fallout in drpc debugfs function\n\nMy forcewake spinlock patches have a functional conflict with Ben\nWidawsky\u0027s gen6 drpc support for debugfs. Result was a benign warning\nabout trying to read an non-atomic variabla with atomic_read.\n\nNote that the entire check is racy anyway and purely informational.\nAlso update it to reflect the forcewake voodoo changes, the kernel can\nnow also hold onto a forcewake reference for longer times.\n\nSigned-Off-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nReviewed-by: Ben Widawsky \u003cben@bwidawsk.net\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "9fc04b503df9a34ec1a691225445c5b7dfd022e7",
      "tree": "b8e95f24e697b0876cf4e28ead5c1b314af178bc",
      "parents": [
        "d54fbd49efe5c75bc7cf963bf065aef3fd22417a"
      ],
      "author": {
        "name": "Jerome Glisse",
        "email": "jglisse@redhat.com",
        "time": "Mon Jan 23 11:52:15 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Wed Jan 25 09:42:06 2012 +0000"
      },
      "message": "drm/radeon: avoid deadlock if GPU lockup is detected in ib_pool_get\n\nIf GPU lockup is detected in ib_pool get we are holding the ib_pool\nmutex that will be needed by the GPU reset code. As ib_pool code is\nsafe to be reentrant from GPU reset code we should not block if we\nare trying to get the ib pool lock on the behalf of the same userspace\ncaller, thus use the radeon_mutex_lock helper.\n\nSigned-off-by: Jerome Glisse \u003cjglisse@redhat.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "d54fbd49efe5c75bc7cf963bf065aef3fd22417a",
      "tree": "9622642f9c15207e0d81cc26a87cd60252621995",
      "parents": [
        "598781d71119827b454fd75d46f84755bca6f0c6"
      ],
      "author": {
        "name": "Jerome Glisse",
        "email": "jglisse@redhat.com",
        "time": "Tue Jan 24 12:08:52 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Wed Jan 25 09:28:21 2012 +0000"
      },
      "message": "drm/radeon: silence out possible lock dependency warning\n\nSilence out the lock dependency warning by moving bo allocation out\nof ib mutex protected section. Might lead to useless temporary\nallocation but it\u0027s not harmful as such things only happen at\ninitialization.\n\nSigned-off-by: Jerome Glisse \u003cjglisse@redhat.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "598781d71119827b454fd75d46f84755bca6f0c6",
      "tree": "51ccb65b8e26b3347099af3f466ad0fedc6e1cb6",
      "parents": [
        "15b63d35261ba3351d07e7937252f18bb6cbf814"
      ],
      "author": {
        "name": "Thomas Hellstrom",
        "email": "thellstrom@vmware.com",
        "time": "Tue Jan 24 18:54:21 2012 +0100"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Wed Jan 25 09:27:45 2012 +0000"
      },
      "message": "drm: Fix authentication kernel crash\n\nIf the master tries to authenticate a client using drm_authmagic and\nthat client has already closed its drm file descriptor,\neither wilfully or because it was terminated, the\ncall to drm_authmagic will dereference a stale pointer into kmalloc\u0027ed memory\nand corrupt it.\n\nTypically this results in a hard system hang.\n\nThis patch fixes that problem by removing any authentication tokens\n(struct drm_magic_entry) open for a file descriptor when that file\ndescriptor is closed.\n\nSigned-off-by: Thomas Hellstrom \u003cthellstrom@vmware.com\u003e\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "48467a92215ced69a65c89c1b064dd84728a5ed0",
      "tree": "c519ced7202f0e90c072ae3e4d55fac58e72808a",
      "parents": [
        "075edca43b819c33bd755eaf7a3bd0e1b3279f70"
      ],
      "author": {
        "name": "Daniel Vetter",
        "email": "daniel.vetter@ffwll.ch",
        "time": "Tue Jan 24 09:44:29 2012 +0100"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 24 13:30:26 2012 -0800"
      },
      "message": "drm/i915: debugfs: show semaphore registers also on gen7\n\nCorresponding changes to improve our error_state are pending\nsome other patches to clean up things first.\n\nSigned-Off-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nReviewed-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nReviewed-by: Keith Packard \u003ckeithp@keithp.com\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "075edca43b819c33bd755eaf7a3bd0e1b3279f70",
      "tree": "9a94d556702074c891dad7b521c1a6fd9f208d00",
      "parents": [
        "04115a9dee110b52a8eaa556c574022fa3bf4704"
      ],
      "author": {
        "name": "Daniel Vetter",
        "email": "daniel.vetter@ffwll.ch",
        "time": "Tue Jan 24 09:44:28 2012 +0100"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 24 13:29:25 2012 -0800"
      },
      "message": "drm/i915: allow userspace forcewake references also on gen7\n\nWe need this to correctly access registers in the gt power well from\nuserspace.\n\nSigned-Off-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nReviewed-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nReviewed-by: Keith Packard \u003ckeithp@keithp.com\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "04115a9dee110b52a8eaa556c574022fa3bf4704",
      "tree": "e816e23f4b2bd6b1f3b733c28d102900cba50c18",
      "parents": [
        "fff24e21e17e438bf24791ed9cea7bbc02ad2dbb"
      ],
      "author": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Mon Jan 23 16:14:06 2012 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 24 13:25:10 2012 -0800"
      },
      "message": "drm/i915: Re-enable gen7 RC6 and GPU turbo after resume.\n\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\nCc: stable@vger.kernel.org\nReviewed-by: Keith Packard \u003ckeithp@keithp.com\u003e\nReviewed-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nReviewed-by: Kenneth Graunke \u003ckenneth@whitecape.org\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "fff24e21e17e438bf24791ed9cea7bbc02ad2dbb",
      "tree": "a5b1024eb487e8d209b95c8b05bc987cc11027a6",
      "parents": [
        "8f0fc977f58c36e75e205486c1aebb9b8e4263e1"
      ],
      "author": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Mon Jan 23 16:14:05 2012 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 24 13:23:11 2012 -0800"
      },
      "message": "drm/i915: Correct debugfs printout for RC1e.\n\nWe had two things in a row claiming to be RC6.\n\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\nReviewed-by: Keith Packard \u003ckeithp@keithp.com\u003e\nReviewed-by: Ben Widawsky \u003cben@bwidawsk.net\u003e\nReviewed-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nReviewed-by: Kenneth Graunke \u003ckenneth@whitecape.org\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "15b63d35261ba3351d07e7937252f18bb6cbf814",
      "tree": "6631c0bb20cf2d3476989809c343c9aa13bb9aab",
      "parents": [
        "9aa59993e226af94088adaee993eb8cfd33ae295"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@linux.intel.com",
        "time": "Tue Jan 24 16:57:42 2012 +0000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Jan 24 17:35:53 2012 +0000"
      },
      "message": "gma500: Fix shmem mapping\n\nGMA500 did it the old way and it\u0027s been on the TODO list to fix. Current kernels\nnow blow up if we use the old way so we\u0027d better do the work !\n\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "9aa59993e226af94088adaee993eb8cfd33ae295",
      "tree": "c779fd613a1ce2adbf2b6fa7350a8fdb5ffe76a7",
      "parents": [
        "27d9cc8428367e0fec2fc0fc6385e9241b079c3a"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Fri Jan 20 15:03:30 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Jan 24 17:35:52 2012 +0000"
      },
      "message": "drm/radeon/kms: refine TMDS dual link checks\n\nHDMI 1.3 defines single link clocks up to 340 Mhz.\nRefine the current dual link checks to only enable\ndual link for DVI \u003e 165 Mhz or HDMI \u003e 340 Mhz if the\nhw supports HDMI 1.3 (DCE3+).\n\nFixes:\nhttps://bugs.freedesktop.org/show_bug.cgi?id\u003d44755\n\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "27d9cc8428367e0fec2fc0fc6385e9241b079c3a",
      "tree": "08978805dc4d23a9d85c17e43e2b521362301348",
      "parents": [
        "3a47824d85eeca122895646f027dc63480994199"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Fri Jan 20 15:03:29 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Jan 24 17:35:52 2012 +0000"
      },
      "message": "drm/radeon/kms: use drm_detect_hdmi_monitor for picking encoder mode\n\nWe were previously just checking for audio.\n\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "3a47824d85eeca122895646f027dc63480994199",
      "tree": "90e5c901b4426bd8194a1b91c404de02f357236c",
      "parents": [
        "386d4d751e8e0b4b693bb724f09aae064ee5297d"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Fri Jan 20 15:01:30 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Jan 24 17:35:51 2012 +0000"
      },
      "message": "drm/radeon/kms: rework modeset sequence for DCE41 and DCE5\n\ndig transmitter control table only has ENABLE/DISABLE actions\non DCE4.1/DCE5.\n\nFixes:\nhttps://bugs.freedesktop.org/show_bug.cgi?id\u003d44955\n\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "386d4d751e8e0b4b693bb724f09aae064ee5297d",
      "tree": "bf8cbf3afd693cd913bcdf4cff4709da431685c7",
      "parents": [
        "3fa47d9efa6a0f5123e26e2c3ad54e3e1a1d108d"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Fri Jan 20 15:01:29 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Jan 24 17:35:50 2012 +0000"
      },
      "message": "drm/radeon/kms: move panel mode setup into encoder mode set\n\nNeeds to happen earlier in the mode set.\n\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "3fa47d9efa6a0f5123e26e2c3ad54e3e1a1d108d",
      "tree": "f6d3f96f4731c7ac0d9bee72e22e811d1f96e452",
      "parents": [
        "211fa4fc4e13492151e698d92b0dff56b29928ec"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Fri Jan 20 14:56:39 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Jan 24 17:35:49 2012 +0000"
      },
      "message": "drm/radeon/kms: move disp eng pll setup to init path\n\nWe really only need to set it up once on init or resume\nrather than on every mode set.\n\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "211fa4fc4e13492151e698d92b0dff56b29928ec",
      "tree": "2c2d74ce407bcb26a1b30beb9a95d903b3a912e2",
      "parents": [
        "a3f83ab1a717c0e6c2f59a4cfdaa10707cc35c55"
      ],
      "author": {
        "name": "Igor Murzov",
        "email": "intergalactic.anonymous@gmail.com",
        "time": "Sun Jan 22 18:47:28 2012 +0400"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Jan 24 17:34:32 2012 +0000"
      },
      "message": "drm/radeon: finish getting bios earlier\n\nReturn a number of bytes read in radeon_atrm_get_bios_chunk() and\nproperly check this value in radeon_atrm_get_bios().\nIf radeon_atrm_get_bios_chunk() read less bytes then were requested,\nit means that it finished reading bios data.\n\nPrior to this patch, condition in radeon_atrm_get_bios() was always\nequivalent to \"if (ATRM_BIOS_PAGE \u003c\u003d 0)\", so it was always false,\nthus radeon_atrm_get_bios() was trying to read past the bios data\nwasting boot time.\n\nOn my lenovo ideapad u455 laptop this patch drops bios reading time\nfrom ~5.5s to ~1.5s.\n\nSigned-off-by: Igor Murzov \u003ce-mail@date.by\u003e\nReviewed-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "a3f83ab1a717c0e6c2f59a4cfdaa10707cc35c55",
      "tree": "384bd0288fbf5e0e701b074962c29f4d93f2d8e9",
      "parents": [
        "11ef3f1f8780b64425a4cadbf42a46aa2e36895f"
      ],
      "author": {
        "name": "Igor Murzov",
        "email": "intergalactic.anonymous@gmail.com",
        "time": "Sun Jan 22 18:43:25 2012 +0400"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Jan 24 17:34:02 2012 +0000"
      },
      "message": "drm/radeon: fix invalid memory access in radeon_atrm_get_bios()\n\nAt a boot time I observed following bug:\n\n BUG: unable to handle kernel paging request at ffff8800a4244000\n IP: [\u003cffffffff81275b5b\u003e] memcpy+0xb/0x120\n PGD 1816063 PUD 1fe7d067 PMD 1ff9f067 PTE 80000000a4244160\n Oops: 0000 [#1] SMP DEBUG_PAGEALLOC\n CPU 0\n Modules linked in: btusb bluetooth brcmsmac brcmutil crc8 cordic b43 radeon(+)\n  mac80211 cfg80211 ttm ohci_hcd drm_kms_helper rfkill drm ssb agpgart mmc_core\n  sp5100_tco video battery ac thermal processor rtc_cmos thermal_sys snd_hda_codec_hdmi\n  joydev snd_hda_codec_conexant button bcma pcmcia snd_hda_intel snd_hda_codec\n  snd_hwdep snd_pcm shpchp pcmcia_core k8temp snd_timer atl1c snd psmouse hwmon\n  i2c_piix4 i2c_algo_bit soundcore evdev i2c_core ehci_hcd sg serio_raw snd_page_alloc\n  loop btrfs\n\n Pid: 1008, comm: modprobe Not tainted 3.3.0-rc1 #21 LENOVO 20046                           /AMD CRB\n RIP: 0010:[\u003cffffffff81275b5b\u003e]  [\u003cffffffff81275b5b\u003e] memcpy+0xb/0x120\n RSP: 0018:ffff8800aa72db00  EFLAGS: 00010246\n RAX: ffff8800a4150000 RBX: 0000000000001000 RCX: 0000000000000087\n RDX: 0000000000000000 RSI: ffff8800a4244000 RDI: ffff8800a4150bc8\n RBP: ffff8800aa72db78 R08: 0000000000000010 R09: ffffffff8174bbec\n R10: ffffffff812ee010 R11: 0000000000000001 R12: 0000000000001000\n R13: 0000000000010000 R14: ffff8800a4140000 R15: ffff8800aaba1800\n FS:  00007ff9a3bd4720(0000) GS:ffff8800afa00000(0000) knlGS:0000000000000000\n CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b\n CR2: ffff8800a4244000 CR3: 00000000a9c18000 CR4: 00000000000006f0\n DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\n Process modprobe (pid: 1008, threadinfo ffff8800aa72c000, task ffff8800aa0e4000)\n Stack:\n  ffffffffa04e7c7b 0000000000000001 0000000000010000 ffff8800aa72db28\n  ffffffff00000001 0000000000001000 ffffffff8113cbef 0000000000000020\n  ffff8800a4243420 ffff880000000002 ffff8800aa72db08 ffff8800a9d42000\n Call Trace:\n  [\u003cffffffffa04e7c7b\u003e] ? radeon_atrm_get_bios_chunk+0x8b/0xd0 [radeon]\n  [\u003cffffffff8113cbef\u003e] ? kmalloc_order_trace+0x3f/0xb0\n  [\u003cffffffffa04a9298\u003e] radeon_get_bios+0x68/0x2f0 [radeon]\n  [\u003cffffffffa04c7a30\u003e] rv770_init+0x40/0x280 [radeon]\n  [\u003cffffffffa047d740\u003e] radeon_device_init+0x560/0x600 [radeon]\n  [\u003cffffffffa047ef4f\u003e] radeon_driver_load_kms+0xaf/0x170 [radeon]\n  [\u003cffffffffa043cdde\u003e] drm_get_pci_dev+0x18e/0x2c0 [drm]\n  [\u003cffffffffa04e7e95\u003e] radeon_pci_probe+0xad/0xb5 [radeon]\n  [\u003cffffffff81296c5f\u003e] local_pci_probe+0x5f/0xd0\n  [\u003cffffffff81297418\u003e] pci_device_probe+0x88/0xb0\n  [\u003cffffffff813417aa\u003e] ? driver_sysfs_add+0x7a/0xb0\n  [\u003cffffffff813418d8\u003e] really_probe+0x68/0x180\n  [\u003cffffffff81341be5\u003e] driver_probe_device+0x45/0x70\n  [\u003cffffffff81341cb3\u003e] __driver_attach+0xa3/0xb0\n  [\u003cffffffff81341c10\u003e] ? driver_probe_device+0x70/0x70\n  [\u003cffffffff813400ce\u003e] bus_for_each_dev+0x5e/0x90\n  [\u003cffffffff8134172e\u003e] driver_attach+0x1e/0x20\n  [\u003cffffffff81341298\u003e] bus_add_driver+0xc8/0x280\n  [\u003cffffffff813422c6\u003e] driver_register+0x76/0x140\n  [\u003cffffffff812976d6\u003e] __pci_register_driver+0x66/0xe0\n  [\u003cffffffffa043d021\u003e] drm_pci_init+0x111/0x120 [drm]\n  [\u003cffffffff8133c67a\u003e] ? vga_switcheroo_register_handler+0x3a/0x60\n  [\u003cffffffffa0229000\u003e] ? 0xffffffffa0228fff\n  [\u003cffffffffa02290ec\u003e] radeon_init+0xec/0xee [radeon]\n  [\u003cffffffff810002f2\u003e] do_one_initcall+0x42/0x180\n  [\u003cffffffff8109d8d2\u003e] sys_init_module+0x92/0x1e0\n  [\u003cffffffff815407a9\u003e] system_call_fastpath+0x16/0x1b\n Code: 58 2a 43 50 88 43 4e 48 83 c4 08 5b c9 c3 66 90 e8 cb fd ff ff eb\n  e6 90 90 90 90 90 90 90 90 90 48 89 f8 89 d1 c1 e9 03 83 e2 07 \u003cf3\u003e 48\n  a5 89 d1 f3 a4 c3 20 48 83 ea 20 4c 8b 06 4c 8b 4e 08 4c\n RIP  [\u003cffffffff81275b5b\u003e] memcpy+0xb/0x120\n  RSP \u003cffff8800aa72db00\u003e\n CR2: ffff8800a4244000\n ---[ end trace fcffa1599cf56382 ]---\n\nCall to acpi_evaluate_object() not always returns 4096 bytes chunks,\non my system it can return 2048 bytes chunk, so pass the length of\nretrieved chunk to memcpy(), not the length of the recieving buffer.\n\nSigned-off-by: Igor Murzov \u003ce-mail@date.by\u003e\nReviewed-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "11ef3f1f8780b64425a4cadbf42a46aa2e36895f",
      "tree": "e02b2085e77961ab0fdf9dda03efcd902355af12",
      "parents": [
        "44517c44496062180a6376cc704b33129441ce60"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Fri Jan 20 14:47:43 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Jan 23 11:03:26 2012 +0000"
      },
      "message": "drm/radeon/kms: add some missing semaphore init\n\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nReviewed-by: Michel Dänzer \u003cmichel.daenzer@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "44517c44496062180a6376cc704b33129441ce60",
      "tree": "1819364104b5a7d0183c9da733856d04182529ff",
      "parents": [
        "4e087a7a1f3884750790bda580e22e9eccd5f4fa"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Sun Jan 15 08:51:12 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Jan 23 11:00:48 2012 +0000"
      },
      "message": "drm/radeon/kms: Add an MSI quirk for Dell RS690\n\nInterrupts only work with MSIs.\nhttps://bugs.freedesktop.org/show_bug.cgi?id\u003d37679\n\nReported-by: Dmitry Podgorny \u003cpasis.uax@gmail.com\u003e\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "4e087a7a1f3884750790bda580e22e9eccd5f4fa",
      "tree": "d9e4b549a79023450f6fb429738f6c6ba1589187",
      "parents": [
        "dcd6c92267155e70a94b3927bce681ce74b80d1f"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Sat Jan 14 21:20:37 2012 +0100"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Jan 23 11:00:47 2012 +0000"
      },
      "message": "gpu, drm, sis: Don\u0027t return uninitialized variable from sis_driver_load()\n\nIn sis_driver_load(), the only use of \u0027ret\u0027 is as the return value\nfrom the function, unfortunately it is never initialized, so the\nfunction just returns garbage when it succeeds.\nTo fix that, remove the variable and just return 0 directly on success.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "8f0fc977f58c36e75e205486c1aebb9b8e4263e1",
      "tree": "a6d48794c4b40c55cd7f857a4acf23af6ff64737",
      "parents": [
        "bdfcdb63795b058bba9e78d32102b39014f649fe"
      ],
      "author": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Thu Jan 19 21:13:47 2012 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Fri Jan 20 10:20:44 2012 -0800"
      },
      "message": "Revert \"drm/i915: Work around gen7 BLT ring synchronization issues.\"\n\nThis reverts commit 42ff6572e5a4a7414330a4ca91f0335da67deca9.\n\nNew forcewake voodoo makes this no longer necessary.\n\nAcked-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "bdfcdb63795b058bba9e78d32102b39014f649fe",
      "tree": "0f3547bd0dc4ec8e0a36fe18306497cf66fde0e1",
      "parents": [
        "4cd53c0c8b01fc05c3ad5b2acdad02e37d3c2f55"
      ],
      "author": {
        "name": "Daniel Vetter",
        "email": "daniel.vetter@ffwll.ch",
        "time": "Thu Jan 05 01:05:26 2012 +0100"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Thu Jan 19 15:45:44 2012 -0800"
      },
      "message": "drm/i915: rip out the HWSTAM missed irq workaround\n\nWith the new ducttape of much finer quality, this seems to be no\nlonger necessary.\n\nTested on my ivb and snb machine with the usual suspects of testcases.\n\n(v2 by keithp -- limited change to IVB only for now)\n\nSigned-Off-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nAcked-by: Ben Widawsky \u003cben@bwidawsk.net\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "4cd53c0c8b01fc05c3ad5b2acdad02e37d3c2f55",
      "tree": "043bc8565dab11960796056be6ae1505ee781534",
      "parents": [
        "c937504e2b96af3b281b1ef859e063ef4af656c1"
      ],
      "author": {
        "name": "Daniel Vetter",
        "email": "daniel.vetter@ffwll.ch",
        "time": "Fri Dec 14 16:01:25 2012 +0100"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Thu Jan 19 12:28:57 2012 -0800"
      },
      "message": "drm/i915: paper over missed irq issues with force wake voodoo\n\nTwo things seem to do the trick on my ivb machine here:\n- prevent the gt from powering down while waiting for seqno\n  notification interrupts by grabbing the force_wake in get_irq (and\n  dropping it in put_irq again).\n- ordering writes from the ring\u0027s CS by reading a CS register, ACTHD\n  seems to work.\n\nOnly the blt\u0026bsd ring on ivb seem to be massively affected by this,\nbut for paranoia do this dance also on the render ring and on snb\n(i.e. all gpus with forcewake).\n\nTested with Eric\u0027s glCopyPixels loop which without this patch scores a\nmissed irq every few seconds.\n\nThis patch needs my forcewake rework to use a spinlock instead of\ndev-\u003estruct_mutex.\n\nAfter crawling through docs a lot I\u0027ve found the following nugget:\n\nInternal doc \"SNB GT PM Programming Guide\", Section 4.3.1:\n\n\"GT does not generate interrupts while in RC6 (by design)\"\n\nSo it looks like rc6 and irq generation are indeed related.\n\nv2: Improve the comment per Eugeni Dodonov\u0027s suggestion.\n\nv3: Add the documentation snipped. Also restrict the w/a to ivb only\nfor -fixes, as suggested by Keith Packard.\n\nCc: stable@kernel.org\nCc: Eric Anholt \u003ceric@anholt.net\u003e\nCc: Kenneth Graunke \u003ckenneth@whitecape.org\u003e\nCc: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nTested-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nReviewed-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nSigned-Off-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "c937504e2b96af3b281b1ef859e063ef4af656c1",
      "tree": "16c90e4028f09fb52bedc27d7b4fe0b15eb5d742",
      "parents": [
        "286fed412a134e76be55899bc628c6fa59cb70da"
      ],
      "author": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Fri Jan 06 11:48:38 2012 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Thu Jan 19 12:28:53 2012 -0800"
      },
      "message": "drm/i915: Hold gt_lock across forcewake register reads\n\nAlong with the previous patch to make the reset operation protected by\nthe gt_lock as well, this ensures that all register read operations\nwill occur with the forcewake hardware enabled. As an added bonus,\nthis makes read operations more efficient by taking the spinlock only\nonce per read instead of twice.\n\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\n"
    },
    {
      "commit": "286fed412a134e76be55899bc628c6fa59cb70da",
      "tree": "aebb2c7db1204cbffaf40febab8770fa1acadc6e",
      "parents": [
        "b6e45f866465f42b53d803b0c574da0fc508a0e9"
      ],
      "author": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Fri Jan 06 11:44:11 2012 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Thu Jan 19 12:28:42 2012 -0800"
      },
      "message": "drm/i915: Hold gt_lock during reset\n\nThis ensures that no register reads occur while the forcewake state of\nthe hardware is indeterminate during the reset operation.\n\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\n"
    },
    {
      "commit": "b6e45f866465f42b53d803b0c574da0fc508a0e9",
      "tree": "276400002339e2475f01074430b32373a76179c8",
      "parents": [
        "9f1f46a45a681d357d1ceedecec3671a5ae957f4"
      ],
      "author": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Fri Jan 06 11:34:04 2012 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Thu Jan 19 12:27:24 2012 -0800"
      },
      "message": "drm/i915: Move reset forcewake processing to gen6_do_reset\n\nNo reason to have half of the reset split from the other half.\n\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\n"
    },
    {
      "commit": "9f1f46a45a681d357d1ceedecec3671a5ae957f4",
      "tree": "fbb1ccb3dc2afded75087e2d187a5160e356849f",
      "parents": [
        "8109021313c7a3d8947677391ce6ab9cd0bb1d28"
      ],
      "author": {
        "name": "Daniel Vetter",
        "email": "daniel.vetter@ffwll.ch",
        "time": "Wed Dec 14 13:57:03 2011 +0100"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Thu Jan 19 11:51:31 2012 -0800"
      },
      "message": "drm/i915: protect force_wake_(get|put) with the gt_lock\n\nThe problem this patch solves is that the forcewake accounting\nnecessary for register reads is protected by dev-\u003estruct_mutex. But the\nhangcheck and error_capture code need to access registers without\ngrabbing this mutex because we hold it while waiting for the gpu.\nSo a new lock is required. Because currently the error_state capture\nis called from the error irq handler and the hangcheck code runs from\na timer, it needs to be an irqsafe spinlock (note that the registers\nused by the irq handler (neglecting the error handling part) only uses\nregisters that don\u0027t need the forcewake dance).\n\nWe could tune this down to a normal spinlock when we rework the\nerror_state capture and hangcheck code to run from a workqueue.  But\nwe don\u0027t have any read in a fastpath that needs forcewake, so I\u0027ve\ndecided to not care much about overhead.\n\nThis prevents tests/gem_hangcheck_forcewake from i-g-t from killing my\nsnb on recent kernels - something must have slightly changed the\ntimings. On previous kernels it only trigger a WARN about the broken\nlocking.\n\nv2: Drop the previous patch for the register writes.\n\nv3: Improve the commit message per Chris Wilson\u0027s suggestions.\n\nSigned-Off-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nReviewed-by: Chris Wilson \u003cchris@chris-wilson.co.uk\u003e\nReviewed-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "8109021313c7a3d8947677391ce6ab9cd0bb1d28",
      "tree": "65f80997225cecdf43ab2a7f7ae0817d169bc3f0",
      "parents": [
        "00c2064b7766c4e24af42e21da1903aedc8ca4c0"
      ],
      "author": {
        "name": "Daniel Vetter",
        "email": "daniel@ffwll.ch",
        "time": "Fri Jan 13 16:20:06 2012 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Fri Jan 13 16:20:06 2012 -0800"
      },
      "message": "drm/i915: convert force_wake_get to func pointer in the gpu reset code\n\nThis was forgotten in the original multi-threaded forcewake\nconversion:\n\ncommit 8d715f0024f64ad1b1be85d8c081cf577944c847\nAuthor: Keith Packard \u003ckeithp at keithp.com\u003e\nDate:   Fri Nov 18 20:39:01 2011 -0800\n\n    drm/i915: add multi-threaded forcewake support\n\nSigned-Off-by: Daniel Vetter \u003cdaniel.vetter at ffwll.ch\u003e\nReviewed-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "00c2064b7766c4e24af42e21da1903aedc8ca4c0",
      "tree": "513399b011821207a8543cddc602c07ffa2c2b9d",
      "parents": [
        "96c0a2f52c45d8ec0a2b70810f4693530feaba5d"
      ],
      "author": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jan 13 15:48:39 2012 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Fri Jan 13 15:49:27 2012 -0800"
      },
      "message": "drm/i915: sprite init failure on pre-SNB is not a failure\n\nWe can call the plane init function unconditionally, but don\u0027t need to\ncomplain if it fails, since that will only happen if we\u0027re out of\nmemory (and other things will fail) or if we\u0027re on the wrong platform\n(which is ok).\n\nAnd remove the DRM_ERRORs from the sprite code itself to avoid dmesg\nspam.\n\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nReviewed-by: Keith Packard \u003ckeithp@keithp.com\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "96c0a2f52c45d8ec0a2b70810f4693530feaba5d",
      "tree": "23bb41a135cbc0b85e0c02fa36e5738182356ba5",
      "parents": [
        "7885d2052bd94395e337709cfba093a41f273ff1"
      ],
      "author": {
        "name": "Rohit Jain",
        "email": "rohit.jain@intel.com",
        "time": "Thu Jan 12 12:19:44 2012 +0530"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Fri Jan 13 08:37:44 2012 -0800"
      },
      "message": "drm/i915: VBT Parser cleanup for eDP block\n\nSupport for parsing parameters for S3D support and T3 optimization\nsupport is implemented. The order for the bdb_edp struct was also\nmade similar to that indicated in spec.\n\nSigned-off-by: Rohit Jain \u003crohit.jain@intel.com\u003e\nReviewed-by: Shobhit Kumar \u003cshobhit.kumar@intel.com\u003e\nReviewed-by: Vijay A. Purushothaman \u003cvijay.a.purushothaman@intel.com\u003e\nReviewed-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nAcked-by: Jesse Barnes \u003cjesse.barnes@intel.com\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "d099230cc355c485e556121c034b1fca5a5fd18b",
      "tree": "b7bba1a92527e4cee4c95db21b2cb9f01ed40aa0",
      "parents": [
        "9075e85f46c598e4dfc852b16b256a32e2fb396f"
      ],
      "author": {
        "name": "Peter Lekensteyn",
        "email": "lekensteyn@gmail.com",
        "time": "Sat Dec 17 12:54:04 2011 +0100"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 13 09:09:15 2012 +0000"
      },
      "message": "nouveau: Support Optimus models for vga_switcheroo\n\nNewer nVidia cards with Optimus do not support/use the DSM switching functions.\nInstead, it require a DSM function to be called prior to bringing a device into\nD3 state. No other _DSM calls are necessary before/after enabling/disabling a\ndevice. Switching between discrete and integrated GPU is not supported by\nthis Optimus _DSM call, therefore return on the switching method.\n\nSigned-off-by: Peter Lekensteyn \u003clekensteyn@gmail.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "9075e85f46c598e4dfc852b16b256a32e2fb396f",
      "tree": "841922a76fb85d8cbcaa7d6f64b5ea6c4d067370",
      "parents": [
        "3b32a592ea6e49145d4dc610b85dd9042226896d"
      ],
      "author": {
        "name": "Peter Lekensteyn",
        "email": "lekensteyn@gmail.com",
        "time": "Sat Dec 17 12:53:43 2011 +0100"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 13 09:09:07 2012 +0000"
      },
      "message": "nouveau: properly check for _DSM function support\n\nAccording to the ACPI spec version 4, section 9.14.1, _DSM functions\nmust return a value with the first bit enabled if any DSM functions are\nsupported for the given UUID and revision ID. For a given function index n\nto be marked supported, bit n must be enabled.\n\nSigned-off-by: Peter Lekensteyn \u003clekensteyn@gmail.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "642ce5251b4fefdb8f2a55396707b8fa9f953e05",
      "tree": "1ea2fc1b2ac9c3a0fa3b5920b53f2eafdc415f63",
      "parents": [
        "9f821c675a389cf4aab7f1dc8ee0860fba4f3204"
      ],
      "author": {
        "name": "Michel Dänzer",
        "email": "michel.daenzer@amd.com",
        "time": "Thu Jan 12 16:04:11 2012 +0100"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 13 09:02:34 2012 +0000"
      },
      "message": "radeon: Call pci_clear_master() instead of open-coding it.\n\nReported-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: Michel Dänzer \u003cmichel.daenzer@amd.com\u003e\nReviewed-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "9f821c675a389cf4aab7f1dc8ee0860fba4f3204",
      "tree": "5c4dde154e229e235da1d91624aba163d9c88cb6",
      "parents": [
        "afe887df1c3806da98d4edfeef7794d11eb0fe16"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu Jan 12 14:40:12 2012 +0000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 13 09:02:06 2012 +0000"
      },
      "message": "gma500: Discard modes that don\u0027t fit in stolen memory\n\n[This fixes a crash on boot if the system is plugged into an HDTV so it\u0027s\n probably appropriate to push even though it didn\u0027t make the window. We could\n be cleverer about this but the simple version seems to be the safe one]\n\nFrom: Patrik Jakobsson \u003cpatrik.r.jakobsson@gmail.com\u003e\n\nAt the moment we cannot allocate more than stolen memory size for framebuffers.\nTo get around that issues we discard modes that doesn\u0027t fit. This is a temporary\nsolution until we can freely allocate framebuffer memory.\n\n[Currently the framebuffer needs to be linear in kernel space due to limits\n in the kernel fb layer - AC]\n\nSigned-off-by: Patrik Jakobsson \u003cpatrik.r.jakobsson@gmail.com\u003e\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "27d4d05220f84c2f83fe4c410fda0da479905813",
      "tree": "8f7d9ff7f1fad9237c108de2d0a2198101d0cf49",
      "parents": [
        "0b41da60c0393d3c7b75b6c898fa1ee7c24a40db"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "jdelvare@suse.de",
        "time": "Wed Nov 30 17:22:55 2011 +0100"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 13 09:00:51 2012 +0000"
      },
      "message": "drm/radeon/kms: Fix module parameter description format\n\nModule parameter descriptions don\u0027t take a trailing \\n, otherwise it\nbreaks formatting of modinfo\u0027s output. Also add missing space after\ncomma.\n\nSigned-off-by: Jean Delvare \u003cjdelvare@suse.de\u003e\nCc: David Airlie \u003cairlied@linux.ie\u003e\nReviewed-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nCc: Jerome Glisse \u003cjglisse@redhat.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "0b41da60c0393d3c7b75b6c898fa1ee7c24a40db",
      "tree": "f31e8c27b06954913ac150bd7e43792c1ab1fb3e",
      "parents": [
        "0e1133157986340e80a1c65ebf3bd20b74eb8075"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Thu Jan 12 15:42:37 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 13 09:00:16 2012 +0000"
      },
      "message": "drm/radeon/kms/ni: fix packet2 handling for VM IB parser\n\nPacket2 is only one dword.\n\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nReviewed-by: Jerome Glisse \u003cjglisse@redhat.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "0e1133157986340e80a1c65ebf3bd20b74eb8075",
      "tree": "040da40fbd7bf8ee70a3a27e6e439fcc1c954c76",
      "parents": [
        "099469502f62fbe0d7e4f0b83a2f22538367f734"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Thu Jan 12 11:50:26 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 13 08:59:47 2012 +0000"
      },
      "message": "ttm/dma: Remove the WARN() which is not useful.\n\n. It was useful during development, but now on a production system\nwe can get this (if the user forgot to upload the firmware):\n\n[drm] radeon: irq initialized.\n[drm] GART: num cpu pages 131072, num gpu pages 131072\n[drm] radeon: ib pool ready.\n[drm] Loading SUMO Microcode\nr600_cp: Failed to load firmware \"radeon/SUMO_pfp.bin\"\natl1c 0000:03:00.0: version 1.0.1.0-NAPI.213057] [drm:evergreen_startup] *ERROR* Failed to load firmware!\nradeon 0000:00:01.0: disabling GPU acceleration\n88] radeon 0000:00:01.0: ffff8801bb782400 unpin not necessary\n------------[ cut here ]------------\nWARNING: at /home/konrad/linux-linus/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c:956 ttm_dma_unpopulate+0x79/0x300 [ttm]()\nHardware name: System Product Name\nModules linked in: e1000e atl1c radeon(+) ahci libahci libata scsi_mod fbcon tileblit font ttm bitblit softcursor drm_kms_helper wmi xen_blkfront xen_netfront fb_sys_fops sysimgblt sysfillrect syscopyarea xenfs xen_privcmd\nPid: 1600, comm: modprobe Not tainted 3.2.0-06100-ge343a89 #1\nCall Trace:\n [\u003cffffffff8108973a\u003e] warn_slowpath_common+0x7a/0xb0\n [\u003cffffffff81089785\u003e] warn_slowpath_null+0x15/0x20\n [\u003cffffffffa0060309\u003e] ttm_dma_unpopulate+0x79/0x300 [ttm]\n [\u003cffffffffa01341c0\u003e] radeon_ttm_tt_unpopulate+0x120/0x130 [radeon]\n [\u003cffffffffa0056e0c\u003e] ttm_tt_destroy+0x2c/0x70 [ttm]\n [\u003cffffffffa0057a4e\u003e] ttm_bo_cleanup_memtype_use+0x3e/0x80 [ttm]\n [\u003cffffffffa00595a1\u003e] ttm_bo_release+0x251/0x280 [ttm]\n [\u003cffffffffa0059610\u003e] ttm_bo_unref+0x40/0x60 [ttm]\n [\u003cffffffffa0134d02\u003e] radeon_bo_unref+0x42/0x80 [radeon]\n [\u003cffffffffa0186dfb\u003e] radeon_sa_bo_manager_fini+0x6b/0x80 [radeon]\n [\u003cffffffffa0146b8f\u003e] radeon_ib_pool_fini+0x6f/0x90 [radeon]\n [\u003cffffffffa014be49\u003e] r100_ib_fini+0x19/0x20 [radeon]\n [\u003cffffffffa017b47e\u003e] evergreen_init+0x1ee/0x2d0 [radeon]\n\nThe big WARN() has nothing to do with the culprit - which is that\nthe firmware was not loaded. So lets remove the WARN() from the TTM DMA code.\n\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nReviewed-by: Jerome Glisse \u003cjglisse@redhat.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "7885d2052bd94395e337709cfba093a41f273ff1",
      "tree": "1bbfc9465d5573198cca8214f14415d5a8371c33",
      "parents": [
        "a190d703f0cd1de301b80c3219cf891c2779d15f"
      ],
      "author": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Jan 12 14:51:17 2012 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Thu Jan 12 21:36:38 2012 -0800"
      },
      "message": "drm/i915: mask transcoder select bits before setting them on LVDS\n\nThe transcoder port may changed from mode set to mode set, so make sure\nto mask out the selection bits before setting the right ones or we\u0027ll\nget black screens when going from transcoder B to A.\n\nTested-by: Vincent Vanackere \u003cvincent.vanackere@gmail.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nReviewed-by: Keith Packard \u003ckeithp@keithp.com\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "a190d703f0cd1de301b80c3219cf891c2779d15f",
      "tree": "05410e7425fc113ec8847a5752dc56ecf8a146c3",
      "parents": [
        "1a464cbb3d483f2f195b614cffa4aa1b910a0440",
        "44306ab302687b519a31aa498b954c1e26f95a6b"
      ],
      "author": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Thu Jan 12 12:51:06 2012 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Thu Jan 12 12:51:06 2012 -0800"
      },
      "message": "Merge branch \u0027drm-intel-next-fixes\u0027 into drm-intel-fixes\n"
    },
    {
      "commit": "44306ab302687b519a31aa498b954c1e26f95a6b",
      "tree": "deaf794564f71ee66d3c70a65afff054d4d7a039",
      "parents": [
        "8ca4013d702dae4913fbb625aabf4c2966cdf1f0"
      ],
      "author": {
        "name": "Joel Sass",
        "email": "jsass@disklessworkstations.com",
        "time": "Tue Jan 10 13:03:55 2012 -0500"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Thu Jan 12 12:35:42 2012 -0800"
      },
      "message": "drm/i915: Add Clientron E830 to the ignore LVDS list\n\nSigned-off-by: Joel Sass \u003cjsass@disklessworkstations.com\u003e\nReviewed-by: Adam Jackson \u003cajax@redhat.com\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "8ca4013d702dae4913fbb625aabf4c2966cdf1f0",
      "tree": "74f9d8fe3f517e7be9da6d0bcbcdea05eeaed0ee",
      "parents": [
        "07c1e8c1462fa7324de4c36ae9e55da2abd79cee"
      ],
      "author": {
        "name": "Duncan Laurie",
        "email": "dlaurie@chromium.org",
        "time": "Tue Oct 25 15:42:21 2011 -0700"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Thu Jan 12 12:30:25 2012 -0800"
      },
      "message": "CHROMIUM: i915: Add DMI override to skip CRT initialization on ZGB\n\nThis is the method used to override LVDS in intel_lvds and appears to be\nan effective way to ensure that the driver does not enable VGA hotplug.\n\nThis is the same patch from 2.6.32 kernel in R12 but ported to 2.6.38,\nwill send upstream next.\n\nSigned-off-by: Duncan Laurie \u003cdlaurie@chromium.org\u003e\n\nBUG\u003dchrome-os-partner:117\nTEST\u003dCheck PORT_HOTPLUG_EN to see if hotplug interrupt is disabled.\nRun the following command as root, specifically looking at bit 9:\nmmio_read32 $[$(pci_read32 0 2 0 0x10) + 0x61110] \u003d 0x00000000\n\nChange-Id: Id8240f9fb31d058d8d79ee72f7b4615c43893f5a\nReviewed-on: http://gerrit.chromium.org/gerrit/1390\nReviewed-by: Olof Johansson \u003colofj@chromium.org\u003e\nTested-by: Duncan Laurie \u003cdlaurie@chromium.org\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "1a464cbb3d483f2f195b614cffa4aa1b910a0440",
      "tree": "af57dee6436532dbb546b8670e9e1f6910d489b5",
      "parents": [
        "dbe950f201a8edd353b0bd9079e8d536ee4ce37c",
        "095f979a539245a46b9e5d600ec9c720b4d928e5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 10 11:04:36 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 10 11:04:36 2012 -0800"
      },
      "message": "Merge branch \u0027drm-core-next\u0027 of git://people.freedesktop.org/~airlied/linux\n\n* \u0027drm-core-next\u0027 of git://people.freedesktop.org/~airlied/linux: (307 commits)\n  drm/nouveau/pm: fix build with HWMON off\n  gma500: silence gcc warnings in mid_get_vbt_data()\n  drm/ttm: fix condition (and vs or)\n  drm/radeon: double lock typo in radeon_vm_bo_rmv()\n  drm/radeon: use after free in radeon_vm_bo_add()\n  drm/sis|via: don\u0027t return stack garbage from free_mem ioctl\n  drm/radeon/kms: remove pointless CS flags priority struct\n  drm/radeon/kms: check if vm is supported in VA ioctl\n  drm: introduce drm_can_sleep and use in intel/radeon drivers. (v2)\n  radeon: Fix disabling PCI bus mastering on big endian hosts.\n  ttm: fix agp since ttm tt rework\n  agp: Fix multi-line warning message whitespace\n  drm/ttm/dma: Fix accounting error when calling ttm_mem_global_free_page and don\u0027t try to free freed pages.\n  drm/ttm/dma: Only call set_pages_array_wb when the page is not in WB pool.\n  drm/radeon/kms: sync across multiple rings when doing bo moves v3\n  drm/radeon/kms: Add support for multi-ring sync in CS ioctl (v2)\n  drm/radeon: GPU virtual memory support v22\n  drm: make DRM_UNLOCKED ioctls with their own mutex\n  drm: no need to hold global mutex for static data\n  drm/radeon/benchmark: common modes sweep ignores 640x480@32\n  ...\n\nFix up trivial conflicts in radeon/evergreen.c and vmwgfx/vmwgfx_kms.c\n"
    },
    {
      "commit": "095f979a539245a46b9e5d600ec9c720b4d928e5",
      "tree": "f8632cdddd2c041d751111511d05fedd136fc432",
      "parents": [
        "96067adf55bd93618cec4b6de08aebaad8203c9b"
      ],
      "author": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Jan 10 10:13:16 2012 +0000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Jan 10 10:13:16 2012 +0000"
      },
      "message": "drm/nouveau/pm: fix build with HWMON off\n\nReported-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "96067adf55bd93618cec4b6de08aebaad8203c9b",
      "tree": "1ddabb7a000e5ffd6702a6afaecbb2d2e3238e4b",
      "parents": [
        "7920aa5a9d841fc7a10ff53a5a775f821d7a6ba1"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "dan.carpenter@oracle.com",
        "time": "Wed Jan 04 10:26:10 2012 +0300"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Jan 10 10:01:22 2012 +0000"
      },
      "message": "gma500: silence gcc warnings in mid_get_vbt_data()\n\nAdd a cast here to silence a Gcc warning.\ndrivers/gpu/drm/gma500/mid_bios.c:214:28: warning:\n  cast from pointer to integer of different size [-Wpointer-to-int-cast]\n\nSigned-off-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nAcked-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "7920aa5a9d841fc7a10ff53a5a775f821d7a6ba1",
      "tree": "4604bbb97b3f0a69b5921aa71b804d0c71e9aa98",
      "parents": [
        "a7eef882a8d37be46459faa5020648af7ccf6ad2"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "dan.carpenter@oracle.com",
        "time": "Thu Dec 08 09:50:54 2011 +0300"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Jan 10 10:00:42 2012 +0000"
      },
      "message": "drm/ttm: fix condition (and vs or)\n\nThe \"if (!p \u0026\u0026 !p-\u003edev)\" condition isn\u0027t right because || was intended\ninstead of \u0026\u0026.  But actually, \"p\" is the list cursor and so it\u0027s always\nnon-NULL and we can just remove that bit.  We can remove the another\nsimilar check as well.\n\nSigned-off-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nReviewed-by: Jerome Glisse \u003cjglisse@redhat.com\u003e\nAcked-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "07c1e8c1462fa7324de4c36ae9e55da2abd79cee",
      "tree": "a63b70ca032659120000821247115a502dd49f7d",
      "parents": [
        "5e5b7fa2ad84f7806d0c7f5af8e1440bc91b4ec7"
      ],
      "author": {
        "name": "Eugeni Dodonov",
        "email": "eugeni.dodonov@intel.com",
        "time": "Sat Jan 07 23:40:35 2012 -0200"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Mon Jan 09 14:17:53 2012 -0800"
      },
      "message": "drm/i915: handle 3rd pipe\n\nWe don\u0027t need to check 3rd pipe specifically, as it shares PLL with some\nother one.\n\nSigned-off-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nReviewed-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "5e5b7fa2ad84f7806d0c7f5af8e1440bc91b4ec7",
      "tree": "d84e789b76090510e58c31d0ef4d5194b0a37075",
      "parents": [
        "a05a586239c66a256ea1fbae859e742e4c91c8d9"
      ],
      "author": {
        "name": "Eugeni Dodonov",
        "email": "eugeni.dodonov@intel.com",
        "time": "Sat Jan 07 23:40:34 2012 -0200"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Mon Jan 09 14:17:25 2012 -0800"
      },
      "message": "drm/i915: simplify pipe checking\n\nThis is also handled by i915_reg.h, so just reuse this trick to reduce\nuniverse entropy.\n\nSigned-off-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nReviewed-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nReviewed-by: Cyril Brulebois \u003ckibi@debian.org\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "a05a586239c66a256ea1fbae859e742e4c91c8d9",
      "tree": "9906ad5075a5834d14c318c1a08b913ab8b00182",
      "parents": [
        "ba68e086223a5f149f37bf8692c8cdbf1b0ba3ef"
      ],
      "author": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Tue Dec 20 08:54:15 2011 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Mon Jan 09 14:02:41 2012 -0800"
      },
      "message": "drm/i915: Print debugfs object list sizes in KiB instead of bytes.\n\nThey\u0027re all in increments of pages, so this just makes it easier on\nthe eyes.\n\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "a7eef882a8d37be46459faa5020648af7ccf6ad2",
      "tree": "572a177cb3000fd09335c5accb48970496f51bbc",
      "parents": [
        "55ba70c40661b61f98c4188c428f265009af1aa5"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "dan.carpenter@oracle.com",
        "time": "Mon Jan 09 15:45:41 2012 +0300"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Jan 09 12:49:48 2012 +0000"
      },
      "message": "drm/radeon: double lock typo in radeon_vm_bo_rmv()\n\nThe second lock should be an unlock or it causes a deadlock.\n\nSigned-off-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "55ba70c40661b61f98c4188c428f265009af1aa5",
      "tree": "69055d80f453910904969bc441f4d0d7e78b05d0",
      "parents": [
        "b5215ef1a877cd81a2558f3ddbcf784671a27588"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "dan.carpenter@oracle.com",
        "time": "Mon Jan 09 15:44:50 2012 +0300"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Jan 09 12:49:21 2012 +0000"
      },
      "message": "drm/radeon: use after free in radeon_vm_bo_add()\n\n\"bo_va\" is dereferenced in the error message.\n\nSigned-off-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "b5215ef1a877cd81a2558f3ddbcf784671a27588",
      "tree": "9bef1f5e9814906da9144ff8dc62006bc9e163cb",
      "parents": [
        "f0afb5d443748ee91a34e3a13cb454b0047be9ec"
      ],
      "author": {
        "name": "Daniel Vetter",
        "email": "daniel.vetter@ffwll.ch",
        "time": "Sun Jan 08 22:42:27 2012 +0100"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Jan 09 12:11:39 2012 +0000"
      },
      "message": "drm/sis|via: don\u0027t return stack garbage from free_mem ioctl\n\nFallout from my \"kill drm_sman\" refactor. Unfortunately gcc seems to\nhave failed me and not warned about this.\n\nTested-by: Jakob Bornecrantz \u003cwallbraker@gmail.com\u003e (on via)\nSigned-off-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "67e915e49a12ee08c22cb1db746bafd909988f85",
      "tree": "6786118f5a2930e675e66a27e3cdc1a12c54b55a",
      "parents": [
        "cc1f71942944890c7e05fc55dc4427c94b63d4f1"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Fri Jan 06 09:38:15 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Jan 09 12:10:09 2012 +0000"
      },
      "message": "drm/radeon/kms: check if vm is supported in VA ioctl\n\nAdd a VM manager enabled field and use it to check if\nvm is enabled.\n\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nCc: jglisse@redhat.com\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "98793265b429a3f0b3f1750e74d67cd4d740d162",
      "tree": "b0bd717673f0c21845cf053f3fb6b75d42530af5",
      "parents": [
        "b4a133da2eaccb844a7beaef16ffd9c76a0d21d3",
        "bd1b2a555952d959f47169056fca05acf7eff81f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 13:21:22 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 13:21:22 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (53 commits)\n  Kconfig: acpi: Fix typo in comment.\n  misc latin1 to utf8 conversions\n  devres: Fix a typo in devm_kfree comment\n  btrfs: free-space-cache.c: remove extra semicolon.\n  fat: Spelling s/obsolate/obsolete/g\n  SCSI, pmcraid: Fix spelling error in a pmcraid_err() call\n  tools/power turbostat: update fields in manpage\n  mac80211: drop spelling fix\n  types.h: fix comment spelling for \u0027architectures\u0027\n  typo fixes: aera -\u003e area, exntension -\u003e extension\n  devices.txt: Fix typo of \u0027VMware\u0027.\n  sis900: Fix enum typo \u0027sis900_rx_bufer_status\u0027\n  decompress_bunzip2: remove invalid vi modeline\n  treewide: Fix comment and string typo \u0027bufer\u0027\n  hyper-v: Update MAINTAINERS\n  treewide: Fix typos in various parts of the kernel, and fix some comments.\n  clockevents: drop unknown Kconfig symbol GENERIC_CLOCKEVENTS_MIGR\n  gpio: Kconfig: drop unknown symbol \u0027CS5535_GPIO\u0027\n  leds: Kconfig: Fix typo \u0027D2NET_V2\u0027\n  sound: Kconfig: drop unknown symbol ARCH_CLPS7500\n  ...\n\nFix up trivial conflicts in arch/powerpc/platforms/40x/Kconfig (some new\nkconfig additions, close to removed commented-out old ones)\n"
    },
    {
      "commit": "ba68e086223a5f149f37bf8692c8cdbf1b0ba3ef",
      "tree": "ef263fc9478b5e668403a0698e727847614ba0be",
      "parents": [
        "55a6713b3f30a5024056027e9dbf03ac8f13bfc9"
      ],
      "author": {
        "name": "Paulo Zanoni",
        "email": "paulo.r.zanoni@intel.com",
        "time": "Fri Jan 06 19:45:34 2012 -0200"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Fri Jan 06 14:11:17 2012 -0800"
      },
      "message": "drm/i915/sdvo: always set positive sync polarity\n\nThis is a revert of 81a14b46846fea0741902e8d8dfcc6c6c78154c8.\n\nWe already set the mode polarity using the SDVO commands with struct\nintel_sdvo_dtd. We have at least 3 bugs that get fixed with this patch.\nThe documentation, despite not clear, can also be interpreted in a way\nthat suggests this patch is needed.\n\nBugzilla: https://bugs.freedesktop.org/show_bug.cgi?id\u003d15766\nBugzilla: https://bugs.freedesktop.org/show_bug.cgi?id\u003d42174\nBugzilla: https://bugs.freedesktop.org/show_bug.cgi?id\u003d43333\nCc: stable@kernel.org\nReviewed-by: Eric Anholt \u003ceric@anholt.net\u003e\nReviewed-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Paulo Zanoni \u003cpaulo.r.zanoni@intel.com\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "55a6713b3f30a5024056027e9dbf03ac8f13bfc9",
      "tree": "3416145a4e9ab7761623efcc73124ab73570a076",
      "parents": [
        "23bd15ec662344dc10e9918fdd0dbc58bc71526d"
      ],
      "author": {
        "name": "Rodrigo Vivi",
        "email": "rodrigo.vivi@gmail.com",
        "time": "Thu Dec 15 14:47:33 2011 -0200"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Fri Jan 06 13:54:12 2012 -0800"
      },
      "message": "drm/i915: Removing TV Out modes.\n\nThese modes are no longer needed or are not according to TV timing standards.\n\nIntel PRM Vol 3 - Display Registers Updated -\n\tSection 5 TV-Out Programming /\n\t\t5.2.1 Television Standards /\n\t\t\t5.2.1.1 Timing tables\n\nSigned-off-by: Rodrigo Vivi \u003crodrigo.vivi@gmail.com\u003e\nReviewed-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "23bd15ec662344dc10e9918fdd0dbc58bc71526d",
      "tree": "7dc70e4b1619473720ff9d0296fb52c0a4c6ee15",
      "parents": [
        "cc1f71942944890c7e05fc55dc4427c94b63d4f1"
      ],
      "author": {
        "name": "Rodrigo Vivi",
        "email": "rodrigo.vivi@gmail.com",
        "time": "Wed Dec 14 21:10:06 2011 -0200"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Fri Jan 06 13:53:22 2012 -0800"
      },
      "message": "drm/i915: Fix TV Out refresh rate.\n\nTV Out refresh rate was half of the specification for almost all modes.\nDue to this reason pixel clock was so low for some modes causing flickering screen.\n\nSigned-off-by: Rodrigo Vivi \u003crodrigo.vivi@gmail.com\u003e\nReviewed-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "cc1f71942944890c7e05fc55dc4427c94b63d4f1",
      "tree": "2e9e1b347adb6e4457a02da6e5c2fcbdda851a28",
      "parents": [
        "3df96909b75835d487a9178761622b0cbd7310d4"
      ],
      "author": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Thu Jan 05 09:55:22 2012 +0000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 06 10:01:35 2012 +0000"
      },
      "message": "drm: introduce drm_can_sleep and use in intel/radeon drivers. (v2)\n\nSo we have a few places where the drm drivers would like to sleep to\nbe nice to the system, mainly in the modesetting paths, but we also\nhave two cases were atomic modesetting must take place, panic writing\nand kernel debugger. So provide a central inline to determine if a\nsleep or delay should be used and use this in the intel and radeon drivers.\n\nv2: drop intel_drv.h MSLEEP macro, nobody uses it.\n\nBased on patch from Michel Dänzer \u003cmichel.daenzer@amd.com\u003e\n\nBugzilla: https://bugs.freedesktop.org/show_bug.cgi?id\u003d43941\n\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "3df96909b75835d487a9178761622b0cbd7310d4",
      "tree": "5dab156e43a91bde13166621b26346c1efb5fc02",
      "parents": [
        "dea7e0ac45fd28f90bbc38ff226d36a9f788efbf"
      ],
      "author": {
        "name": "Michel Dänzer",
        "email": "michel.daenzer@amd.com",
        "time": "Thu Jan 05 18:42:17 2012 +0100"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 06 09:40:00 2012 +0000"
      },
      "message": "radeon: Fix disabling PCI bus mastering on big endian hosts.\n\nIt would previously write basically random bits to PCI configuration space...\nNot very surprising that the GPU tended to stop responding completely. The\nresulting MCE even froze the whole machine sometimes.\n\nNow resetting the GPU after a lockup has at least a fighting chance of\nsucceeding.\n\nCc: stable@vger.kernel.org\nSigned-off-by: Michel Dänzer \u003cmichel.daenzer@amd.com\u003e\nReviewed-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "dea7e0ac45fd28f90bbc38ff226d36a9f788efbf",
      "tree": "1130a3d51f0f8aa8ab462f1735423e3dc37835b6",
      "parents": [
        "e11d0b87cde80745afe4712a19cd37bca9924a5b"
      ],
      "author": {
        "name": "Jerome Glisse",
        "email": "jglisse@redhat.com",
        "time": "Tue Jan 03 17:37:37 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 06 09:34:03 2012 +0000"
      },
      "message": "ttm: fix agp since ttm tt rework\n\nttm tt rework modified the way we allocate and populate the\nttm_tt structure, the AGP side was missing some bit to properly\nwork. Fix those and fix radeon and nouveau AGP support.\n\nTested on radeon only so far.\n\nSigned-off-by: Jerome Glisse \u003cjglisse@redhat.com\u003e\nReviewed-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "2c05114d23c4fd2256eaf5645528c19fcefdb2c8",
      "tree": "dc1f700fbacb0a7891932b13684d4a4f5a65415e",
      "parents": [
        "36d7c537c3082a492ff851fb0da40ae3d7c5565d"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Wed Jan 04 16:35:15 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 06 09:30:15 2012 +0000"
      },
      "message": "drm/ttm/dma: Fix accounting error when calling ttm_mem_global_free_page and don\u0027t try to free freed pages.\n\nThe code to figure out how many pages to shrink the pool\nends up capping the \u0027count\u0027 at _manager-\u003eoptions.max_size - which is OK.\nExcept that the \u0027count\u0027 is also used when accounting for how many pages\nare recycled - which we end up with the invalid values. This fixes\nit by using a different value for the amount of pages to shrink.\n\nOn top of that we would free the cached page pool - which is nonsense\nas they are deleted from the pool - so there are no free pages in that\npool..\n\nAlso we also missed the opportunity to batch the amount of pages\nto free (similar to how ttm_page_alloc.c does it). This reintroduces\nthe code that was lost during rebasing.\n\nReviewed-by: Jerome Glisse \u003cjglisse@redhat.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "36d7c537c3082a492ff851fb0da40ae3d7c5565d",
      "tree": "e2e5502502f5c8faba8d6752f2ee3a7154afee87",
      "parents": [
        "3000bf393302a8c786e9ebfc778050cb0d6226c4"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Wed Jan 04 16:35:14 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 06 09:29:43 2012 +0000"
      },
      "message": "drm/ttm/dma: Only call set_pages_array_wb when the page is not in WB pool.\n\nOtherwise we are doing redundant work. Especially since the \u0027unbind\u0027\nand \u0027unpopulate\u0027 have been merged and nouveau driver ends up calling\nit quite excessivly. On a GeForce 8600 GT with Gnome Shell (GNOME 3)\nwe end up spending about 54% CPU time in __change_page_attr_set_clr\nchecking the page flags.\n\nThe callgraph (annotated) looks as so before this patch:\n\n    53.29%  gnome-shell  [kernel.kallsyms]                   [k] static_protections\n            |\n            --- static_protections\n               |\n               |--91.80%-- __change_page_attr_set_clr\n               |          change_page_attr_set_clr\n               |          set_pages_array_wb\n               |          |\n               |          |--96.55%-- ttm_dma_unpopulate\n               |          |          nouveau_ttm_tt_unpopulate\n               |          |          ttm_tt_destroy\n               |          |          ttm_bo_cleanup_memtype_use\n               |          |          ttm_bo_release\n               |          |          kref_put\n               |          |          ttm_bo_unref\n               |          |          nouveau_gem_object_del\n               |          |          drm_gem_object_free\n               |          |          kref_put\n               |          |          drm_gem_object_unreference_unlocked\n               |          |          drm_gem_object_handle_unreference_unlocked.part.1\n               |          |          drm_gem_handle_delete\n               |          |          drm_gem_close_ioctl\n               |          |          drm_ioctl\n               |          |          do_vfs_ioctl\n               |          |          sys_ioctl\n               |          |          system_call_fastpath\n               |          |          __GI___ioctl\n               |          |\n               |           --3.45%-- ttm_dma_pages_put\n               |                     ttm_dma_page_pool_free\n               |                     ttm_dma_unpopulate\n               |                     nouveau_ttm_tt_unpopulate\n               |                     ttm_tt_destroy\n               |                     ttm_bo_cleanup_memtype_use\n               |                     ttm_bo_release\n               |                     kref_put\n               |                     ttm_bo_unref\n               |                     nouveau_gem_object_del\n               |                     drm_gem_object_free\n               |                     kref_put\n               |                     drm_gem_object_unreference_unlocked\n               |                     drm_gem_object_handle_unreference_unlocked.part.1\n               |                     drm_gem_handle_delete\n               |                     drm_gem_close_ioctl\n               |                     drm_ioctl\n               |                     do_vfs_ioctl\n               |                     sys_ioctl\n               |                     system_call_fastpath\n               |                     __GI___ioctl\n               |\n                --8.20%-- change_page_attr_set_clr\n                          set_pages_array_wb\n                          |\n                          |--93.76%-- ttm_dma_unpopulate\n                          |          nouveau_ttm_tt_unpopulate\n                          |          ttm_tt_destroy\n                          |          ttm_bo_cleanup_memtype_use\n                          |          ttm_bo_release\n                          |          kref_put\n                          |          ttm_bo_unref\n                          |          nouveau_gem_object_del\n                          |          drm_gem_object_free\n                          |          kref_put\n                          |          drm_gem_object_unreference_unlocked\n                          |          drm_gem_object_handle_unreference_unlocked.part.1\n                          |          drm_gem_handle_delete\n                          |          drm_gem_close_ioctl\n                          |          drm_ioctl\n                          |          do_vfs_ioctl\n                          |          sys_ioctl\n                          |          system_call_fastpath\n                          |          __GI___ioctl\n                          |\n                           --6.24%-- ttm_dma_pages_put\n                                     ttm_dma_page_pool_free\n                                     ttm_dma_unpopulate\n                                     nouveau_ttm_tt_unpopulate\n                                     ttm_tt_destroy\n                                     ttm_bo_cleanup_memtype_use\n                                     ttm_bo_release\n                                     kref_put\n                                     ttm_bo_unref\n                                     nouveau_gem_object_del\n                                     drm_gem_object_free\n                                     kref_put\n                                     drm_gem_object_unreference_unlocked\n                                     drm_gem_object_handle_unreference_unlocked.part.1\n                                     drm_gem_handle_delete\n                                     drm_gem_close_ioctl\n                                     drm_ioctl\n                                     do_vfs_ioctl\n                                     sys_ioctl\n                                     system_call_fastpath\n                                     __GI___ioctl\n\nand after this patch all of that disappears.\n\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "3000bf393302a8c786e9ebfc778050cb0d6226c4",
      "tree": "2d2be47822cec764e1a83d6294b0f94b6591f5d6",
      "parents": [
        "93504fce28b1a387ec01f81b26637d237dca2b36"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Thu Jan 05 22:11:07 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 06 09:16:38 2012 +0000"
      },
      "message": "drm/radeon/kms: sync across multiple rings when doing bo moves v3\n\nWe need to synchronize across rings when doing a bo move to make\nsure we the buffer is idle if it\u0027s in use by a different ring than\nthe ring doing the move.\n\nv2: fix fence setup for bo moves\n\nv3: add missing ring lock/unlock\n\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "93504fce28b1a387ec01f81b26637d237dca2b36",
      "tree": "7544b4fd960cbcbbfc17dea87aadd129eecf7b45",
      "parents": [
        "721604a15b934f0a8d1909acb8017f029128be2f"
      ],
      "author": {
        "name": "Christian König",
        "email": "deathsimple@vodafone.de",
        "time": "Thu Jan 05 22:11:06 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 06 09:16:09 2012 +0000"
      },
      "message": "drm/radeon/kms: Add support for multi-ring sync in CS ioctl (v2)\n\nUse semaphores to sync buffers across rings in the CS\nioctl.  Add a reloc flag to allow userspace to skip\nsync for buffers.\n\nagd5f: port to latest CS ioctl changes.\n\nv2: add ring lock/unlock to make sure changes hit the ring.\n\nSigned-off-by: Christian König \u003cdeathsimple@vodafone.de\u003e\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "721604a15b934f0a8d1909acb8017f029128be2f",
      "tree": "ac1dc0f837d70616b36c9b57d22eb9678c5e68fc",
      "parents": [
        "09b4ea47d1041612b101c369969db123ac2c1511"
      ],
      "author": {
        "name": "Jerome Glisse",
        "email": "jglisse@redhat.com",
        "time": "Thu Jan 05 22:11:05 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jan 06 09:15:42 2012 +0000"
      },
      "message": "drm/radeon: GPU virtual memory support v22\n\nVirtual address space are per drm client (opener of /dev/drm).\nClient are in charge of virtual address space, they need to\nmap bo into it by calling DRM_RADEON_GEM_VA ioctl.\n\nFirst 16M of virtual address space is reserved by the kernel.\n\nOnce using 2 level page table we should be able to have a small\nvram memory footprint for each pt (there would be one pt for all\ngart, one for all vram and then one first level for each virtual\naddress space).\n\nPlan include using the sub allocator for a common vm page table\narea and using memcpy to copy vm page table in \u0026 out. Or use\na gart object and copy things in \u0026 out using dma.\n\nv2: agd5f fixes:\n- Add vram base offset for vram pages.  The GPU physical address of a\nvram page is FB_OFFSET + page offset.  FB_OFFSET is 0 on discrete\ncards and the physical bus address of the stolen memory on\nintegrated chips.\n- VM_CONTEXT1_PROTECTION_FAULT_DEFAULT_ADDR covers all vmid\u0027s \u003e\u003d 1\n\nv3: agd5f:\n- integrate with the semaphore/multi-ring stuff\n\nv4:\n- rebase on top ttm dma \u0026 multi-ring stuff\n- userspace is now in charge of the address space\n- no more specific cs vm ioctl, instead cs ioctl has a new\n  chunk\n\nv5:\n- properly handle mem \u003d\u003d NULL case from move_notify callback\n- fix the vm cleanup path\n\nv6:\n- fix update of page table to only happen on valid mem placement\n\nv7:\n- add tlb flush for each vm context\n- add flags to define mapping property (readable, writeable, snooped)\n- make ring id implicit from ib-\u003efence-\u003ering, up to each asic callback\n  to then do ring specific scheduling if vm ib scheduling function\n\nv8:\n- add query for ib limit and kernel reserved virtual space\n- rename vm-\u003esize to max_pfn (maximum number of page)\n- update gem_va ioctl to also allow unmap operation\n- bump kernel version to allow userspace to query for vm support\n\nv9:\n- rebuild page table only when bind and incrementaly depending\n  on bo referenced by cs and that have been moved\n- allow virtual address space to grow\n- use sa allocator for vram page table\n- return invalid when querying vm limit on non cayman GPU\n- dump vm fault register on lockup\n\nv10: agd5f:\n- Move the vm schedule_ib callback to a standalone function, remove\n  the callback and use the existing ib_execute callback for VM IBs.\n\nv11:\n- rebase on top of lastest Linus\n\nv12: agd5f:\n- remove spurious backslash\n- set IB vm_id to 0 in radeon_ib_get()\n\nv13: agd5f:\n- fix handling of RADEON_CHUNK_ID_FLAGS\n\nv14:\n- fix va destruction\n- fix suspend resume\n- forbid bo to have several different va in same vm\n\nv15:\n- rebase\n\nv16:\n- cleanup left over of vm init/fini\n\nv17: agd5f:\n- cs checker\n\nv18: agd5f:\n- reworks the CS ioctl to better support multiple rings and\nVM.  Rather than adding a new chunk id for VM, just re-use the\nIB chunk id and add a new flags for VM mode.  Also define additional\ndwords for the flags chunk id to define the what ring we want to use\n(gfx, compute, uvd, etc.) and the priority.\n\nv19:\n- fix cs fini in weird case of no ib\n- semi working flush fix for ni\n- rebase on top of sa allocator changes\n\nv20: agd5f:\n- further CS ioctl cleanups from Christian\u0027s comments\n\nv21: agd5f:\n- integrate CS checker improvements\n\nv22: agd5f:\n- final cleanups for release, only allow VM CS on cayman\n\nSigned-off-by: Jerome Glisse \u003cjglisse@redhat.com\u003e\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "09b4ea47d1041612b101c369969db123ac2c1511",
      "tree": "177a2cf53107d2451f47cf2680ce20db8af5f623",
      "parents": [
        "53fead966a584cd2130e0c5565726dd56ccf7924"
      ],
      "author": {
        "name": "Ilija Hadzic",
        "email": "ihadzic@research.bell-labs.com",
        "time": "Fri Oct 28 17:43:28 2011 -0400"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Thu Jan 05 14:43:02 2012 +0000"
      },
      "message": "drm: make DRM_UNLOCKED ioctls with their own mutex\n\ndrm_getclient, drm_getstats and drm_getmap (with a few minor\nadjustments) do not need global mutex, so fix that and\nmake the said ioctls DRM_UNLOCKED. Details:\n\n  drm_getclient: the only thing that should be protected here\n  is dev-\u003efilelist and that is already protected everywhere with\n  dev-\u003estruct_mutex.\n\n  drm_getstats: there is no need for any mutex here because the\n  loop runs through quasi-static (set at load time only)\n  data, and the actual count access is done with atomic_read()\n\n  drm_getmap already uses dev-\u003estruct_mutex to protect\n  dev-\u003emaplist, which also used to protect the same structure\n  everywhere else except at three places:\n  * drm_getsarea, which doesn\u0027t grab *any* mutex before\n    touching dev-\u003emaplist (so no drm_global_mutex doesn\u0027t help\n    here either; different issue for a different patch).\n    However, drivers seem to call it only at\n    initialization time so it probably doesn\u0027t matter\n  * drm_master_destroy, which is called from drm_master_put,\n    which in turn is protected with dev-\u003estruct_mutex\n    everywhere else in drm module, so we are good here too.\n  * drm_getsareactx, which releases the dev-\u003estruct_mutex\n    too early, but this patch includes the fix for that.\n\nv2: * incorporate comments received from Daniel Vetter\n    * include the (long) explanation above to make it clear what\n      we are doing (and why), also at Daniel Vetter\u0027s request\n    * tighten up mutex grab/release locations to only\n      encompass real critical sections, rather than some\n      random code around them\n\nSigned-off-by: Ilija Hadzic \u003cihadzic@research.bell-labs.com\u003e\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "53fead966a584cd2130e0c5565726dd56ccf7924",
      "tree": "ab3f9ed2e01e7dad18f05554b2944639a6c46686",
      "parents": [
        "d7d0a75c4486f0e493af61d769aa49b94ae4c8bd"
      ],
      "author": {
        "name": "Ilija Hadzic",
        "email": "ihadzic@research.bell-labs.com",
        "time": "Tue Oct 25 22:20:12 2011 -0400"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Thu Jan 05 14:42:52 2012 +0000"
      },
      "message": "drm: no need to hold global mutex for static data\n\ndrm_getcap and drm_version ioctls only reads static data,\nthere is no need to protect them with drm_global_mutex,\nso make them DRM_UNLOCKED\n\nSigned-off-by: Ilija Hadzic \u003cihadzic@research.bell-labs.com\u003e\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "d7d0a75c4486f0e493af61d769aa49b94ae4c8bd",
      "tree": "65eac3883fa3c96beee7637d283067343499729e",
      "parents": [
        "28eebb703e28bc455ba704adb1026f76649b768c"
      ],
      "author": {
        "name": "Chen Jie",
        "email": "chenj@lemote.com",
        "time": "Wed Dec 07 10:18:18 2011 +0800"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Thu Jan 05 14:40:49 2012 +0000"
      },
      "message": "drm/radeon/benchmark: common modes sweep ignores 640x480@32\n\nSweep common_modes array should start with index 0.\n\nSigned-off-by: Chen Jie \u003cchenj@lemote.com\u003e\nReviewed-by: Ilija Hadzic \u003cihadzic@research.bell-labs.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "28eebb703e28bc455ba704adb1026f76649b768c",
      "tree": "c6e22d33e869d42d7d441ddc44c7e4bf2008d28b",
      "parents": [
        "c1341e52802ab401be7addb55408e23307f9074b"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Tue Jan 03 09:48:38 2012 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Thu Jan 05 10:07:10 2012 +0000"
      },
      "message": "drm/radeon/kms: disable writeback on pre-R300 asics\n\nWe often end up missing fences on older asics with\nwriteback enabled which leads to delays in the userspace\naccel code, so just disable it by default on those asics.\n\nReported-by: Helge Deller \u003cdeller@gmx.de\u003e\nReported-by: Dave Airlie \u003cairlied@redhat.com\u003e\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "c1341e52802ab401be7addb55408e23307f9074b",
      "tree": "84319dfa10da13769fd9562eda73a8e60f069088",
      "parents": [
        "69e130a6a42270f94e6ee0bce34c3480a6b9da61"
      ],
      "author": {
        "name": "Jerome Glisse",
        "email": "jglisse@redhat.com",
        "time": "Wed Dec 21 12:13:47 2011 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Thu Jan 05 10:03:53 2012 +0000"
      },
      "message": "drm/radeon: allocate semaphore from the ib pool\n\nThis allow to share the ib pool with semaphore and avoid\nhaving more bo around.\n\nSigned-off-by: Jerome Glisse \u003cjglisse@redhat.com\u003e\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "69e130a6a42270f94e6ee0bce34c3480a6b9da61",
      "tree": "025e3a3d94400eb3f6dd15535544d569cc57b5ad",
      "parents": [
        "1f2e124df90cfc1347fd301409570fa9b0aed2c9"
      ],
      "author": {
        "name": "Jerome Glisse",
        "email": "jglisse@redhat.com",
        "time": "Wed Dec 21 12:13:46 2011 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Thu Jan 05 10:03:33 2012 +0000"
      },
      "message": "drm/radeon: make ib size variable\n\nThis avoid to waste ib pool size and avoid a bunch of wait for\nprevious ib to finish.\n\nSigned-off-by: Jerome Glisse \u003cjglisse@redhat.com\u003e\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "1f2e124df90cfc1347fd301409570fa9b0aed2c9",
      "tree": "f2c97c7cc83b9f07358ffc671279a8976c228ae5",
      "parents": [
        "0a7eb243db7864640134f8c57e6856f8eb3ed7c6"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Thu Jan 05 10:02:42 2012 +0000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Thu Jan 05 10:02:42 2012 +0000"
      },
      "message": "drm/radeon/kms: add missing ring ready check in sync tests\n\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "0a7eb243db7864640134f8c57e6856f8eb3ed7c6",
      "tree": "93580b87b27d341801f9724d0daba75e933d9412",
      "parents": [
        "a9971157b6c550644fe19551c21f4b05f7e9475a"
      ],
      "author": {
        "name": "Rob Clark",
        "email": "rob@ti.com",
        "time": "Tue Dec 13 20:19:36 2011 -0600"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Thu Jan 05 10:00:16 2012 +0000"
      },
      "message": "drm: add support for private planes\n\nIn cases where the scanout hw is sufficiently similar between \"overlay\"\nand traditional crtc layers, it might be convenient to allow the driver\nto create internal drm_plane helper objects used by the drm_crtc\nimplementation, rather than duplicate code between the plane and crtc.\nA private plane is not exposed to userspace.\n\nSigned-off-by: Rob Clark \u003crob@ti.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "a9971157b6c550644fe19551c21f4b05f7e9475a",
      "tree": "8922994230f923f68ad1590576365b997179f25d",
      "parents": [
        "d8e70a254d8f2da141006e496a51502b79115e80"
      ],
      "author": {
        "name": "Rob Clark",
        "email": "rob@ti.com",
        "time": "Tue Dec 13 20:19:35 2011 -0600"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Thu Jan 05 09:24:39 2012 +0000"
      },
      "message": "drm: disconnect plane from fb/crtc when disabled\n\nSince plane-\u003efb and plane-\u003ecrtc are set in drm_mode_setplane()\nafter update_plane(), They should be cleared after disable().\n\nSigned-off-by: Rob Clark \u003crob@ti.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "2c9ede55ecec58099b72e4bb8eab719f32f72c31",
      "tree": "8498a8c940fea97931b469fc73eb1a5022a2b28c",
      "parents": [
        "7d54fa6472609f2b0f2ea27e51ec2cf1fb27bd57"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 23 20:24:48 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:54:55 2012 -0500"
      },
      "message": "switch device_get_devnode() and -\u003edevnode() to umode_t *\n\nboth callers of device_get_devnode() are only interested in lower 16bits\nand nobody tries to return anything wider than 16bit anyway.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d8e70a254d8f2da141006e496a51502b79115e80",
      "tree": "24e917c5070da0ad8e04899c29f2d4618a49752d",
      "parents": [
        "7a4198664d46b87025a64530f1530ab2bea54c19"
      ],
      "author": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Nov 15 10:28:54 2011 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 03 14:55:52 2012 -0800"
      },
      "message": "drm/i915: only set the intel_crtc DPMS mode to on if the mode set succeeded\n\nIf it failed, leave it in the \"off\" state.\n\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "7a4198664d46b87025a64530f1530ab2bea54c19",
      "tree": "c6388ac83d02d5f4cdc396308339a3cbe3363a85",
      "parents": [
        "e6bfaf854272ec4641a9ef7b1cb1ca963031ba95"
      ],
      "author": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Nov 15 10:28:53 2011 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 03 14:55:47 2012 -0800"
      },
      "message": "drm/i915: don\u0027t disable a PCH DPLL that\u0027s in use\n\nIf a PCH pipe PLL is being used by transcoder C, don\u0027t disable it.\n\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "e6bfaf854272ec4641a9ef7b1cb1ca963031ba95",
      "tree": "8900222b0f6cbe1b44c5fedba2d4457259aacfa9",
      "parents": [
        "4e0e90dcb8a7df1229c69e30abebb59b0b3c2a1f"
      ],
      "author": {
        "name": "Daniel Vetter",
        "email": "daniel.vetter@ffwll.ch",
        "time": "Wed Dec 14 13:56:59 2011 +0100"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 03 10:26:31 2012 -0800"
      },
      "message": "drm/i915: don\u0027t bail out of intel_wait_ring_buffer too early\n\nIn the pre-gem days with non-existing hangcheck and gpu reset code,\nthis timeout of 3 seconds was pretty important to avoid stuck\nprocesses.\n\nBut now we have the hangcheck code in gem that goes to great length\nto ensure that the gpu is really dead before declaring it wedged.\n\nSo there\u0027s no need for this timeout anymore. Actually it\u0027s even harmful\nbecause we can bail out too early (e.g. with xscreensaver slip)\nwhen running giant batchbuffers. And our code isn\u0027t robust enough\nto properly unroll any state-changes, we pretty much rely on the gpu\nreset code cleaning up the mess (like cache tracking, fencing state,\nactive list/request tracking, ...).\n\nWith this change intel_begin_ring can only fail when the gpu is\nwedged, and it will return -EAGAIN (like wait_request in case the\ngpu reset is still outstanding).\n\nv2: Chris Wilson noted that on resume timers aren\u0027t running and hence\nwe won\u0027t ever get kicked out of this loop by the hangcheck code. Use\nan insanely large timeout instead for the HAS_GEM case to prevent\nresume bugs from totally hanging the machine.\n\nSigned-off-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nReviewed-by: Chris Wilson \u003cchris@chris-wilson.co.uk\u003e\nAcked-by: Ben Widawsky \u003cben@bwidawsk.net\u003e\nReviewed-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "4e0e90dcb8a7df1229c69e30abebb59b0b3c2a1f",
      "tree": "8a7a8ba88526686fc71725fe54a5925c24e2687d",
      "parents": [
        "ae662d31264979e52581bd2573bf0b82812f52ab"
      ],
      "author": {
        "name": "Daniel Vetter",
        "email": "daniel.vetter@ffwll.ch",
        "time": "Wed Dec 14 13:56:58 2011 +0100"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 03 10:26:07 2012 -0800"
      },
      "message": "drm/i915: kicking rings stuck on semaphores considered harmful\n\nIf our semaphore logic gets confused and we have a ring stuck waiting\nfor one, there\u0027s a decent chance it\u0027ll just execute garbage when being\nkicked. Also, kicking the ring obscures the place where the error\nfirst occured, making error_state decoding much harder.\n\nSo drop this an let gpu reset handle this mess in a clean fashion.\n\nIn contrast, kicking rings stuck on MI_WAIT is rather harmless, at\nworst there\u0027ll be a bit of screen-flickering. There\u0027s also old\nbroken userspace out there which needs this as a  work-around.\n\nSigned-off-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nReviewed-by: Chris Wilson \u003cchris@hchris-wilson.co.uk\u003e\nReviewed-by: Ben Widawsky \u003cben@bwidawsk.net\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "ae662d31264979e52581bd2573bf0b82812f52ab",
      "tree": "678d7f4483b6fe9a78e1ece0cb8bdefe1582dcf0",
      "parents": [
        "e959b5db4aacc27bcf92889e658445326ebc4bfb"
      ],
      "author": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Tue Jan 03 09:23:29 2012 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 03 09:31:18 2012 -0800"
      },
      "message": "drm/i915: Add support for resetting the SO write pointers on gen7.\n\nThese registers are automatically incremented by the hardware during\ntransform feedback to track where the next streamed vertex output\nshould go.  Unlike the previous generation, which had a packet for\nsetting the corresponding registers to a defined value, gen7 only has\nMI_LOAD_REGISTER_IMM to do so.  That\u0027s a secure packet (since it loads\nan arbitrary register), so we need to do it from the kernel, and it\nneeds to be settable atomically with the batchbuffer execution so that\ntwo clients doing transform feedback don\u0027t stomp on each others\u0027\nstate.\n\nInstead of building a more complicated interface involcing setting the\nregisters to a specific value, just set them to 0 when asked and\nuserland can tweak its pointers accordingly.\n\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\nReviewed-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nReviewed-by: Kenneth Graunke \u003ckenneth@whitecape.org\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "e959b5db4aacc27bcf92889e658445326ebc4bfb",
      "tree": "725eaecc1fa3d42dc2a6d6f818f180c90c9c548d",
      "parents": [
        "42ff6572e5a4a7414330a4ca91f0335da67deca9"
      ],
      "author": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Thu Dec 22 14:55:01 2011 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 03 09:31:16 2012 -0800"
      },
      "message": "drm/i915: Make the fallback IRQ wait not sleep.\n\nThe waits we do here are generally so short that sleeping is a bad\nidea unless we have an IRQ to wake us up.  Improves regression test\nperformance from 18 minutes to 3.5 minutes on gen7, which is now\nconsistent with the previous generation.\n\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\nTested-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nReviewed-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nAcked-by: Kenneth Graunke \u003ckenneth@whitecape.org\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "42ff6572e5a4a7414330a4ca91f0335da67deca9",
      "tree": "dc8937a9bd595065cd73cd51a4baab365a96813b",
      "parents": [
        "7ea29b13e5e3e1e61e612349eb0366efdb6457f3"
      ],
      "author": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Thu Dec 22 14:55:00 2011 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 03 09:31:15 2012 -0800"
      },
      "message": "drm/i915: Work around gen7 BLT ring synchronization issues.\n\nPrevious to this commit, testing easily reproduced a failure where the\nseqno would apparently arrive after the IRQ associated with it, with test programs as simple as:\n\nfor (;;) {\n    glCopyPixels(0, 0, 1, 1);\n    glFinish();\n}\n\nVarious workarounds we\u0027ve seen for previous generations didn\u0027t work to\nfix this issue, so until new information comes in, replace the IRQ\nwaits on the BLT ring with polling.\n\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\nTested-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nReviewed-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nAcked-by: Kenneth Graunke \u003ckenneth@whitecape.org\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "7ea29b13e5e3e1e61e612349eb0366efdb6457f3",
      "tree": "c0f6d48c329863c226ddc3380165305cb3c65a1f",
      "parents": [
        "116ac8d26101c06ad80a4e1cb560db1c525397f8"
      ],
      "author": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Thu Dec 22 14:54:59 2011 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 03 09:31:14 2012 -0800"
      },
      "message": "drm/i915: Do the fallback non-IRQ wait in ring throttle, too.\n\nAs a workaround for IRQ synchronization issues in the gen7 BLT ring,\nwe want to turn the two wait functions into polling loops.\n\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\nTested-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nReviewed-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nAcked-by: Kenneth Graunke \u003ckenneth@whitecape.org\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "116ac8d26101c06ad80a4e1cb560db1c525397f8",
      "tree": "f80c7461b6dd9b5da2307806d5f6f759c6661471",
      "parents": [
        "8ea30864229e54b01ac0e9fe88c4b733a940ec4e"
      ],
      "author": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Wed Dec 21 10:31:09 2011 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 03 09:31:13 2012 -0800"
      },
      "message": "drm/i915: Set two chicken bits implicated in missed IRQs on Ivybridge.\n\nThey don\u0027t fix our problems alone, but we\u0027re told to set them.\n\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "8ea30864229e54b01ac0e9fe88c4b733a940ec4e",
      "tree": "45d7912ad57216d9e18bef23698d0d099b51cbf2",
      "parents": [
        "175bd4204e069f8bd855ca3dcf70a78db4410936"
      ],
      "author": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Jan 03 08:05:39 2012 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 03 09:31:12 2012 -0800"
      },
      "message": "drm/i915: add color key support v4\n\nAdd new ioctls for getting and setting the current destination color\nkey.  This allows for simple overlay display control by matching a color\nkey value in the primary plane before blending the overlay on top.\n\nv2: remove unnecessary mutex acquire/release around reg accesses\nv3: add support for full color key management\nv4: fix copy \u0026 paste bug in snb_get_colorkey\n    don\u0027t bother checking min/max values against docs as the docs are likely\n    wrong (how could we handle 10bpc surface formats?)\n\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "175bd4204e069f8bd855ca3dcf70a78db4410936",
      "tree": "4f172f5f12853ff22d86d66bb3fe3c2ec3405f81",
      "parents": [
        "b840d907fcf6d5d5ef91af4518b3dab3a5da0f75"
      ],
      "author": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Dec 13 13:19:39 2011 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 03 09:31:10 2012 -0800"
      },
      "message": "drm/i915: track sprite coverage and disable primary plane if possible\n\nTo save power when the sprite is full screen, we can disable the primary\nplane on the same pipe.  Track the sprite status and enable/disable the\nprimary opportunistically.\n\nv2: remove primary plane enable/disable hooks; they\u0027re identical\n\nReviewed-by: Daniel Vetter \u003cdaniel@ffwll.ch\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "b840d907fcf6d5d5ef91af4518b3dab3a5da0f75",
      "tree": "aea5477428533760383870a39e7768bd8f59567d",
      "parents": [
        "c7dffff7cc8de748edf0e9f6571cdabecb198705"
      ],
      "author": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Dec 13 13:19:38 2011 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 03 09:31:09 2012 -0800"
      },
      "message": "drm/i915: add SNB and IVB video sprite support v6\n\nThe video sprites support various video surface formats natively and can\nhandle scaling as well.  So add support for them using the new DRM core\nsprite support functions.\n\nv2: use drm specific fourcc header and defines\nv3: address Daniel\u0027s comments:\n  - don\u0027t take struct mutex around register access (only needed for\n    regs in the GT power well)\n  - don\u0027t hold struct mutex across vblank waits\n  - fix up update_plane API (pass obj instead of GTT offset)\n  - add interlaced defines for sprite regs\n  - drop unnecessary \u0027reg\u0027 variables\n  - comment double buffered reg flushing\n  Also fix w/h confusion when writing the scaling reg.\nv4: more fixes, address more comments from Daniel, and include Hai\u0027s fix\n  - prevent divide by zero in scaling calculation (Hai Lan)\n  - update to Ville\u0027s new DRM_FORMAT_* types\n  - fix sprite watermark handling (calc based on CRTC size, separate\n    from normal display wm)\n  - remove private refcounts now that the fb cleanups handles things\nv5: add linear surface support\nv6: remove color key clearing \u0026 setting from update_plane\n\nFor this version, I tested DPMS since it came up in the last review;\nDPMS off/on works ok when a video player is working under X, but for\npower saving we\u0027ll probably want to do something smarter.  I\u0027ll leave\nthat for a separate patch on top.  Likewise with the refcounting/fb\nlayer handling, which are really separate cleanups.\n\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "c7dffff7cc8de748edf0e9f6571cdabecb198705",
      "tree": "e897b2a9c0f5313ad1b8bc494e4b19abca6c5314",
      "parents": [
        "4d85529d584856d077895a2daa703224d3aee7e1"
      ],
      "author": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Fri Dec 09 11:33:00 2011 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 03 09:09:45 2012 -0800"
      },
      "message": "drm/i915: Clean up multi-threaded forcewake patch\n\nWe learned that the ECOBUS register was inside the GT power well, and\nso *did* need force wake to be read, so it gets removed from the list\nof \u0027doesn\u0027t need force wake\u0027 registers.\n\nThat means the code reading ECOBUS after forcing the mt_force_wake\nfunction to be called needs to use I915_READ_NOTRACE; it doesn\u0027t need\nto do more force wake fun as it\u0027s already done it manually.\n\nThis also adds a comment explaining why the MT forcewake testing code\nonly needs to call mt_forcewake_get/put and not disable RC6 manually\n-- the ECOBUS read will return 0 if the device is in RC6 and isn\u0027t\nusing MT forcewake, causing the test to work correctly.\n\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "4d85529d584856d077895a2daa703224d3aee7e1",
      "tree": "0ea1a53cb4437d0cd3669792b775300d1677522d",
      "parents": [
        "6ed55ee7da15329476174bc5821dbc723f671f44"
      ],
      "author": {
        "name": "Ben Widawsky",
        "email": "ben@bwidawsk.net",
        "time": "Mon Dec 12 19:34:16 2011 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 03 09:09:45 2012 -0800"
      },
      "message": "drm/i915: drpc debugfs update for gen6\n\nMany of the old fields from Ironlake have gone away. Strip all those\nfields, and try to update to fields people care about. RC information\nisn\u0027t exactly ideal anymore. All we can guarantee when we read the\nregister is that we\u0027re not using forcewake, ie. the software isn\u0027t\nforcing the hardware to stay awake. The downside is that in doing this\nwe may wait a while and that causes an unnaturally idle state on the\nGPU.\n\nBugzilla: https://bugs.freedesktop.org/show_bug.cgi?id\u003d42578\nSigned-off-by: Ben Widawsky \u003cben@bwidawsk.net\u003e\nReviewed-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "6ed55ee7da15329476174bc5821dbc723f671f44",
      "tree": "099328a6f915eb48f1f390820b5e135a4192cedb",
      "parents": [
        "84f9f938be4156e4baea466688bd6abae1c9e6ba"
      ],
      "author": {
        "name": "Ben Widawsky",
        "email": "ben@bwidawsk.net",
        "time": "Mon Dec 12 19:21:59 2011 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 03 09:09:45 2012 -0800"
      },
      "message": "drm/i915: Update GEN6_RP_CONTROL definitions\n\nThis matches the modern specs more accurately.\n\nThis will be used by the following patch to fix the way we display RC\nstatus.\n\nSigned-off-by: Ben Widawsky \u003cben@bwidawsk.net\u003e\nReviewed-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nReviewed-by: Eugeni Dodonov \u003ceugeni.dodonov@intel.com\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    },
    {
      "commit": "84f9f938be4156e4baea466688bd6abae1c9e6ba",
      "tree": "7d722807e6f9c86db1eb74ae6b2931a3e54140e0",
      "parents": [
        "e2971bdab2b761683353da383c0fd5ac704d1cca"
      ],
      "author": {
        "name": "Ben Widawsky",
        "email": "ben@bwidawsk.net",
        "time": "Mon Dec 12 19:21:58 2011 -0800"
      },
      "committer": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Tue Jan 03 09:09:44 2012 -0800"
      },
      "message": "drm/i915: Force sync command ordering (Gen6+)\n\nThe docs say this is required for Gen7, and since the bit was added for\nGen6, we are also setting it there pit pf paranoia. Particularly as\nChris points out, if PIPE_CONTROL counts as a 3d state packet.\n\nThis was found through doc inspection by Ken and applies to Gen6+;\n\nReported-by: Kenneth Graunke \u003ckenneth@whitecape.org\u003e\nSigned-off-by: Ben Widawsky \u003cben@bwidawsk.net\u003e\nReviewed-by: Chris Wilson \u003cchris@chris-wilson.co.uk\u003e\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nReviewed-by: Eric Anholt \u003ceric@anholt.net\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\n"
    }
  ],
  "next": "e2971bdab2b761683353da383c0fd5ac704d1cca"
}
