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

pape causes OS to freeze in qemu #15

Open
spencerking opened this issue Dec 29, 2019 · 5 comments
Open

pape causes OS to freeze in qemu #15

spencerking opened this issue Dec 29, 2019 · 5 comments

Comments

@spencerking
Copy link

Release: 0.0.5
Qemu options: qemu-system-x86_64 -hda disk.img -vga std -m 512M -serial stdio

I cd'd into /share/papes and ran pape pape.png and the OS froze and my machine's fans spun up rapidly.

Here is qemu's output in my terminal:

rbp=2d0 
rdi=2
rsi=0
r15=100000080
r14=ffffffff
r13=100002130
r12=2d000000500
r11=246
r10=0
r9=0
r8=17
rdx=4414fc
rcx=0
rbx=1
rax=17
int_no=6
errcode=0
rip=4375a0
cs=2b
rflags=202
userrsp=7ffffffd88
ss=23
process: pape
6 0
@ffwff
Copy link
Owner

ffwff commented Dec 29, 2019

Can you compile the kernel with CPU exception handling disabled (passing NO_CPUEX=1 to make) and show me at which function did it break?

@spencerking
Copy link
Author

Doubtful, but I will try. I never did get the project building.

@ffwff
Copy link
Owner

ffwff commented Dec 29, 2019

This isn't related to this issue, so could you open another one and tell me more about the build process and where it fails?

@ghost
Copy link

ghost commented Jan 5, 2020

Okay, the image currently doesn't run in debug mode so I couldn't get any function-name diagnostics, but here's what I got with release mode. (typing pape /share/papes/pape.png in cterm) The bottom three lines were printed and lilith froze.

scorbie@home:~/Projects/lilith$ make run_img RELEASE=1 NO_CPUEX=1
CR src/main.cr
LD64 build/main.o build/boot.o => build/kernel64
objcopy --output-target=binary build/kernel64 build/kernel64.bin
AS32 src/asm/bootstrap.s
i686-elf-as src/asm/bootstrap.s -o build/bootstrap.o
LD build/bootstrap.o => build/kernel
qemu-system-x86_64 -kernel build/kernel -monitor telnet:127.0.0.1:7777,server,nowait -m 512M -serial stdio -no-shutdown -no-reboot -vga std -device intel-hda,debug=9 -device hda-duplex,cad=0,debug=9 -hda disk.img
WARNING: Image format was not specified for 'disk.img' and probing guessed raw.
         Automatically detecting the format is dangerous for raw images, write operations on block 0 will be restricted.
         Specify the 'raw' format explicitly to remove the restrictions.
qemu-system-x86_64: warning: TCG doesn't support requested feature: CPUID.01H:ECX.vmx [bit 5]
hda-duplex: hda_audio_init: cad 0
hda-duplex: dac: format: 2 x PCM-S16 @ 48000 Hz
hda-duplex: adc: format: 2 x PCM-S16 @ 48000 Hz
hda-duplex: hda_audio_reset
hda-duplex: hda_audio_reset
intel-hda: intel_hda_update_irq: level 0 [intx]
no handler for 14
no handler for 15
no handler for 15
unknown device type!
no handler for 1
no handler for 12
multiple backgrounds
retval == -1
casting nil to not-nil!

I'm not sure if this is helpful enough.

@ffwff
Copy link
Owner

ffwff commented Jan 5, 2020

The window manager currently doesn't support multiple background windows. I may need to add a communication pipe to pape in order to change backgrounds.

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

2 participants