Hello Michael,

On Mon, 22 Apr 2013 11:11:17 +0200
Michael Holzheu <[email protected]> wrote:

> On Mon, 22 Apr 2013 09:01:23 +0900
> HATAYAMA Daisuke <[email protected]> wrote:
> > > + if (info->flag_force) {
> > > +         if (access(path, W_OK) == 0)
> > > +                 return TRUE; /* We have write permission */
> > > +         err_str = strerror(errno);
> > > + } else {
> > > +         err_str = "File exists";
> > 
> > How about strerror(EEXIST)? It's better to avoid hard code to use the 
> > same string as what libc returns.
> 
> Yes, this solution is better.
> 
> Here the updated patch:

Nice work!
I'll merge this patch into v1.5.4.


Thanks
Atsushi Kumagai

> ---
>  makedumpfile.c |   37 ++++++++++++++++++++++++++++++++++++-
>  1 file changed, 36 insertions(+), 1 deletion(-)
> 
> --- a/makedumpfile.c
> +++ b/makedumpfile.c
> @@ -730,6 +730,24 @@ open_dump_file(void)
>  }
>  
>  int
> +check_dump_file(const char *path)
> +{
> +     char *err_str;
> +
> +     if (access(path, F_OK) != 0)
> +             return TRUE; /* File does not exist */
> +     if (info->flag_force) {
> +             if (access(path, W_OK) == 0)
> +                     return TRUE; /* We have write permission */
> +             err_str = strerror(errno);
> +     } else {
> +             err_str = strerror(EEXIST);
> +     }
> +     ERRMSG("Can't open the dump file (%s). %s\n", path, err_str);
> +     return FALSE;
> +}
> +
> +int
>  open_dump_bitmap(void)
>  {
>       int i, fd;
> @@ -8609,6 +8627,9 @@ main(int argc, char *argv[])
>                       MSG("Try `makedumpfile --help' for more 
> information.\n");
>                       goto out;
>               }
> +             if (!check_dump_file(info->name_dumpfile))
> +                     goto out;
> +
>               if (!open_files_for_rearranging_dumpdata())
>                       goto out;
>  
> @@ -8626,9 +8647,11 @@ main(int argc, char *argv[])
>                       MSG("Try `makedumpfile --help' for more 
> information.\n");
>                       goto out;
>               }
> -             if (!reassemble_dumpfile())
> +             if (!check_dump_file(info->name_dumpfile))
>                       goto out;
>  
> +             if (!reassemble_dumpfile())
> +                     goto out;
>               MSG("\n");
>               MSG("The dumpfile is saved to %s.\n", info->name_dumpfile);
>       } else if (info->flag_dmesg) {
> @@ -8637,6 +8660,8 @@ main(int argc, char *argv[])
>                       MSG("Try `makedumpfile --help' for more 
> information.\n");
>                       goto out;
>               }
> +             if (!check_dump_file(info->name_dumpfile))
> +                     goto out;
>               if (!dump_dmesg())
>                       goto out;
>  
> @@ -8648,6 +8673,16 @@ main(int argc, char *argv[])
>                       MSG("Try `makedumpfile --help' for more 
> information.\n");
>                       goto out;
>               }
> +             if (info->flag_split) {
> +                     for (i = 0; i < info->num_dumpfile; i++) {
> +                             if (!check_dump_file(SPLITTING_DUMPFILE(i)))
> +                                     goto out;
> +                     }
> +             } else {
> +                     if (!check_dump_file(info->name_dumpfile))
> +                             goto out;
> +             }
> +
>               if (!create_dumpfile())
>                       goto out;
>  
> 
> 
> _______________________________________________
> kexec mailing list
> [email protected]
> http://lists.infradead.org/mailman/listinfo/kexec

_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec

Reply via email to