Problema en anular malloc

Estoy tratando de anular malloc haciendo esto.

#define malloc(X) my_malloc((X))

void* my_malloc(size_t size)
{

    void *p = malloc(size);
    printf ("Allocated = %s, %s, %s, %x\n",__FILE__, __LINE__, __FUNCTION__, p);
    return p;
}

Sin embargo, esto está llamando indefinidamente a my_malloc recursivamente (debido a la llamada a malloc dentro de my_malloc). Quería llamar a la función C malloc dentro de my_malloc y no a la implementación de la macro. ¿Podrías por favor decirme cómo hacer eso?

Gracias.

Respuestas a la pregunta(9)

Su respuesta a la pregunta