From d64f0ec7b8ceb74bdbf198da095da656141b3ade Mon Sep 17 00:00:00 2001 From: Kefu Chai Date: Wed, 18 Apr 2018 14:20:05 +0800 Subject: [PATCH] msg/async/EventKqueue: assert on OOM Signed-off-by: Kefu Chai --- src/msg/async/EventKqueue.cc | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/msg/async/EventKqueue.cc b/src/msg/async/EventKqueue.cc index cc609cc76ba..6db3a3e8ab1 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; } -- 2.39.5