On Jun 26, 2008, at 9:50 AM, Dave Liu wrote:

> Current fat.c have three 64KB static array, it makes
> the BSS section larger.
> Change the static to dynamic allocation.
>
> Signed-off-by: Dave Liu <[EMAIL PROTECTED]>
> ---
> fs/fat/fat.c |   38 +++++++++++++++++++++++++++++++++++---
> 1 files changed, 35 insertions(+), 3 deletions(-)
>
> diff --git a/fs/fat/fat.c b/fs/fat/fat.c
> index 49c78ed..8e054a6 100644
> --- a/fs/fat/fat.c
> +++ b/fs/fat/fat.c
> @@ -28,6 +28,7 @@
> #include <common.h>
> #include <config.h>
> #include <fat.h>
> +#include <malloc.h>
> #include <asm/byteorder.h>
> #include <part.h>
>
> @@ -65,6 +66,37 @@ int disk_read (__u32 startblock, __u32 getsize,  
> __u8 * bufptr)
>       return -1;
> }
>
> +__u8 *get_vfatname_block;
> +__u8 *get_dentfromdir_block;
> +__u8 *do_fat_read_block;
> +static int fat_mem_done = 0;
> +static int fat_memory_alloc(void)
> +{
> +     if (fat_mem_done)
> +             return 0;
> +
> +     get_vfatname_block = (__u8 *)malloc(MAX_CLUSTSIZE);

do you really need the cast?
>
> +     if (!get_vfatname_block) {
> +             printf("alloc get_vfatname_block failed\n\r");
> +             return -1;
> +     }
> +
> +     get_dentfromdir_block = (__u8 *)malloc(MAX_CLUSTSIZE);

ditto.
>
> +     if (!get_dentfromdir_block) {
> +             printf("alloc get_dentfromdir_block failed\n\r");
> +             return -1;
> +     }
> +
> +     do_fat_read_block = (__u8 *)malloc(MAX_CLUSTSIZE);

ditto
>
> +     if (!do_fat_read_block) {
> +             printf("alloc do_fat_read_block failed\n\r");
> +             return -1;
> +     }
> +
> +     fat_mem_done = 1;
> +
> +     return 0;
> +}

- k

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users

Reply via email to