site  contact  subhomenews

RP: JWM 579

July 23, 2012 — BarryK
01micko reported that JWM in Squeezed Arm Puppy on the RP has a problem with the tray -- applets slow to update. He compiled the latest, version 579, and that fixed the problem.

The problem though, is probably not the version. I compiled version 574 in the Gentoo build for the RP. I have found that some apps compiled in Gentoo misbehave in sap6.

I have compiled JWM 579 in sap6, and uploaded the PET (79KB):


Structure Alignment in ARMv6
Username: WB7ODYFred
__attribute__ ((aligned(4))) I was reading about misalignment of data structures when porting from Fedora Core 13 to RedSleeve ARM Linux. Sharing with you and others who are porting C software from x86 to ARM. Description of problem: /usr/sbin/filefrag is throwing alignment errors on the ARM platform. [COMMENT 6]Gordan Bobic 2011-02-24 10:51:24 EST Yup, that fixes it. char buf[] wasn't aligned. I couldn't help but notice that char buf[] type constructs are used all over the place. All char[] arrays that are getting structs cast into them are going to have the same problem. So the solution (short of somehow avoiding casting structs around) would be to make sure all char[] buffers are declared with __attribute__ ((aligned(4))). More information on the general nature of the problem is here (it refers to XScale but applies to all ARMs except those based on Cortex A8/A9): Not to mention that force-aligning everything to 4 bytes isn't any more portable, either. On a 64-bit architecture you'd still get a misalignment. It may not be obvious there is a problem (e.g. x86 and ARM Cortex A8 and later have transparent misalignment fixup in hardware), but that doesn't mean there isn't a problem. To leverage SIMD, you'd typically need it aligned to 16-bytes, but that's a different story. Eric Sandeen 2011-02-24 14:06:00 EST Yeah, I've had to fix up some arm alignment stuff in the past ... sprinkling __aligned__ attributes around is pretty ugly. :( I'm not sure what a nice way to fix this might be... ps. delete this comment if out of place or is too long. fred

Re misalign
Username: BarryK
"I still grumble to myself that we are being forced to compile for armv6. Anyway, I don't have to. After releasing Squeezed Arm Puppy beta1 for the RP, I will move back to the Mele A1000 and soon-to-arrive ODROID-X. I will then compile for Cortex-A8-with-neon-and-hf. Thanks for the info.

Username: 01micko
"Hi Barry, It's not JWM BArry, it's the network_tray binary. I just installed your JWM, no different, I installed mine, no different, recompiled network_tray and the bin i s 1 k larger but works. :)

Tags: puppy