Obtener nulo de 'getLastKnownLocation' en SDK

Tengo un problema relacionado con la API de ubicación.

Probé el siguiente código:

LocationManager lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
Location loc = getLastKnownLocation(LocationManager.GPS_PROVIDER);

loc es siemprenull, cuandogetLastKnownLocation() se llama.

¿Qué está mal?