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
A-runtimeArea: std's runtime and "pre-main" init for handling backtraces, unwinds, stack overflowsE-easyCall for participation: Easy difficulty. Experience needed to fix: Not much. Good first issue.
Currently the runtime assigns task id's (intptr_t) to each task, starting at 0. When the current task id hits INTPTR_MAX the runtime theoretically fails an assert and crashes. Would be sweet if the runtime didn't crash in this situation. Ports within a single task also have a similar problem, and soon schedulers will as well.
The text was updated successfully, but these errors were encountered:
It's probably a naive question but why don't you change rust_task_id to uint64_t and call it a day? I can see 2^31 overflowing given enough time but 2^64?
Stumbled across this. The newsched runtime doesn't actually have task ids, so this shouldn't be a bug anymore. @brson, should we just close it?
If task ids do end up a concept again, they will likely be a concept in a library wrapping tasks with "fun features", and so not the domain of the core runtime.
A-runtimeArea: std's runtime and "pre-main" init for handling backtraces, unwinds, stack overflowsE-easyCall for participation: Easy difficulty. Experience needed to fix: Not much. Good first issue.
Currently the runtime assigns task id's (intptr_t) to each task, starting at 0. When the current task id hits INTPTR_MAX the runtime theoretically fails an assert and crashes. Would be sweet if the runtime didn't crash in this situation. Ports within a single task also have a similar problem, and soon schedulers will as well.
The text was updated successfully, but these errors were encountered: