In message: <aanlktilnygnz7v6z6akeksquvomn8ylvo57gm1goi...@mail.gmail.com>
            Garrett Cooper <yanef...@gmail.com> writes:
: On Sat, Jun 26, 2010 at 1:45 PM, Garrett Cooper <yanef...@gmail.com> wrote:
: > On Sat, Jun 26, 2010 at 1:29 PM, Hans Petter Selasky <hsela...@c2i.net> 
wrote:
: >> Hi,
: >>
: >> Sometimes utilities that are started by devd require libraries outside
: >> /usr/lib. One example is the webcamd utility which is started by devd upon 
USB
: >> device insertion. What do you think about the following patch:
: >>
: >> --- devd        (revision 209463)
: >> +++ devd        (local)
: >> @@ -4,7 +4,7 @@
: >>  #
: >>
: >>  # PROVIDE: devd
: >> -# REQUIRE: netif
: >> +# REQUIRE: netif ldconfig
: >>  # BEFORE: NETWORKING mountcritremote
: >>  # KEYWORD: nojail shutdown
: >
: > Funny since I was just monkeying around with this. This doesn't appear
: > to be the only issue with devd:
: >
: > # devd
: > devd: devd already running, pid: 430
: > # pgrep 430; echo $?
: > 1
: > #
: >
: > Looks like /etc/rc.d/devd restart is broken :(...
: 
: This seems to fix that.
: Thanks,
: -Garrett
: 
: Index: devd.cc
: ===================================================================
: --- devd.cc   (revision 209530)
: +++ devd.cc   (working copy)
: @@ -739,6 +739,7 @@
:  static void
:  event_loop(void)
:  {
: +     bool warn_user_about_cleanup;
:       int rv;
:       int fd;
:       char buffer[DEVCTL_MAXBUF];
: @@ -804,6 +805,17 @@
:                       new_client(server_fd);
:       }
:       close(fd);
: +     close(server_fd);
: +
: +     if (unlink(PIPE) == 0) {
: +             cfg.remove_pidfile();
: +             warn_user_about_cleanup = false;
: +     } else
: +             warn_user_about_cleanup = true;
: +
: +     if (warn_user_about_cleanup == true)
: +             warn("cleanup failed");
: +

Why not fix pidfile_open to not return a file handle when the PID
doesn't match?  Seems like a bug to me in that routine as well.

Warner
_______________________________________________
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"

Reply via email to