Re: bridge/netfilter: regression in 2.6.39.1
From: Alexander Holler
Date: Mon Jun 06 2011 - 02:58:18 EST
Hello,
Am 04.06.2011 14:04, schrieb Alexander Holler:
Anyway, I've used the broken way of not using git send-email because I'm
unsure if the solution I've offered is the best one. I'm lacking the
knowledge about what cow_metrics() does, what it is used for, and what,
if any, pre- or post-requisites are needed to use
dst_cow_metrics_generic().
I can only say that my solution seems to work here, the machine comes up
without an oops and I didn't have seen any other problems while using
the bridge (which surely doesn't say anything, e.g. I'm not sure if my
use of dst_cow_metrics_generic() may introduce a mem leak or similiar,
it doesn't look so, but who knows).
After having a second look at dst_cow_metrics_generic(), it seems my
patch does introduce a small mem leak which occurs when the bridge will
be build as a module and the module gets unloaded. Then the static
struct dst_ops fake_dst_ops disappears and with that the memory
allocated by dst_cow_metrics_generic() is lost. I'm not sure which of
the dst*-functions should be called before the module gets unloaded.
Maybe someone with a deeper knowledge of the that stuff could have a
look at that.
Or maybe just changing the true in the call to dst_cow_metrics_generic()
in br_netfilter_rtable_init() to false instead of adding
dst_cow_metrics_generic() to fake_dst_ops() is an alternative. As I
said, I don't know what that metric-stuff does and what it is used for.
Regards,
Alexander
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/