Mips syscall entry point
Jayachandran C.
c.jayachandran at gmail.com
Wed Oct 5 12:26:12 UTC 2011
On Wed, Oct 5, 2011 at 5:05 PM, Jayachandran C.
<c.jayachandran at gmail.com> wrote:
> On Wed, Oct 5, 2011 at 3:22 AM, Kostik Belousov <kostikbel at gmail.com> wrote:
>> On Wed, Oct 05, 2011 at 12:11:44AM +0300, Kostik Belousov wrote:
>>> Hi,
>>> below is the patch, test-compiled for XLP64 only, which converts the
>>> only remaining architecture MIPS to the new syscall entry sequence.
>>> The advantage of the conversion is sharing most of the code with all
>>> other architectures and avoiding duplication. Also, the implementation
>>> automatically feels the missed features for the MIPS, see the BUGS
>> s/feels/fills/, sorry
>>> section in the ptrace(2).
>> For the same reason, capsicum shall not work on MIPS.
>>
>>>
>>> I am asking for you help to debug and test the patch. Please keep me
>>> on Cc:, I am not on the list.
>>>
>>> Thank you.
>>>
>>> diff --git a/sys/mips/include/proc.h b/sys/mips/include/proc.h
>>> index 11a1f8e..4c0b0b6 100644
[...]
>
> This gives me a crash when I test it on XLR (32bit compile). The
> crash does not look obvious - I am looking at it, hope to resolve this
> soon.
Actually it is fairly obvious :) the elf*_machdep.c has to be updated
for using the cpu_fetch_syscall_args. With that change it comes up on
32 bit - will do a few more tests on 64 bit to see how that goes.
The other minor issue I saw was the locr0 usage in trap(), in call to
trapdebug_enter, it is fine now since TRAP_DEBUG is not defined.
JC.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: elf-syscall-fix.diff
Type: text/x-patch
Size: 1376 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-mips/attachments/20111005/01e4a683/elf-syscall-fix.bin
More information about the freebsd-mips
mailing list