If I execute this code:
```Smalltalk
ZnClient new url: 'https://google.com'; get.
```
I get a result.
If I execute this code:
```Smalltalk
ZnClient new url: 'https://github.com'; get.
```
I get this error: Error: SSL Exception: connect failed [code:-5]
I tried with both stable and latest vm. (The stable is from august 2017 I think)
I sent a mail on the Pharo dev ML and we are at least two having this problem with Windows 7 when it's working with Windows 10.
Here are the details and the stack:
```
Image
-----
E:\Pharo\images\Pharo 7.0 (development version)-22\Pharo 7.0
(development version)-22.image
Pharo7.0alpha
Build information:
Pharo-7.0+alpha.build.749.sha.039a4b6f0d61ba99778349c4cff2c4e8d5ff9227
(32 Bit)
Unnamed
Virtual Machine
---------------
C:\Users\JeCisC\Documents\Pharo\vms\70-x86\Pharo.exe
CoInterpreter VMMaker.oscog-eem.2359 uuid:
b3273e3e-dd9d-4819-a928-7034e1cf412c Mar 16 2018
StackToRegisterMappingCogit VMMaker.oscog-eem.2359 uuid:
b3273e3e-dd9d-4819-a928-7034e1cf412c Mar 16 2018
VM: 201803161038 https://github.com/OpenSmalltalk/opensmalltalk-vm.git $
Date: Fri Mar 16 11:38:09 2018 +0100 $ Plugins: 201803161038
https://github.com/OpenSmalltalk/opensmalltalk-vm.git $
Win32 built on Mar 16 2018 11:02:19 GMT Compiler: 6.4.0
VMMaker versionString VM: 201803161038
https://github.com/OpenSmalltalk/opensmalltalk-vm.git $ Date: Fri Mar 16
11:38:09 2018 +0100 $ Plugins: 201803161038
https://github.com/OpenSmalltalk/opensmalltalk-vm.git $
CoInterpreter VMMaker.oscog-eem.2359 uuid:
b3273e3e-dd9d-4819-a928-7034e1cf412c Mar 16 2018
StackToRegisterMappingCogit VMMaker.oscog-eem.2359 uuid:
b3273e3e-dd9d-4819-a928-7034e1cf412c Mar 16 2018
Operating System/Hardware
-------------------------
Win32 6.1 IX86
Operating System Details
------------------------
Operating System: Windows 7 Professional N (Build 7601 Service Pack 1)
SP major version: 1
SP minor version: 0
Suite mask: 100
Product type: 1
==============================================================
ZdcSecureSocketStream(Object)>>error:
ZdcSecureSocketStream>>sslException:code:
ZdcSecureSocketStream>>connect
ZnClient>>setupTLSTo:
ZnClient>>newConnectionTo:
ZnClient>>getConnectionAndExecute
ZnClient>>executeWithRedirectsRemaining:
[ self executeWithRedirectsRemaining: self maxNumberOfRedirects ] in
ZnClient>>executeWithRetriesRemaining: in Block: [ self
executeWithRedirectsRemaining: self maxNumb...etc...
BlockClosure>>on:do:
ZnClient>>executeWithRetriesRemaining:
[ self executeWithRetriesRemaining: self numberOfRetries ] in [ [ self
executeWithRetriesRemaining: self numberOfRetries ]
on: Error
do: self ifFailBlock ] in ZnClient>>executeWithTimeout in Block: [ self
executeWithRetriesRemaining: self numberOfR...etc...
BlockClosure>>on:do:
[ [ self executeWithRetriesRemaining: self numberOfRetries ]
on: Error
do: self ifFailBlock ] in ZnClient>>executeWithTimeout in Block: [ [
self executeWithRetriesRemaining: self numberO...etc...
[ ^ block value ] in ZnClient>>withTimeoutDo: in Block: [ ^ block value ]
[ activeProcess psValueAt: index put: anObject.
aBlock value ] in ZnConnectionTimeout(DynamicVariable)>>value:during: in
Block: [ activeProcess psValueAt: index put: anObject....
BlockClosure>>ensure:
ZnConnectionTimeout(DynamicVariable)>>value:during:
ZnConnectionTimeout class(DynamicVariable class)>>value:during:
ZnClient>>withTimeoutDo:
ZnClient>>executeWithTimeout
[ result := self executeWithTimeout ] in ZnClient>>execute in Block: [
result := self executeWithTimeout ]
[ ^ block value ] in ZnClient>>withProgressDo: in Block: [ ^ block value ]
[ activeProcess psValueAt: index put: anObject.
aBlock value ] in ZnSignalProgress(DynamicVariable)>>value:during: in
Block: [ activeProcess psValueAt: index put: anObject....
BlockClosure>>ensure:
ZnSignalProgress(DynamicVariable)>>value:during:
ZnSignalProgress class(DynamicVariable class)>>value:during:
ZnClient>>withProgressDo:
ZnClient>>execute
ZnClient>>get
UndefinedObject>>DoIt
```
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/236
*I have copied the below issue from https://github.com/hpi-swa/smalltalkCI/issues/366.*
Hi!
Time to time, the Pharo VM crashes, without any apparent reasons.
For example, in https://travis-ci.org/ObjectProfile/Roassal2/jobs/365943067
```
VM: 201708271955 https://github.com/OpenSmalltalk/opensmalltalk-vm.git $ Date: Sun Aug 27 21:55:26 2017 +0200 $
Plugins: 201708271955 https://github.com/OpenSmalltalk/opensmalltalk-vm.git $
C stack backtrace & registers:
eax 0x1e750080 ebx 0x00000100 ecx 0x00000020 edx 0x00000002
edi 0x00000020 esi 0x00000020 ebp 0xbff09c58 esp 0xbff09c58
eip 0x000e848d
0 Pharo 0x000e848d fetchByteofObject + 9
1 Pharo 0x00149400 reportStackState + 819
2 Pharo 0x001497a2 sigsegv + 191
3 libsystem_platform.dylib 0xa1742e5b _sigtramp + 43
```
And a bit below:
```
Smalltalk
Smalltalk stack dump:
0xbff11ce8 I SessionManager>snapshot:andQuit: 0x6b496a8: a(n) SessionManager
0xbff11d18 I [] in SmalltalkImage>snapshot:andQuit: 0x5517fa0: a(n) SmalltalkImage
0xbff11d3c I CurrentExecutionEnvironment class>activate:for: 0x5af3520: a(n) CurrentExecutionEnvironment class
0xbff11d64 I DefaultExecutionEnvironment(ExecutionEnvironment)>beActiveDuring: 0x5e2bc70: a(n) DefaultExecutionEnvironment
0xbff11d88 I DefaultExecutionEnvironment class>beActiveDuring: 0x5b1d8a8: a(n) DefaultExecutionEnvironment class
0xbff11dac I SmalltalkImage>snapshot:andQuit: 0x5517fa0: a(n) SmalltalkImage
```
It seems to happens randomly
/cc @bergel
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/252
A plain ./mvm build on MacOS 10.13.4 (in any of the build.macos64x64/pharo.* directories) fails with this error:
> utils-prng.c:207:27: error: use of unknown builtin '__builtin_shuffle' [-Wimplicit-function-declaration]
> randdata.vb = __builtin_shuffle (randdata.vb, bswap_shufflemask);
> ^
> utils-prng.c:207:25: error: assigning to 'uint8x16' (vector of 16 'uint8_t' values) from incompatible type 'int'
> randdata.vb = __builtin_shuffle (randdata.vb, bswap_shufflemask);
> ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
It's trying to build the tests for pixman. There is a patch for this bug here: https://bugs.freedesktop.org/show_bug.cgi?id=104886
But when I apply the patch, the patched utils-prng.c file gets overwritten with the old version by something in the build or configure step, so the patch disappears and the build error returns.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/258
I want to simulate VM from a Spur64VMMaker.image
Unfortunately, it gets really difficult to compile Bochs plugins these days...
WINDOWS (cygwin64):
$ cd processors/IA32/winbochs/
$ source ./conf.COG
> checking build system type... ../bochs/config.guess: unable to guess system type
>
> This script, last modified 2002-03-20, has failed to recognize
> the operating system you are using. It is advised that you
> download the most up to date version of the config scripts from
>
> ftp://ftp.gnu.org/pub/gnu/config/
>
> If the version you run (../bochs/config.guess) is already up to date, please
> send the following data and any information you think might be
> pertinent to <config-patches(a)gnu.org> in order to provide the needed
> information to handle your system.
>
> config.guess timestamp = 2002-03-20
>
> uname -m = x86_64
> uname -r = 3.0.7(0.338/5/3)
> uname -s = CYGWIN_NT-10.0
> uname -v = 2019-04-30 18:08
>
> /usr/bin/uname -p = unknown
>
MAC (Darwin 17.7.0 Xcode 10.1):
$ cd processors/IA32/macbochs
$ ./conf.COG
> checking build system type... i386-apple-darwin17.7.0
> checking host system type... i386-apple-darwin17.7.0
> checking target system type... i386-apple-darwin17.7.0
> checking if you are configuring for another platform... no
> checking for standard CFLAGS on this platform... -fpascal-strings -fno-common -Wno-four-char-constants -Wno-unknown-pragmas -Dmacintosh
> checking for gcc... gcc
> checking for C compiler default output file name...
> configure: error: C compiler cannot create executables
> See `config.log' for more details.
> cp config.h bochsconfig.h
> cp: config.h: No such file or directory
> and don't forget to run ../bochs/makeem
LINUX (Ubuntu 18.04 thru WSL)
$ cd processors/IA32/linuxbochs
$ ./conf.COG
> checking build system type... x86_64-unknown-linux-gnu
> checking host system type... x86_64-unknown-linux-gnu
> checking target system type... x86_64-unknown-linux-gnu
> checking if you are configuring for another platform... no
> checking for standard CFLAGS on this platform...
> checking for gcc... gcc
> checking for C compiler default output file name... a.out
> checking whether the C compiler works... configure: error: cannot run C compiled programs.
> If you meant to cross compile, use `--host'.
> See `config.log' for more details.
> cp config.h bochsconfig.h
> cp: cannot stat 'config.h': No such file or directory
> and don't forget to run ../bochs/makeem
The problem is that the Bochs copy is super old. So we won't get support for compilation on uptodate machines...
We cannot upgrade easily, since there are COG specific changes requiring to be replayed...
`grep -r COG processors\IA32`.
I also have doubts about the `conf.COG` files:
is `--disable-x86-64` really what we want?
https://github.com/OpenSmalltalk/opensmalltalk-vm/blob/e77147b63208fb40a9a1…https://github.com/OpenSmalltalk/opensmalltalk-vm/blob/Cog/processors/IA32/…
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/427
Hello,
I have a small issue when building (cross-compile) the Smalltalk VM on an ARM(v6) embedded linux system (Nano Pi neno and Raspberry Pi Zero) that uses Musl as default libc implementation.
The problem is that the code and the configure script does not have official support for Musl, so I created a patch file that adds support to Musl, you can find the [patch here](https://github.com/lxsang/antix/blob/master/sm_vm_musl.patch).
With this patch, i am able to cross-compile on the ARM toolchain for my system; with 4 plugins:
```
FilePlugin \
SqueakSSL \
SqueakFFIPrims \
SocketPlugin
```
You can find the build [script here](https://github.com/lxsang/antix/blob/master/packages/smalltalk-nano-p…
For now, i can live with this dirty trick, but i would be verry happy if the mainline VM has official support to Musl.
That's why i create this issue.
Thanks
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/304
I have more and more algorithms depending on highBit and the code is fast yet but not enough (appears in tally espcially in Spur64)...
The primitive could use the Count Leading Zero instructions available on most uproc via gcc builtin_clz or MSVC __lzcnt, 32 and 64 bits variants.
Something like this pseudo code:
leadingZeroCount := builtin_clz( taggedIntegerReceiver );
if (clz == 0) return primitiveFail();
else {
highBit := WordSize * 8 "CHAR_BIT" - numTagBits - leadingZeroCount;
return makeSmallInteger( highBit );
}
This primitive should be jitted of course (easy, just need to add an instruction).
Primitive fallback code would aggregate < 0 failure test case + code of highBitOfPositiveReceiver if primitive is absent (no need for two messages, in most case the primitive will be here and fast enough).
Is a primitive number mandatory for being jitted?
If yes, how to reserve/allocate one?
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/418
Sharing an interesting paper I bumped into..
> A fork() in the road
>
https://www.microsoft.com/en-us/research/uploads/prod/2019/04/fork-hotos19.…
in particular Figure 1 - fork versus spawn performance
And something I didn't realise...
> a process using, DPDK with a kernel-bypass NIC [12], or OpenCL with a
GPU,
> cannot safely fork since the OS cannot duplicate the process state on the
NIC/GPU.
> This appears to have been a continuing source of bafflement
> among GPU programmers for a decade at least
cheers -ben
Currently it is only possible to maximize Squeak by using the button in the MainDockingBar (it is not possible by using the green button on the window what is slightly unexpected but ok).
The fullscreen I get is a Squeak that looks like a typical Mac fullscreen but has several drawbacks:
* it is not a new desktop with only the app, but consumes the current desktop
* if you change desktop you get strange behaviour with the dock appearing
* if you use a second monitor and have a Squeak in fullscreen on your first you get a black background stretched over the whole second monitor
The expected behaviour for fullscreen would be a native Mac OS fullscreen.
(@ronsaldo someone mentioned to me that is due to the new metalshaders)
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/407