diff options
Diffstat (limited to 'CHANGELOG.md')
-rw-r--r-- | CHANGELOG.md | 997 |
1 files changed, 997 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..b69ea3b --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,997 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). + +## [2.2.0] - 2024-03-29 +### Added + - flashcp: Add write last option + - flash_erase: Add an option for JFFS2 cleanmarker size + - ubiattach: Add disable fastmap option + - ubiattach: Add option to reserve peb pool for fastmap + - support building without zlib + - CHANGELOG & README files + +### Fixed + - jffs2dump: check return value of lseek + - mkfs.ubifs: fix xattr scanning for builds with selinux support + +### Changed + - overhaul dependency handling in the build system + +## [2.1.6] - 2023-08-30 +### Added + - flash_speed: Measure read while write latency + - Support `mtd:<num>` syntax for several tools + +### Fixed + - flashcp: check for lseek errors + - flashcp: fix buffer overflow + - flashcp: verify data in `--partition` + - flashcp: abort on `--partition` and `--erase-all` + - flashcp: correct casting for percent display + - mtdpart: document partition of size 0 + - mkfs.ubifs: Non-terminated string related failure with option selinux + - nandtest: handle nand devices larger than 4G + - Fix printf format specifiers for 64 bit integer types + +### Changed + - flashcp: merge duplicate write code paths + - flashcp: merge duplicate MEMERASE code paths + - flashcp: simplify logging + +## [2.1.5] - 2022-10-07 +### Fixed + - mkfs.jffs2: spelling of `--compression-mode` parameter in help text + - ubinfo: `--vol_id` return code for absent volume id + - nandflipbits: fix corrupted oob + - libmtd: do not ignore non-zero eraseblock size when `MTD_NO_ERASE` is set + - jffs2reader: warning about unaligned pointer + - tests: Remove unused linux/fs.h header from includes + - fix test bashism + - nanddump: fix writing big images on 32bit machines + - nor-utils: fix memory leak + +### Changed + - flash_otp_dump: make offset optional + - nandwrite: warn about writing 0xff blocks + +## [2.1.4] - 2022-10-07 +### Added + - ubiscan debugging and statistics utility + +### Fixed + - Some mtd-tests erroneously using sub-pages instead of the full page size + - Buffer overrun in fectest + - Build failures due to missing jffs2 kernel header + +## [2.1.3] - 2021-07-25 +### Added + - flashcp: Add new function that copy only different blocks + - flash_erase: Add flash erase chip + - Add flash_otp_erase + - Add an ubifs mount helper + - Add nandflipbits tool + +### Fixed + - mkfs.ubifs: Fix runtime assertions when running without crypto + - Use AC_SYS_LARGEFILE + - Fix test binary installation + - libmtd: avoid divide by zero + - ubihealthd: fix UBIFS build dependency + - mkfs.ubifs: remove `OPENSSL_no_config()` + - misc-utils: Add fectest to build system + - mkfs.ubifs: Fix build with SELinux + - Fix typos found by Debian's lintian tool + - Fix jffs2 build if zlib or lzo headers are not in default paths + +## [2.1.2] - 2020-07-13 +### Added + - flashcp: Add option `-A`, `--erase-all` + - mtd-utils: add optional offset parameter to `flash_otp_dump` + - ubi-utils: Implement a ubihealthd + - mkfs.ubifs: Add authentication support + +### Fixed + - mtd-utils: Fix return value of ubiformat + - ubiupdatevol: Prevent null pointer dereference + - libubigen: remove unnecessary include + - libubi: remove private kernel header from includes + - mkfs.ubifs: fscrypt: bail from encrypt_block if gen_essiv_salt fails + - mkfs.ubifs: abort add_directory if readdir fails + - mkfs.ubifs: close file descriptor in add_file error path + - mkfs.ubifs: don't leak copied command line arguments + - mkfs.ubifs: free derived fscrypt context in add_directory error paths + - mkfs.ubifs: don't leak hastable iterators + - mkfs.ubifs: don't leak temporary buffers + - mkfs.ubifs: propperly cleanup in ALL interpret_table_entry error paths + - mkfs.jffs2: don't leak temporary buffer if readlink fails + - libmtd: don't leak temporary buffers + - ftl_check: don't leak temporary buffers + - ftl_format: don't leak temporary buffers + - ubiformat: don't leak file descriptors + - nanddump: don't leak copied command line arguments + - mtd_debug: cleanup error handling in flash_to_file + - jittertest: fix error check for open system call + - fs-tests: don't leak temporary buffers + - mtd-utils: Fix printf format specifiers with the wrong type + - mtd-utils: Fix potential negative arguments passed to close(2) + - mtd-utils: Fix various TOCTOU issues + - mtd-utils: Fix some simple cases of uninitialized value reads + - mtd-utils: Fix wrong argument to sizeof in nanddump + - mtd-utils: Fix "are we really at EOF" test logic in libubi read_data + - mtd-utils: Fix potentially unterminated strings + - mtd-utils: Add checks to code that copies strings into fixed sized buffers + - mkfs.ubifs: fix broken build if fscrtyp is disabled + +### Changed + - ubifs-media: Update to Linux-5.3-rc3 + +## [2.1.1] - 2019-07-21 +### Added + - mkfs.ubifs: Add ZSTD compression + +### Fixed + - ubiformat: Dont ignore sequence number CLI option + - mkfs.ubifs: fix build without openssl + - mkfs.ubifs: fix regression when trying to store device special files + - mkfs.ubifs: fix description of favor_lzo + - unittests/test_lib: Include proper header for `_IOC_SIZE` + - unittests/libmtd_test: Include fcntl header + - unittests: Define the use of `_GNU_SOURCE` + - ubinize: Exit with non-zero exit code on error. + - mtd-tests: nandbiterrs: Fix issue that just insert error at bit 7 + - ubi-tests: ubi_mkvol_request: Fully initialize `struct ubi_mkvol_request req` + - ubi-tests: io_read: Filter invalid offset before `lseek` in `io_read` test + - ubi-tests: mkvol test: Checks return value `ENOSPC` for `ubi_mkvol` + - ubi-tests: fm_param: Replace `fm_auto` with `fm_autoconvert` + +## [2.1.0] - 2019-03-19 +### Added + - mkfs.ubifs: Implement support for file system encryption + - mkfs.ubifs: Implement selinux labelling support + - ubinize: add support for skipping CRC check of a static volume when opening + - ubimkvol: add support for skipping CRC check of a static volume when opening + - Add lsmtd program + +### Fixed + - update various kernel headers + - Instead of doing preprocessor magic, just output off_t as long long + - fix verification percent display in flashcp + - mkfs.ubifs: fix double free + - mkfs.ubifs: Fix xattr nlink value + - ubinize: avoid to create two `UBI_LAYOUT_VOLUME_ID` volume + - common.h: fix prompt function + - libmtd: don't print an error message for devices without ecc support + - io_paral: Fix error handling of update_volume() + - ubimkvol: Initialize req to zero to make sure no flags are set by default + - libubi: add volume flags to `ubi_mkvol_request` + - mkfs.ubifs: add_xattr is not depending on host XATTR support + - Revert "Return correct error number in ubi_get_vol_info1" which + introduced a regression. + - make sure pkg-config is installed in configure script + - ubiformat: process command line arguments before handling file arguments + +### Changed + - ubiformat: remove no-volume-table option + +## [2.0.2] - 2018-04-16 +### Added + - libmtd: Add support to access OOB available size + - mkfs.ubifs: Allow root entry in device table + +### Fixed + - Fix unit-test header and file paths for out of tree builds + - Fix unit test mockup for oobavail sysfs file + - misc-utils: flash_erase: Fix Jffs2 type flash erase problem + - libmtd_legacy: Fix some function description mismatches + - mtd-utils: ubifs: fix typo in without_lzo definition + - mtd: tests: check erase block count in page test + - mtd: unittests: Stop testing stat() calls + - mtd: unittests: Decode arg size from ioctl request + - mtd: unittests: Use proper unsigned long type for ioctl requests + - mtd: tests: Fix check on ebcnt in nandpagetest + - ubi-utils: ubicrc32: process command line arguments first + - nandbiterrs: Fix erroneous counter increment in for loop body + - jittertest: Use the appropriate versions of abs() + - Mark or fix switch cases that fall through + - mkfs.ubifs: ignore EOPNOTSUPP when listing extended attributes + - misc-utils: initialize "ip" in docfdisk to NULL + - mkfs.ubifs: Apply squash-uids to the root node + +### Changed + - ubi-utils: ubiformat.c: convert to integer arithmetic + - mtd-utils: common.c: convert to integer arithmetic + - Run unit test programs through "make check" + - Enable more compiler warning flags, fix warnings + - Add no-return attribute to usage() style functions + - Remove self-assignments of unused paramters + - tests: checkfs: Remove unused source file from makefiles + - ubi-tests: io_update: fix missleading indentation + - Add ctags files to .gitignore + - libscan: fix a comment typo in libscan.h + - libmtd: fix a comment typo in dev_node2num + +## [2.0.1] - 2017-08-24 +### Added + - nandbiterrs: Add Erased Pages Bit Flip Test + - mkfs.ubifs: Add support for symlinks in device table + - nanddump: Add `--skip-bad-blocks-to-start` option + - nandwrite: Add `--skip-bad-blocks-to-start` option + +### Fixed + - common: Always terminate with failure status if command line options + are unknown or missing + - common: Fix format specifier definitions for `off_t` and `loff_t` + - common: More consistent exit codes + - libmtd: Fix error status if MTD is not present on the system + - libubi: Add klibc specific fixes for `ioctl` + - libubi: Fix error status in `ubi_get_vol_info1` for non-existing volumes + - misc-utils: Support jffs2 flash-erase for large OOB (>32b) + - mkfs.jffs2: Add missing header inclusions required for build with musl + - mkfs.ubifs: Fix alignment trap triggered by NEON instructions + - mkfs.ubifs: Fix uuid.h path + - mkfs.ubifs: Replace broken ubifs_assert with libc assert + - nandbiterrs: Actually get the new ECC bit flip count before comparing stats + - nandpagetest: Improved argument sanity checking + - nandwrite: Fix bad block skipping + - nandwrite: Improved argument sanity checking + - ubinfo: Improved argument sanity checking + - ubi-tests: Replace variable-length array with `malloc` + - ubi-tests: Support up to 64k NAND page size + +### Changed + - build-system: Enable compiler warnings + - build-system: Restructure autoconf dependency checking + - common: Add const modifier to read only strings and string constants + - common: Eliminate warnings about missing prototypes + - common: Get rid of rpmatch usage + - common: Remove README.udev from ubi-tests extra dist + - common: Remove unused variables and functions + - common: Silence warnings about unused arguments + - flashcp: Drop custom defines for `EXIT_FAILURE` and `EXIT_SUCCESS` + - libiniparser: remove unused function needing float + - libmissing: Use autoconf header detection directly + - libubi: Remove `UDEV_SETTLE_HACK` + - misc-utils: Move libfec to common public header & library directory + - nandwrite: replace erase loop with mtd_erase_multi + - serve_image: Use PRIdoff_t as format specifier. + - ubi-tests: Speedup io_paral by using rand_r() + - ubirename: Fix spelling + +## [2.0.0] - 2016-12-22 +### Added + - libmissing with stubs for functions not present in libraries like musl + - unittests for libmtd and libubi + - port most kernel space mtd test modules to userspace + - mkfs.ubifs: extended attribute support + - ubinize: Move lengthy help text to a man page + - nandwrite: Add skip-all-ff-pages option + - flash_{un,}lock: support for MEMISLOCKED + - nandtest: support hex/dec/oct for `--offset` and `--length` + +### Fixed + - common: Fix 'unchecked return code' warnings + - common: Fix PRI{x,d}off definitions for x86_64 platform + - common: include sys/sysmacros.h for major/minor/makedev + - common: fix wrong format specifiers on mips32 + - libmtd: Fix uninitialized buffers + - libmtd: Eliminate warnings about implicit non-const casting + - libmtd: Fix return status in mtd_torture test function + - libmtd: mtd_read: Take the buffer offset into account when reading + - mkfs.ubifs: use gid from table instead 2x uid + - mkfs.ubifs: fix compiler warning for WITHOUT_LZO + - mkfs.ubifs: fix build when WITHOUT_LZO is set + - mkfs.ubifs: correct the size of nnode in memset + - mkfs.jffs2: initialize lzo decompression buffer size + - mkfs.jffs2: Fix scanf() formatstring for modern C version + - nanddump: check write function result for errors + - nanddump: write requested length only + - flash_{un,}lock: don't allow "last byte + 1" + - flash_{un,}lock: improve strtol() error handling + - ubinize: Always return error code (at least -1) in case of an error + - recv_image: fix build warnings w/newer glibc & _BSD_SOURCE + - serve_image: use proper POSIX_C_SOURCE value + - flashcp: Use %llu to print filestat.st_size + - mtd_debug: check amount of data read. + - fs-tests: integrity: don't include header <bits/stdio_lim.h> + - tests: Fix endian issue with CRC generation algorithm + - make_a_release.sh: fix MTD spelling + - Fix packaging of unit test files + - Correct casting for final status report in flashcp + +### Changed + - autotools based build system + - complete restructuring of the source tree + - cleanup of some utilities + - removal of some very old, unused or duplicated files from the source tree + - libmtd: removal of very old, completely unused and broken functions + - nandwrite: Factor out buffer checking code + +## [1.5.2] - 2015-07-24 +### Added + - mtdpart utility to add/delete partition + - jffs2dump: XATTR and XREF support for content dump & endianess conversion + +### Fixed + - ubifs-media.h: include "byteorder.h" + - ubiformat: fix the subpage size hint on the error path + - include/common.h: fix build against current uClibc + - include/common.h: fix build against recent 0.9.33 uClibc + - libmtd: fix comment typo + - mkfs.ubifs: Fix build with gcc 5.1 + - libmtd: don't ignore "region index" parameter in `mtd_regioninfo()` + - .gitignore: add new mtdpart utility + - ubi-tests: fix a some overflows + - formating issues (trailing whitespaces, space-before-tab, blank line at EOF) + - fs-tests: pass `TEST_DIR` to integck in run_all.sh + - nandtest: fix `--reads` argument + - libmtd: fix `mtd_dev_present` return value on legacy systems + - libfec: use standard C type instead of `u_long` + - serve_image: do not include error.h + - recv_image: do not include error.h + - include/common.h: fix build against musl + - integck: Use `$(CC)` and `$(AR)` instead of `gcc` and `ar` consistently + +### Changed + - mkfs.ubifs: start using common code, move some macros to common header + - Move mkfs.ubifs/ubifs-media.h to include/mtd + - make_a_release.sh: suggest announcement e-mail + - nandtest: Remove redundant check + - nandtest: Move the "read and compare" code to a function + - nandtest: Introduce multiple reads & check iterations + +## [1.5.1] - 2014-04-07 +### Added + - tests: ubi: add stress-test.sh + - ubi-utils: Add ubiblock tool + - flash_erase, flash_otp_write: check the nand type + - ubiupdatevol: add a `--skip` option + - nandwrite: add `--input-{skip,size}` options + - mkfs.ubifs: allow reformatting of devices + - new prompt() helper for talking to the user + +### Fixed + - Makefile: add LDFLAGS_mkfs.ubifs, fix libuuid issue + - runtests.sh: print more consistent messages + - integck: fix identation + - nandwrite: apply corrent version of `--input-*` patch series + - ubi-tests: argument number mismatch for `ubi_leb_change_start` + - ubi-tests: fix pthreads linking + - ubiformat: correct "non-ubifs" warning message + - mkfs.ubifs: correct and improve LEB size error prints + - ubi-utils: Fix file descriptor leaks in libubi + - integck.c: Fix buffer overflow in save_file + - integck.c: Only verify the operation after datastructures have been updated + - mkfs.ubifs: Improve error handling of is_contained() + - nandwrite: clean up length types + - nand{dump, test, write}: clean up `--help` handling + - fix build errors w/newer kernel headers & glibc + - ubinize: fix usage text + - consistency between `u_int32_t` / `off_t` / `off64_t` + - tests: io_update correct lseek parameters order + - ubiformat: fix failure on big partitions (>4Gio) + - Check mtdoffset is not larger than mtd.size in case of a bad block. + - flash_otp_write: fix writing to NAND in presence of partial reads + - flash_otp_write: fix a buffer overflow on NAND with write size > 2048 + - ubiformat: really skip some messages when quiet + - ubiformat: fix error path + +### Changed + - nandwrite: minor cleanups + - tests: ubi: clean-up the runtests.sh script + - libubi: Remove `ubi_attach_mtd` + - load_nandsim.sh: switch to sh, remove bashisms, cleanup code + - load_nandsim.sh: introduce a usage function + - load_nandsim.sh: intruduce fatal function + - load_nandsim.sh: use dochere for help output + - mkfs.ubifs: rewrite path checking + - ubi-tests: switch to using common.h from the top level + - ubi-tests: rename common.[ch] to helpers.[ch] + - integck.c: immediately dump the buffer containing the errors + - use xstrdup in a few more places + - move `_GNU_SOURCE` to the main makefile + - ftl_check/ftl_format/nftldump: use existing mtd_swab.h header + - flash_erase: use `pwrite()` rather than `lseek()` and `write()` + - UBI: sync ubi-user.h with kernel v3.6-rc1 + - introduce `PRIxoff_t` and `PRIdoff_t` printf helpers + - ubiattach: use `max_beb_per1024` in `UBI_IOCATT` ioctl + - ubiattach: fail if kernel ignores max_beb_per1024 + - libubi: factorize `ubi_attach` and `ubi_attach_mtd` code + - Makefile: Build and install `flash_otp_lock`, `flash_otp_write` + - ubiformat: clean up synopsis of command-line parameters + +## [1.5.0] - 2012-05-07 +### Added + - limbtd: implement `mtd_dev_present` for older kernels + - libubi: make `ubi_dev_present()` a library function + - libmtd: add `mtd_dev_present()` library function + +### Fixed + - mkfs.ubifs: do not ignore `--max-leb-cnt` when formatting an UBI volume + - ubinfo: fix `--all` for non-consecutive device numbers + - mtdinfo: fix `--all` for non-consecutive device numbers + - libmtd: fix segmentation fault on lib->mtd + - mtdinfo: correct grammar on error message + - libmtd: fix `mtd_write()` issues for large data-only writes + - libmtd: check if the device is present before accessing it + - libmtd_legacy: don't open device in R/W + - Makefile: fix "make clean" for old GNU find + - libmtd: Variable name same as function name causing compile to fail (Android) + +### Changed + - make_a_release.sh: remind about pushing the master branch + - docfsdisk: minor cosmetic cleanup + - mkfs.jffs2: improve documentation of `--pagesize` parameter + +## [1.4.9] - 2011-12-17 +### Added + - Add a script to make releases + - nandtest: add seed argument + +### Fixed + - nandtest: seed random generator with time + - libmtd: allow write operations when MEMWRITE is not supported + - nandtest: set oldstats.failed + - Makefile: fix install target with out-of-tree builds + +### Changed + - Makefile: separate man page install and compression steps + +## [1.4.8] - 2011-11-19 +### Fixed + - Makefile: Version number accedientally left at 1.4.6 in last release + +## [1.4.7] - 2011-11-18 +### Added + - libmtd: support MEMWRITE ioctl + +### Fixed + - jffs2reader: get rid of linker error + - jffs2reader: eliminate compiler errors + - ubiformat: handle write errors correctly + - mtd-utils: add jffs2reader to .gitignore + +### Changed + - jffs2reader: use major() and minor() helpers + - jffs2reader: print ctime only by user's request + - jffs2reader: use const char * for path variables + - jffs2reader: introduce ADD_BYTES macro + - jffs2reader: update the header inclusion block + - nandtest: print number of bits corrected during test + - mkfs.ubifs/ubinize: increase PEB size limit to 2MiB + - mtdinfo: provide info when used without arguments + - nandwrite: use common.h "errmsg" functions + - nandwrite: re-implement `--autoplace` option + - move OOB auto-layout into libmtd's mtd_write + - nandwrite: merge `mtd_write_oob` and `mtd_write` calls + - libmtd: modify `mtd_write` to cover OOB writes + - update mtd-abi.h + - nandwrite: consolidate buffer usage + - nanddump: kill usages of MEMSETOOBSEL ioctl + - nandwrite: refactor "old_oobinfo" code + - nandwrite: cleanup "oobinfochanged" leftovers + - nandwrite: remove C99 comment style + - use `__func__` instead of `__FUNCTION__` + - mtd_debug: replace #defines with enum + - mtd_debug: fixup style + +### Removed + - tests: checkfs: remove unused code + - nandwrite: kill `--raw` option + - nandwrite: kill -j, -y, and -f options + - nandwrite: remove `autoplace` features + +## [1.4.6] - 2011-08-20 +### Fixed + - mkfs.ubifs: fix a gcc warning + - integck: fix build error (MS_DIRSYNC, MS_RELATIME) + - mtd-tests: checkfs: fix size_t related warning + - mtd-tests: io_paral: build error, "variable length strings" + - flash_erase: fix incorrect help message + - Makefile: fix "version.h" build for cross-compiling + - Makefile: fix "make clean" for cross-compile + - mtdinfo: don't open NULL pointer when getting region_info with `-a' + - mtdinfo: refactor code to remove "args.all" dependency + - mtdinfo: fixup "example usage" help section + - nandwrite: invalid erase after page write failure + +### Changed + - nanddump: change default to `--bb=skipbad` + - nanddump: change `-o` to mean `--oob`, not `--omitoob` + - nanddump: default to NOT dumping OOB data + - mkfs.ubifs: use common.h + - switch more utils to unified versioning + - add common version printing function + - mtdinfo: restructure help message + - mtdinfo: consolidate help as display_help() + - rewrite build system to avoid recursion + - autogenerate version.h from build system + +### Removed + - mtdinfo: remove -m leftovers + - mkfs.ubifs: remove root inode squash feature + - nanddump: kill `--omitbad`, `--noskipbad` + - kill flash_info + - mtdinfo: kill `-m` option + - build: remove old SYMLINKS variable + +## [1.4.5] - 2011-07-25 +### Added + - Makefile: introduce new target tests in Makefile + - Makefile: introduce cscope target + - nanddump: add `--oob` option + - nanddump: add `--bb=METHOD` option + - mkfs.ubifs: add `-F` option for `free-space fixup` + - libmtd: add helper funcs for getting regioninfo and locked info + - mtdinfo: add regioninfo/eraseblock map display + - flash_info: allow people to get info on multiple devices + +### Fixed + - serve_image: adjust classifier and type for printf + - libmtd: use PRIu64 classifier for uint64_t printf arguments + - mkfs.jffs2: fix casting of __off64_t + - tests: ubi-tests: clean libubi.a and *.o + - tests: fs-tests: ssize_t return type in read() wrapper + - mkfs.jffs2: fix casting of printf argument + - tests: jittertest: fix set of compiler warnings + - tests: ubi-tests: seed_random_generator() was used w/o prototype + - tests: fs-tests: check return value of functions + - tests: checkfs: fix linker warnings + - tests: checkfs: fix compiler warnings + - tests: make jittertest buildable + - mkfs.ubifs: check output first + - flash_{lock, unlock}: fix off-by-one error for "entire device" length + - fs-tests: use independent random generators for ops and data + - ubi-utils: ubimkvol: fix parameters parsing regression + +### Changed + - tests: checkfs: integerate with common Makefile + - fs-tests: integck: major cleanup/rewrite + - mtdinfo: deprecate the -m option + - libmtd: improve mtd_islocked interface + - switch ubi and ubifs tools to use common strtoX funcs + - mtdinfo: separate out ubi information printing + - fs_tests: make the test-suite finish faster + - nanddump: document, warn about future default `--omitoob` + - feature-removal-schedule: describe nanddump changes + - nanddump: warn about new default BB handling + - nanddump: update help message for BB method changes + - nanddump: sort options in help message alphabetically by shortname + - jffs2: make lzo optional at build time + - flash_info: deprecate + - ubi-utils: send help/version info to stdout + - libmtd: use O_CLOEXEC + - include/mtd: sync with kernel + - flash_info: convert to common.h + - ignore (FLAT) gdb files + - flash_{lock,unlock}: convert to common code + - flash_{lock,unlock}: merge into one util + - flash_{lock,unlock}: merge functionality + - flash_lock/flash_unlock/flash_info: clean up style + +### Removed + - punt redundant libcrc32 + - mtdinfo: remove now unused ubigen info + +## [1.4.4] - 2011-04-01 +### Added + - libmtd: fix OOB read and write interface + +### Fixed + - fs-tests: test_1: fix compilation warnings + - fs-tests: perf: fix compilation warning + - fs-tests: integck: improve re-mounting test coverage + +### Changed + - mkfs.ubifs: deprecate `squash-rino-perm` options + - nanddump: fail if `-s` parameter is unaligned + +## [1.4.3] - 2011-03-18 +### Added + - nandwrite: add only write oob option + +### Fixed + - common.h: simple_strtoll type + +### Changed + - flash_erase: start position should be in bytes + +## [1.4.2] - 2010-12-31 +### Added + - nandwrite: Large page+oob support + - nanddump/nandwrite: 64-bit support utilizing libmtd + - introduce xzalloc() helper + - add xasprintf() helper + - new memory wrappers + - new strtoX helpers + - new bareverbose() helper + - libmtd: add lock/unlock helpers + - nandwrite: add `--skipbad` to write bad blocks + +### Fixed + - nanddump: fix initialization of bad blocks oob data buffer + - nanddump: always check the first erase block + - flash_erase: Fix output of offsets + - nanddump/nandwrite: Style fixups + - nanddump/nandwrite: style, signed-ness, printing fixups + - nandwrite: type consistency + - nandwrite: prevent 32-bit overflow + - nandwrite: avoid NULL buffer pointers + - libmtd: fix OOB size initialization in legacy code + - Makefile: Use $(CURDIR) in place of $(PWD) + - mkfs.ubifs: Fix heap corruption on LEB overrun + - mkfs.ubifs: Fix --squash-rino-perm / --nosquash-rino-perm + - Fix make install errors + - libmtd: fix "fount" typo + - sys_errmsg: fix indentation + - recv_image: fix `__USE_GNU` hack + - ubi-utils: tweak const strings decls + - compr_rtime: fix unused warning + - libfec: fix up pointer warnings in fec magic computation + - mkfs.jffs2: fix devtable count as mkfs.ubifs does + - mkfs.jffs2: fix repeated dev nodes + - mkfs.ubifs: Fix typo in short options of mkfs.ubifs + +### Changed + - mkfs.ubifs: do not override root inode permissions + - Makefile: remove old ubi-utils + - Add --squash-rino-perm removal plan + - nanddump: warn when the start address is not page aligned + - nanddump: Dynamic buffer, increase pagesize/oobsize + - nandwrite: Use libmtd to get correct mtd parameters + - nandwrite: switch "oobsize" for "writesize" + - nandwrite: Clarify usage of aligned "erasesize" + - nandwrite: add check for negative blockalign + - nandwrite: use common.h "errmsg_die" + - nanddump: choose correct "printf" format-specifier + - nanddump: check for negative inputs + - nanddump: change "unsigned" to "signed" + - nanddump/nandwrite: use "simple_" str functions + - common.h: Add MAX() macro, fix MIN() + - nanddump: Refactor pretty print code into an sprintf() + - jffs2reader: convert to common.h helpers + - libmtd: make malloc failures fatal + - sumtool/libfec: convert "()" to "(void)" in func defs + - sumtool: convert to common.h helpers + - mkfs.jffs2: convert to common.h and xalloc.h helpers + - libmtd: unify some error messages + - xalloc: simplify/unify error messages + - enable garbage collection of unused function/data sections + - mkfs.jffs2: use new xasprintf() helper + - unify flash_erase and flash_eraseall + - common.h: clean up PROGRAM_NAME usage + - standardize PROGRAM_NAME + - mkfs.ubifs: use common ARRAY_SIZE + - punt duplicate normsg_cont define + - convert to common.h/min + - libmtd: unify erase block argument checking + - compr: drop unused model argument + - compr_zlib: mark local functions as static + - rbtree: avoid redefining offsetof + +### Removed + - ftl_check: drop unused verbose flag + - nandwrite: Remove redundant 'autoplace' check + +## [1.4.1] - 2010-10-19 +### Changed + - Hide zlib's crc32 in compr_zlib.c and mkfs.ubifs/compr.c + +## [1.4.0] - 2010-09-13 +### Added + - libmtd: add OOB read and write interfaces + - libmtd: support MEMERASE64 + - lib: Add forgotten Makefile + - libmtd: add mtd_write_img + - ubi-tests: add normsg + - ubinfo: document the new -N option + - nanddump: add canonical (hex+ascii) flag + - nanddump: add "forcebinary" flag + - nanddump: add `--nobad` to read bad blocks + - libubi: add support to attach/detach by MTD device path + - ubiattach/ubidetach: add support to attach/detach by path + - nanddump: Support 4096+218 and 4096+224 page sizes + - ubinfo: add -N option to get info by name of ubi volume + - support 4096+64 page sizes + +### Fixed + - mkfs.jffs2: fix `--enable-compressor` + - lib: fix libcrc32 generation + - rename crc32 to mtd_crc32 + - mkfs.ubifs: fix compilation warning + - mkfs.jffs2: fixed warnings + - nandtest: Fixed indentation + - fix spelling error + - fix compiler warnings + - nandwrite: fix the bug of writing a yaffs2 image to NAND + - nandwrite: check if the start address is page-aligned + - nandtest: fix `--keep` argument + - fix parallel build between ubi-utils and mkfs.ubifs + - clean up compile warnings + - ubi-utils: reformat help text to fit in 80 columns + - nanddump: Fix hexdump nybble ordering + - mtd_debug: fix creation mode parameter + - mkfs.jffs2: fix integer underflow in jffs2_rtime_compress() + +### Changed + - libs: remove ubiutils-specific stuff from common.h + - libs: make crc32 and fec to be libraries + - libscan: rename hdr to ech + - ubi-test: seed the random genrator in tests + - ubi-tests: use rand instead of random in io_paral + - ubi-utils: harmonize mtd device node variables + - ubi-utils: harmonize libmtd interface a bit + - ubi-tests: remove some junk from the integ test + - libubigen: make init_vid_hdr externally visible + - libubigen: move header comments + - libubigen: do not create huge arrays on stack + - ubi-tests: teach errmsg and failed return error code + - ubi-tests: rename err_msg to errmsg + - libubi: provide mtd number in UBI device information + - libubi: remove few fields from volume info + - nanddump: increase max OOB size + - nanddump: rename `--nobad` to `--noskipbad` + - build: add option to not force largefile support + - ubi-utils: drop -Werror in old utils + - flash_eraseall: tweaks to make binary size smaller + - mtd: change flash_eraseall to use libmtd-wrapped ioctls + - mtd-utils: update to latest mtd-abi.h from kernel.org + - move libmtd source files to lib/ subdirectory + - ubi-utils: provide default value for /dev/ubi_ctrl + +### Removed + - nanddump: drop unused --ignoreerrors option + +## [1.3.1] - 2010-01-15 +### Fixed + - ubiformat: always initialize seq number + - ubiformat: be consistent with sequence numbers + +## [1.3.0] - 2009-12-09 +### Added + - Makefile: Add Optional ZLIB and LZO CPPFLAGS and LDFLAGS + - Add mkfs.ubifs + - Add support for 4k pages + - ubirmvol: remove volume by name + - nandwrite: Support reading from standard input + - nanddump: Add Support for Quiet Option + - ubinize: allow an absent 'image' in the ubinize configuration + - handle non-power-of-2 erase size + - add ubirename utility + - ubiformat: mark faulty blocks as bad + - ubi-utils: add sysfs interface support and new tool + - libubi: add `ubi_set_property`, `ubi_leb_unmap` interfaces + - libubi: add `ubi_is_mapped()` function + - ubinize: add sequence number support + - ubiformat: add image sequence support + - ubi-utils: add ubirsvol tool to resize UBI volumes + - flash_unlock: enhancing for unlocking of specified number of blocks + +### Fixed + - ubi-tests: fix makefile + - ubi-tests: fix run script + - ubinize: validate number of sections + - ubinize: add more ini-file validation + - ubinize: fix static volumes generation + - fs-tests: fix symlink bug in integrity test + - fs-tests: fix max file name length in integrity test + - fs-tests: allow for symlink name too long in integrity test + - ubi-utils: fixed and enhanced `--flash-image` option + - ubimkvol: check for free LEBs + - ubiupdatevol: remove non-existing option from help message + - fs-tests: also preserve mount options when mounting again + - nandwrite/nanddump: Pass Real Names as Arguments to perror + - ubinize: correct subpage_size print and initialise vol_info to zero + - flash_eraseall reports incorrect percentage + - ubi-utils: fix CFLAGS handling wrt cross compilation + - Makefile: Separate '-m' and the mode with a space when invoking 'install' + - ubi-utils: various fixes + - ubiformat.c: fix printf(%d, size_t) warning + - ubi-utils: fix up build system + - nandwrite: correct data reading + - mkfs.jffs2: fix dir creation in / + - ubi-utils: fix warning in fprintf() code + - common.mk: tweak rules to workaround make-3.80 bugs + - fs-tests: fix remounting in integck + - ubi-utils: minor printing fix + - ubi-utils: fix compilation warnings + - ubi-tests: fix build and some warnings + - ubiupdatevol: fix -t parameter + - mkfs.jffs2: fix lzo usage on 64bit systems + - make sure compiler supports warning flags + - libmtd: fix mtd_is_bad return code + - libubigen: don't define large array on stack + - ubiformat: fix segfault and messages + - Prevent git-clean from removing cscope files + - ubinfo: handle -d correctly + - ubiformat: fix build error + - ubi-tests: make tests compile again + - libubigen: add missing include + - libubi: fix multiple memory corruptions + - ubi-utils: fix memory corruptions + - libmtd: recognize pre-MTD-sysfs kernels better + - nandwrite: fix loop condition + - nandwrite: return error if failure when reading from standard input + - nandwrite: fix error handling + - libubi: fix wrong size calculation with sizes > 4GiB + - ubiformat: allow zero erase counter + - ubi-utils: fix compilation errors when using CPPFLAGS + - nandwrite: fix incorrect use of errno + - ubiformat: fix typo in the help output + - ubiformat: fix `--erase-counter` handling + - flash_lock: fix length being passed + - ubiformat: check that min IO size is power of 2 + - ubiformat: fix error message + +### Changed + - enable parallel build process + - ubi-utils: use 'stat(2)' instead of 'lstat(2)' + - ubi-utils: allow ubiformat to read from stdin + - ubi-utils: minor rename + - nandwrite/nanddump: cleanup qualifiers, exit mnemonics, booleans, usage + - fec.c: replace bzero, bcopy, bcmp wiuth memset, memcpy, memcmp + - libubi: be more verbose about errors + - libubi: remove some too verbose messages + - Unify all common build system parts + - ubiformat: nicify error messages + - libmtd: Add `_FILE_OFFSET_BITS=64`, fix `lseek` overflow + - update ubi-user.h, ubi-header.h, ubi-media.h + - Add generated binaries to gitignore + - ubi-utils: re-arrange directory layout + - ubi-utils: tweak vpath handling + - libmtd: move comments to headers + - libubi: amend included header files + - libubi: remove unnecessary header files + - libmtd: amend interface + - ubi-utils: rename `ubi_node_type`, `mtd_get_info`, `mtd_info` + - libubi: improve `libubi_open` interface, error handling + - libubi: do not use udevsettle + - libmtd: rename `allows_bb`, `rdonly`, `num` fields + - libmtd: make type_str to be an array + - ubi-tests: improve io_paral test + - ubiformat: torture eraseblocks on write errors + - ubiformat: minor printing clean-up + - ubiformat: nicify error output + - ubiformat: make badblocks output less confusing + - common: remove depricated KB,MB,GB support + - ubi-utils: update ubi-media.h + - ubiformat: clean up help output a little + - jffs2dump: rewrite `--help` output to be more suitable for `help2man` + - nandwrite: unified reading from standard input and from file + +### Removed + - ubi-utils: remove debugging leftovers + - ubi-utils: remove depricated -d option + +## [1.2.0] - 2008-06-27 +### Added + - nandwrite: add 'markbad' option + - Add nand integrity testing utility + - Add utilities for multicast send/receive of MTD images + - ubi-utils: add -m option to ubimkvol + - ubi-utils: add -S option to ubimkvol + - ubi-utils: Add rmvol test + - Add test program orph.c + - mkfs.jffs2.c: detect hardlinks + - ubi-utils: add ubinfo, ubiupdate, ubiattach, ubidetach + - ubi-utils: bin2nand, nand2bin support for different ecc layouts + - ubi-utils: ubinize, ubiformat + - Add libmtd, libscan + - libubi: support atomic LEB change ioctl + - mtd_debug: support new flags + - Add load_nandsim.sh script + - fs-tests: add simple performance test + - mkfs.jffs2: Add Support for Symlinks to Device Table + +### Fixed + - Fix repeated warning about ECC correction, in nandtest + - fs-tests: fix bug in simple test_2 + - ubi-utils: Fixup oob data generation + - ubi-utils: various fixes in unubi + - ubi-utils: nand2bin had ECC calculation problems + - libubi: fix use of negative `errno` values + - libubi: fail gracefully if ubi is not supported on the current system + - ubi-utils: fix readdir error checking + - ubi-utils: fix bytes output formating + - libubi: fix sysfs direntries scanning + - ubi-utils: pddcustomize fixup update volume + - ubi-utils: fix warnings for gcc 4.2.3 + - ubi-utils: ubimkvol: fix wrong variable printout + - Use LSB locations for manpages + - compr_lzo.c: allocate enough memory for lzo compressor. + - mkfs.jffs2.c: fix issue with crashing when using lzo compression + - fs-tests: preserve mount options when mounting again + - mkfs.jffs2: Remove Incorrect Find Optimization + +### Changed + - nandtest: Mark blocks bad on failed write; don't abort + - Makefile: Make optflags easier for distros to override + - Makefile: build ubi-utils from top dir, add to install target + - Improve option handling in nandtest, add markbad and offset/length options + - ubi-utils: rename `__unused` to `ubi_unused` + - ubi-utils: remove useless build information + - ubi-utils: Nand2bin add more information when bad blocks occur + - ubi-utils: migrate to new libubi + - ubi-utils: Update and bugfix unubi + - ubi-utils: Test-case for unubi + - ubi-utils: unubi: add physical erase block number for analysis + - ubi-utils: overhaul README, tests + - ubi-utils: move UBI tests to tests/ubi-tests/ + - ubi-utils: move jffs2_test.sh to ubi-tests + - mkfs.jffs2: use separate ino field in struct filesystem_entry for jffs2 ino# + - mkfs.jffs2: Set mkfs.jffs2 page size runtime instead of fixed + - ubi-tools: major cleanups in ubimkvol, ubirmvol + - libubi: consistently rename `eb` to `leb` + - ubi-utils: cleanup ubicrc32 + - ubi-utils: more sanity checks + - Move perl scripts to scritps directory + - tests: move checkfs test, jittertest to tests directory + - ubi-utils: update headers + - ubi-utils: CLI handling for ubigen consistent with other tools + - ubi-utils: scripts/mkdevs.pl: create control device node as well + - ubi-utils: major overhaul/rewrite for pfi2ubi + - ubi-tools: use uint32_t in userspace + - ubi-utils: use macros not hardcoded constants + - ubi-utils: use mtd_swab.h + - ubi-tools: improve printing macros + - ubi-tools: consistent option handling for ubimkvol, ubirmvol, ubiupdatevol + - ubi-utils: don't use argp.h + - Teach libubi_open not to prirnt error message + - ubi-utils: use common.h in libubi + - fs-tests: allow for ENOSPC in test fwrite00 + - Makefile: respect CFLAGS/CPPFLAGS from build environment + +### Removed + - Remove mkfs.jffs utility + - ubi-utils: remove unused directory, testcases.txt + +## [1.1.0] - 2007-08-03 +### Added + - Add GPL license text, .gitignore file + - mkfs.jffs2: Add XATTR support + - nanddump: Add `-n` argument (no-ecc) + - Support for 1KB page & 32 bytes spare NAND + - Add feature removal schedule file + - Add fs-tests from Adrian Hunter + - Add UBI utilities + - Add lzo helper functions + +### Fixed + - nanddump.c: add missing `--file` long options + - fix handling of ioctl return value in nand-utils + - Correct integrity test calculations of free space + +### Changed + - nandwrite: Allow `-s` argument to accept hex and octal values + - Add usage message for flash_erase.c + - Consolidate the swab macros into one location + - Switch to using standard types + - Update mtd-abi.h from upstream kernel. + - Update user headers from latest kernel tree + - Update mtd-abi.h and use new NAND ECC functionality + - Makefile: Support out-of-tree builds + - mkfs.jffs2: Add xseqno into `jffs2_raw_xref` + - Report compressed file sizes (including node headers) in mkfs.jffs2 stats + - Consistently use getopt based option parsing + - Amend tests not to insist that file system type is JFFS2 + - Remove CVS $Id:$ tags + +### Removed + - mkfs.ffs2 + - Remaining Automake files + +## [1.0.0] - 2006-04-30 +### Added + - Import source from CVS + - Add user space headers + +### Fixed + - memory leak in `write_regular_file` + - Fix cbuf free properly + - Fix mtd_debug after removal of some MTD types and flags + - Fix `make install` target + +### Changed + - Build using in-tree user space headers |