Re: Synology PPCBoot SK98 network bug fix
Frank Wille <[email protected]> Tue, 31 May 2011 14:53:59 +0200
| Newsgroups | gmane.os.netbsd.ports.sandpoint |
|---|---|
| Organization | Privates Internet Ostwestfalen/Lippe |
| Message-ID | <[email protected]> |
On Mon, 30 May 2011 21:38:48 +0100 Julian Coleman <[email protected]> wrote: > > Even if you didn't tell your routers/switches via IGMP that you want > > to receive multicast packets, you are receiving them anyway, > > because the NIC is in promiscious mode? :| > > It appears that it almost is ;-) I tried zeroing the multicast hash > list, and that didn't make any difference that I could see. However, > I've left it in, as it didn't seem to cause any harm. It is not enough to clear the multicast hash registers. I guess you would also have to enable the filter, by setting the MUFLEN (0x4000) flag in YUKON_RCR (0x280c). > > Probably it is better to define in the documentation that you need > > to provide a network with low traffic for installation. > > Hmm, I think that I'd prefer to increase the number of receive > descriptors. I increased it to 16 in skg.c and had no problems > loading the kernel via NFS. Using 8 seems to be OK now too - I did > have failures before, but that was with the extra debug printout > enabled. Yes, the serial output needs a lot of time. But your patch does not solve the problem. You can decrease the risk to lose packets with more descriptors, but maybe somebody else has even more traffic, and then it fails again. A better solution, if you really want to fix all drivers, would definitely be to activate the filters. In the case of skg.c we should enable both, the multicast and the unicast filter. I didn't test it (I hope you will ;) but probably you can achieve this goal by programming the following registers: 1. Set the unicast address in YUKON_SA1 (probably SA2 too?). This is already done. 2. Clear the multicast hash registers: YUKON_MC1..MC4. You already did that in your patch. 3. Enable unicast and multicast filters by writing setting MUFLEN and UFLEN (0xc000) in YUKON_RCR. When that works I'm willing to commit the patch. :) -- Frank Wille