Opened 17 years ago

Closed 17 years ago

#136 closed defect (fixed)

mondorestore hang - no floppy present

Reported by: Bruno Cornec Owned by: Bruno Cornec
Priority: normal Milestone: 2.2.5
Component: mondo Version: 2.2.1
Severity: normal Keywords:


The problem has been reported on the ML and is stored here so that it's not forgotten:

> >> 10828 0           280 S   sh -c mount /dev/fd0u1722 /tmp/tmpfs/mondo.tmp.17767/ ...
> >> 10829 0           460 D   mount /dev/fd0u1722 /tmp/tmpfs/mondo.tmp.17767/mount. ...
> >>
> >> But, I don't hav a floppy. It looks, that mondorescue try to kill the mount process after the start with a delay of 15 seconds, but nothing happens. The manual kill of the >>process with -9 fails too.

I checked the code, and you're right. The mount is done unconditionaly
:-( And after 15 seconds it's killed. In your case, as the access
remains in the D state, it will never return, thus the issue.

What you can do is comment the lines:

    sprintf(command, "mount /dev/fd0u1722 %s", mountpt);
            "(sleep 15; kill `ps | grep \"%s\" | cut -d' ' -f1` 2>
/dev/null) &",
    mr_msg(1, "tmp = '%s'", tmp);
    res = run_program_and_log_output(command, FALSE);
    if (res) {
        sprintf(command, "mount /dev/fd0H1440 %s", mountpt);
        res = run_program_and_log_output(command, FALSE);

in mondo-rstr-tools.c and replace it with:

I need to find a better solution of course.

Change History (4)

comment:1 by Bruno Cornec, 17 years ago


comment:2 by Bruno Cornec, 17 years ago

Status: newassigned

Should be fixed in rev [1496]

comment:3 by Bruno Cornec, 17 years ago


comment:4 by Bruno Cornec, 17 years ago

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.