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

freedos-specific problems #26

Closed
stsp opened this issue Oct 4, 2018 · 3 comments
Closed

freedos-specific problems #26

stsp opened this issue Oct 4, 2018 · 3 comments

Comments

@stsp
Copy link
Member

stsp commented Oct 4, 2018

Tracking bug.

dosemu2/dosemu2#50
https://github.com/stsp/dosemu2/blob/devel/src/dosext/misc/xms.c#L128
dosemu2/dosemu2#478

@andrewbird I've seen you were reporting some
bugs to the original freedos kernel, and even with
patches. How about moving them here and testing
your patches? Redirector works long ago, everything
is set and ready for a try.

@andrewbird
Copy link
Member

Sorry, I missed this as I haven't been watching for a while. I'll try out my patch later.

stsp added a commit that referenced this issue Dec 7, 2018
init_tos includes init_text, init_data, init_bss and init_stack.
Don't add init_text size the second time.
This fixes the crash with UMB at A0 as the stack then clashes
with this UMB.
@dosemu2 dosemu2 deleted a comment from andrewbird Dec 14, 2018
@dosemu2 dosemu2 deleted a comment from andrewbird Dec 14, 2018
@dosemu2 dosemu2 deleted a comment from andrewbird Dec 14, 2018
@dosemu2 dosemu2 deleted a comment from andrewbird Dec 14, 2018
@dosemu2 dosemu2 deleted a comment from andrewbird Dec 14, 2018
@dosemu2 dosemu2 deleted a comment from andrewbird Dec 14, 2018
@dosemu2 dosemu2 deleted a comment from andrewbird Dec 14, 2018
@dosemu2 dosemu2 deleted a comment from andrewbird Dec 14, 2018
@dosemu2 dosemu2 deleted a comment from andrewbird Dec 14, 2018
@dosemu2 dosemu2 deleted a comment from andrewbird Dec 14, 2018
@dosemu2 dosemu2 deleted a comment from andrewbird Dec 14, 2018
stsp added a commit that referenced this issue Dec 24, 2018
stsp added a commit that referenced this issue Dec 24, 2018
It seems the problem was in freedos's linker script.
stsp added a commit that referenced this issue Jan 13, 2019
Add every new MCB as MCB_LAST, instead of MCB_NORMAL.
With MCB_NORMAL as last MCB, there is a problem: prev_mcb()
may "complete" the chain by finding the MCBs from previous
boot, unless memset()ed by dosemu:
https://github.com/stsp/dosemu2/blob/devel/src/dosext/misc/xms.c#L128
In this case umb_prev appears to be a link even when inserting
above umb_max, and umb_next==umb_seg, after which umb_seg is
overwritten with a link.
Assertion is added to make sure umb_prev is not link when
inserting above umb_max.
@stsp
Copy link
Member Author

stsp commented Jan 13, 2019

I think everything here is fixed.

@stsp stsp closed this as completed Jan 13, 2019
@stsp
Copy link
Member Author

stsp commented Jan 13, 2019

And I'd say we are quite low on a bug count here,
so there are hopes to get out of beta this year. :)

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

2 participants