[Mesa-stable] [Mesa-dev] [PATCH v2 01/18] anv: Add the pci_id into the shader cache UUID

Jason Ekstrand jason at jlekstrand.net
Wed Apr 26 06:42:41 UTC 2017


On Mon, Apr 24, 2017 at 5:17 PM, Andres Gomez <agomez at igalia.com> wrote:

> Hi Jason,
>
> this patch landed in master with Cc to stable.
>
> However, the changes need commit 656e30b6860 and quite some other
> dependencies (util/build_id.h)
>
> Additionally, Tapani is mentioning problems in Android and the
> probability of the issue that is trying to fix seems unlikely (?).
>
> Should we drop this patch from the stable branch?
>

We probably can but I'd mildly prefer not.  I'm not sure what issue Tapani
is hitting but I suspect it's just android not setting the right --build-id
flag.


> Br.
>
> On Thu, 2017-04-20 at 10:11 +0300, Tapani Pälli wrote:
> >
> > On 03/14/2017 04:26 AM, Jason Ekstrand wrote:
> > > This prevents a user from using a cache created on one hardware
> > > generation on a different one.  Of course, with Intel hardware, this
> > > requires moving their drive from one machine to another but it's still
> > > possible and we should prevent it.
> > >
> > > Reviewed-by: Chad Versace <chadversary at chromium.org>
> > > ---
> > >   src/intel/vulkan/anv_device.c | 22 +++++++++++++++++-----
> > >   1 file changed, 17 insertions(+), 5 deletions(-)
> > >
> > > diff --git a/src/intel/vulkan/anv_device.c
> b/src/intel/vulkan/anv_device.c
> > > index be2b2f3..5db0a6c 100644
> > > --- a/src/intel/vulkan/anv_device.c
> > > +++ b/src/intel/vulkan/anv_device.c
> > > @@ -32,6 +32,7 @@
> > >   #include "util/strtod.h"
> > >   #include "util/debug.h"
> > >   #include "util/build_id.h"
> > > +#include "util/mesa-sha1.h"
> > >   #include "util/vk_util.h"
> > >
> > >   #include "genxml/gen7_pack.h"
> > > @@ -53,17 +54,28 @@ compiler_perf_log(void *data, const char *fmt, ...)
> > >   }
> > >
> > >   static bool
> > > -anv_device_get_cache_uuid(void *uuid)
> > > +anv_device_get_cache_uuid(void *uuid, uint16_t pci_id)
> > >   {
> > >      const struct build_id_note *note = build_id_find_nhdr("libvulkan_
> intel.so");
> > >      if (!note)
> > >         return false;
> > >
> > > -   unsigned len = build_id_length(note);
> > > -   if (len < VK_UUID_SIZE)
> > > +   unsigned build_id_len = build_id_length(note);
> > > +   if (build_id_len < 20) /* It should be a SHA-1 */
> >
> > This line here causes issues for Android, for us the build_id_len seems
> > to be 16 (and worked before nicely as check was against VK_UUID_SIZE
> > which is 16). I just bisected this and haven't yet figured out why but
> > will check.
> >
> > // Tapani
> > _______________________________________________
> > mesa-dev mailing list
> > mesa-dev at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/mesa-dev
> --
> Br,
>
> Andres
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-stable/attachments/20170425/3cb3b1d3/attachment.html>


More information about the mesa-stable mailing list