mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-30 17:56:15 +02:00
tools/mtd-utils: update to mtd-utils-20101124
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24129 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
12a7937500
commit
eb658d688e
@ -7,14 +7,14 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=mtd
|
PKG_NAME:=mtd
|
||||||
PKG_VERSION:=20101002
|
PKG_VERSION:=20101124
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||||
PKG_SOURCE_URL:=git://git.infradead.org/mtd-utils.git
|
PKG_SOURCE_URL:=git://git.infradead.org/mtd-utils.git
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_VERSION:=b8bbd73bb5bd0b1f5f2c6a3441486d69a45cc79c
|
PKG_SOURCE_VERSION:=c1a7889da754dfac2f130772daef783980c65d5d
|
||||||
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
|
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
|
||||||
PKG_MD5SUM:=475a6bd4b26bdde63f759f9e1f7bc461
|
PKG_MD5SUM:=78e5e74957f458bd808a6d4af0a38071
|
||||||
PKG_CAT:=zcat
|
PKG_CAT:=zcat
|
||||||
|
|
||||||
HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/$(PKG_NAME)-$(PKG_VERSION)
|
HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/$(PKG_NAME)-$(PKG_VERSION)
|
||||||
|
@ -1,165 +0,0 @@
|
|||||||
From fec81abd9593fe11ba8577d38e4143e5708e3343 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Mike Frysinger <vapier@gentoo.org>
|
|
||||||
Date: Sat, 2 Oct 2010 14:58:09 -0400
|
|
||||||
Subject: [PATCH] jffs2reader: convert to common.h helpers
|
|
||||||
|
|
||||||
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
||||||
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
|
|
||||||
---
|
|
||||||
jffs2reader.c | 71 +++++++++++++++++---------------------------------------
|
|
||||||
1 files changed, 22 insertions(+), 49 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/jffs2reader.c b/jffs2reader.c
|
|
||||||
index 0cdff19..d5a3d95 100644
|
|
||||||
--- a/jffs2reader.c
|
|
||||||
+++ b/jffs2reader.c
|
|
||||||
@@ -77,6 +77,7 @@ BUGS:
|
|
||||||
#include <sys/param.h>
|
|
||||||
#include <dirent.h>
|
|
||||||
#include <linux/jffs2.h>
|
|
||||||
+#include "common.h"
|
|
||||||
|
|
||||||
#define SCRATCH_SIZE (5*1024*1024)
|
|
||||||
|
|
||||||
@@ -136,10 +137,8 @@ void putblock(char *b, size_t bsize, size_t * rsize,
|
|
||||||
{
|
|
||||||
uLongf dlen = n->dsize;
|
|
||||||
|
|
||||||
- if (n->isize > bsize || (n->offset + dlen) > bsize) {
|
|
||||||
- fprintf(stderr, "File does not fit into buffer!\n");
|
|
||||||
- exit(EXIT_FAILURE);
|
|
||||||
- }
|
|
||||||
+ if (n->isize > bsize || (n->offset + dlen) > bsize)
|
|
||||||
+ errmsg_die("File does not fit into buffer!");
|
|
||||||
|
|
||||||
if (*rsize < n->isize)
|
|
||||||
bzero(b + *rsize, n->isize - *rsize);
|
|
||||||
@@ -163,8 +162,7 @@ void putblock(char *b, size_t bsize, size_t * rsize,
|
|
||||||
/* [DYN]RUBIN support required! */
|
|
||||||
|
|
||||||
default:
|
|
||||||
- fprintf(stderr, "Unsupported compression method!\n");
|
|
||||||
- exit(EXIT_FAILURE);
|
|
||||||
+ errmsg_die("Unsupported compression method!");
|
|
||||||
}
|
|
||||||
|
|
||||||
*rsize = n->isize;
|
|
||||||
@@ -188,7 +186,7 @@ struct dir *putdir(struct dir *dd, struct jffs2_raw_dirent *n)
|
|
||||||
|
|
||||||
if (n->ino) {
|
|
||||||
if (dd == NULL) {
|
|
||||||
- d = malloc(sizeof(struct dir));
|
|
||||||
+ d = xmalloc(sizeof(struct dir));
|
|
||||||
d->type = n->type;
|
|
||||||
memcpy(d->name, n->name, n->nsize);
|
|
||||||
d->nsize = n->nsize;
|
|
||||||
@@ -208,7 +206,7 @@ struct dir *putdir(struct dir *dd, struct jffs2_raw_dirent *n)
|
|
||||||
}
|
|
||||||
|
|
||||||
if (dd->next == NULL) {
|
|
||||||
- dd->next = malloc(sizeof(struct dir));
|
|
||||||
+ dd->next = xmalloc(sizeof(struct dir));
|
|
||||||
dd->next->type = n->type;
|
|
||||||
memcpy(dd->next->name, n->name, n->nsize);
|
|
||||||
dd->next->nsize = n->nsize;
|
|
||||||
@@ -344,7 +342,7 @@ void printdir(char *o, size_t size, struct dir *d, char *path, int recurse)
|
|
||||||
}
|
|
||||||
ri = find_raw_inode(o, size, d->ino);
|
|
||||||
if (!ri) {
|
|
||||||
- fprintf(stderr, "bug: raw_inode missing!\n");
|
|
||||||
+ warnmsg("bug: raw_inode missing!");
|
|
||||||
d = d->next;
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
@@ -379,11 +377,7 @@ void printdir(char *o, size_t size, struct dir *d, char *path, int recurse)
|
|
||||||
|
|
||||||
if (d->type == DT_DIR && recurse) {
|
|
||||||
char *tmp;
|
|
||||||
- tmp = malloc(BUFSIZ);
|
|
||||||
- if (!tmp) {
|
|
||||||
- fprintf(stderr, "memory exhausted\n");
|
|
||||||
- exit(EXIT_FAILURE);
|
|
||||||
- }
|
|
||||||
+ tmp = xmalloc(BUFSIZ);
|
|
||||||
sprintf(tmp, "%s/%s", path, d->name);
|
|
||||||
lsdir(o, size, tmp, recurse); /* Go recursive */
|
|
||||||
free(tmp);
|
|
||||||
@@ -817,11 +811,8 @@ void lsdir(char *o, size_t size, char *path, int recurse)
|
|
||||||
dd = resolvepath(o, size, 1, path, &ino);
|
|
||||||
|
|
||||||
if (ino == 0 ||
|
|
||||||
- (dd == NULL && ino == 0) || (dd != NULL && dd->type != DT_DIR)) {
|
|
||||||
- fprintf(stderr, "%s: %s: No such file or directory\n",
|
|
||||||
- PROGRAM_NAME, path);
|
|
||||||
- exit(EXIT_FAILURE);
|
|
||||||
- }
|
|
||||||
+ (dd == NULL && ino == 0) || (dd != NULL && dd->type != DT_DIR))
|
|
||||||
+ errmsg_die("%s: No such file or directory", path);
|
|
||||||
|
|
||||||
d = collectdir(o, size, ino, d);
|
|
||||||
printdir(o, size, d, path, recurse);
|
|
||||||
@@ -848,15 +839,11 @@ void catfile(char *o, size_t size, char *path, char *b, size_t bsize,
|
|
||||||
|
|
||||||
dd = resolvepath(o, size, 1, path, &ino);
|
|
||||||
|
|
||||||
- if (ino == 0) {
|
|
||||||
- fprintf(stderr, "%s: No such file or directory\n", path);
|
|
||||||
- exit(EXIT_FAILURE);
|
|
||||||
- }
|
|
||||||
+ if (ino == 0)
|
|
||||||
+ errmsg_die("%s: No such file or directory", path);
|
|
||||||
|
|
||||||
- if (dd == NULL || dd->type != DT_REG) {
|
|
||||||
- fprintf(stderr, "%s: Not a regular file\n", path);
|
|
||||||
- exit(EXIT_FAILURE);
|
|
||||||
- }
|
|
||||||
+ if (dd == NULL || dd->type != DT_REG)
|
|
||||||
+ errmsg_die("%s: Not a regular file", path);
|
|
||||||
|
|
||||||
ri = find_raw_inode(o, size, ino);
|
|
||||||
putblock(b, bsize, rsize, ri);
|
|
||||||
@@ -896,36 +883,22 @@ int main(int argc, char **argv)
|
|
||||||
}
|
|
||||||
|
|
||||||
fd = open(argv[optind], O_RDONLY);
|
|
||||||
- if (fd == -1) {
|
|
||||||
- fprintf(stderr, "%s: %s\n", argv[optind], strerror(errno));
|
|
||||||
- exit(2);
|
|
||||||
- }
|
|
||||||
+ if (fd == -1)
|
|
||||||
+ sys_errmsg_die("%s", argv[optind]);
|
|
||||||
|
|
||||||
- if (fstat(fd, &st)) {
|
|
||||||
- fprintf(stderr, "%s: %s\n", argv[optind], strerror(errno));
|
|
||||||
- exit(3);
|
|
||||||
- }
|
|
||||||
+ if (fstat(fd, &st))
|
|
||||||
+ sys_errmsg_die("%s", argv[optind]);
|
|
||||||
|
|
||||||
- buf = malloc((size_t) st.st_size);
|
|
||||||
- if (buf == NULL) {
|
|
||||||
- fprintf(stderr, "%s: memory exhausted\n", argv[optind]);
|
|
||||||
- exit(4);
|
|
||||||
- }
|
|
||||||
+ buf = xmalloc((size_t) st.st_size);
|
|
||||||
|
|
||||||
- if (read(fd, buf, st.st_size) != (ssize_t) st.st_size) {
|
|
||||||
- fprintf(stderr, "%s: %s\n", argv[optind], strerror(errno));
|
|
||||||
- exit(5);
|
|
||||||
- }
|
|
||||||
+ if (read(fd, buf, st.st_size) != (ssize_t) st.st_size)
|
|
||||||
+ sys_errmsg_die("%s", argv[optind]);
|
|
||||||
|
|
||||||
if (dir)
|
|
||||||
lsdir(buf, st.st_size, dir, recurse);
|
|
||||||
|
|
||||||
if (file) {
|
|
||||||
- scratch = malloc(SCRATCH_SIZE);
|
|
||||||
- if (scratch == NULL) {
|
|
||||||
- fprintf(stderr, "%s: memory exhausted\n", argv[optind]);
|
|
||||||
- exit(6);
|
|
||||||
- }
|
|
||||||
+ scratch = xmalloc(SCRATCH_SIZE);
|
|
||||||
|
|
||||||
catfile(buf, st.st_size, file, scratch, SCRATCH_SIZE, &ssize);
|
|
||||||
free(scratch);
|
|
@ -1,28 +0,0 @@
|
|||||||
From: Baruch Siach <baruch@tkos.co.il>
|
|
||||||
Date: Mon, 11 Oct 2010 09:19:38 +0000 (+0200)
|
|
||||||
Subject: nanddump: fix initialization of bad blocks oob data buffer
|
|
||||||
X-Git-Url: http://git.infradead.org
|
|
||||||
|
|
||||||
nanddump: fix initialization of bad blocks oob data buffer
|
|
||||||
|
|
||||||
When dumping oob data of a bad block, initialize oobbuf with 0xff, instead of
|
|
||||||
readbuf. This avoids bogus oob data on output.
|
|
||||||
|
|
||||||
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
|
|
||||||
Acked-by: Mike Frysinger <vapier@gentoo.org>
|
|
||||||
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
|
|
||||||
---
|
|
||||||
|
|
||||||
diff --git a/nanddump.c b/nanddump.c
|
|
||||||
index 3589931..b7341a5 100644
|
|
||||||
--- a/nanddump.c
|
|
||||||
+++ b/nanddump.c
|
|
||||||
@@ -452,7 +452,7 @@ int main(int argc, char * const argv[])
|
|
||||||
continue;
|
|
||||||
|
|
||||||
if (badblock) {
|
|
||||||
- memset (readbuf, 0xff, meminfo.oobsize);
|
|
||||||
+ memset(oobbuf, 0xff, meminfo.oobsize);
|
|
||||||
} else {
|
|
||||||
/* Read OOB data and exit on failure */
|
|
||||||
oob.start = ofs;
|
|
Loading…
Reference in New Issue
Block a user