msm: kgsl: Always Signal event time timeline for every event type

Fence sync seems to react badly when it gets a unexpected timestamp
on a timeline.  When a event expires always send the expected timestamp
even if the event expired because the context was destroyed.

Change-Id: Id1bc18220223c665012df1db21eea78af78d9288
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
Revert "Revert "Revert "msm: kgsl: Add a command dispatcher to manage the ringbuffer"""

Let's try this again, with a larger audience and without breaking
the flo. The previous results were inconclusive and we rushed putting
the dispatcher back in, we need a larger audience to test it.

This reverts commit 2ca12ad5a284e7fe7b9ae904a2cfb8cf8ef10816.
msm: kgsl: Fix error returns in adreno_ringbuffer_issueibcmds

Don't try to free the link structure before it is allocated.
Return the error directly if it happens before the kzalloc()

Change-Id: I6e5bfe47a43c458f20d5799aee32c55a286ee8e3
Merge branch 'exp' into cm-10.2