ipl: Improve error message handling for seekread()
Signed-off-by: Helge Deller <deller@gmx.de>
diff --git a/ipl/byteio.c b/ipl/byteio.c
index 07b34cd..feed32f 100644
--- a/ipl/byteio.c
+++ b/ipl/byteio.c
@@ -72,8 +72,9 @@
if ((n = seekread(b->fd, b->readbuf, b->blocksize, block)) != b->blocksize)
{
- printf("byteio_read: seekread() returned %d expected %d\n",
- n, b->blocksize);
+ if (Debug)
+ printf("byteio_read: seekread() returned %d expected %d\n",
+ n, b->blocksize);
return 0;
}
@@ -139,8 +140,9 @@
if ((n = seekread(b->fd, alignedbuf, bigread, devaddr))
!= bigread)
{
- printf("byteio_read: seekread() returned %d expected %d\n",
- n, bigread);
+ if (Debug)
+ printf("byteio_read: seekread() returned %d expected %d\n",
+ n, bigread);
return -1;
}
diff --git a/ipl/pdc_bootio.c b/ipl/pdc_bootio.c
index c23e0b2..60c4e70 100644
--- a/ipl/pdc_bootio.c
+++ b/ipl/pdc_bootio.c
@@ -59,7 +59,6 @@
{
die("pdc_iodc_bootin() died during seekread\r\n");
devaddr += nseek;
-abort_with_warning:
if (devaddr > 30*1024*1024) /* 30MB */
printf("If you boot via tftp you probably reached the 32MB limit.\n");
pdc_do_reset();
@@ -108,11 +107,11 @@
{
/* this could happen after a partial good seekread, which will */
/* essentially be lost right now */
- printf("\nERROR: Read from boot device failed (status = %d).\n",
+ if (Debug) printf("\nERROR: Read from boot device failed (status = %d).\n",
count);
devaddr += (n - nbytes);
- goto abort_with_warning;
+ return -1;
}
}