Hi Jonathan, On 02/24/17 18:46, Jonathan Golder wrote: > Passing NULL to fs_read() for actread value results in hanging U-Boot > at least on our ARM plattform (TI AM335x). Since fs_read() and > following functions do not catch nullpointers, writing to 0x0 occurs. > > Passing a local dummy var instead of NULL solves this issue.
I haven't looked at fs_read() yet, but from the above it seems that a better approach would be to fix the fs_read()? Might there be use cases when it is legitimate to pass NULL? > > Signed-off-by: Jonathan Golder <jonathan.gol...@kurz-elektronik.de> > Cc: Anatolij Gustschin <ag...@denx.de> > --- > common/splash_source.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/common/splash_source.c b/common/splash_source.c > index a5eeb3f..d1647c8 100644 > --- a/common/splash_source.c > +++ b/common/splash_source.c > @@ -216,6 +216,7 @@ static int splash_load_fs(struct splash_location > *location, u32 bmp_load_addr) > { > int res = 0; > loff_t bmp_size; > + loff_t actread; > char *splash_file; > > splash_file = getenv("splashfile"); > @@ -251,7 +252,7 @@ static int splash_load_fs(struct splash_location > *location, u32 bmp_load_addr) > } > > splash_select_fs_dev(location); > - res = fs_read(splash_file, bmp_load_addr, 0, 0, NULL); > + res = fs_read(splash_file, bmp_load_addr, 0, 0, &actread); > > out: > if (location->ubivol != NULL) > -- Regards, Igor. _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot