summaryrefslogtreecommitdiffstats
path: root/lib/bootstrap
diff options
context:
space:
mode:
authorAndrey Smirnov <andrew.smirnov@gmail.com>2015-05-06 12:32:08 -0700
committerSascha Hauer <s.hauer@pengutronix.de>2015-05-07 09:49:41 +0200
commita11d0e04c831f6af0c36b3137d304b538bc86654 (patch)
tree7509acbe763bc5680d26ef975e2d26b2b26fe660 /lib/bootstrap
parent49673cfc5f67f229c80807cf582ff3f3f09b639b (diff)
downloadbarebox-a11d0e04c831f6af0c36b3137d304b538bc86654.tar.gz
barebox-a11d0e04c831f6af0c36b3137d304b538bc86654.tar.xz
bootstrap_read_devfs(): Check for errors from devfs_add_partition()
Check for errors returned by devfs_add_partition() and bail if there are any. Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'lib/bootstrap')
-rw-r--r--lib/bootstrap/devfs.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/lib/bootstrap/devfs.c b/lib/bootstrap/devfs.c
index 82c7d219a2..0c47cd27cf 100644
--- a/lib/bootstrap/devfs.c
+++ b/lib/bootstrap/devfs.c
@@ -82,10 +82,17 @@ void* bootstrap_read_devfs(char *devname, bool use_bb, int offset,
int ret;
int size = 0;
void *to, *header;
- struct cdev *cdev;
+ struct cdev *cdev, *partition;
char *partname = "x";
- devfs_add_partition(devname, offset, max_size, DEVFS_PARTITION_FIXED, partname);
+ partition = devfs_add_partition(devname, offset, max_size,
+ DEVFS_PARTITION_FIXED, partname);
+ if (IS_ERR(partition)) {
+ bootstrap_err("%s: failed to add partition (%ld)\n",
+ devname, PTR_ERR(partition));
+ return NULL;
+ }
+
if (use_bb) {
dev_add_bb_dev(partname, "bbx");
partname = "bbx";