OpenWrt – Blame information for rev 1
?pathlinks?
Rev | Author | Line No. | Line |
---|---|---|---|
1 | office | 1 | From f641853ee23864c1ea7c36553e6406662b8cd0ba Mon Sep 17 00:00:00 2001 |
2 | From: Phil Elwell <phil@raspberrypi.org> |
||
3 | Date: Fri, 13 Mar 2015 12:43:36 +0000 |
||
4 | Subject: [PATCH 005/454] Protect __release_resource against resources without |
||
5 | parents |
||
6 | |||
7 | Without this patch, removing a device tree overlay can crash here. |
||
8 | |||
9 | Signed-off-by: Phil Elwell <phil@raspberrypi.org> |
||
10 | --- |
||
11 | kernel/resource.c | 6 ++++++ |
||
12 | 1 file changed, 6 insertions(+) |
||
13 | |||
14 | --- a/kernel/resource.c |
||
15 | +++ b/kernel/resource.c |
||
16 | @@ -246,6 +246,12 @@ static int __release_resource(struct res |
||
17 | { |
||
18 | struct resource *tmp, **p, *chd; |
||
19 | |||
20 | + if (!old->parent) { |
||
21 | + WARN(old->sibling, "sibling but no parent"); |
||
22 | + if (old->sibling) |
||
23 | + return -EINVAL; |
||
24 | + return 0; |
||
25 | + } |
||
26 | p = &old->parent->child; |
||
27 | for (;;) { |
||
28 | tmp = *p; |