Skip to Content.
Sympa Menu

rare-dev - Re: [rare-dev] BF_BFRT Errors

Subject: Rare project developers

List archive

Re: [rare-dev] BF_BFRT Errors


Chronological Thread 
  • From: Alexander Gall <>
  • To: Frédéric LOUI <>
  • Cc: <>
  • Subject: Re: [rare-dev] BF_BFRT Errors
  • Date: Thu, 17 Feb 2022 16:06:00 +0100

On Thu, 17 Feb 2022 15:56:38 +0100, Frédéric LOUI <>
said:

> NAT example:
> https://bitbucket.software.geant.org/projects/RARE/repos/rare/browse/p4src/include/ig_ctl_nat.p4#106

Yes, that *is* a direct counter attached to a table, but the three
counters I mentioned are *not*. That's the point.

>> I think they are if you use "from_hw = True" when reading the
>> entry. That's what I'm doing in the packet broker.

> I’ll re-test with "from_hw = True », but IIRC (it was along time ago, when
> we implemented our first counter)
> it was not reporting counter consistently.

Ok, I can't guarantee that I've seen it working consistently. I'd have
to verify that.

--
Alex

>> Le 17 févr. 2022 à 15:45, Alexander Gall <> a écrit :
>>
>> On Thu, 17 Feb 2022 15:28:29 +0100, Frédéric LOUI
>> <> said:
>>
>>> Which SDE are you using ?
>>
>> 9.7.1
>>
>>> I’m using SDE 9.7.0 and did not see these errors …
>>
>>> Basically, operations_execute() sync counters tied to a table.
>>
>> Yes, but these counters are *not* tied to tables, are they? They are
>> indirect counters (e.g. pkt_out_stats in ig_ctl.p4).
>>
>>> If you don’t yield this primitive counters belonging to tables are not
>>> updated at all.
>>
>> I think they are if you use "from_hw = True" when reading the
>> entry. That's what I'm doing in the packet broker.
>>
>>> I tried to upgrade my WEDGE to 9.8.0 but it seems that I have the issues
>>> now …
>>> I’ll get back to you as soon ass as I can solve this upgrade issue.
>>
>> For the record: I don't see this happening in my 9.8.0 build.
>>
>> --
>> Alex
>>
>>>> Le 17 févr. 2022 à 15:17, Alexander Gall <> a écrit :
>>>>
>>>> Hi Frederic
>>>>
>>>> The current bf-forwarder code generates these persistent errors (every
>>>> 5 seconds) in bf_switchd:
>>>>
>>>> Feb 15 12:14:22 spare-PB1 bf_switchd[26808]: 2022-02-15 12:14:22.995012
>>>> ERROR (BF_BFRT:(file=null):(func=null):0) - server_op_cb:151 Unable to
>>>> retrieve bound_program data for client with id 3
>>>> Feb 15 12:14:27 spare-PB1 bf_switchd[26808]: 2022-02-15 12:14:27.944791
>>>> ERROR (BF_BFRT:(file=null):(func=null):0) -
>>>> tableOperationWaitForCompletion:3374 Timed out waiting for completion of
>>>> operation for table -2081122291
>>>>
>>>> It appears that this error is caused by
>>>>
>>>> tbl_stats_in.operations_execute(self.bfgc.target,
>>>> 'Sync',p4_name=self.bfgc.p4_name)
>>>> tbl_stats_out.operations_execute(self.bfgc.target,
>>>> 'Sync',p4_name=self.bfgc.p4_name)
>>>> tbl_stats_pkt_out.operations_execute(self.bfgc.target,
>>>> 'Sync',p4_name=self.bfgc.p4_name)
>>>>
>>>> in rare/bf_subifcounter/__init__.py. I'm not familiar with
>>>> operations_execute() but I'm a bit confused by the fact that these
>>>> objects are not tables but indirect counters. Does
>>>> operations_execute() apply to counters too?
>>>>
>>>> Also, what would be the benefit of the Sync operation compared to
>>>> using "from_hw = True" when reading the counters?
>>>>
>>>> --
>>>> Alex
>>>>



Archive powered by MHonArc 2.6.19.

Top of Page