ConfD 8.0.6 confd.smp RSS leak under sustained SNMP polling -- powerpc/arm64 only, not x86_64

Hello,

We are seeing a slow but steady RSS leak in confd.smp on our products under sustained SNMP polling load. The anonymous RSS (RssAnon) keeps climbing while the load is active, and does not recover after the load stops.

We can reproduce this in the lab using a load script that sends SNMP GET requests from multiple pollers for an hour or longer.

We use:

  • ConfD 8.0.6
  • Linux kernel 5.4.47
  • processors: powerpc (32-bit), x86_64, arm64
  • glibc 2.25
  • gcc >= 6.3

With the setup above, we observe the growth of RssAnon and VmRSS on powerpc (32-bit) and on arm64, but not on x86_64.

Using the same setup but with ConfD 7.2.6 (same kernel, glibc, gcc), the growth does NOT occur.

To reproduce in the lab, we run the SNMP GET load for an hour or longer, then stop the load and leave the system idle for a while.
Following plot shows confd.smp RSS over time, during and after the load. You can see the steady climb, and that not all of the memory is reclaimed after the load stops.

We would appreciate any pointers from anyone who has seen a similar pattern.

Best Regards,
Ricardo

Can you provide a standalone reproduction that demonstrates the issue?
We can try it in later releases to see if it still behaves the same way.