[riot-users] default-native: Input/output error (Mac OS X)

Ludwig Ortmann ludwig.ortmann at fu-berlin.de
Sun Sep 15 21:20:59 CEST 2013


P.S.:
You did read the part of the README where it says you are supposed to 
signal the the receiving process manually in OSX?

As far as I could tell tuntaposx doesn't implement the system call that 
configures the interface to send a signal if data is available. 
Therefore your receiving instance won't notice there is data available 
unless you tell it yourself. An issue for that already exists ;-)

Cheers, Ludwig

On 09/15/2013 09:14 PM, Ludwig Ortmann wrote:
> Hi,
>
> maybe you can give this a shot:
> https://github.com/RIOT-OS/RIOT/pull/199
>
> I'll look into the PR and your issue tomorrow, but you could try the
> (tiny) patch beforehand, at least the code is on your path.
>
> Other than that there are some fixes in the works, you could check out
> this branch, it's a little hackish and it's untested in OSX:
> https://github.com/LudwigOrtmann/RIOT/tree/native_fix_syscall_segfault
>
> Cheers, Ludwig
>
> On 09/15/2013 08:59 PM, Lotte Steenbrink wrote:
>> Hi,
>> I'm trying to get the default-native project up & running to get
>> accustomed to RIOT OS. Unfortunately, txtsnd fails and I can't figure
>> out the source of my error.
>> When I try to send a message to my second RIOT instance I get the
>> following output:
>>
>>> id
>> id
>> Current id: 0
>>> txtsnd 1 hi
>> txtsnd 1 hi
>> [nativenet] Sending packet of length 3 to 1: hi
>> nativenet_send:  Sending packet of length 3 from 0 to 1
>> send_buf:  Sending packet of length 3 from 0 to 1
>> padding data! (9 ->26)
>> send_buf: trying to send 26 bytes
>> default-native.elf: write: Input/output error
>> default-native.elf: nativenet_send: error sending packet
>> [nativenet] Packet sent: 0
>>>
>>
>> (obviously, my hi never reaches 1 . )
>> I've compiled the default-native project with -I/opt/local/include/
>> -O0 -g -W -Wextra -Wc++-compat -pedantic.
>> Strangely, when I tried to find out where exactly the I/O error occurs
>> by invoking
>>
>> sudo gdb program 9963
>>
>> (with 9963 being 0's PID), adding a breakpoint to tap.c:141 and
>> stepping through the execution of txtsnd 1 ohai, the
>> I/O error disappeared:
>>
>>> txtsnd 1 ohai
>> txtsnd 1 ohai
>> [nativenet] Sending packet of length 5 to 1: ohai
>> nativenet_send:  Sending packet of length 5 from 0 to 1
>> send_buf:  Sending packet of length 5 from 0 to 1
>> padding data! (11 ->26)
>> send_buf: trying to send 26 bytes
>> [nativenet] Packet sent: 1
>>
>> (my message still didn't reach 1).
>>
>> I can see the packets at bridge1234 in my Wireshark capture.
>> I'm running Mac OS X 10.75, with tuntapx installed.
>>
>> It may very well be that the error occurs because of some
>> misconfiguration in my system, but I am out of ideas on how to locate
>> said misconfiguration.
>> I'd be very grateful for any help.
>>
>> With kind regards,
>> Lotte
>>
>>
>>
>> _______________________________________________
>> users mailing list
>> users at riot-os.org
>> http://lists.riot-os.org/mailman/listinfo/users
>>
> _______________________________________________
> users mailing list
> users at riot-os.org
> http://lists.riot-os.org/mailman/listinfo/users


More information about the users mailing list