se vuoi cancellare il primo nodo di una sttolista di index, scorri index fino all'elemento che contiene la sottolista di cui cancellare la testa, sia questo tmp, quindi fai:
parola *ptmp = tmp -> p;
tmp -> p = tmp -> p -> next;
if(tmp -> p != NULL)
tmp -> p -> prev = null;
free(ptmp);