exec()系は自分自身は存在しなくなるのだからfree()できるわけないじゃん。
malloc()したポインタをexec()する先に引き継げるなら別だけど、普通そんなことしない。
従って、exec()した先のプロセスがお亡くなりになるときにOS側に引き取って貰えばいいよ。