From: Kefu Chai Date: Wed, 18 Apr 2018 06:20:05 +0000 (+0800) Subject: msg/async/EventKqueue: assert on OOM X-Git-Tag: v13.1.0~189^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F21488%2Fhead;p=ceph.git msg/async/EventKqueue: assert on OOM Signed-off-by: Kefu Chai --- diff --git a/src/msg/async/EventKqueue.cc b/src/msg/async/EventKqueue.cc index cc609cc76bad..6db3a3e8ab15 100644 --- a/src/msg/async/EventKqueue.cc +++ b/src/msg/async/EventKqueue.cc @@ -198,15 +198,14 @@ int KqueueDriver::resize_events(int newsize) { ldout(cct,30) << __func__ << " kqfd = " << kqfd << "newsize = " << newsize << dendl; - if(newsize > sav_max) { - void *_realloc = NULL; - if ((_realloc = realloc(sav_events, sizeof(struct SaveEvent)*newsize)) == NULL) { + if (newsize > sav_max) { + sav_events = realloc(sav_events, sizeof(struct SaveEvent)*newsize); + if (!sav_events) { lderr(cct) << __func__ << " unable to realloc memory: " << cpp_strerror(errno) << dendl; - free(sav_events); + assert(sav_events); return -ENOMEM; } - sav_events = (struct SaveEvent*)_realloc; memset(&sav_events[size], 0, sizeof(struct SaveEvent)*(newsize-sav_max)); sav_max = newsize; }