]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blame - releases/2.6.27.14/sgi-xpc-remove-null-pointer-dereference.patch
5.1-stable patches
[thirdparty/kernel/stable-queue.git] / releases / 2.6.27.14 / sgi-xpc-remove-null-pointer-dereference.patch
CommitLineData
5861a31d
GKH
1From 17e2161654da4e6bdfd8d53d4f52e820ee93f423 Mon Sep 17 00:00:00 2001
2From: Robin Holt <holt@sgi.com>
3Date: Thu, 29 Jan 2009 14:25:07 -0800
4Subject: sgi-xpc: Remove NULL pointer dereference.
5
6From: Robin Holt <holt@sgi.com>
7
8commit 17e2161654da4e6bdfd8d53d4f52e820ee93f423 upstream.
9
10If the bte copy fails, the attempt to retrieve payloads merely returns a
11null pointer deref and not NULL as was expected.
12
13Signed-off-by: Robin Holt <holt@sgi.com>
14Signed-off-by: Dean Nelson <dcn@sgi.com>
15Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
16Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18
19---
20 drivers/misc/sgi-xp/xpc_sn2.c | 10 ++++++----
21 1 file changed, 6 insertions(+), 4 deletions(-)
22
23--- a/drivers/misc/sgi-xp/xpc_sn2.c
24+++ b/drivers/misc/sgi-xp/xpc_sn2.c
25@@ -1962,11 +1962,13 @@ xpc_get_deliverable_payload_sn2(struct x
26
27 msg = xpc_pull_remote_msg_sn2(ch, get);
28
29- DBUG_ON(msg != NULL && msg->number != get);
30- DBUG_ON(msg != NULL && (msg->flags & XPC_M_SN2_DONE));
31- DBUG_ON(msg != NULL && !(msg->flags & XPC_M_SN2_READY));
32+ if (msg != NULL) {
33+ DBUG_ON(msg->number != get);
34+ DBUG_ON(msg->flags & XPC_M_SN2_DONE);
35+ DBUG_ON(!(msg->flags & XPC_M_SN2_READY));
36
37- payload = &msg->payload;
38+ payload = &msg->payload;
39+ }
40 break;
41 }
42