Re: [PATCH 2/4][v2] PM / hibernate: Check the success of generating md5 digest before hibernation

From: Thomas Gleixner
Date: Thu Sep 13 2018 - 04:26:52 EST


On Wed, 12 Sep 2018, Chen Yu wrote:
> static bool hibernation_e820_mismatch(void *buf)
> @@ -306,6 +307,7 @@ static bool hibernation_e820_mismatch(void *buf)
> int arch_hibernation_header_save(void *addr, unsigned int max_size)
> {
> struct restore_data_record *rdr = addr;
> + int ret = -EINVAL;

What's the point of initializing ret?

> if (max_size < sizeof(struct restore_data_record))
> return -EOVERFLOW;
> @@ -333,7 +335,9 @@ int arch_hibernation_header_save(void *addr, unsigned int max_size)
>
> rdr->magic = RESTORE_MAGIC;
>
> - hibernation_e820_save(rdr->e820_digest);
> + ret = hibernation_e820_save(rdr->e820_digest);
> + if (ret)
> + return ret;
>
> return 0;

And what;s the point of ret at all?

return hibernation_e820_save();

is effectivly the same.

Thanks,

tglx