[ovs-discuss] Port speed bug
Benjamin Lunsky
benjamin.lunsky at netronome.com
Mon Sep 2 07:08:24 UTC 2013
Thank you for the quick response Ben.
Patch is working 100%.
Regards,
Benjamin
Benjamin Lunsky
benjamin.lunsky at netronome.com
---
On 30 Aug 2013, at 7:11 PM, Ben Pfaff <blp at nicira.com> wrote:
> On Fri, Aug 30, 2013 at 04:16:58PM +0200, Benjamin Lunsky wrote:
>> I have been working on my own netdev-provider to set up the port speeds in OVS.
>>
>> I noticed that in lib/ofp-util.h, max_speed and curr_speed are of type uint32_t and are described as speed in kbps
>>
>> /* Abstract ofp10_phy_port or ofp11_port. */
>> struct ofputil_phy_port {
>> . . .
>> /* Speed. */
>> uint32_t curr_speed; /* Current speed, in kbps. */
>> uint32_t max_speed; /* Maximum supported speed, in kbps. */
>> };
>>
>> and in ofproto/ofproto.c, these are determined in these lines in static struct netdev * ofport_open( . . . )
>>
>> pp->curr_speed = netdev_features_to_bps(pp->curr, 0);
>> pp->max_speed = netdev_features_to_bps(pp->supported, 0);
>>
>>
>> But in lib/netdev.c, netdev_features_to_bps returns bps not kbps
>> Everything is therefore off by 1000, and because max_speed and curr_speed are of type uint32_t, and netdev_features_to_bps returns uint64_t - the information is lost on a 10 Gbps port and one cannot simply divide by 1000 again to get port speed.
>>
>> I think this is a bug? unless I'm missing something?
>
> I think you're right. I sent out a patch to fix the problem. Will
> you review it?
>
> Thanks,
>
> Ben.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://openvswitch.org/pipermail/ovs-discuss/attachments/20130902/dc837812/attachment.html>
More information about the discuss
mailing list