SocketPlugin and 64 bit

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

SocketPlugin and 64 bit

Martin Kuball
Hi!

After having a working vm for linux-amd64 again, I tried to get the
network stuff up and running which has never worked for met on amd64.
Some debugging in gdb showed that the code for optaining the bytesize
of an array is broken in SocketPlugin. Some comparisions with the
Fileplugin showed that code like this from SocketPlugin:

  sz = interpreterProxy->byteSizeOf(((sqInt)(long)(name) - 4));

(where name is the adress of the first indexable field of an
ByteArray) does not work while

  pathNameSize = interpreterProxy->byteSizeOf(pathName);

(pathName beeing an oop from the stack) does work.

I changed the generated code and it works now. But of course something
has to be done at VMMaker level to realy solve the problem.

Martin


Reply | Threaded
Open this post in threaded view
|

Re: SocketPlugin and 64 bit

David T. Lewis
On Tue, Aug 08, 2006 at 08:34:37PM +0200, Martin Kuball wrote:

>  
> After having a working vm for linux-amd64 again, I tried to get the
> network stuff up and running which has never worked for met on amd64.
> Some debugging in gdb showed that the code for optaining the bytesize
> of an array is broken in SocketPlugin. Some comparisions with the
> Fileplugin showed that code like this from SocketPlugin:
>
>   sz = interpreterProxy->byteSizeOf(((sqInt)(long)(name) - 4));
>
> (where name is the adress of the first indexable field of an
> ByteArray) does not work while
>
>   pathNameSize = interpreterProxy->byteSizeOf(pathName);
>
> (pathName beeing an oop from the stack) does work.
>
> I changed the generated code and it works now. But of course something
> has to be done at VMMaker level to realy solve the problem.

Hi Martin,

It sounds like you may be using an outdated version of VMMaker. All
of the literal references to "4" were removed from the file and socket
plugins a long time ago.

The VMMaker on SqueakMap is version 3.8b6. In your development image,
if you evaluate "VMMaker versionString" should see something similar.

Dave

p.s. OSProcessPlugin, XDisplayControlPlugin, and AIOPlugin are also
updated for 64 bit, so you can include them in the build if you like.


Reply | Threaded
Open this post in threaded view
|

Re: SocketPlugin and 64 bit

Martin Kuball
Am Wednesday, 9. August 2006 12:34 schrieb David T. Lewis:

> On Tue, Aug 08, 2006 at 08:34:37PM +0200, Martin Kuball wrote:
> > After having a working vm for linux-amd64 again, I tried to get
> > the network stuff up and running which has never worked for met
> > on amd64. Some debugging in gdb showed that the code for
> > optaining the bytesize of an array is broken in SocketPlugin.
> > Some comparisions with the Fileplugin showed that code like this
> > from SocketPlugin:
> >
> >   sz = interpreterProxy->byteSizeOf(((sqInt)(long)(name) - 4));
> >
> > (where name is the adress of the first indexable field of an
> > ByteArray) does not work while
> >
> >   pathNameSize = interpreterProxy->byteSizeOf(pathName);
> >
> > (pathName beeing an oop from the stack) does work.
> >
> > I changed the generated code and it works now. But of course
> > something has to be done at VMMaker level to realy solve the
> > problem.
>
> Hi Martin,
>
> It sounds like you may be using an outdated version of VMMaker. All
> of the literal references to "4" were removed from the file and
> socket plugins a long time ago.
>
> The VMMaker on SqueakMap is version 3.8b6. In your development
> image, if you evaluate "VMMaker versionString" should see something
> similar.

It says 3.8b6. So it is up to date, isn't it?

By the way, I received only your mail to my private address, not the
one to the mailing list. Is there something wrong with the new list?
And it seems to be very quiet there, too? I got no response to my
other mail some days ago.

Martin

Reply | Threaded
Open this post in threaded view
|

Re: SocketPlugin and 64 bit

David T. Lewis
On Wed, Aug 09, 2006 at 11:49:16PM +0200, Martin Kuball wrote:

> Am Wednesday, 9. August 2006 12:34 schrieb David T. Lewis:
> > It sounds like you may be using an outdated version of VMMaker. All
> > of the literal references to "4" were removed from the file and
> > socket plugins a long time ago.
> >
> > The VMMaker on SqueakMap is version 3.8b6. In your development
> > image, if you evaluate "VMMaker versionString" should see something
> > similar.
>
> It says 3.8b6. So it is up to date, isn't it?

Yes that sounds right. So I am not sure what is causing the problem.
I know that I have been able to build 64 bit VMs for AMD, but I have
not done this recently. When I get some free time I will try it again
and confirm that it still works.

> By the way, I received only your mail to my private address, not the
> one to the mailing list. Is there something wrong with the new list?
> And it seems to be very quiet there, too? I got no response to my
> other mail some days ago.

My mail message did make it to the list, so I think the list is working.
But there are only a few people who pay attention to the vm-dev list,
and often they are busy.

Dave