New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 734282 link

Starred by 2 users

Issue metadata

Status: Verified
Owner:
Closed: Oct 2017
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Use kms_srast instead of swrast

Project Member Reported by gurcheta...@chromium.org, Jun 17 2017

Issue description

We should use kms_swrast instead of swrast in Mesa, since it allows to piggyback on extensions in dri2.c instead of moving them around.
 

Comment 1 by tfiga@chromium.org, Jun 17 2017

+1. We've been using kms_swrast in arc-mesa with good results and much less custom code.
Owner: gurcheta...@chromium.org
KMS swrast mostly works (https://chromium-review.googlesource.com/c/558218/), but there is one issue.  Namely, we get a "context mis-match in pipe_sampler_view_release" after a reboot and we never get to the login screen (though everything works as normal after "stop ui; start ui" statement though).  Let me see if updating ChromeOS mesa fixes the issue.. 
Project Member

Comment 4 by bugdroid1@chromium.org, Jul 8 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/b90ad327ec9e2265dfd53bab89ebfb7b7c280d23

commit b90ad327ec9e2265dfd53bab89ebfb7b7c280d23
Author: Brian Norris <briannorris@chromium.org>
Date: Sat Jul 08 04:30:08 2017

llvm: honor LLVM_LIBDIR_SUFFIX for host build

The host build uses 'make' instead of 'cmake', and that build doesn't
have LLVM_LIBDIR_SUFFIX plumbed properly, apparently. This is causing
mesa problems when it can't find and link to the llvm libraries.

BUG= chromium:734282 
TEST=check that `/build/$BOARD/usr/bin/llvm-config-host --libdir` is
     accurate

Change-Id: I4d4359174992e9e03fdfedee99a0df74ceab08d8
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/562612
Commit-Ready: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: Gurchetan Singh <gurchetansingh@chromium.org>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>

[rename] https://crrev.com/b90ad327ec9e2265dfd53bab89ebfb7b7c280d23/sys-devel/llvm/llvm-3.8.1-r3.ebuild
[add] https://crrev.com/b90ad327ec9e2265dfd53bab89ebfb7b7c280d23/sys-devel/llvm/files/libdir-suffix.patch

Project Member

Comment 5 by bugdroid1@chromium.org, Jul 15 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/9108060aa9c6dff7ff8c961e1dbac4c4b9502d69

commit 9108060aa9c6dff7ff8c961e1dbac4c4b9502d69
Author: Gurchetan Singh <gurchetansingh@chromium.org>
Date: Sat Jul 15 06:22:03 2017

profile: update cmake version in package.provided to 3.7.2

CL:487704 updated the cmake version to to 3.7.2, so we should
update it here accordingly. This will be used to build LLVM4.0,
which is required for the Mesa uprev on certain platforms.

BUG= chromium:734282 
TEST=trybots

Change-Id: I232d66ddf47f31b8b64356512caaa744a136fc14
Reviewed-on: https://chromium-review.googlesource.com/572223
Commit-Ready: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: Gurchetan Singh <gurchetansingh@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>

[modify] https://crrev.com/9108060aa9c6dff7ff8c961e1dbac4c4b9502d69/profiles/targets/chromeos/package.provided

Project Member

Comment 6 by bugdroid1@chromium.org, Jul 19 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/portage-stable/+/e3c52cff8f990e8c76a855c4b9701c2a47d5a235

commit e3c52cff8f990e8c76a855c4b9701c2a47d5a235
Author: Gurchetan Singh <gurchetansingh@chromium.org>
Date: Wed Jul 19 02:39:04 2017

sys-devel: add llvm-common ebuild

Changes from upstream:
	- Using an EAPI of 5 instead of 6
	- KEYWORDS is '*' instead of '~' on
	  all architectures

BUG= chromium:734282 
TEST=emerge-arm-generic llvm works

Change-Id: I1f32b77707202f8e322485019e0ba99cf6c4b2f4
Reviewed-on: https://chromium-review.googlesource.com/576252
Commit-Ready: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: Gurchetan Singh <gurchetansingh@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>

[add] https://crrev.com/e3c52cff8f990e8c76a855c4b9701c2a47d5a235/sys-devel/llvm-common/llvm-common-4.0.1.ebuild
[add] https://crrev.com/e3c52cff8f990e8c76a855c4b9701c2a47d5a235/sys-devel/llvm-common/Manifest
[add] https://crrev.com/e3c52cff8f990e8c76a855c4b9701c2a47d5a235/sys-devel/llvm-common/metadata.xml

Project Member

Comment 7 by bugdroid1@chromium.org, Jul 19 2017

Project Member

Comment 8 by bugdroid1@chromium.org, Jul 19 2017

Labels: merge-merged-chromeos-2.4.81
The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/libdrm/+/ef351f4f68f782fc6ce01cd809ac98366d2e3900

commit ef351f4f68f782fc6ce01cd809ac98366d2e3900
Author: Gurchetan Singh <gurchetansingh@chromium.org>
Date: Wed Jul 19 23:27:02 2017

CHROMIUM: xf86drm: continue after drmProcessPlatformDevice failure

On the ChromeOS board cave, readdir() processes the directory in
the following order:

-NAME-              -TYPE-
.                    n/a
..                   n/a
vgem                 n/a
card1           DRM_BUS_PLATFORM
renderD129      DRM_BUS_PLATFORM
card0             DRM_BUS_PCI
renderD128        DRM_BUS_PCI
controlD64        DRM_BUS_PCI

In drmGetDevices2, after drmProcessPlatformDevice fails for
/dev/dri/card1, we don't process the remaining directory entries.
As such, Vulkan fails to initialize.  To fix this, continue
if drmProcessPlatformDevice fails.

BUG= chromium:734282 
TEST=All but one Vulkan test passes in graphics_dEQP.bvt

Change-Id: I3a4e13c41197b37a5e3d8e455bda22f39af1e6d9
Reviewed-on: https://chromium-review.googlesource.com/576873
Commit-Ready: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: Gurchetan Singh <gurchetansingh@chromium.org>
Reviewed-by: Ilja H. Friedel <ihf@chromium.org>
Reviewed-by: Chad Versace <chadversary@google.com>

[modify] https://crrev.com/ef351f4f68f782fc6ce01cd809ac98366d2e3900/xf86drm.c

Project Member

Comment 9 by bugdroid1@chromium.org, Jul 20 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/7013f1beedd00409369ef8babce83cc4e411cce1

commit 7013f1beedd00409369ef8babce83cc4e411cce1
Author: Gurchetan Singh <gurchetansingh@chromium.org>
Date: Thu Jul 20 07:37:02 2017

sys-devel/llvm: uprev llvm to 4.0.1

LLVM 3.9.0 or newer is required to build an updated Mesa for r600.
This commit updates Mesa to 4.0.1, based on the upstream Gentoo
ebuild. Notable changes from upstream:

	- The install location is /usr/lib/llvm,
          not /usr/lib/llvm/${SLOT}
	- Since we maintain a llvm-5.0 ebuild, we can't use the
          host's llvm-tblgen so we build our own.
	- BUILD_SHARED_LIBS is removed, since static libs are
	  preferred for Mesa

CQ-DEPEND=CL:576252
BUG= chromium:734282 
TEST=emerge-{arm-generic, amd64-generic} llvm works
     emerge-{arm-generic, amd64-generic} mesa works

Change-Id: If5f507f06be962a0c3048ca3f6be05eacf14a7f3
Reviewed-on: https://chromium-review.googlesource.com/572768
Commit-Ready: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: Gurchetan Singh <gurchetansingh@chromium.org>
Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org>

[modify] https://crrev.com/7013f1beedd00409369ef8babce83cc4e411cce1/sys-devel/llvm/Manifest
[modify] https://crrev.com/7013f1beedd00409369ef8babce83cc4e411cce1/profiles/targets/chromeos/package.keywords
[add] https://crrev.com/7013f1beedd00409369ef8babce83cc4e411cce1/sys-devel/llvm/llvm-4.0.1.ebuild
[delete] https://crrev.com/f7ff65bd0e20ce532d97cc511e1c0ff1749ae91d/sys-devel/llvm/llvm-3.8.1-r3.ebuild
[add] https://crrev.com/7013f1beedd00409369ef8babce83cc4e411cce1/sys-devel/llvm/files/9999/0007-llvm-config-Clean-up-exported-values-update-for-shar.patch

Project Member

Comment 10 by bugdroid1@chromium.org, Jul 21 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/560a30563f95bcd297400706e82dd52fe6033263

commit 560a30563f95bcd297400706e82dd52fe6033263
Author: Gurchetan Singh <gurchetansingh@chromium.org>
Date: Fri Jul 21 20:21:25 2017

sys-devel/llvm: disable LLVM_ENABLE_TERMINFO

Mesa does not use it, and it causes build problems.
For more information, see here:

http://marc.info/?l=llvm-dev&m=138925000313756&w=2

BUG= chromium:734282 
TEST=emerge-cyan llvm mesa with CL:560629 works

Change-Id: I87f6d59073a63bfe206cdc72bada95e696ba3dd1
Reviewed-on: https://chromium-review.googlesource.com/580337
Commit-Ready: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: Gurchetan Singh <gurchetansingh@chromium.org>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>

[rename] https://crrev.com/560a30563f95bcd297400706e82dd52fe6033263/sys-devel/llvm/llvm-4.0.1-r2.ebuild

Project Member

Comment 11 by bugdroid1@chromium.org, Jul 21 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/board-overlays/+/7da880795dd20ed162426e7701d106d0850d006a

commit 7da880795dd20ed162426e7701d106d0850d006a
Author: Gurchetan Singh <gurchetansingh@chromium.org>
Date: Fri Jul 21 23:02:37 2017

overlay-amd64-generic: add llvm_targets_AMDGPU

The new llvm ebuild specifies these use flags, so we should use
them.

BUG= chromium:734282 
TEST=emerge-amd64-generic llvm mesa succeeds with CL:560629
     llvm-config --targets-builts reports X86 and AMDGPU

Change-Id: I27a0ae369d5fc45b1d8e153380d2229f4c4f4e73
Reviewed-on: https://chromium-review.googlesource.com/581733
Commit-Ready: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: Gurchetan Singh <gurchetansingh@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>

[modify] https://crrev.com/7da880795dd20ed162426e7701d106d0850d006a/overlay-amd64-generic/profiles/base/make.defaults

Project Member

Comment 12 by bugdroid1@chromium.org, Jul 25 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/63a92cd1186690a8adb13847b1ecbaa00fb9e04f

commit 63a92cd1186690a8adb13847b1ecbaa00fb9e04f
Author: Gurchetan Singh <gurchetansingh@chromium.org>
Date: Tue Jul 25 03:32:49 2017

media-libs/mesa: update to 277621bbb724b0a627a0f5473bdeb82e02fdf389

The commit updates Mesa to 277621bbb724b0a627a0f5473bdeb82e02fdf389.

Resolutions:

Commit              Conflicts with
d793b5    9.1-mesa-st-no-flush-front.patch
9869a3    10.3-state_tracker-gallium-fix-crash-with-st_renderbuffer.patch
088449    10.0-no-fail-hwctx.patch
f87416    8.1-array-overflow.patch (seems upstreamable)
d72993    10.3-drivers-dri-i965-gen6-Clamp-scissor-state-instead-of.patch
c8d366    10.3-egl-dri2-add-support-for-image-config-query.patch
517f34    12.1-dri-add-swrast-support-on-top-of-prime-imported.patch
84b195    10.3-Fix-workaround-corner-cases.patch

Removed:
  - 10.0-no-fail-hwctx.patch since 10.0-i965-Disable-ctx-gen6.patch makes
    sure we never attempt to create a HW context on gen6 (Sandybridge).

The other removed patches have been upstreamed.

BUG= chromium:734282 
TEST=Cyan boots to UI, Betty boots to UI with changes
     null_platform_test, mapped_texture_test still work on Cyan and Betty
CQ-DEPEND=CL:583932

Change-Id: Ic39fff1972cd5f9b0f2a5fc6a8999ce4d998c28d
Reviewed-on: https://chromium-review.googlesource.com/560629
Commit-Ready: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: Gurchetan Singh <gurchetansingh@chromium.org>
Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org>

[modify] https://crrev.com/63a92cd1186690a8adb13847b1ecbaa00fb9e04f/media-libs/mesa/files/10.3-Fix-workaround-corner-cases.patch
[modify] https://crrev.com/63a92cd1186690a8adb13847b1ecbaa00fb9e04f/media-libs/mesa/files/9.1-mesa-st-no-flush-front.patch
[modify] https://crrev.com/63a92cd1186690a8adb13847b1ecbaa00fb9e04f/media-libs/mesa/files/12.1-dri-add-swrast-support-on-top-of-prime-imported.patch
[delete] https://crrev.com/09b70bde1c54eb8b5d428fcd2ade90b66859c13b/media-libs/mesa/mesa-17.1.0-r12.ebuild
[modify] https://crrev.com/63a92cd1186690a8adb13847b1ecbaa00fb9e04f/media-libs/mesa/files/10.3-drivers-dri-i965-gen6-Clamp-scissor-state-instead-of.patch
[delete] https://crrev.com/09b70bde1c54eb8b5d428fcd2ade90b66859c13b/media-libs/mesa/files/17.1-i965-formats-Update-the-three-channel-DXT1-.patch
[modify] https://crrev.com/63a92cd1186690a8adb13847b1ecbaa00fb9e04f/media-libs/mesa/files/10.3-egl-dri2-add-support-for-image-config-query.patch
[delete] https://crrev.com/09b70bde1c54eb8b5d428fcd2ade90b66859c13b/media-libs/mesa/files/10.0-no-fail-hwctx.patch
[delete] https://crrev.com/09b70bde1c54eb8b5d428fcd2ade90b66859c13b/media-libs/mesa/files/17.1-i965-Improve-same-buffer-restriction-for-imports.patch
[modify] https://crrev.com/63a92cd1186690a8adb13847b1ecbaa00fb9e04f/media-libs/mesa/files/10.3-state_tracker-gallium-fix-crash-with-st_renderbuffer.patch
[delete] https://crrev.com/09b70bde1c54eb8b5d428fcd2ade90b66859c13b/media-libs/mesa/files/17.0-st-dri-Add-fence-extension-to-SW-path.patch
[modify] https://crrev.com/63a92cd1186690a8adb13847b1ecbaa00fb9e04f/media-libs/mesa/mesa-9999.ebuild
[add] https://crrev.com/63a92cd1186690a8adb13847b1ecbaa00fb9e04f/media-libs/mesa/mesa-17.1.1-r1.ebuild
[modify] https://crrev.com/63a92cd1186690a8adb13847b1ecbaa00fb9e04f/media-libs/mesa/files/8.1-array-overflow.patch
[delete] https://crrev.com/09b70bde1c54eb8b5d428fcd2ade90b66859c13b/media-libs/mesa/files/17.1-anv-formats-Update-the-three-channel-BC1-ma.patch
[rename] https://crrev.com/63a92cd1186690a8adb13847b1ecbaa00fb9e04f/media-libs/mesa/mesa-17.1.1.ebuild

Project Member

Comment 13 by bugdroid1@chromium.org, Jul 26 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/1455f44994728a8f105257e7a36a1ccda860468a

commit 1455f44994728a8f105257e7a36a1ccda860468a
Author: Gurchetan Singh <gurchetansingh@chromium.org>
Date: Wed Jul 26 18:34:46 2017

sys-devel/llvm: use package.use to disable ncurses

This is an outgrowth of CL:580337. We should use package.use
to disable ncurses when building llvm. Note since we have
two llvm ebuilds in the same directory, this will affect both
of them since they both use the ncurses use flag.  However, as
far as I can tell, ncurses is only used to detect if a terminal
supports escape codes:

https://groups.google.com/forum/#!topic/llvm-dev/MqpXVMy6OrM

So the change shouldn't be that major.

BUG= chromium:734282 
TEST=emerge-cyan llvm mesa works

Change-Id: I3653324a16501fed983962d1f836970fe66a0b8c
Reviewed-on: https://chromium-review.googlesource.com/585353
Commit-Ready: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: Gurchetan Singh <gurchetansingh@chromium.org>
Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>

[rename] https://crrev.com/1455f44994728a8f105257e7a36a1ccda860468a/sys-devel/llvm/llvm-4.0.1-r3.ebuild
[modify] https://crrev.com/1455f44994728a8f105257e7a36a1ccda860468a/profiles/targets/chromeos/package.use

Cc: norvez@chromium.org ihf@chromium.org
Status: Assigned (was: Untriaged)
I confirmed that the issue I saw on ChromeOS startup (it's flaky -- happens 2/10 times) happens with  -vga cirrus, not  -vga virtio.  Since we are going to use virtio with the betty family of boards and remove software drivers elsewhere (pending  crbug.com/765364 ), we decided to not fix cirrus and deprecate it.
Project Member

Comment 15 by bugdroid1@chromium.org, Oct 5 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/1d98300d5a6946446bd6d056a562560d43cb3895

commit 1d98300d5a6946446bd6d056a562560d43cb3895
Author: Gurchetan Singh <gurchetansingh@chromium.org>
Date: Thu Oct 05 07:34:14 2017

media-libs/mesa: Use KMS swrast

We should use kms_swrast rather than swrast because:

1) It's more actively developed and has more supported
extensions.

2) arc-mesa already uses it, so this will simplify our
upstream issues -- i.e, if upstream the fallback for
platform_android it'll also work for platform_surfaceless.

BUG= chromium:734282 
TEST=null_platform_test works, Betty boots to login screen

Change-Id: I2ef0a366e5985e0c851809fe0c1f9abf4300c3e8
Reviewed-on: https://chromium-review.googlesource.com/558218
Commit-Ready: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: Gurchetan Singh <gurchetansingh@chromium.org>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
Reviewed-by: Tomasz Figa <tfiga@chromium.org>

[rename] https://crrev.com/1d98300d5a6946446bd6d056a562560d43cb3895/media-libs/mesa/mesa-17.1.1-r9.ebuild
[add] https://crrev.com/1d98300d5a6946446bd6d056a562560d43cb3895/media-libs/mesa/files/17.1-CHROMIUM-Use-KMS-swrast-fallback.patch
[delete] https://crrev.com/e4734c281ee96e562cdd316b34577a713139e681/media-libs/mesa/files/12.1-dri-add-swrast-support-on-top-of-prime-imported.patch
[delete] https://crrev.com/e4734c281ee96e562cdd316b34577a713139e681/media-libs/mesa/files/10.3-egl-dri2-add-support-for-image-config-query.patch
[modify] https://crrev.com/1d98300d5a6946446bd6d056a562560d43cb3895/media-libs/mesa/mesa-9999.ebuild
[modify] https://crrev.com/1d98300d5a6946446bd6d056a562560d43cb3895/media-libs/mesa/mesa-17.1.1.ebuild

Status: Verified (was: Assigned)

Sign in to add a comment