Skip site navigation (1)Skip section navigation (2)
From:      Serguei Tzukanov <tzukanov@narod.ru>
To:        freebsd-platforms@freebsd.org
Cc:        freebsd-hackers@freebsd.org
Subject:   A question about S/390 port
Message-ID:  <200207101554.09734.tzukanov@narod.ru>

next in thread | raw e-mail | index | archive | help
Some working notes.

I've written the libc/csu part, kernel successfully starts init and init 
forks off for the execve of -sh,
(http://tzukanov.narod.ru/freebsd390/bootlog.txt)
but there is problem with printing from userland, e.g. output from 
userland are not visible. Write syscall to descs 1,2 in init returns 
with success.
I'm sure it's something very stupid, so maybe someone have a clue?

And another problem (well-known?):
__syscall returns 64-bit value but mmap returns 4-byte word in the 
td->td_retval[0]. Wrapper for mmap in libc casts 64 rv to 32 and alays 
gets zero. This leads to truncating to zero due to cast on 32-bit 
big-endian architectures.
The solution is obvious - using constructs like
td->td_retval[_QUAD_LOWWORD] = xxx in MI code.

For now I just avoid it with hack in syscall handler.


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200207101554.09734.tzukanov>