Hi,

>>>>    can_put_echo_skb(skb, dev, 0);
>>>>    if (unlikely(esd331_write(&msg, priv->board))) {
>>>>            can_free_echo_skb(dev, 0);
>>>>            stats->tx_dropped++;
>>>>            return NETDEV_TX_OK;
>>>>    }
>>> Yes. As this event is not expected to happen, an error message would
>>> make sense here.
>> Sorry, I think a kfree_skb() had to be there, too.
> 
> I don't think so, see:
> 
> http://lxr.linux.no/#linux+v2.6.32/drivers/net/can/dev.c#L330
OK, in the can_put_echo_skb() I saw something about clone() and thought they'd 
be independent then...
Whatever, I think ems_usb.c and our new esd_usb2.c need to change this then, 
too.


> For some reason, I cannot apply your patch here:
> 
>   $ cd trunk
>   patch -p0 ../esd_pci331.patch
>   patching file kernel/2.6/drivers/net/can/esd_pci331.c
>   Hunk #1 FAILED at 318.
>   Hunk #2 FAILED at 583.
>   Hunk #3 FAILED at 693.
>   3 out of 3 hunks FAILED
> 
> Hm, does it work for you?
Yes, it does.


> Just for curiosity, how many packets per second can the driver send at
> 1MB/s.
Well... "cangen can0 -g 0 -x -i" gives me 4200 packets/s.
(Compared to 9200 packets/s with the sja1000 based esd driver)


Thomas
_______________________________________________
Socketcan-core mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/socketcan-core

Reply via email to