Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Any plan to bump QEMU version? #1798

Open
reitowo opened this issue Mar 3, 2023 · 11 comments
Open

Any plan to bump QEMU version? #1798

reitowo opened this issue Mar 3, 2023 · 11 comments

Comments

@reitowo
Copy link

reitowo commented Mar 3, 2023

I see unicorn is inevitably strongly coupled to QEMU, so it is hard to merge upstream changes since it is completely off track.
However the current version 5.0.1 is kind of out-dated and some new target like RISC-V has many changes since 2019.
Is there any plan to keep the track?

@wtdcode
Copy link
Member

wtdcode commented Mar 3, 2023

Yes, we indeed plan to do so but as said in the FAQ it's impossible to always keep Unicorn sync-ed with upstream QEMU.

@aquynh
Copy link
Member

aquynh commented Mar 3, 2023 via email

@reitowo
Copy link
Author

reitowo commented Mar 3, 2023

Thanks for your good work! I find out that you modified all tcg functions to make it instantiable, which is a huge work if not tools assisted.

@reitowo
Copy link
Author

reitowo commented Mar 4, 2023

A probably fool question:
Since tcg context is thread local, why not create thread for each uc instance to isolate the tcg contexts, which we can avoid modify all tcg functions with a this pointer.

@github-actions
Copy link

github-actions bot commented May 3, 2023

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 15 days.

@github-actions github-actions bot added the stale label May 3, 2023
@wtdcode wtdcode added enhancement and removed stale labels May 3, 2023
@wtdcode
Copy link
Member

wtdcode commented May 3, 2023

A probably fool question: Since tcg context is thread local, why not create thread for each uc instance to isolate the tcg contexts, which we can avoid modify all tcg functions with a this pointer.

Porting mtcg is not helpful for Unicorn API design I think.

@XVilka
Copy link

XVilka commented Aug 24, 2023

The current latest version of QEMU is 8.1: https://wiki.qemu.org/ChangeLog/8.1

You might want to consider eventual porting of at least some of the features to TCG plugins, like some other projects do:

@wtdcode
Copy link
Member

wtdcode commented Aug 24, 2023

The current latest version of QEMU is 8.1: https://wiki.qemu.org/ChangeLog/8.1

You might want to consider eventual porting of at least some of the features to TCG plugins, like some other projects do:

I have been keeping an eye on TCG plugins development and I think it's possible to migrate all unicorn-specific hack to TCG plugins, though meaning bunch of rework.

@aquynh
Copy link
Member

aquynh commented Aug 24, 2023 via email

@daxie117
Copy link

daxie117 commented May 9, 2024

can i request some elaboration here?

is the concern primarily the fact that TCG plugins are merely observers of system state, whereas the arch of unicorn engine allows the user to completely control and manipulate system state?

@wtdcode
Copy link
Member

wtdcode commented May 10, 2024 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants