Re: QEMU networking: CONFIG_NET_TESTING breaks things, echo_server IPv6 address is "wrong"


Jukka Rissanen
 

Hi Paul,

On Thu, 2016-08-18 at 22:46 +0300, Paul Sokolovsky wrote:
On Wed, 17 Aug 2016 17:26:39 +0300
Paul Sokolovsky <Paul.Sokolovsky(a)linaro.org> wrote:

[]


So, I'm not sure what the exact issue is. I may imagine following
might happen:

1. There was a simple CONFIG_NET_TESTING, for things like
echo_server.
2. Later, it was made into a separate module, but echo_server
possibly
wasn't updated to play with the new module well.
3. net-tools and wiki page predate CONFIG_NET_TESTING altogether.

The obvious question is what to do in this situation. I'm
personally
keen to update
https://wiki.zephyrproject.org/view/Networking-with-Qemu to
describe
a setup which actually works now (this is mostly doing steps in the
right order, but also building with CONFIG_NET_TESTING=n).
Ok, mystery [seems to be] solved. The default setup of
echo_server/echo_client is tailored towards running QEMU-QEMU
communication, as described in samples/net/README. However, QEMU-Host
setup is definitely regressed. Moreover, CONFIG_NET_TESTING, with all
its addresses flip-floppig, appears to be needed exactly for QEMU-
QEMU
case, and only complicates matters for QEMU-Host case.
Yes, your analysis is correct. The CONFIG_NET_TESTING was setup so that
we could automate the qemu-qemu testing. Unfortunately the
documentation about this was not very clear as you noticed.


Proposed/done items:

1. Done: https://wiki.zephyrproject.org/view/Networking-with-Qemu now
describes both QEMU-Host and QEMU-QEMU cases.
2. Done: QEMU-Host includes instructions on patching echo_server to
make
net-tools to work as is.
Thanks a lot for these.

3. Suggestion: Update CONFIG_NET_TESTING's description in Kconfig to
clearly state that it's pertinent to (only) QEMU-QEMU setup.
Yes, I can send a patch for clarifying this.

4. Suggestion: For all test apps not running in QEMU-QEMU mode,
standardize of 2001:db8::1 to be host side, and 2001:db8::2 to be
device side (eb it QEMU or physical device).
Right now the assumption has been that the server role device has been
set to 2001:db8::1 and the client is 2001:db8::2 but we can change this
of course. It probably simplifies things if the host side is
2001:db8::1 and device side is 2001:db8::2.

5. Suggestion: Apparently, add separate prj_*.conf's to run samples
in
QEMU-QEMU vs QEMU-Host mode.
True, that is definitely needed.


I can prepare proper patches for these unless you have already
something prepared in which case just send them to gerrit. Thanks for
you feedback!


Cheers,
Jukka

Join devel@lists.zephyrproject.org to automatically receive all group messages.