Age | Commit message (Collapse) | Author |
|
Prior to this, TARGET_WINDOWS_WRITTEN would be incremented before
the call to stream_to_target_write if the target was nonzero size
and write_target succeeded. This caused tgt->start to be set
incorrectly. This confused mapio but not xdelta, leading to
correct target windows written to incorrect locations.
Change-Id: I76db5281a749a20d0e63b8126238eb1886d87a1c
|
|
This is a useful debugging message and we'd like to know when it
happens, but it's more accurately backstopped by the target window
checksum. We should rely on that instead.
Change-Id: I7658a874a8ab1cf1e047984d5829657041336968
|
|
This was originally intended to track the cache length, but isn't
needed/used.
Change-Id: I159e801bb8d378fac977f456125a9deb66680c2a
|
|
Before this the conditional in the error message was inverted.
Also make this output to stdout instead of stderr so it fits better
with my test scripts.
Change-Id: I2666ead3ed04bbb874c30c055d172eba2b93c816
|
|
|
|
These windows should be consumed like any others, but should not
be added to the window count or the write queue.
This issue does not cause frontier violations per se, but does
contribute to the problem by shortening the effective length of
the write queue. This is particularly noticable in- but not unique
to- the situation where you have a read cache shorter than one
full source window.
Change-Id: Iba9739b9a82b60bcd7029652fe3bb6c4d2892eca
|
|
READ_FRONTIER is intended to ensure that data needed to produce a
target window isn't inadvertently clobbered by an earlier write.
Check this by actually looking at the source and target windows
being read/written rather than the current location in the file.
Change-Id: I31ad10365dd5a5a6bf4142b288a0c3ea846b6b9b
|
|
Add the ability to patch mapped files by giving it extra arguments
with the map filenames.
Change-Id: I2b54b017b35f481d7aeaf2d0340116817614ec54
|
|
The system image has don't-care regions where we can't count on what
data is present there. (Some tools may write blocks of zeros but
others may not, and writing blocks of zeros interferes with the
wear-leveling mechanisms on flash.) Modify syspatch to support a
"don't care map", which is basically a list describing the size of
care and don't-care regions in the partition, and use this when
reading the source and writing the target.
Certain pathological distributions of don't care blocks can make the
target-writing overlap the source-reading. The current code detects
this and crashes; correct handling requires buffering the target data
until the source reading moves ahead.
Change-Id: I397b10494b17148f8bbf58a2ca98da57b288e1a5
|
|
* commit '358a4f86b8c2cb3d3f879a37f6773dd09d4b77b0':
add GPL licensing notice
|
|
Change-Id: I7fef898f767f4673b88f220372e7ea65bcf5ee9c
|
|
Change the syspatch library so that the top-level call takes a pointer
and length for the patch data, rather than a FILE *. Change the
main.c test program to mmap the provided patch file and provide the
resulting pointer and length to syspatch.
Change-Id: Id195e1cb65df06c7d08895253c28ec5d4f7f39f8
|
|
Change-Id: I9d6655801b306bdd19dd5cdf22237a0e6c74a1e9
|
|
Turn syspatch into a static library on the device, so we can link it
in with other things.
Bug: 12893978
Change-Id: Id341a71ef96c097eb64995589fc7365c9895affc
|
|
|
|
|
|
|
|
|
|
|
|
Saved about 128MB this way.
Change-Id: I6dea9a4348dbb5e07d22367821a0f4ba436688f0
|
|
Change-Id: Ie29ece299da24f50acb22a3d0cfcbf5bc0d00d5a
|
|
Change-Id: I4a2cfb94598fca1ee4f13a88f16e44f50c1dfffd
|
|
Change-Id: Idd45a01ff3696a7461d2e985520221da6fb3ad18
|
|
Change-Id: I26675ec728395ce3fd07173c98c6f7005616ad18
|
|
Change-Id: Iccbf9c6f5c2afa00f499886a5f01bf74329714de
|
|
Change-Id: I3519f6b1a40d95d36a0317e14d53bcbfc20eba6e
|
|
|