X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=net%2Fcore%2Fdst.c;h=59381decf0aa8ae808ed3592684f5362a485965f;hb=35378d86b9f7417ab0495bac6cd781998cfe26eb;hp=d5e2c4c0910763b180fcb73d9722a770c7f2b863;hpb=f81f5e14de1203b9389aad383aa3f7b2a221efdd;p=pandora-kernel.git diff --git a/net/core/dst.c b/net/core/dst.c index d5e2c4c09107..59381decf0aa 100644 --- a/net/core/dst.c +++ b/net/core/dst.c @@ -269,10 +269,11 @@ void dst_release(struct dst_entry *dst) { if (dst) { int newrefcnt; + unsigned short nocache = dst->flags & DST_NOCACHE; newrefcnt = atomic_dec_return(&dst->__refcnt); WARN_ON(newrefcnt < 0); - if (unlikely(dst->flags & DST_NOCACHE) && !newrefcnt) { + if (!newrefcnt && unlikely(nocache)) { dst = dst_destroy(dst); if (dst) __dst_free(dst);