Thread: eips 5.1.0
View Single Post
Old 05-05-2012, 10:28 PM   #2
geekmaster
Carpe diem, c'est la vie.
geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.
 
geekmaster's Avatar
 
Posts: 6,433
Karma: 10773668
Join Date: Nov 2011
Location: Multiverse 6627A
Device: K1 to PW3
I traced eips and discovered why the 5.1.0 firmware update broke programs that used the mxcfb.h header file to define the mxcfb_update_data structure, and the structures contained in that structure, and the structures contained in those structures (3 levels deep).

For some VERY STRANGE REASON, lab126 added two new fields used for histogram analysis to the eink update structure. But instead of adding the new fields to the end of the structure (before or after other rarely used fields), they INSERTED them into the middle of the structure, between update_marker and temp, relocating critical fields inside the structure.

That means that 5.1.0 breaks ALL EXISTING programs that do ioctl calls to do eink updates. To make it worse, the new structure layout has the SAME NAME as the old one, and the header file containing it also has the same name. That way you cannot include both header files in the same program to support multiple kindle models (or even different firmware SUBVERSIONS of the same K5).

This is a huge problem that locks application programs to specific MINOR versions of the kindle touch firmware if they use these header files or structure definitions. And NOT using the headers is bad because of the nested structure definitions.

How could this pass any peer review or quality control checks at lab126 or amazon?

Last edited by geekmaster; 12-09-2012 at 06:45 PM.
geekmaster is offline   Reply With Quote