[j-nsp] VRRP in Olive?

Bjørn Mork bjorn at mork.no
Thu Aug 6 12:05:53 EDT 2009


pat lynch <patrick at lynchehaun.net> writes:

> Since previous entries in other wikis, qemu's main tree has all of the
> support on the ethernet adapter side, multicast side, etc, to work natively
> out of the box.

No, it does not.  There is no support for setting the multicast list in
the default QEMU/KVM eepro100 driver, and it will therefore ignore all
multicast frames.

> In Qemu version 0.9.1, Stefan's multicast code has a check which i'm still
> decoding to solve properly that exits nic_receive before multicast frames
> make it to the CPU. I'm no developer, but this simple workaround will enable
> native qemu without any patch files, shady chinese translated forums, or
> modifications of jemu code.
>
> Obtain the qemu source from the project website. The file hw/eepro100.c as
> of 0.9.1 has this line in the function nic_receive, comment the 'return'
> out.
>
>        int mcast_idx = compute_mcast_idx(buf);
>        if (!(s->mult[mcast_idx >> 3] & (1 << (mcast_idx & 7)))) {
>                //Commented out by JP Senior (sartan) Wed June 23 2008, this needs to be fixed
>            //return;
>        }

This will make the driver process *all* multicast frames, which will
sort of work, yes.  But there are better approaches. Stefan Weil has
made several improvements to the driver since it was added to QEMU.  His
version at
http://svn.berlios.de/viewcvs/ar7-firmware/qemu/trunk/hw/eepro100.c
has, among other stuff, a working set_multicast_list() function.

I'm hoping we can get these features merged into QEMU/KVM soon.  But it
will take some work, as the versions have diverged quite a bit and the
improvements probably need to be split up in at least 4 parts before
merging:
 1) multicast support
 2) PXE booting
 3) endianness fixes
 4) misc

I asked Stefan about his plans for the driver in March 2008, and got a
reply that he wanted to clean up a few things before pushing it
upstream.  I sent him a new email today, asking about the status and
whether he would be OK with e.g. me splitting out the multicast fix and
pushing it.  I'd really like to get that into KVM before Debian freezes
again.  But now this is getting a bit OT, I guess...

There is no Olive, you know :-)



Bjørn


More information about the juniper-nsp mailing list