Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 5 Oct 2011 17:56:10 +0530
From:      "Jayachandran C." <c.jayachandran@gmail.com>
To:        Kostik Belousov <kostikbel@gmail.com>
Cc:        mips@freebsd.org
Subject:   Re: Mips syscall entry point
Message-ID:  <CA%2B7sy7CKYLL7%2BMjB242=XkFP=S728m1=77%2BBqEra9KcmJ0tBKg@mail.gmail.com>
In-Reply-To: <CA%2B7sy7BfMgyw5E%2BP6QzcH02Fn4eMNiD%2B__d0Ji8Fjq9rXBg5Lg@mail.gmail.com>
References:  <20111004211144.GW1511@deviant.kiev.zoral.com.ua> <20111004215218.GY1511@deviant.kiev.zoral.com.ua> <CA%2B7sy7BfMgyw5E%2BP6QzcH02Fn4eMNiD%2B__d0Ji8Fjq9rXBg5Lg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
--0016e6de181e25f75804ae8c506c
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

On Wed, Oct 5, 2011 at 5:05 PM, Jayachandran C.
<c.jayachandran@gmail.com> wrote:
> On Wed, Oct 5, 2011 at 3:22 AM, Kostik Belousov <kostikbel@gmail.com> wro=
te:
>> 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). =A0The
> 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.

--0016e6de181e25f75804ae8c506c
Content-Type: text/x-patch; charset=US-ASCII; name="elf-syscall-fix.diff"
Content-Disposition: attachment; filename="elf-syscall-fix.diff"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_gteakctf0

ZGlmZiAtLWdpdCBhL3N5cy9taXBzL21pcHMvZWxmNjRfbWFjaGRlcC5jIGIvc3lzL21pcHMvbWlw
cy9lbGY2NF9tYWNoZGVwLmMKaW5kZXggOWZhMzFmYS4uZWUyNWVmNCAxMDA2NDQKLS0tIGEvc3lz
L21pcHMvbWlwcy9lbGY2NF9tYWNoZGVwLmMKKysrIGIvc3lzL21pcHMvbWlwcy9lbGY2NF9tYWNo
ZGVwLmMKQEAgLTgwLDggKzgwLDggQEAgc3RydWN0IHN5c2VudHZlYyBlbGY2NF9mcmVlYnNkX3N5
c3ZlYyA9IHsKIAkuc3ZfbWF4c3Npegk9IE5VTEwsCiAJLnN2X2ZsYWdzCT0gU1ZfQUJJX0ZSRUVC
U0QgfCBTVl9MUDY0LAogCS5zdl9zZXRfc3lzY2FsbF9yZXR2YWwgPSBjcHVfc2V0X3N5c2NhbGxf
cmV0dmFsLAotCS5zdl9mZXRjaF9zeXNjYWxsX2FyZ3MgPSBOVUxMLCAvKiBYWFhLSUIgKi8KLQku
c3Zfc3lzY2FsbG5hbWVzID0gTlVMTCwKKwkuc3ZfZmV0Y2hfc3lzY2FsbF9hcmdzID0gY3B1X2Zl
dGNoX3N5c2NhbGxfYXJncywKKwkuc3Zfc3lzY2FsbG5hbWVzID0gc3lzY2FsbG5hbWVzLAogCS5z
dl9zY2hlZHRhaWwJPSBOVUxMLAogfTsKIApkaWZmIC0tZ2l0IGEvc3lzL21pcHMvbWlwcy9lbGZf
bWFjaGRlcC5jIGIvc3lzL21pcHMvbWlwcy9lbGZfbWFjaGRlcC5jCmluZGV4IDQxNjExZTMuLjg1
YWRhMGIgMTAwNjQ0Ci0tLSBhL3N5cy9taXBzL21pcHMvZWxmX21hY2hkZXAuYworKysgYi9zeXMv
bWlwcy9taXBzL2VsZl9tYWNoZGVwLmMKQEAgLTgwLDcgKzgwLDcgQEAgc3RydWN0IHN5c2VudHZl
YyBlbGY2NF9mcmVlYnNkX3N5c3ZlYyA9IHsKIAkuc3ZfbWF4c3Npegk9IE5VTEwsCiAJLnN2X2Zs
YWdzCT0gU1ZfQUJJX0ZSRUVCU0QgfCBTVl9MUDY0LAogCS5zdl9zZXRfc3lzY2FsbF9yZXR2YWwg
PSBjcHVfc2V0X3N5c2NhbGxfcmV0dmFsLAotCS5zdl9mZXRjaF9zeXNjYWxsX2FyZ3MgPSBOVUxM
LCAvKiBYWFhLSUIgKi8KKwkuc3ZfZmV0Y2hfc3lzY2FsbF9hcmdzID0gY3B1X2ZldGNoX3N5c2Nh
bGxfYXJncywKIAkuc3Zfc3lzY2FsbG5hbWVzID0gc3lzY2FsbG5hbWVzLAogCS5zdl9zY2hlZHRh
aWwJPSBOVUxMLAogfTsKQEAgLTEzNiw3ICsxMzYsNyBAQCBzdHJ1Y3Qgc3lzZW50dmVjIGVsZjMy
X2ZyZWVic2Rfc3lzdmVjID0gewogCS5zdl9tYXhzc2l6CT0gTlVMTCwKIAkuc3ZfZmxhZ3MJPSBT
Vl9BQklfRlJFRUJTRCB8IFNWX0lMUDMyLAogCS5zdl9zZXRfc3lzY2FsbF9yZXR2YWwgPSBjcHVf
c2V0X3N5c2NhbGxfcmV0dmFsLAotCS5zdl9mZXRjaF9zeXNjYWxsX2FyZ3MgPSBOVUxMLCAvKiBY
WFhLSUIgKi8KKwkuc3ZfZmV0Y2hfc3lzY2FsbF9hcmdzID0gY3B1X2ZldGNoX3N5c2NhbGxfYXJn
cywKIAkuc3Zfc3lzY2FsbG5hbWVzID0gc3lzY2FsbG5hbWVzLAogCS5zdl9zY2hlZHRhaWwJPSBO
VUxMLAogfTsK
--0016e6de181e25f75804ae8c506c--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CA%2B7sy7CKYLL7%2BMjB242=XkFP=S728m1=77%2BBqEra9KcmJ0tBKg>