ethernet SD gps SD conflict

I highly recommend disabling all SPI devices before initializing any of them. This covers the ethernet shield:

void setup()
{
   digitalWrite(4,HIGH);
   digitalWrite(10,HIGH);

// rest of your setup