[PATCH 06/16] docs/about/emulation: update assets for uftrace plugin documentation

Alex Bennée posted 16 patches 1 month ago
Maintainers: "Alex Bennée" <alex.bennee@linaro.org>, "Philippe Mathieu-Daudé" <philmd@linaro.org>, Thomas Huth <thuth@redhat.com>, Ed Maste <emaste@freebsd.org>, Li-Wen Hsu <lwhsu@freebsd.org>, Kohei Tokunaga <ktokunaga.mail@gmail.com>, Peter Maydell <peter.maydell@linaro.org>, Akihiko Odaki <odaki@rsg.ci.i.u-tokyo.ac.jp>, Dmitry Osipenko <dmitry.osipenko@collabora.com>, David Woodhouse <dwmw2@infradead.org>, Paul Durrant <paul@xen.org>, Paolo Bonzini <pbonzini@redhat.com>, Zhao Liu <zhao1.liu@intel.com>, Sriram Yagnaraman <sriram.yagnaraman@ericsson.com>
[PATCH 06/16] docs/about/emulation: update assets for uftrace plugin documentation
Posted by Alex Bennée 1 month ago
From: Pierrick Bouvier <pierrick.bouvier@linaro.org>

Linaro is discontinuing its fileserver service by end of the year.
Migrate assets to GitHub.

Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
 docs/about/emulation.rst | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/docs/about/emulation.rst b/docs/about/emulation.rst
index 92c219119e8..4a7d1f41780 100644
--- a/docs/about/emulation.rst
+++ b/docs/about/emulation.rst
@@ -886,24 +886,24 @@ As an example, we can trace qemu itself running git::
     $ uftrace dump --chrome | gzip > ~/qemu_aarch64_git_help.json.gz
 
 For convenience, you can download this trace `qemu_aarch64_git_help.json.gz
-<https://fileserver.linaro.org/s/N8X8fnZ5yGRZLsT/download/qemu_aarch64_git_help.json.gz>`_.
+<https://github.com/pbo-linaro/qemu-assets/raw/refs/heads/master/qemu-uftrace/qemu_aarch64_git_help.json.gz>`_.
 Download it and open this trace on https://ui.perfetto.dev/. You can zoom in/out
 using :kbd:`W`, :kbd:`A`, :kbd:`S`, :kbd:`D` keys.
 Some sequences taken from this trace:
 
 - Loading program and its interpreter
 
-.. image:: https://fileserver.linaro.org/s/fie8JgX76yyL5cq/preview
+.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/loader_exec.png?raw=true
    :height: 200px
 
 - open syscall
 
-.. image:: https://fileserver.linaro.org/s/rsXPTeZZPza4PcE/preview
+.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/open_syscall.png?raw=true
    :height: 200px
 
 - TB creation
 
-.. image:: https://fileserver.linaro.org/s/GXY6NKMw5EeRCew/preview
+.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/tb_translation.png?raw=true
    :height: 200px
 
 It's usually better to use ``uftrace record`` directly. However, tracing
@@ -916,7 +916,7 @@ Example system trace
 
 A full trace example (chrome trace, from instructions below) generated from a
 system boot can be found `here
-<https://fileserver.linaro.org/s/WsemLboPEzo24nw/download/aarch64_boot.json.gz>`_.
+<https://github.com/pbo-linaro/qemu-assets/raw/refs/heads/master/qemu-uftrace/aarch64_boot.json.gz>`_.
 Download it and open this trace on https://ui.perfetto.dev/. You can see code
 executed for all privilege levels, and zoom in/out using
 :kbd:`W`, :kbd:`A`, :kbd:`S`, :kbd:`D` keys. You can find below some sequences
@@ -924,27 +924,27 @@ taken from this trace:
 
 - Two first stages of boot sequence in Arm Trusted Firmware (EL3 and S-EL1)
 
-.. image:: https://fileserver.linaro.org/s/kkxBS552W7nYESX/preview
+.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/bl3_to_bl1.png?raw=true
    :height: 200px
 
 - U-boot initialization (until code relocation, after which we can't track it)
 
-.. image:: https://fileserver.linaro.org/s/LKTgsXNZFi5GFNC/preview
+.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/uboot.png?raw=true
    :height: 200px
 
 - Stat and open syscalls in kernel
 
-.. image:: https://fileserver.linaro.org/s/dXe4MfraKg2F476/preview
+.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/stat.png?raw=true
    :height: 200px
 
 - Timer interrupt
 
-.. image:: https://fileserver.linaro.org/s/TM5yobYzJtP7P3C/preview
+.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/timer_interrupt.png?raw=true
    :height: 200px
 
 - Poweroff sequence (from kernel back to firmware, NS-EL2 to EL3)
 
-.. image:: https://fileserver.linaro.org/s/oR2PtyGKJrqnfRf/preview
+.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/poweroff.png?raw=true
    :height: 200px
 
 Build and run system example
-- 
2.47.3


Re: [PATCH 06/16] docs/about/emulation: update assets for uftrace plugin documentation
Posted by Akihiko Odaki 1 month ago
On 2025/11/12 2:17, Alex Bennée wrote:
> From: Pierrick Bouvier <pierrick.bouvier@linaro.org>
> 
> Linaro is discontinuing its fileserver service by end of the year.
> Migrate assets to GitHub.

I wonder why they are moved to GitHub instead of share.linaro.org. They 
look like plain binary blobs like other files moved to share.linaro.org 
and don't need a version control.

If they are going to be on Git, why don't you put them on 
https://gitlab.com/qemu-project instead? I hope creating a repository 
there is straightforward.

> 
> Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
>   docs/about/emulation.rst | 20 ++++++++++----------
>   1 file changed, 10 insertions(+), 10 deletions(-)
> 
> diff --git a/docs/about/emulation.rst b/docs/about/emulation.rst
> index 92c219119e8..4a7d1f41780 100644
> --- a/docs/about/emulation.rst
> +++ b/docs/about/emulation.rst
> @@ -886,24 +886,24 @@ As an example, we can trace qemu itself running git::
>       $ uftrace dump --chrome | gzip > ~/qemu_aarch64_git_help.json.gz
>   
>   For convenience, you can download this trace `qemu_aarch64_git_help.json.gz
> -<https://fileserver.linaro.org/s/N8X8fnZ5yGRZLsT/download/qemu_aarch64_git_help.json.gz>`_.
> +<https://github.com/pbo-linaro/qemu-assets/raw/refs/heads/master/qemu-uftrace/qemu_aarch64_git_help.json.gz>`_.

I think it's better to point to a specific commit so that e.g., files 
can be renamed in the future. This URL will look like:
https://github.com/pbo-linaro/qemu-assets/blob/ec68ed241bb303128537ac662d97e38972ff7257/qemu-uftrace/aarch64_boot.json.gz

>   Download it and open this trace on https://ui.perfetto.dev/. You can zoom in/out
>   using :kbd:`W`, :kbd:`A`, :kbd:`S`, :kbd:`D` keys.
>   Some sequences taken from this trace:
>   
>   - Loading program and its interpreter
>   
> -.. image:: https://fileserver.linaro.org/s/fie8JgX76yyL5cq/preview
> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/loader_exec.png?raw=true
>      :height: 200px
>   
>   - open syscall
>   
> -.. image:: https://fileserver.linaro.org/s/rsXPTeZZPza4PcE/preview
> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/open_syscall.png?raw=true
>      :height: 200px
>   
>   - TB creation
>   
> -.. image:: https://fileserver.linaro.org/s/GXY6NKMw5EeRCew/preview
> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/tb_translation.png?raw=true
>      :height: 200px
>   
>   It's usually better to use ``uftrace record`` directly. However, tracing
> @@ -916,7 +916,7 @@ Example system trace
>   
>   A full trace example (chrome trace, from instructions below) generated from a
>   system boot can be found `here
> -<https://fileserver.linaro.org/s/WsemLboPEzo24nw/download/aarch64_boot.json.gz>`_.
> +<https://github.com/pbo-linaro/qemu-assets/raw/refs/heads/master/qemu-uftrace/aarch64_boot.json.gz>`_.
>   Download it and open this trace on https://ui.perfetto.dev/. You can see code
>   executed for all privilege levels, and zoom in/out using
>   :kbd:`W`, :kbd:`A`, :kbd:`S`, :kbd:`D` keys. You can find below some sequences
> @@ -924,27 +924,27 @@ taken from this trace:
>   
>   - Two first stages of boot sequence in Arm Trusted Firmware (EL3 and S-EL1)
>   
> -.. image:: https://fileserver.linaro.org/s/kkxBS552W7nYESX/preview
> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/bl3_to_bl1.png?raw=true
>      :height: 200px
>   
>   - U-boot initialization (until code relocation, after which we can't track it)
>   
> -.. image:: https://fileserver.linaro.org/s/LKTgsXNZFi5GFNC/preview
> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/uboot.png?raw=true
>      :height: 200px
>   
>   - Stat and open syscalls in kernel
>   
> -.. image:: https://fileserver.linaro.org/s/dXe4MfraKg2F476/preview
> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/stat.png?raw=true
>      :height: 200px
>   
>   - Timer interrupt
>   
> -.. image:: https://fileserver.linaro.org/s/TM5yobYzJtP7P3C/preview
> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/timer_interrupt.png?raw=true
>      :height: 200px
>   
>   - Poweroff sequence (from kernel back to firmware, NS-EL2 to EL3)
>   
> -.. image:: https://fileserver.linaro.org/s/oR2PtyGKJrqnfRf/preview
> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/poweroff.png?raw=true
>      :height: 200px
>   
>   Build and run system example


Re: [PATCH 06/16] docs/about/emulation: update assets for uftrace plugin documentation
Posted by Philippe Mathieu-Daudé 3 weeks, 1 day ago
On 12/11/25 02:38, Akihiko Odaki wrote:
> On 2025/11/12 2:17, Alex Bennée wrote:
>> From: Pierrick Bouvier <pierrick.bouvier@linaro.org>
>>
>> Linaro is discontinuing its fileserver service by end of the year.
>> Migrate assets to GitHub.
> 
> I wonder why they are moved to GitHub instead of share.linaro.org. They 
> look like plain binary blobs like other files moved to share.linaro.org 
> and don't need a version control.
> 
> If they are going to be on Git, why don't you put them on https:// 
> gitlab.com/qemu-project instead? I hope creating a repository there is 
> straightforward.
> 
>>
>> Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>> ---
>>   docs/about/emulation.rst | 20 ++++++++++----------
>>   1 file changed, 10 insertions(+), 10 deletions(-)
>>
>> diff --git a/docs/about/emulation.rst b/docs/about/emulation.rst
>> index 92c219119e8..4a7d1f41780 100644
>> --- a/docs/about/emulation.rst
>> +++ b/docs/about/emulation.rst
>> @@ -886,24 +886,24 @@ As an example, we can trace qemu itself running 
>> git::
>>       $ uftrace dump --chrome | gzip > ~/qemu_aarch64_git_help.json.gz
>>   For convenience, you can download this trace 
>> `qemu_aarch64_git_help.json.gz
>> -<https://fileserver.linaro.org/s/N8X8fnZ5yGRZLsT/download/ 
>> qemu_aarch64_git_help.json.gz>`_.
>> +<https://github.com/pbo-linaro/qemu-assets/raw/refs/heads/master/ 
>> qemu-uftrace/qemu_aarch64_git_help.json.gz>`_.
> 
> I think it's better to point to a specific commit so that e.g., files 
> can be renamed in the future. This URL will look like:
> https://github.com/pbo-linaro/qemu-assets/blob/ 
> ec68ed241bb303128537ac662d97e38972ff7257/qemu-uftrace/aarch64_boot.json.gz

Yes please.


Re: [PATCH 06/16] docs/about/emulation: update assets for uftrace plugin documentation
Posted by Pierrick Bouvier 3 weeks, 1 day ago
On 2025-11-21 15:44, Philippe Mathieu-Daudé wrote:
> On 12/11/25 02:38, Akihiko Odaki wrote:
>> On 2025/11/12 2:17, Alex Bennée wrote:
>>> From: Pierrick Bouvier <pierrick.bouvier@linaro.org>
>>>
>>> Linaro is discontinuing its fileserver service by end of the year.
>>> Migrate assets to GitHub.
>>
>> I wonder why they are moved to GitHub instead of share.linaro.org. They
>> look like plain binary blobs like other files moved to share.linaro.org
>> and don't need a version control.
>>
>> If they are going to be on Git, why don't you put them on https://
>> gitlab.com/qemu-project instead? I hope creating a repository there is
>> straightforward.
>>
>>>
>>> Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
>>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>>> ---
>>>    docs/about/emulation.rst | 20 ++++++++++----------
>>>    1 file changed, 10 insertions(+), 10 deletions(-)
>>>
>>> diff --git a/docs/about/emulation.rst b/docs/about/emulation.rst
>>> index 92c219119e8..4a7d1f41780 100644
>>> --- a/docs/about/emulation.rst
>>> +++ b/docs/about/emulation.rst
>>> @@ -886,24 +886,24 @@ As an example, we can trace qemu itself running
>>> git::
>>>        $ uftrace dump --chrome | gzip > ~/qemu_aarch64_git_help.json.gz
>>>    For convenience, you can download this trace
>>> `qemu_aarch64_git_help.json.gz
>>> -<https://fileserver.linaro.org/s/N8X8fnZ5yGRZLsT/download/
>>> qemu_aarch64_git_help.json.gz>`_.
>>> +<https://github.com/pbo-linaro/qemu-assets/raw/refs/heads/master/
>>> qemu-uftrace/qemu_aarch64_git_help.json.gz>`_.
>>
>> I think it's better to point to a specific commit so that e.g., files
>> can be renamed in the future. This URL will look like:
>> https://github.com/pbo-linaro/qemu-assets/blob/
>> ec68ed241bb303128537ac662d97e38972ff7257/qemu-uftrace/aarch64_boot.json.gz
> 
> Yes please.
> 

If files are renamed/moved, then we probably want to update this URL to 
new one instead of pointing on something obsolete anyway, so I'm not 
sure what is the benefit. Feel free to update this simple patch, so it 
gets pulled in next release, I don't mind the URL, as long as it's 
shipped in.

Re: [PATCH 06/16] docs/about/emulation: update assets for uftrace plugin documentation
Posted by Alex Bennée 1 month ago
Akihiko Odaki <odaki@rsg.ci.i.u-tokyo.ac.jp> writes:

> On 2025/11/12 2:17, Alex Bennée wrote:
>> From: Pierrick Bouvier <pierrick.bouvier@linaro.org>
>> Linaro is discontinuing its fileserver service by end of the year.
>> Migrate assets to GitHub.
>
> I wonder why they are moved to GitHub instead of share.linaro.org.
> They look like plain binary blobs like other files moved to
> share.linaro.org and don't need a version control.

Just a choice they made - I don't think there is a right or wrong answer here.

>
> If they are going to be on Git, why don't you put them on
> https://gitlab.com/qemu-project instead? I hope creating a repository
> there is straightforward.

Ideally for diagrams I'd like the source for those to be directly in
qemu's main repo under docs. However we don't currently have a way to
render diagrams for our documentation so for now hotlinks will have to
do.

>
>> Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>> ---
>>   docs/about/emulation.rst | 20 ++++++++++----------
>>   1 file changed, 10 insertions(+), 10 deletions(-)
>> diff --git a/docs/about/emulation.rst b/docs/about/emulation.rst
>> index 92c219119e8..4a7d1f41780 100644
>> --- a/docs/about/emulation.rst
>> +++ b/docs/about/emulation.rst
>> @@ -886,24 +886,24 @@ As an example, we can trace qemu itself running git::
>>       $ uftrace dump --chrome | gzip > ~/qemu_aarch64_git_help.json.gz
>>     For convenience, you can download this trace
>> `qemu_aarch64_git_help.json.gz
>> -<https://fileserver.linaro.org/s/N8X8fnZ5yGRZLsT/download/qemu_aarch64_git_help.json.gz>`_.
>> +<https://github.com/pbo-linaro/qemu-assets/raw/refs/heads/master/qemu-uftrace/qemu_aarch64_git_help.json.gz>`_.
>
> I think it's better to point to a specific commit so that e.g., files
> can be renamed in the future. This URL will look like:
> https://github.com/pbo-linaro/qemu-assets/blob/ec68ed241bb303128537ac662d97e38972ff7257/qemu-uftrace/aarch64_boot.json.gz
>
>>   Download it and open this trace on https://ui.perfetto.dev/. You can zoom in/out
>>   using :kbd:`W`, :kbd:`A`, :kbd:`S`, :kbd:`D` keys.
>>   Some sequences taken from this trace:
>>     - Loading program and its interpreter
>>   -.. image::
>> https://fileserver.linaro.org/s/fie8JgX76yyL5cq/preview
>> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/loader_exec.png?raw=true
>>      :height: 200px
>>     - open syscall
>>   -.. image::
>> https://fileserver.linaro.org/s/rsXPTeZZPza4PcE/preview
>> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/open_syscall.png?raw=true
>>      :height: 200px
>>     - TB creation
>>   -.. image::
>> https://fileserver.linaro.org/s/GXY6NKMw5EeRCew/preview
>> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/tb_translation.png?raw=true
>>      :height: 200px
>>     It's usually better to use ``uftrace record`` directly. However,
>> tracing
>> @@ -916,7 +916,7 @@ Example system trace
>>     A full trace example (chrome trace, from instructions below)
>> generated from a
>>   system boot can be found `here
>> -<https://fileserver.linaro.org/s/WsemLboPEzo24nw/download/aarch64_boot.json.gz>`_.
>> +<https://github.com/pbo-linaro/qemu-assets/raw/refs/heads/master/qemu-uftrace/aarch64_boot.json.gz>`_.
>>   Download it and open this trace on https://ui.perfetto.dev/. You can see code
>>   executed for all privilege levels, and zoom in/out using
>>   :kbd:`W`, :kbd:`A`, :kbd:`S`, :kbd:`D` keys. You can find below some sequences
>> @@ -924,27 +924,27 @@ taken from this trace:
>>     - Two first stages of boot sequence in Arm Trusted Firmware (EL3
>> and S-EL1)
>>   -.. image::
>> https://fileserver.linaro.org/s/kkxBS552W7nYESX/preview
>> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/bl3_to_bl1.png?raw=true
>>      :height: 200px
>>     - U-boot initialization (until code relocation, after which we
>> can't track it)
>>   -.. image::
>> https://fileserver.linaro.org/s/LKTgsXNZFi5GFNC/preview
>> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/uboot.png?raw=true
>>      :height: 200px
>>     - Stat and open syscalls in kernel
>>   -.. image::
>> https://fileserver.linaro.org/s/dXe4MfraKg2F476/preview
>> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/stat.png?raw=true
>>      :height: 200px
>>     - Timer interrupt
>>   -.. image::
>> https://fileserver.linaro.org/s/TM5yobYzJtP7P3C/preview
>> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/timer_interrupt.png?raw=true
>>      :height: 200px
>>     - Poweroff sequence (from kernel back to firmware, NS-EL2 to
>> EL3)
>>   -.. image::
>> https://fileserver.linaro.org/s/oR2PtyGKJrqnfRf/preview
>> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/poweroff.png?raw=true
>>      :height: 200px
>>     Build and run system example

-- 
Alex Bennée
Virtualisation Tech Lead @ Linaro
Re: [PATCH 06/16] docs/about/emulation: update assets for uftrace plugin documentation
Posted by Akihiko Odaki 1 month ago
On 2025/11/12 18:54, Alex Bennée wrote:
> Akihiko Odaki <odaki@rsg.ci.i.u-tokyo.ac.jp> writes:
> 
>> On 2025/11/12 2:17, Alex Bennée wrote:
>>> From: Pierrick Bouvier <pierrick.bouvier@linaro.org>
>>> Linaro is discontinuing its fileserver service by end of the year.
>>> Migrate assets to GitHub.
>>
>> I wonder why they are moved to GitHub instead of share.linaro.org.
>> They look like plain binary blobs like other files moved to
>> share.linaro.org and don't need a version control.
> 
> Just a choice they made - I don't think there is a right or wrong answer here.

Both GitHub and share.linaro.org are fine. But having fewer Internet 
dependencies is a right thing to do (unless there is a reason of course).

Regards,
Akihiko Odaki

> 
>>
>> If they are going to be on Git, why don't you put them on
>> https://gitlab.com/qemu-project instead? I hope creating a repository
>> there is straightforward.
> 
> Ideally for diagrams I'd like the source for those to be directly in
> qemu's main repo under docs. However we don't currently have a way to
> render diagrams for our documentation so for now hotlinks will have to
> do.
> 
>>
>>> Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
>>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>>> ---
>>>    docs/about/emulation.rst | 20 ++++++++++----------
>>>    1 file changed, 10 insertions(+), 10 deletions(-)
>>> diff --git a/docs/about/emulation.rst b/docs/about/emulation.rst
>>> index 92c219119e8..4a7d1f41780 100644
>>> --- a/docs/about/emulation.rst
>>> +++ b/docs/about/emulation.rst
>>> @@ -886,24 +886,24 @@ As an example, we can trace qemu itself running git::
>>>        $ uftrace dump --chrome | gzip > ~/qemu_aarch64_git_help.json.gz
>>>      For convenience, you can download this trace
>>> `qemu_aarch64_git_help.json.gz
>>> -<https://fileserver.linaro.org/s/N8X8fnZ5yGRZLsT/download/qemu_aarch64_git_help.json.gz>`_.
>>> +<https://github.com/pbo-linaro/qemu-assets/raw/refs/heads/master/qemu-uftrace/qemu_aarch64_git_help.json.gz>`_.
>>
>> I think it's better to point to a specific commit so that e.g., files
>> can be renamed in the future. This URL will look like:
>> https://github.com/pbo-linaro/qemu-assets/blob/ec68ed241bb303128537ac662d97e38972ff7257/qemu-uftrace/aarch64_boot.json.gz
>>
>>>    Download it and open this trace on https://ui.perfetto.dev/. You can zoom in/out
>>>    using :kbd:`W`, :kbd:`A`, :kbd:`S`, :kbd:`D` keys.
>>>    Some sequences taken from this trace:
>>>      - Loading program and its interpreter
>>>    -.. image::
>>> https://fileserver.linaro.org/s/fie8JgX76yyL5cq/preview
>>> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/loader_exec.png?raw=true
>>>       :height: 200px
>>>      - open syscall
>>>    -.. image::
>>> https://fileserver.linaro.org/s/rsXPTeZZPza4PcE/preview
>>> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/open_syscall.png?raw=true
>>>       :height: 200px
>>>      - TB creation
>>>    -.. image::
>>> https://fileserver.linaro.org/s/GXY6NKMw5EeRCew/preview
>>> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/tb_translation.png?raw=true
>>>       :height: 200px
>>>      It's usually better to use ``uftrace record`` directly. However,
>>> tracing
>>> @@ -916,7 +916,7 @@ Example system trace
>>>      A full trace example (chrome trace, from instructions below)
>>> generated from a
>>>    system boot can be found `here
>>> -<https://fileserver.linaro.org/s/WsemLboPEzo24nw/download/aarch64_boot.json.gz>`_.
>>> +<https://github.com/pbo-linaro/qemu-assets/raw/refs/heads/master/qemu-uftrace/aarch64_boot.json.gz>`_.
>>>    Download it and open this trace on https://ui.perfetto.dev/. You can see code
>>>    executed for all privilege levels, and zoom in/out using
>>>    :kbd:`W`, :kbd:`A`, :kbd:`S`, :kbd:`D` keys. You can find below some sequences
>>> @@ -924,27 +924,27 @@ taken from this trace:
>>>      - Two first stages of boot sequence in Arm Trusted Firmware (EL3
>>> and S-EL1)
>>>    -.. image::
>>> https://fileserver.linaro.org/s/kkxBS552W7nYESX/preview
>>> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/bl3_to_bl1.png?raw=true
>>>       :height: 200px
>>>      - U-boot initialization (until code relocation, after which we
>>> can't track it)
>>>    -.. image::
>>> https://fileserver.linaro.org/s/LKTgsXNZFi5GFNC/preview
>>> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/uboot.png?raw=true
>>>       :height: 200px
>>>      - Stat and open syscalls in kernel
>>>    -.. image::
>>> https://fileserver.linaro.org/s/dXe4MfraKg2F476/preview
>>> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/stat.png?raw=true
>>>       :height: 200px
>>>      - Timer interrupt
>>>    -.. image::
>>> https://fileserver.linaro.org/s/TM5yobYzJtP7P3C/preview
>>> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/timer_interrupt.png?raw=true
>>>       :height: 200px
>>>      - Poweroff sequence (from kernel back to firmware, NS-EL2 to
>>> EL3)
>>>    -.. image::
>>> https://fileserver.linaro.org/s/oR2PtyGKJrqnfRf/preview
>>> +.. image:: https://github.com/pbo-linaro/qemu-assets/blob/master/qemu-uftrace/poweroff.png?raw=true
>>>       :height: 200px
>>>      Build and run system example
>