* [PATCH] rt6_probe_deferred: Do not depend on struct ordering
@ 2015-02-08 9:14 Michael Büsch
2015-02-08 21:03 ` David Miller
0 siblings, 1 reply; 2+ messages in thread
From: Michael Büsch @ 2015-02-08 9:14 UTC (permalink / raw)
To: David S. Miller; +Cc: netdev, Hannes Frederic Sowa
[-- Attachment #1: Type: text/plain, Size: 1021 bytes --]
rt6_probe allocates a struct __rt6_probe_work and schedules a work handler rt6_probe_deferred.
But rt6_probe_deferred kfree's the struct work_struct instead of struct __rt6_probe_work.
This works, because struct work_struct is the first element of struct __rt6_probe_work.
Change it to kfree struct __rt6_probe_work to not implicitly depend on
struct work_struct being the first element.
This does not affect the generated code.
Signed-off-by: Michael Buesch <m@bues.ch>
---
The affected code was introduced in c2f17e827b419918c856131f592df9521e1a38e3
Index: linux/net/ipv6/route.c
===================================================================
--- linux.orig/net/ipv6/route.c
+++ linux/net/ipv6/route.c
@@ -499,7 +499,7 @@ static void rt6_probe_deferred(struct wo
addrconf_addr_solict_mult(&work->target, &mcaddr);
ndisc_send_ns(work->dev, NULL, &work->target, &mcaddr, NULL);
dev_put(work->dev);
- kfree(w);
+ kfree(work);
}
static void rt6_probe(struct rt6_info *rt)
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] rt6_probe_deferred: Do not depend on struct ordering
2015-02-08 9:14 [PATCH] rt6_probe_deferred: Do not depend on struct ordering Michael Büsch
@ 2015-02-08 21:03 ` David Miller
0 siblings, 0 replies; 2+ messages in thread
From: David Miller @ 2015-02-08 21:03 UTC (permalink / raw)
To: m; +Cc: netdev, hannes
From: Michael Büsch <m@bues.ch>
Date: Sun, 8 Feb 2015 10:14:07 +0100
> rt6_probe allocates a struct __rt6_probe_work and schedules a work handler rt6_probe_deferred.
> But rt6_probe_deferred kfree's the struct work_struct instead of struct __rt6_probe_work.
> This works, because struct work_struct is the first element of struct __rt6_probe_work.
>
> Change it to kfree struct __rt6_probe_work to not implicitly depend on
> struct work_struct being the first element.
>
> This does not affect the generated code.
>
> Signed-off-by: Michael Buesch <m@bues.ch>
Applied.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2015-02-08 21:03 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-02-08 9:14 [PATCH] rt6_probe_deferred: Do not depend on struct ordering Michael Büsch
2015-02-08 21:03 ` David Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).