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

Vita kernel limits the number of pre-loaded modules #68

Closed
yifanlu opened this issue May 13, 2017 · 1 comment
Closed

Vita kernel limits the number of pre-loaded modules #68

yifanlu opened this issue May 13, 2017 · 1 comment
Assignees

Comments

@yifanlu
Copy link
Owner

yifanlu commented May 13, 2017

If you try to load > 2 user plugins, the app will refuse to start. The observed behavior is seen here: henkaku/henkaku#56

There is some internal mechanism that limits the number of preloaded modules to (?) 16. We should find and patch out this limit.

@yifanlu yifanlu self-assigned this May 13, 2017
@yifanlu
Copy link
Owner Author

yifanlu commented May 13, 2017

Root caused the problem. int SceModulemgrForKernel_432DCC7A(int pid) is a function that gets a list of preloaded modules and starts each one. It is called by SceProcessmgr to start every preloaded module. Unfortunately, the module list is stored in the stack with a hard coded size of 15 elements. That means a maximum of 15 modules can be loaded (although good job not overflowing anything) and error is silently ignored--so the earliest preloaded modules are not actually started.

Anyone want to file a ticket with SCE? ;)

To fix this, I will write a patch that increases the limit to a much larger size.

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

No branches or pull requests

1 participant