Thanks for the suggestions. I'm a bit confused though since Mmap returns a slice of bytes. I print all the bytes as you can see, but only the first byte at each 32 bit boundary is correct. I don't know casting several of them together would somehow derive the correct value.
On Tuesday, June 14, 2016 at 3:53:14 PM UTC-4, Dave Mazzoni wrote: > > Hello all - I've been having a hard time getting syscall.Mmap to produce > the "right" values. I'm using 1.6.2 and cross-compiling for the ARM/Linux. > I'm trying to read from Arm memory at its device address 0x43c00000. > > Here's the scenario: I 'poke' values into memory using the C based > arm/linux 'poke' command: > /var/ftp# poke 0x43c00000 0x03020100 > /var/ftp# poke 0x43c00004 0x07060504 > /var/ftp# poke 0x43c00008 0x0b0a0908 > /var/ftp# poke 0x43c0000c 0x0f0e0d0c > > If I then 'read' from these memory locations with the C based peek command > I get this (as expected): > /var/ftp# peek 0x43c00000 > 0x03020100 > /var/ftp# peek 0x43c00004 > 0x07060504 > /var/ftp# peek 0x43c00008 > 0x0b0a0908 > /var/ftp# peek 0x43c0000c > 0x0f0e0d0c > > However, if I use a go based version to read this range, something is > wrong (peek_orig.go, attached), results in: > /var/ftp# ./peekgo 0x43c00000 > mem[0]:0x00 mem[1]:0x01 mem[2]:0x02 mem[3]:0x00 > mem[4]:0x04 mem[5]:0x00 mem[6]:0x00 mem[7]:0x00 > mem[8]:0x08 mem[9]:0x00 mem[10]:0x00 mem[11]:0x00 > mem[12]:0x0c mem[13]:0x00 mem[14]:0x00 mem[15]:0x00 > mem[16]:0x00 mem[17]:0x00 mem[18]:0x00 mem[19]:0x00 > mem[20]:0x00 mem[21]:0x00 mem[22]:0x00 mem[23]:0x00 > mem[24]:0x00 mem[25]:0x00 mem[26]:0x00 mem[27]:0x00 > mem[28]:0x00 mem[29]:0x00 mem[30]:0x00 mem[31]:0x00 > > I'll also attach the equivalent C based version of peek (peek.c). > > I believe everything in the go version should work based on godoc -src > syscall Mmap, which shows the actual call to the linux mmap function. The > go version returns a []byte, but they're not the correct values. > > Any help/suggestions would be very welcome! > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.