dri-devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: j.glisse@gmail.com
To: dri-devel@lists.freedesktop.org
Subject: [RFC] fence, sa allocator, ib pool, semaphore rework
Date: Fri,  4 May 2012 18:43:41 -0400	[thread overview]
Message-ID: <1336171439-7672-1-git-send-email-j.glisse@gmail.com> (raw)

First chunk rework fence to use uin64_t, unlike previous patch,
we only emit the lower 32 bits with the hw. The upper 32bits is
handled in the fence process function where a lenghty comment
discuss all the possible things that can go wrong and why it
doesn't matter.

Then taking advantage of faster fence querying, the sa allocator
is simplified and improved. The commit message describe the
algorithm used. Taking advantage of that ib & semaphore is simplified
to use the same temporary ring related manager.

To finish all this, more code is axed and simplified.


It all need the previous 17 patches and the various other small fixes.
To make it easier i regrouped all the patch needed at :
http://people.freedesktop.org/~glisse/reset5/base/

Those patch should hit next soon.

The whole patchset can also be found at :
http://people.freedesktop.org/~glisse/reset5/


It all got limited testing so far, but i tried hard to make sure that
each step is working and thus bisectable. I split the fence rework
in 2 part so one can bisect if either the move to 64bits fence or
the complete change in fence handling logic is causing trouble.

Cheers,
Jerome

             reply	other threads:[~2012-05-04 22:44 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-04 22:43 j.glisse [this message]
2012-05-04 22:43 ` [PATCH 01/18] drm/radeon: replace the per ring mutex with a global one j.glisse
2012-05-04 22:43 ` [PATCH 02/18] drm/radeon: convert fence to uint64_t v3 j.glisse
2012-05-04 22:43 ` [PATCH 03/18] drm/radeon: rework fence handling, drop fence list v5 j.glisse
2012-05-04 22:43 ` [PATCH 04/18] drm/radeon: hold ring emission mutex for lockup detection j.glisse
2012-05-04 22:43 ` [PATCH 05/18] drm/radeon: use inline functions to calc sa_bo addr j.glisse
2012-05-04 22:43 ` [PATCH 06/18] drm/radeon: add proper locking to the SA v3 j.glisse
2012-05-04 22:43 ` [PATCH 07/18] drm/radeon: add sub allocator debugfs file j.glisse
2012-05-04 22:43 ` [PATCH 08/18] drm/radeon: keep start and end offset in the SA j.glisse
2012-05-04 22:43 ` [PATCH 09/18] drm/radeon: make sa bo a stand alone object j.glisse
2012-05-04 22:43 ` [PATCH 10/18] drm/radeon: define new SA interface v2 j.glisse
2012-05-04 22:43 ` [PATCH 11/18] drm/radeon: use one wait queue for all rings add fence_wait_any j.glisse
2012-05-04 22:43 ` [PATCH 12/18] drm/radeon: multiple ring allocator j.glisse
2012-05-04 22:43 ` [PATCH 13/18] drm/radeon: simplify semaphore handling v2 j.glisse
2012-05-04 22:43 ` [PATCH 14/18] drm/radeon: rip out the ib pool j.glisse
2012-05-04 22:43 ` [PATCH 15/18] drm/radeon: immediately remove ttm-move semaphore j.glisse
2012-05-04 22:43 ` [PATCH 16/18] drm/radeon: move the semaphore from the fence into the ib j.glisse
2012-05-04 22:43 ` [PATCH 17/18] drm/radeon: remove r600 blit mutex v2 j.glisse
2012-05-04 22:43 ` [PATCH 18/18] drm/radeon: make the ib an inline object j.glisse

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1336171439-7672-1-git-send-email-j.glisse@gmail.com \
    --to=j.glisse@gmail.com \
    --cc=dri-devel@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox