<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    Am 02.06.21 um 11:58 schrieb Marek Olšák:<br>
    <blockquote type="cite"
cite="mid:CAAxE2A5Hrw7oqYKttEYBdd7k6onqZc8ksak5T-Ry1oKJEZtSbw@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr">
        <div class="gmail_quote">
          <div dir="ltr" class="gmail_attr">On Wed, Jun 2, 2021 at 5:44
            AM Christian König <<a
              href="mailto:ckoenig.leichtzumerken@gmail.com"
              moz-do-not-send="true">ckoenig.leichtzumerken@gmail.com</a>>
            wrote:<br>
          </div>
          <blockquote class="gmail_quote" style="margin:0px 0px 0px
            0.8ex;border-left:1px solid
            rgb(204,204,204);padding-left:1ex">Am 02.06.21 um 10:57
            schrieb Daniel Stone:<br>
            > Hi Christian,<br>
            ><br>
            > On Tue, 1 Jun 2021 at 13:51, Christian König<br>
            > <<a href="mailto:ckoenig.leichtzumerken@gmail.com"
              target="_blank" moz-do-not-send="true">ckoenig.leichtzumerken@gmail.com</a>>
            wrote:<br>
            >> Am 01.06.21 um 14:30 schrieb Daniel Vetter:<br>
            >>> If you want to enable this use-case with driver
            magic and without the<br>
            >>> compositor being aware of what's going on, the
            solution is EGLStreams.<br>
            >>> Not sure we want to go there, but it's
            definitely a lot more feasible<br>
            >>> than trying to stuff eglstreams semantics into
            dma-buf implicit<br>
            >>> fencing support in a desperate attempt to not
            change compositors.<br>
            >> Well not changing compositors is certainly not
            something I would try<br>
            >> with this use case.<br>
            >><br>
            >> Not changing compositors is more like ok we have
            Ubuntu 20.04 and need<br>
            >> to support that we the newest hardware generation.<br>
            > Serious question, have you talked to Canonical?<br>
            ><br>
            > I mean there's a hell of a lot of effort being expended
            here, but it<br>
            > seems to all be predicated on the assumption that
            Ubuntu's LTS<br>
            > HWE/backport policy is totally immutable, and that we
            might need to<br>
            > make the kernel do backflips to work around that. But
            ... is it? Has<br>
            > anyone actually asked them how they feel about this?<br>
            <br>
            This was merely an example. What I wanted to say is that we
            need to <br>
            support system already deployed.<br>
            <br>
            In other words our customers won't accept that they need to
            replace the <br>
            compositor just because they switch to a new hardware
            generation.<br>
            <br>
            > I mean, my answer to the first email is 'no, absolutely
            not' from the<br>
            > technical perspective (the initial proposal totally
            breaks current and<br>
            > future userspace), from a design perspective (it breaks
            a lot of<br>
            > usecases which aren't single-vendor GPU+display+codec,
            or aren't just<br>
            > a simple desktop), and from a sustainability
            perspective (cutting<br>
            > Android adrift again isn't acceptable collateral damage
            to make it<br>
            > easier to backport things to last year's Ubuntu
            release).<br>
            ><br>
            > But then again, I don't even know what I'm NAKing here
            ... ? The<br>
            > original email just lists a proposal to break a ton of
            things, with<br>
            > proposed replacements which aren't technically viable,
            and it's not<br>
            > clear why? Can we please have some more details and
            some reasoning<br>
            > behind them?<br>
            ><br>
            > I don't mind that userspace (compositor, protocols,
            clients like Mesa<br>
            > as well as codec APIs) need to do a lot of work to
            support the new<br>
            > model. I do really care though that the
            hard-binary-switch model works<br>
            > fine enough for AMD but totally breaks heterogeneous
            systems and makes<br>
            > it impossible for userspace to do the right thing.<br>
            <br>
            Well how the handling for new Android, distributions etc...
            is going to <br>
            look like is a completely different story.<br>
            <br>
            And I completely agree with both Daniel Vetter and you that
            we need to <br>
            keep this in mind when designing the compatibility with
            older software.<br>
            <br>
            For Android I'm really not sure what to do. In general
            Android is <br>
            already trying to do the right thing by using explicit sync,
            the problem <br>
            is that this is build around the idea that this explicit
            sync is <br>
            syncfile kernel based.<br>
            <br>
            Either we need to change Android and come up with something
            that works <br>
            with user fences as well or we somehow invent a
            compatibility layer for <br>
            syncfile as well.<br>
          </blockquote>
          <div><br>
          </div>
          What's the issue with syncfiles that syncobjs don't suffer
          from?</div>
      </div>
    </blockquote>
    <br>
    Syncobjs where designed with future fences in mind. In other words
    we already have the ability to wait for a future submission to
    appear with all the nasty locking implications.<br>
    <br>
    Syncfile on the other hand are just a container for up to N kernel
    fences and since we don't have kernel fences any more that is rather
    tricky to keep working.<br>
    <br>
    Going to look into the uAPI around syncfiles once more and see if we
    can somehow use that for user fences as well.<br>
    <br>
    Christian.<br>
    <br>
    <blockquote type="cite"
cite="mid:CAAxE2A5Hrw7oqYKttEYBdd7k6onqZc8ksak5T-Ry1oKJEZtSbw@mail.gmail.com">
      <div dir="ltr">
        <div class="gmail_quote"><br>
        </div>
        <div class="gmail_quote">Marek<br>
        </div>
      </div>
    </blockquote>
    <br>
  </body>
</html>