I've noticed that with location services enabled the battery is drained very rapidly (on the order of less than a day with no other usage); where it lasts multiple days with it disabled.
The following lines are printed, rapidly, repeatedly in the log when it is enabled:
08-28 14:09:48.493 3722 5628 E LocSvc_libulp: E/int ulp_brain_transition_all_providers(), no QUIPC/GNSS transition logic run due to both engines are OFF
08-28 14:09:48.494 3722 4645 E QMI_FW : QCCI qmi_cci_xport_recv: txn not found. svc_id: 16
08-28 14:09:48.494 3722 4620 E LocSvc_LBSApiV02: E/virtual int lbs_core::LBSApiV02::injectCoarsePosition(const CoarsePositionInfo &):352]: Error : st = 3, ind.status = 0
08-28 14:09:48.494 3722 4620 V OSNPGlue_jni: Entering : void onStopRequestJNI()
08-28 14:09:48.495 3771 3833 W XTCC-5.1.0.23: [FDAL_ZPP_MGR] RequestNewZppFix: looks like GTP-LP is not supported
08-28 14:09:48.495 3771 3833 W XTCC-5.1.0.23: [FDAL_ZPP_MGR] RequestNewZppFix: looks like GTP-LP is not supported
08-28 14:09:48.495 3722 5611 V OSNPGlue_jni: Entering : void onJavaLocationChanged(JNIEnv *, jobject, jboolean, jlong, jboolean, jlong, jboolean, jdouble, jboolean, jdouble, jboolean, jfloat, jboolean, jdouble, jboolean, jfloat, jboolean, jfloat, jboolean, jint)
08-28 14:09:48.495 3722 4620 E IzatSvc_ComboNetworkProvider: E/Exiting with error virtual void izat_manager::ComboNetworkProvider::handleFrameworkLocReportMsg::proc() const line 301 "1"
08-28 14:09:48.497 3722 4666 D Sensors : int android::SensorManager::batch(int, int, int64_t, int64_t):batch
08-28 14:09:48.497 3722 4666 D qti_sensors_hal: [Sensor_HAL] handle=0, set batch, flags : 0x0, period_ns : 33333500(ns), timeout : 100000000
08-28 14:09:48.499 5191 5784 W ctxmgr : [AclManager]No 2 for (accnt=account#680468996#, com.google.android.gms(10068):UserLocationProducer, vrsn=11302000, 0, 3pPkg = null , 3pMdlId = null , pid = 5191). Was: 2 for 1, account#680468996#