Author Topic: Any Hardcore Openbsd Folks That Can Answer This?  (Read 3731 times)

iamasmith

  • Hero Member
  • *****
  • Posts: 1248
    • View Profile
Any Hardcore Openbsd Folks That Can Answer This?
« on: January 13, 2006, 03:02:25 pm »
Hi,

I have tried OpenBSD several times over the last couple of releases and several snapshots in between.

During that time I have actually compiled the whole of Gnome from the ports archive. The last time it actually ran but all the applets died and scrollkeeper still kept dieying with a segment violation.

I believe there is no common X environment better than the OpenBSD environment at present but my 'holy grail' is stability.

Please can someone tell me is the problem related to lazy casting in Gnome/Scrollkeeper (I know that arm treats unspecified signed types differently on different architectures) or is the problem more fundamental and related to immaturity of ARM support in GCC etc.

As my main interest at the moment is coding Python I think that OpenBSD is a nice fully functional environment for me to do it on and I will produce an initrd.bin that can boot the environment leaving the whole disk available for OpenBSD but I hesitate only because of my concerns over the binary stuff and potential arm/gcc stability issues.

- Andy
OpenBSD 4.2 -current on full 4Gb of SL-C3000
Microdrive replaced with 4Gb SanDisk Extreme III card

barryg

  • Jr. Member
  • **
  • Posts: 60
    • View Profile
    • http://web.kssp.upd.edu.ph/barry/zaurus/
Any Hardcore Openbsd Folks That Can Answer This?
« Reply #1 on: January 13, 2006, 11:42:01 pm »
Quote
Hi,

<SNIP>
During that time I have actually compiled the whole of Gnome from the ports archive. The last time it actually ran but all the applets died and scrollkeeper still kept dieying with a segment violation.
[div align=\"right\"][{POST_SNAPBACK}][/a][/div]
You *are* a very patient man. ;)

Quote
<SNIP>
Please can someone tell me is the problem related to lazy casting in Gnome/Scrollkeeper (I know that arm treats unspecified signed types differently on different architectures) or is the problem more fundamental and related to immaturity of ARM support in GCC etc.
<SNIP>
[div align=\"right\"][a href=\"index.php?act=findpost&pid=110851\"][{POST_SNAPBACK}][/a][/div]
First off, use the latest arm packages[0], there already is a large part of gnome precompiled
(it even has minimo!). Then compile the scrollkeeper port.

Quote
- Andy
[div align=\"right\"][a href=\"index.php?act=findpost&pid=110851\"][{POST_SNAPBACK}][/a][/div]

Mabuhay! barryg

[0]
[a href=\"ftp://ftp.openbsd.org/pub/OpenBSD/snapshots/packages/arm/]ftp://ftp.openbsd.org/pub/OpenBSD/snapshots/packages/arm/[/url]

iamasmith

  • Hero Member
  • *****
  • Posts: 1248
    • View Profile
Any Hardcore Openbsd Folks That Can Answer This?
« Reply #2 on: January 14, 2006, 06:08:45 am »
Quote
Quote
Hi,

<SNIP>
During that time I have actually compiled the whole of Gnome from the ports archive. The last time it actually ran but all the applets died and scrollkeeper still kept dieying with a segment violation.
[div align=\"right\"][{POST_SNAPBACK}][/a][/div]
You *are* a very patient man.

Quote
<SNIP>
Please can someone tell me is the problem related to lazy casting in Gnome/Scrollkeeper (I know that arm treats unspecified signed types differently on different architectures) or is the problem more fundamental and related to immaturity of ARM support in GCC etc.
<SNIP>
[div align=\"right\"][a href=\"index.php?act=findpost&pid=110851\"][{POST_SNAPBACK}][/a][/div]
First off, use the latest arm packages[0], there already is a large part of gnome precompiled
(it even has minimo!). Then compile the scrollkeeper port.

Quote
- Andy
[div align=\"right\"][a href=\"index.php?act=findpost&pid=110851\"][{POST_SNAPBACK}][/a][/div]

Mabuhay! barryg

[a href=\"ftp://ftp.openbsd.org/pub/OpenBSD/snapshots/packages/arm/]ftp://ftp.openbsd.org/pub/OpenBSD/snapshots/packages/arm/[/url]
[div align=\"right\"][a href=\"index.php?act=findpost&pid=110905\"][{POST_SNAPBACK}][/a][/div]

Thanks Barry, yes it takes a while to do the builds from Ports but I'm assuming that the arm Packages are compatible with the OpenBSD/cats distro too so that would be unoptimised sa1100 code rather than XScale.

Scrollkeeper is a problem though, it segfaults all the time and the question was really to find out if anyone thought this was a problem with Scrollkeepers coding or arm gcc.

BTW I am using my own initrd.bin to run the whole 4Gb drive with OpenBSD, I will try to make time to produce something that is 'friendly' for other users wanting to do this at some stage. I think it would be nice to have the Linux boot stuff in initrd check for updated versions of zboot/bsd.rd/zbsdmod.o on SD or CF card and compare them against what is in flash (m5dsum to /tmp and then diff that against one stored in flash) then offer the option of copying these to flash and starting with an install (cp bsd.rd /proc/zboot rather than using zboot binary). That way we have a standard initrd that offers a simple upgrade process.

Finally, I have to say that last night I took the 12 Jan 06 snapshot and installed again... it rocks, power button is mapped as standard and it's very, very fast for a Microdrive based distro even on suspend/resume.
- Andy
« Last Edit: January 14, 2006, 06:35:52 am by iamasmith »
OpenBSD 4.2 -current on full 4Gb of SL-C3000
Microdrive replaced with 4Gb SanDisk Extreme III card

iamasmith

  • Hero Member
  • *****
  • Posts: 1248
    • View Profile
Any Hardcore Openbsd Folks That Can Answer This?
« Reply #3 on: January 15, 2006, 06:31:58 am »
I'm still building up my base system to a useful point.... omg!, xfce4 is so great looking on this device and completely standard install - just like the desktop based install of OpenBSD. It is so great not to have to do things which aren't 'Sharp quirky' to get things to run. For example to get the battery monitor working I just edited /etc/rc.conf, enabled the apmd, rebooted and added the applet to xfce4 - fantastic!

It's also nice to be able to run all this stuff as NON root

I think I'm sold on this distro and am going to move my desktop to OpenBSD too - lets see if it's a little more stable than Gentoo.
« Last Edit: January 15, 2006, 06:32:23 am by iamasmith »
OpenBSD 4.2 -current on full 4Gb of SL-C3000
Microdrive replaced with 4Gb SanDisk Extreme III card

Sequethin

  • Jr. Member
  • **
  • Posts: 72
    • View Profile
Any Hardcore Openbsd Folks That Can Answer This?
« Reply #4 on: January 17, 2006, 10:30:42 am »
Quote
I'm still building up my base system to a useful point.... omg!, xfce4 is so great looking on this device and completely standard install - just like the desktop based install of OpenBSD. It is so great not to have to do things which aren't 'Sharp quirky' to get things to run. For example to get the battery monitor working I just edited /etc/rc.conf, enabled the apmd, rebooted and added the applet to xfce4 - fantastic!

It's also nice to be able to run all this stuff as NON root

I think I'm sold on this distro and am going to move my desktop to OpenBSD too - lets see if it's a little more stable than Gentoo.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=111015\"][{POST_SNAPBACK}][/a][/div]


So you find xfce on the z to run fast enough as to be usable? I tried it once a while ago on my desktop but I can't remember if I needed to right/middle click a lot. I was thinking of using icewm for the simple fact that there is really no need to right click (and it's fairly lightweight too). Right now I use the z in text mode 100% of the time but I might consider dropping to a 50/50 split (i.e. an xterm haha) if xfce runs quick enough.

iamasmith

  • Hero Member
  • *****
  • Posts: 1248
    • View Profile
Any Hardcore Openbsd Folks That Can Answer This?
« Reply #5 on: January 17, 2006, 11:51:45 am »
I built XFCE4 for OpenBSD on the Z and once I had turned off the AntiAliasing it seemed attractive enough to live with the speed, however, it was a little unstable and the bar kept crashing... then when I relaunched the bar the Window manager crashed.

Then I tried the same version out on OpenBSD running on VMWare and it behaved exactly the same

I have switched over to running WindowMaker for the time being which is nice and very easy to customise once you understand the environment... it's also much lighter weight than XFCE.

If I really need as much free memory as possible I still switch back to X and TWM though.

So far the only complaints I have with OpenBSD are that the gtk, gdk, pygtk etc.etc. are all a little old. I'm interested in running Python and since gtk is 2.2.6.10 (with a patch) it means that I would have to rebuild a helluva lot of base stuff from unpatched source to get 2.9 (or 2.8) gtk required to have the latest version of pygtk which is required to do things like put images on buttons.

I have had a lot of 'easy wins' though in building stuff... for example gtkam just built no problem, plugged in my IXUS 750 and I could browse and download images... Gimp is a little sluggish at editing a JPEG from a 7 Megapixel camera on a Z though - lol, as you can see it has tried to make a 27Mb image cache  

 [ Invalid Attachment ]

I have also had a couple of occasions where the whole X server has crashed and exited leaving the console unusable... not sure what happened to the console tty here but the frame buffer seemed to be in a state where I couldn't do anything. My only way out of it was to restart the X server from an ssh session and then gracefully close it down.... I may switch on xdm instead... at least this should clear up the frame buffer if xinit dies in future. Note that this has only happened whilst I was doing something heavy with a compile running in the background (typically when the swap partition was getting hit a lot)... I'm starting to wonder about event queueing problems in these circumstances since dmesg seems to be hinting that there were a lot of missed events from wxmouse.

One thing that I couldn't get answered before I installed was if OpenBSD on this platform used a software floating point library linked into executables or required on trap emulation of fp instruction (hardware emulation in kernel). So for anyone interested in knowing the answer here is the evidence...

$ gdb test
GNU gdb 6.3
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "arm-unknown-openbsd3.8"...
(gdb) list
1       #include <stdio.h>
2
3       main()
4       {
5               float f1, f2, f3;
6               f1=3.14159;
7               f2=2.37653;
8               f3=f2/f1;
9       }
(gdb) disassemble main
Dump of assembler code for function main:
0x0000872c <main+0>:    mov     r12, sp
0x00008730 <main+4>:    stmdb   sp!, {r11, r12, lr, pc}
0x00008734 <main+8>:    sub     r11, r12, #4    ; 0x4
0x00008738 <main+12>:   sub     sp, sp, #16     ; 0x10
0x0000873c <main+16>:   ldr     r3, [pc, #36]   ; 0x8768 <$d>
0x00008740 <main+20>:   str     r3, [r11, #-16]
0x00008744 <main+24>:   ldr     r3, [pc, #32]   ; 0x876c <$d+4>
0x00008748 <main+28>:   str     r3, [r11, #-20]
0x0000874c <main+32>:   ldr     r0, [r11, #-20]
0x00008750 <main+36>:   ldr     r1, [r11, #-16]
0x00008754 <main+40>:   bl      0x84a8 <__divsf3>
0x00008758 <main+44>:   mov     r3, r0
0x0000875c <main+48>:   str     r3, [r11, #-24]
0x00008760 <main+52>:   mov     r0, r3
0x00008764 <main+56>:   ldmdb   r11, {r11, sp, pc}
0x00008768 <$d+0>:      ldrmid  r0, [r9], #-240
0x0000876c <$d+4>:      andmis  r1, r8, r1, lsl r9
End of assembler dump.
(gdb)

As you can see the simple C program (compiled with no special flags) generates calls to a floating point software library (bl 0x84a8 <__divsf3>), this would actually be the floating point instruction if this were a hardware emulation based system.

- Andy
« Last Edit: January 17, 2006, 12:26:34 pm by iamasmith »
OpenBSD 4.2 -current on full 4Gb of SL-C3000
Microdrive replaced with 4Gb SanDisk Extreme III card

Sequethin

  • Jr. Member
  • **
  • Posts: 72
    • View Profile
Any Hardcore Openbsd Folks That Can Answer This?
« Reply #6 on: January 17, 2006, 02:02:32 pm »
Interesting findings! I'll probably stick with my console for now. Usually I just shell into it anyway, I use my powerbook if I need a gui. I'm just waiting for openbsd on the zaurus to catch up with pdaxrom in terms of gui functionality. It really was/is nice on my 860.  A gui pim on my pda still looks to be far off in the future.... openbsd 4.0 maybe?  

Sequethin

  • Jr. Member
  • **
  • Posts: 72
    • View Profile
Any Hardcore Openbsd Folks That Can Answer This?
« Reply #7 on: January 17, 2006, 03:18:21 pm »
haha hey I just noticed this:

 "Cacko ROM 1.23 is released. Supporting Zaurus models are: SL-C1000, SL-C3100 in addition to SL-C7x0/SL-C860. Note that SL-C3000 is not supported yet, but I hope Andy (aka iamasmith) will release proper version soon."



iamasmith

  • Hero Member
  • *****
  • Posts: 1248
    • View Profile
Any Hardcore Openbsd Folks That Can Answer This?
« Reply #8 on: January 19, 2006, 05:33:47 am »
Actually I don't know if this is realated in anyway to some of the new -current fork changes that came into play over the last few days but xfce4 seems to be stable now on my Zaurus  and it's not too painfully slow to use either
OpenBSD 4.2 -current on full 4Gb of SL-C3000
Microdrive replaced with 4Gb SanDisk Extreme III card

Sequethin

  • Jr. Member
  • **
  • Posts: 72
    • View Profile
Any Hardcore Openbsd Folks That Can Answer This?
« Reply #9 on: January 22, 2006, 07:24:15 pm »
Quote
Actually I don't know if this is realated in anyway to some of the new -current fork changes that came into play over the last few days but xfce4 seems to be stable now on my Zaurus  and it's not too painfully slow to use either
[div align=\"right\"][a href=\"index.php?act=findpost&pid=111555\"][{POST_SNAPBACK}][/a][/div]


good news! I love good news!