Messages in this thread | | | Date | Wed, 24 Jul 2019 14:55:45 +0200 | From | Dominique Martinet <> | Subject | Re: [PATCH] net: 9p: Fix possible null-pointer dereferences in p9_cm_event_handler() |
| |
Jia-Ju Bai wrote on Wed, Jul 24, 2019: > In p9_cm_event_handler(), there is an if statement on 260 to check > whether rdma is NULL, which indicates that rdma can be NULL. > If so, using rdma->xxx may cause a possible null-pointer dereference.
The final dereference (complete(&rdma->cm_done) line 285) has been here from the start, so we would have seen crashes by now if rdma could be null at this point.
Let's do it the other way around and remove the useless "if (rdma)" that has been here from day 1 instead ; I basically did the same with c->status a few months ago (from a coverity report)...
That said, please note that 'rdma checked for null in this event->event == RDMA_CM_EVENT_DISCONNECTED branch' does not mean rdma can be null in other branches. static analysis does not say anything more than the final complete() should also have a check if the previous one has, but nothing about the other cases in the switch.
Thanks, -- Dominique
| |