Hi David! On Thu, 18 Sep 2014 17:14:17 -0400, David Michael <fedora....@gmail.com> wrote: > On Wed, Sep 3, 2014 at 8:33 AM, Justus Winter > <4win...@informatik.uni-hamburg.de> wrote: > > Bind the startup server to /servers/startup instead. Use this to > > contact the startup server. > > I'm trying to test this patch, and glibc appears to need an update as > well. Does this look okay?
Thanks for looking into this! > --- a/sysdeps/mach/hurd/reboot.c > +++ b/sysdeps/mach/hurd/reboot.c > @@ -33,8 +34,8 @@ reboot (int howto) > if (err) > return __hurd_fail (EPERM); > > - err = __USEPORT (PROC, __proc_getmsgport (port, 1, &init)); > - if (!err) > + init = __file_name_lookup (_SERVERS_STARTUP, 0, 0); > + if (init != MACH_PORT_NULL) > { > err = __startup_reboot (init, hostpriv, howto); > __mach_port_deallocate (__mach_task_self (), init); When doing such changes, please try to be conservative. For example, until now, my system has been running "old-style", without /servers/startup, and now I upgraded the glibc packages, then tried to reboot, and it hung because of "invalid RPC". Forcing a reboot -- root filesystem has not been properly synced, and is now fried (unexpected inconsistencies -- I'll try to repair). That is, when doing such incompatible changes, provide a smooth migration path: if the new call fails because the RPC is not known (which is a dedicated error code), then try the old way. It then probably also makes sense to add a comment to schedule the old way for removal at some point. (And no worries about my squashed root filesystem: of course I have it scripted -- mostly -- how to create a new one.) Grüße, Thomas
signature.asc
Description: PGP signature