Hello.
After executing MPI_Send() for the first time in the root process, my program blocks.

int the root process, I have:
...
   while(i++<iWorldSize)
   {
cout << "executing send for the " << i-1 << "th time" <<  endl;
  MPI_Send(&A[i-1], n*m/iWorldSize, MPI_INT, j, itag, MPI_COMM_WORLD);
  cout << "executed send for the " << i << "th time" <<  endl;
  }//end while
...

and in the slave processes I have

...
 MPI_Status status;   
 
 int *buffer = new int[m*(n/iWorldSize)];
      cout << "\n\n\n**********Executing receive*******" << endl;
      MPI_Recv(&buffer, m*(n/iWorld
...

where did I go wrong?

Thank you