You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The MAX_UNTYPED_OBJECTS configuration value is too small for a newer x86 processor DornerWorks has been using. We've run into the issue in the past on a Qualcomm processor as well. Previously, I was just able to allocate 2 pages for the BootInfo struct, but changes in the seL4 kernel seem to hardcode the BootInfo struct to 1 page.
To get things booting on my processor card, I just created a new entry in the BootInfo enum, SEL4_BOOTINFO_HEADER_EXTRA_UNTYPEDS.
In provide_untyped_cap, if the untyped objects overflow, the object is added to the extra untypeds array. If the extra untypeds header doesn't exist, then the existing behavior of printing a warning and returning is true.
Is this a good solution to the problem? I can't just not provide these resources to userspace, as they're some of the largest memory chunks available.
The text was updated successfully, but these errors were encountered:
I have a pending branch axel-h#94 that allows simply increasing BI_FRAME_PAGES to provide more space for untyped caps array. Changing seL4_BootInfoFrameBits is still not possible due to the static order rootserver object are allocated. All that would break the ABI assumptions a root task might have. Your change with an extra region could implement things in a less breaking way. Do you have the patch somewhere?
I'll check to see if I'm allowed to release code. My goal was just to get something functional for now, but obviously I'd like to have things done properly, without any effect on the proof.
The MAX_UNTYPED_OBJECTS configuration value is too small for a newer x86 processor DornerWorks has been using. We've run into the issue in the past on a Qualcomm processor as well. Previously, I was just able to allocate 2 pages for the BootInfo struct, but changes in the seL4 kernel seem to hardcode the BootInfo struct to 1 page.
To get things booting on my processor card, I just created a new entry in the BootInfo enum,
SEL4_BOOTINFO_HEADER_EXTRA_UNTYPEDS
.Then I added an entry:
In
provide_untyped_cap
, if the untyped objects overflow, the object is added to the extra untypeds array. If the extra untypeds header doesn't exist, then the existing behavior of printing a warning and returning is true.Is this a good solution to the problem? I can't just not provide these resources to userspace, as they're some of the largest memory chunks available.
The text was updated successfully, but these errors were encountered: