On a whim I ran apt-get update through valgrind: ==22064== ==22064== HEAP SUMMARY: ==22064== in use at exit: 695,606 bytes in 7,018 blocks ==22064== total heap usage: 67,584 allocs, 60,566 frees, 18,503,180 bytes allocated ==22064== ==22064== LEAK SUMMARY: ==22064== definitely lost: 0 bytes in 0 blocks ==22064== indirectly lost: 0 bytes in 0 blocks ==22064== possibly lost: 0 bytes in 0 blocks ==22064== still reachable: 695,606 bytes in 7,018 blocks ==22064== suppressed: 0 bytes in 0 blocks ==22064== Rerun with --leak-check=full to see details of leaked memory ==22064== ==22064== For counts of detected and suppressed errors, rerun with: -v ==22064== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) ==20846== Conditional jump or move depends on uninitialised value(s) ==20846== at 0x4F4DA00: pkgCache::ReMap(bool const&) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x4F55E68: ??? (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x4F580B4: ??? (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x4EBAA51: pkgCacheFile::BuildCaches(OpProgress*, bool) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x51EE809: DoUpdate(CommandLine&) (in /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0.0) ==20846== by 0x4ECEA25: CommandLine::DispatchArg(CommandLine::Dispatch const*, bool) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x51C0E62: DispatchCommandLine(CommandLine&, std::vector > const&) (in /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0.0) ==20846== by 0x10BB38: ??? (in /usr/bin/apt-get) ==20846== by 0x59B682F: (below main) (libc-start.c:291) ==20846== Uninitialised value was created by a stack allocation ==20846== at 0x4F55B4D: ??? (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== ==20846== Syscall param write(buf) points to uninitialised byte(s) ==20846== at 0x5A8C6E0: __write_nocancel (syscall-template.S:84) ==20846== by 0x4ED6B13: FileFd::Write(void const*, unsigned long long) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x4E7A460: ??? (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x4F58146: ??? (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x4EBAA51: pkgCacheFile::BuildCaches(OpProgress*, bool) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x51EE809: DoUpdate(CommandLine&) (in /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0.0) ==20846== by 0x4ECEA25: CommandLine::DispatchArg(CommandLine::Dispatch const*, bool) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x51C0E62: DispatchCommandLine(CommandLine&, std::vector > const&) (in /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0.0) ==20846== by 0x10BB38: ??? (in /usr/bin/apt-get) ==20846== by 0x59B682F: (below main) (libc-start.c:291) ==20846== Address 0xd003007 is in a rw- anonymous segment ==20846== ==20846== Syscall param write(buf) points to uninitialised byte(s) ==20846== at 0x5A8C6E0: __write_nocancel (syscall-template.S:84) ==20846== by 0x4ED6B13: FileFd::Write(void const*, unsigned long long) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x4E7A4B7: ??? (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x4F58146: ??? (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x4EBAA51: pkgCacheFile::BuildCaches(OpProgress*, bool) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x51EE809: DoUpdate(CommandLine&) (in /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0.0) ==20846== by 0x4ECEA25: CommandLine::DispatchArg(CommandLine::Dispatch const*, bool) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x51C0E62: DispatchCommandLine(CommandLine&, std::vector > const&) (in /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0.0) ==20846== by 0x10BB38: ??? (in /usr/bin/apt-get) ==20846== by 0x59B682F: (below main) (libc-start.c:291) ==20846== Address 0xd003007 is in a rw- anonymous segment ==20846== ==20846== Syscall param write(buf) points to uninitialised byte(s) ==20846== at 0x5A8C6E0: __write_nocancel (syscall-template.S:84) ==20846== by 0x4ED6B13: FileFd::Write(void const*, unsigned long long) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x4E7A460: ??? (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x4F57DB4: ??? (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x4EBAA51: pkgCacheFile::BuildCaches(OpProgress*, bool) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x51EE809: DoUpdate(CommandLine&) (in /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0.0) ==20846== by 0x4ECEA25: CommandLine::DispatchArg(CommandLine::Dispatch const*, bool) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x51C0E62: DispatchCommandLine(CommandLine&, std::vector > const&) (in /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0.0) ==20846== by 0x10BB38: ??? (in /usr/bin/apt-get) ==20846== by 0x59B682F: (below main) (libc-start.c:291) ==20846== Address 0xd003007 is in a rw- anonymous segment ==20846== ==20846== Syscall param write(buf) points to uninitialised byte(s) ==20846== at 0x5A8C6E0: __write_nocancel (syscall-template.S:84) ==20846== by 0x4ED6B13: FileFd::Write(void const*, unsigned long long) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x4E7A4B7: ??? (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x4F57DB4: ??? (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x4EBAA51: pkgCacheFile::BuildCaches(OpProgress*, bool) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x51EE809: DoUpdate(CommandLine&) (in /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0.0) ==20846== by 0x4ECEA25: CommandLine::DispatchArg(CommandLine::Dispatch const*, bool) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x51C0E62: DispatchCommandLine(CommandLine&, std::vector > const&) (in /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0.0) ==20846== by 0x10BB38: ??? (in /usr/bin/apt-get) ==20846== by 0x59B682F: (below main) (libc-start.c:291) ==20846== Address 0xd003007 is in a rw- anonymous segment ==20846== Reading package lists... Done ==20846== Conditional jump or move depends on uninitialised value(s) ==20846== at 0x4F4DA00: pkgCache::ReMap(bool const&) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x4F4DD2F: pkgCache::pkgCache(MMap*, bool) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x4EBAAFC: pkgCacheFile::BuildCaches(OpProgress*, bool) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x51EE809: DoUpdate(CommandLine&) (in /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0.0) ==20846== by 0x4ECEA25: CommandLine::DispatchArg(CommandLine::Dispatch const*, bool) (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846== by 0x51C0E62: DispatchCommandLine(CommandLine&, std::vector > const&) (in /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0.0) ==20846== by 0x10BB38: ??? (in /usr/bin/apt-get) ==20846== by 0x59B682F: (below main) (libc-start.c:291) ==20846== Uninitialised value was created by a stack allocation ==20846== at 0x4F06A10: ??? (in /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0.0) ==20846==