[General Questions and Answers] mikeyxda:
Thanks for the reply. Unfortunately I've tried all those things and it gets rid of the permission problems associated with cellbroadcastreceiver but those are only part of the problem it seems. I even went so far as to uninstall cellbroadcastreceiver using adb (with root). There appear to be similar issues with other processes. After disabling or uninstalling cellbroadcastreceiver, I get this block over and over when the battery drain occurs. It looks like the phone gets into a similar loop when telephony is trying to broadcast a phone service state change. With cellbroadcastreceiver installed and enabled, it looks the same as below except with two additional lines referecing CellBroadcastReceiver:

08-16 21:19:16.012 2368 3193 W ContextImpl: Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcastMultiplePermissions:1233 com.android.server.TelephonyRegistry.broadcastServiceStateChanged:3085 com.android.server.TelephonyRegistry.notifyServiceStateForPhoneId:1616 com.android.internal.telephony.ITelephonyRegistry$Stub.onTransact:492 android.os.Binder.execTransactInternal:1294
08-16 21:19:16.012 2368 3193 W ContextImpl: Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcastMultiplePermissions:1283 android.content.Context.sendBroadcastMultiplePermissions:2273 com.android.server.TelephonyRegistry.broadcastServiceStateChanged:3089 com.android.server.TelephonyRegistry.notifyServiceStateForPhoneId:1616 com.android.internal.telephony.ITelephonyRegistry$Stub.onTransact:492
08-16 21:19:16.012 2368 3193 W ContextImpl: Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcastMultiplePermissions:1283 android.content.Context.sendBroadcastMultiplePermissions:2273 com.android.server.TelephonyRegistry.broadcastServiceStateChanged:3096 com.android.server.TelephonyRegistry.notifyServiceStateForPhoneId:1616 com.android.internal.telephony.ITelephonyRegistry$Stub.onTransact:492
08-16 21:19:16.012 2368 3193 W ContextImpl: Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcastMultiplePermissions:1283 android.content.Context.sendBroadcastMultiplePermissions:2273 com.android.server.TelephonyRegistry.broadcastServiceStateChanged:3100 com.android.server.TelephonyRegistry.notifyServiceStateForPhoneId:1616 com.android.internal.telephony.ITelephonyRegistry$Stub.onTransact:492
08-16 21:19:16.013 2368 2674 W BroadcastQueue: Permission Denial: receiving Intent { act=android.intent.action.SERVICE_STATE flg=0x1000010 (has extras) } to ProcessRecord{d75b71d 3418:com.android.systemui/u0a384} (pid=3418, uid=10384) requires android.permission.READ_PHONE_STATE due to sender android (uid 1001)
08-16 21:19:16.014 2368 2674 W BroadcastQueue: Permission Denial: receiving Intent { act=android.intent.action.SERVICE_STATE flg=0x1000010 (has extras) } to ProcessRecord{d75b71d 3418:com.android.systemui/u0a384} (pid=3418, uid=10384) requires android.permission.READ_PHONE_STATE due to sender android (uid 1001)
08-16 21:19:16.014 2368 2674 W BroadcastQueue: Appop Denial: receiving Intent { act=android.intent.action.SERVICE_STATE flg=0x1000010 (has extras) } to ProcessRecord{d75b71d 3418:com.android.systemui/u0a384} (pid=3418, uid=10384) excludes appop android:fine_location due to sender android (uid 1001)

I mean, it looks like SystemUI and/or system_server need the READ_PHONE_STATE permission but if you try to grant that, say to SystemUI, it just says SystemUI didn't request that permission. So kind of a catch 22. In any case, there definitely looks like there's a service state message in the broadcast queue that stays there ad nauseum and won't go away until you reboot. Even then, sometimes it comes back before you can even do anything.