I am currently working on MfgTool for i.MX508, and I found the MfgTool for my board is not stable as we expected, sometimes (80%) the g_file_storage reports NULL pointer dereference for this command:
<CMD type="push" body="pipe tar -jxv -C /mnt/mmcblk0p1" file="files/rootfs.tar.bz2">Sending and writting rootfs</CMD>
I debugged the kernel (I am using L2.6.35.3_11.05.01, and found in source file: fsl_updater.c, line 421:
if (!list_empty(&ctx->write)) {
uud = list_first_entry(&ctx->write, struct utp_user_data, link);
The uud is used without checking its validity, so kernel crashes.
I didn't dig much more because I am busy for now, hope somebody can look into this. I will turn to this issue later.