Chrome with ozone support

340 views
Skip to first unread message

m.su...@gmail.com

unread,
Aug 14, 2014, 11:43:31 AM8/14/14
to ozon...@chromium.org
I am trying to experiment with ozone and was able to get content_shell with the ozone working. I am trying to see if chrome with ozone is supported as yet. If yes, can someone please provide me the GYP DEFINES that I should be using to get chrome + ozone compiled?

Thank you,
Subash

Tai-hsu Lin

unread,
Aug 14, 2014, 11:56:55 PM8/14/14
to m.su...@gmail.com, ozon...@chromium.org
Yes, Chrome is supported. Try: $ export GYP_DEFINES="$GYP_DEFINES use_ozone=1 ozone_platform=gbm"
--
- Shecky

Daniel Nicoara

unread,
Aug 15, 2014, 11:38:51 AM8/15/14
to Tai-hsu Lin, m.su...@gmail.com, ozon...@chromium.org
You'll need chromeos=1 as well since there are a few loose ends to fix before Chrome for desktop builds.

m.su...@gmail.com

unread,
Aug 15, 2014, 2:31:50 PM8/15/14
to ozon...@chromium.org, m.su...@gmail.com
Thank you for your response. I grabbed the chromium source (this morning) and used the following defines -

GYP_DEFINES="chromeos=1 use_aura=1 use_ash=0 toolkit_views=0 use_ozone=1 ozone_platform_gbm=1" gclient runhooks
ninja -j8 -C out/Release chrome

I get this error

../../chrome/browser/ui/aura/tab_contents/web_drag_bookmark_handler_aura.cc:48:25: error: no member named 'Read' in 'bookmarks::BookmarkNodeData'
bookmark_drag_data_.Read(data);

Am I missing some setting / define?

Michael Spang

unread,
Aug 15, 2014, 2:41:27 PM8/15/14
to m.su...@gmail.com, ozon...@chromium.org
On Fri, Aug 15, 2014 at 2:31 PM, <m.su...@gmail.com> wrote:
> Thank you for your response. I grabbed the chromium source (this morning) and used the following defines -
>
> GYP_DEFINES="chromeos=1 use_aura=1 use_ash=0 toolkit_views=0 use_ozone=1 ozone_platform_gbm=1" gclient runhooks
> ninja -j8 -C out/Release chrome

Sorry, the sites page need update. Do

GYP_DEFINES="chromeos=1 use_ozone=1 ozone_platform_gbm=1" gclient runhooks

m.su...@gmail.com

unread,
Aug 15, 2014, 3:56:04 PM8/15/14
to ozon...@chromium.org, m.su...@gmail.com
With the defines you suggested, chrome + ozone compiles! Thanks.

m.su...@gmail.com

unread,
Aug 18, 2014, 12:02:06 PM8/18/14
to ozon...@chromium.org, m.su...@gmail.com
Now that I have compiled chrome + ozone (gbm), how do I run it? I am running on Ubuntu 14.04. No desktop manager is running (no X / lightdm). I get the following when I try to execute chrome -


./chrome
[25908:25908:0818/105412:ERROR:gpu_info_collector_ozone.cc(11)] Not implemented reached in std::string gpu::CollectDriverVersionNVidia()
LaunchProcess: failed to execvp:
/proc/self/exe
[25908:25908:0818/105412:ERROR:cursor_loader_ozone.cc(35)] Not implemented reached in virtual void ui::CursorLoaderOzone::LoadAnimatedCursor(int, int, const gfx::Point &, int)
[25908:25908:0818/105412:ERROR:cursor_loader_ozone.cc(35)] Not implemented reached in virtual void ui::CursorLoaderOzone::LoadAnimatedCursor(int, int, const gfx::Point &, int)
LaunchProcess: failed to execvp:
/proc/self/exe
[25908:25908:0818/105412:ERROR:gpu_process_transport_factory.cc(418)] Failed to establish GPU channel.
[25908:25908:0818/105412:FATAL:gpu_process_transport_factory.cc(215)] Failed to create UI context, but can't use software compositing with browser threaded compositing. Aborting.
Aborted (core dumped)

Michael Spang

unread,
Aug 18, 2014, 2:01:13 PM8/18/14
to Subash Madhusudan, ozon...@chromium.org
Add --ozone-platform=gbm to your command.

Michael

m.su...@gmail.com

unread,
Aug 19, 2014, 1:08:16 PM8/19/14
to ozon...@chromium.org, m.su...@gmail.com
When I run chrome as follows (running on Ubuntu 14.04 with no X)

./out/Release/chrome --ozone-platform=gbm
OR WITH
./out/Release/chrome --ozone-platform=dri

it completely locks up the display. Nothing is updated and keyboard appears to be locked too. However, no chrome process shows up in the ps output (maybe chrome crashed?).

Then I tried to run the test platform with chrome (running on Ubuntu 14.04 with no X) as follows -

./out/Release/chrome --ozone-platform=test --ozone-dump-file=/tmp/chrome.png

and I get this output
[28131:28131:0819/114900:ERROR:gpu_info_collector_ozone.cc(11)] Not implemented reached in std::string gpu::CollectDriverVersionNVidia()


LaunchProcess: failed to execvp:
/proc/self/exe

[28131:28131:0819/114900:ERROR:cursor_loader_ozone.cc(35)] Not implemented reached in virtual void ui::CursorLoaderOzone::LoadAnimatedCursor(int, int, const gfx::Point &, int)
[28131:28131:0819/114900:ERROR:cursor_loader_ozone.cc(35)] Not implemented reached in virtual void ui::CursorLoaderOzone::LoadAnimatedCursor(int, int, const gfx::Point &, int)


LaunchProcess: failed to execvp:
/proc/self/exe

[28131:28131:0819/114900:ERROR:gpu_process_transport_factory.cc(418)] Failed to establish GPU channel.
[28131:28131:0819/114900:FATAL:gpu_process_transport_factory.cc(215)] Failed to create UI context, but can't use software compositing with browser threaded compositing. Aborting.
Aborted (core dumped)

Any pointers?

Michael Spang

unread,
Aug 19, 2014, 1:55:51 PM8/19/14
to Subash Madhusudan, ozon...@chromium.org
For software rendering in a ChromeOS bulid you need --ui-disable-threaded-compositing:

On Tue, Aug 19, 2014 at 1:08 PM, <m.su...@gmail.com> wrote:
When I run chrome as follows (running on Ubuntu 14.04 with no X)

./out/Release/chrome --ozone-platform=gbm

 ./out/Release/chrome --disable-setuid-sandbox --ozone-platform=gbm
(gbm is hardware accelerated, so don't specify --ui-disable-threaded-compositing)
 
OR WITH
./out/Release/chrome --ozone-platform=dri


./out/Release/chrome --disable-setuid-sandbox --ozone-platform=dri --ui-disable-threaded-compositing
 
it completely locks up the display. Nothing is updated and keyboard appears to be locked too. However, no chrome process shows up in the ps output (maybe chrome crashed?).

Could be, do you have the log output?
 

Then I tried to run the test platform with chrome (running on Ubuntu 14.04 with no X) as follows -

./out/Release/chrome --ozone-platform=test --ozone-dump-file=/tmp/chrome.png

./out/Release/chrome --disable-setuid-sandbox --ozone-platform=test --ozone-dump-file=/tmp/chrome.png --ui-disable-threaded-compositing

m.su...@gmail.com

unread,
Aug 19, 2014, 6:39:35 PM8/19/14
to ozon...@chromium.org, m.su...@gmail.com
With the runtime settings you suggested, the "test" platform works fine. Below is the chrome_debug.log for the "gbm" execution. As I mentioned earlier, the terminal on which the command is issued, is unresponsive. I am able to ssh to server and issue commands, so the server itself is up and running.

./out/Release/chrome --ozone-platform=gbm --enable-logging --v=1 --url http://www.yahoo.com


---> Start of log <---
[8619:8619:0819/173113:VERBOSE1:breakpad_linux.cc(1564)] Breakpad disabled
[1:1:0819/173113:VERBOSE1:zygote_main_linux.cc(538)] ZygoteMain: initializing 2 fork delegates
[1:1:0819/173113:VERBOSE1:nacl_fork_delegate_linux.cc(142)] NaClForkDelegate::Init()
[1:1:0819/173113:VERBOSE1:nacl_fork_delegate_linux.cc(142)] NaClForkDelegate::Init()
[8619:8619:0819/173113:WARNING:chrome_browser_main_chromeos.cc(263)] Running as stub user with profile dir: test-user
[8619:8619:0819/173113:ERROR:ozone_platform_gbm.cc(116)] SM: InitializeUI
[8619:8619:0819/173113:VERBOSE1:fake_nfc_adapter_client.cc(87)] Creating FakeNfcAdapterClient
[8619:8619:0819/173113:VERBOSE1:fake_nfc_device_client.cc(55)] Creating FakeNfcDeviceClient
[8619:8619:0819/173113:VERBOSE1:fake_nfc_manager_client.cc(67)] Adding NFC adapter: /fake/nfc0
[8619:8619:0819/173113:VERBOSE1:fake_nfc_record_client.cc(83)] Creating FakeNfcRecordClient
[8619:8619:0819/173113:VERBOSE1:fake_nfc_tag_client.cc(54)] Creating FakeNfcTagClient
[8619:8619:0819/173113:VERBOSE1:cras_audio_client_stub_impl.cc(15)] CrasAudioClientStubImpl is created
[8619:8619:0819/173113:VERBOSE1:fake_shill_device_client.cc(309)] SetDeviceProperty: /device/eth1: Address = "0123456789ab"

[8619:8619:0819/173113:VERBOSE1:fake_shill_device_client.cc(309)] SetDeviceProperty: /device/eth1: IPConfigs = [ "ipconfig_v4_path", "ipconfig_v6_path" ]

[8619:8619:0819/173113:VERBOSE1:fake_shill_service_client.cc(421)] Service.SetProperty: Profile = "/profile/default"
For: /service/eth1
[8619:8619:0819/173113:VERBOSE1:fake_shill_device_client.cc(309)] SetDeviceProperty: /device/wifi1: Address = "23456789abc"

[8619:8619:0819/173113:VERBOSE1:fake_shill_device_client.cc(309)] SetDeviceProperty: /device/wifi1: IPConfigs = [ "ipconfig_v4_path", "ipconfig_v6_path" ]

[8619:8619:0819/173113:VERBOSE1:fake_shill_service_client.cc(421)] Service.SetProperty: Security = "wep"
For: /service/wifi1
[8619:8619:0819/173113:VERBOSE1:fake_shill_service_client.cc(421)] Service.SetProperty: Connectable = true
For: /service/wifi1
[8619:8619:0819/173113:VERBOSE1:fake_shill_service_client.cc(421)] Service.SetProperty: Profile = "/profile/default"
For: /service/wifi1
[8619:8619:0819/173113:VERBOSE1:fake_shill_service_client.cc(421)] Service.SetProperty: Security = "psk"
For: /service/wifi2
[8619:8619:0819/173113:VERBOSE1:fake_shill_service_client.cc(421)] Service.SetProperty: Strength = 80
For: /service/wifi2
[8619:8619:0819/173113:VERBOSE1:fake_shill_service_client.cc(421)] Service.SetProperty: Profile = "/profile/default"
For: /service/wifi2
[8619:8619:0819/173113:VERBOSE1:fake_shill_device_client.cc(309)] SetDeviceProperty: /device/cellular1: Cellular.Carrier = "Sprint"

[8619:8619:0819/173113:VERBOSE1:fake_shill_service_client.cc(421)] Service.SetProperty: Cellular.NetworkTechnology = "GSM"
For: /service/cellular1
[8619:8619:0819/173113:VERBOSE1:fake_shill_service_client.cc(421)] Service.SetProperty: Cellular.ActivationState = "not-activated"
For: /service/cellular1
[8619:8619:0819/173113:VERBOSE1:fake_shill_service_client.cc(421)] Service.SetProperty: Cellular.RoamingState = "home"
For: /service/cellular1
[8619:8619:0819/173113:VERBOSE1:fake_shill_service_client.cc(421)] Service.SetProperty: Provider = {
"Host": "vpn_host",
"Type": "openvpn"
}
For: /service/vpn1
[8619:8619:0819/173113:VERBOSE1:fake_shill_service_client.cc(421)] Service.SetProperty: Profile = "/profile/default"
For: /service/vpn1
[8619:8619:0819/173113:VERBOSE1:fake_shill_service_client.cc(421)] Service.SetProperty: Provider = {
"Host": "vpn_host",
"Type": "openvpn"
}
For: /service/vpn2
[8619:8619:0819/173113:VERBOSE1:dbus_thread_manager.cc(361)] DBusThreadManager initialized with stub implementation
[8619:8619:0819/173113:VERBOSE1:cros_dbus_service.cc(134)] CrosDBusService initialized
[8619:8619:0819/173113:VERBOSE1:disk_mount_manager.cc(729)] DiskMountManager initialized
[8619:8619:0819/173113:VERBOSE1:async_method_caller.cc(357)] AsyncMethodCaller initialized
[8619:8619:0819/173113:VERBOSE1:homedir_methods.cc(283)] HomedirMethods initialized
[8619:8619:0819/173113:VERBOSE1:network_event_log.cc(204)] [17:31:13.118] shill_property_handler.cc:126 UpdateManagerProperties
[8619:8619:0819/173113:VERBOSE1:network_event_log.cc(204)] [17:31:13.131] network_device_handler_impl.cc:452 NetworkStateHandler::AddObserver
[8619:8619:0819/173113:VERBOSE1:network_event_log.cc(204)] [17:31:13.132] network_connection_handler.cc:191 NetworkStateHandler::AddObserver
[8619:8619:0819/173113:VERBOSE1:network_event_log.cc(204)] [17:31:13.134] network_connection_handler.cc:212 Logged In
[8619:8619:0819/173113:VERBOSE1:network_event_log.cc(204)] [17:31:13.136] network_cert_migrator.cc:250 NetworkStateHandler::AddObserver
[8619:8619:0819/173113:VERBOSE1:network_event_log.cc(204)] [17:31:13.137] client_cert_resolver.cc:253 NetworkStateHandler::AddObserver
[8619:8619:0819/173113:VERBOSE1:network_event_log.cc(204)] [17:31:13.139] network_change_notifier_chromeos.cc:63 NetworkStateHandler::AddObserver
[8619:8619:0819/173113:VERBOSE1:device_settings_cache.cc(45)] Can't decode policy from base64.
[8619:8619:0819/173113:VERBOSE1:device_settings_provider.cc(183)] Can't retrieve temp store, possibly not created yet.
[8619:8619:0819/173113:VERBOSE1:network_event_log.cc(204)] [17:31:13.143] proxy_config_service_impl.cc:76 NetworkStateHandler::AddObserver
[8619:8619:0819/173113:VERBOSE1:proxy_config_service_impl.cc(106)] DefaultNetworkChanged to ''.
[8619:8619:0819/173113:VERBOSE1:pref_proxy_config_tracker_impl.cc(268)] No chrome proxy config service to push to UpdateProxyConfig
[8619:8643:0819/173113:VERBOSE1:nss_util.cc(720)] Initializing NSS without a persistent database.
[8619:8619:0819/173113:ERROR:gpu_info_collector_ozone.cc(11)] Not implemented reached in std::string gpu::CollectDriverVersionNVidia()
[8619:8643:0819/173113:VERBOSE1:multi_log_ct_verifier.cc(76)] Adding CT log: Google 'Pilot' log
[8619:8643:0819/173113:VERBOSE1:multi_log_ct_verifier.cc(76)] Adding CT log: Google 'Aviator' log
[8619:8619:0819/173113:VERBOSE1:pref_proxy_config_tracker_impl.cc(148)] 0x146a06561380: set chrome proxy config service to 0x146a06632580
[8619:8619:0819/173113:VERBOSE1:proxy_config_service_impl.cc(90)] Got prefs change: config_unset, mode=0
[8619:8619:0819/173113:VERBOSE1:pref_proxy_config_tracker_impl.cc(277)] 0x146a06561380: Done pushing proxy to UpdateProxyConfig
[8619:8619:0819/173113:VERBOSE1:proxy_config_service_impl.cc(227)] 0x146a06561380: Proxy changed: config_unset, {
"source": "UNKNOWN"
}

[8619:8619:0819/173113:VERBOSE1:tpm_token_loader.cc(135)] StartTokenInitialization: 1
[8619:8619:0819/173113:VERBOSE1:tpm_token_loader.cc(153)] ContinueTokenInitialization: 3
[8619:8619:0819/173113:VERBOSE1:cras_audio_handler.cc(493)] Audio input allowed by policy, sets input id=0x0 mute=false
[8619:8619:0819/173113:VERBOSE1:cras_audio_handler.cc(528)] SetInputMuteInternal sets active input device id=0x0 mute=0
[8619:8619:0819/173113:VERBOSE1:cras_audio_handler.cc(450)] SetupAudioInputState for active device id=0x2715 mute=0
[8619:8619:0819/173113:VERBOSE1:cras_audio_handler.cc(528)] SetInputMuteInternal sets active input device id=0x2715 mute=0
[8619:8619:0819/173113:VERBOSE1:statistics_provider.cc(214)] Started loading statistics. Load OEM Manifest: 1
[8619:8639:0819/173113:VERBOSE1:statistics_provider.cc(285)] Finished loading statistics.
[8619:8619:0819/173113:VERBOSE1:network_event_log.cc(204)] [17:31:13.149] burn_manager.cc:227 NetworkStateHandler::AddObserver
[8619:8619:0819/173113:VERBOSE1:burn_manager.cc(259)] BurnManager initialized
[8619:8619:0819/173113:VERBOSE1:statistics_provider.cc(156)] Machine Statistic requested: oem_device_requisition
[9:9:0819/173113:VERBOSE1:sandbox_linux.cc(62)] Activated seccomp-bpf sandbox for process type: renderer.
[9:9:0819/173113:VERBOSE1:child_thread.cc(242)] Mojo is disabled on child
[9:10:0100/000000:VERBOSE1:ipc_sync_channel.cc(386)] Canceling pending sends

---> End of log <---

Thank you for your help.
Subash

Reply all
Reply to author
Forward
0 new messages