projects
/
profile
/
common
/
kernel-common.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
0a990e7
)
ceph: fix null pointer deref of r_osd in debug output
author
Sage Weil
<sage@newdream.net>
Tue, 16 Mar 2010 05:20:39 +0000
(22:20 -0700)
committer
Sage Weil
<sage@newdream.net>
Tue, 23 Mar 2010 14:46:51 +0000
(07:46 -0700)
This causes an oops when debug output is enabled and we kick
an osd request with no current r_osd (sometime after an osd
failure). Check the pointer before dereferencing.
Signed-off-by: Sage Weil <sage@newdream.net>
fs/ceph/osd_client.c
patch
|
blob
|
history
diff --git
a/fs/ceph/osd_client.c
b/fs/ceph/osd_client.c
index
dbe63db
..
2210382
100644
(file)
--- a/
fs/ceph/osd_client.c
+++ b/
fs/ceph/osd_client.c
@@
-913,7
+913,7
@@
static int __kick_requests(struct ceph_osd_client *osdc,
kick:
dout("kicking %p tid %llu osd%d\n", req, req->r_tid,
- req->r_osd
->o_osd
);
+ req->r_osd
? req->r_osd->o_osd : -1
);
req->r_flags |= CEPH_OSD_FLAG_RETRY;
err = __send_request(osdc, req);
if (err) {