unserialize(): Error at offset 11218 of 25832 bytes in CRM_Core_BAO_Cache::getItem()
I just got this happening also, on a 4.6 install. It's due to an issue with your civicrm_settings table. That piece of code you reference is pulling out settings type values from that table and caching them. The code assumes that the values in there are objects or arrays and have to get serialized and unserialized as they get stuffed in and pulled out of text fields. The error is due to the code's inability to unserialize the value, which can happen if it gets serialized badly, or was never serialized in the first place.

In your case, it looks like it's really big and exceeds the space available (since it's pulling out 24K bytes from that poor little field). In my case, there was some non-serialized data in there, possibly from a previous code version.

All I did to fix it was to look through my civicrm_settings table and saw a lot of entries for the name 'navigation' with a non-serialized string, and removed them (they were in the Personal Preferences group and were all the same, so it seemed innocuous).

For your case, you could find all the entries with a value length bigger than 20K and it'll probably be evident.

I suspect you might be misusing one of your fields/features.