[PATCH hurd] trans/fakeroot.c: fix compiler warnings

2014-12-11 Thread Svante Signell
Hello,

The attached patch fixes the compiler warnings when compiling
trans/fakeroot.c.

../../trans/fakeroot.c: In function 'netfs_S_file_exec':
../../trans/fakeroot.c:806:3: warning: implicit declaration of function 
'netfs_S_file_exec_file_name' [-Wimplicit-function-declaration]
   return netfs_S_file_exec_file_name (user,
   ^
../../trans/fakeroot.c: In function 'netfs_demuxer':
../../trans/fakeroot.c:1008:7: warning: implicit declaration of function 
'netfs_fs_experimental_server_routine' [-Wimplicit-function-declaration]
   (routine = netfs_fs_experimental_server_routine (inp)) ||
   ^
../../trans/fakeroot.c:1008:16: warning: assignment makes pointer from integer 
without a cast
   (routine = netfs_fs_experimental_server_routine (inp)) ||
* trans/fakeroot.c (netfs_demuxer): include "libnetfs/fs_experimental_S.h"
  (netfs_S_file_exec_file_name) : declare by moving it before using in
  netfs_S_file_exec
---

Index: hurd-0.5.git20141108/trans/fakeroot.c
===
--- hurd-0.5.git20141108.orig/trans/fakeroot.c
+++ hurd-0.5.git20141108/trans/fakeroot.c
@@ -31,6 +31,7 @@
 #ifdef HAVE_FILE_EXEC_FILE_NAME
 #include 
 #endif
+#include "libnetfs/fs_experimental_S.h"
 
 #include 
 
@@ -788,38 +789,6 @@ netfs_file_get_storage_info (struct ious
 }
 
 kern_return_t
-netfs_S_file_exec (struct protid *user,
-   task_t task,
-   int flags,
-   char *argv,
-   size_t argvlen,
-   char *envp,
-   size_t envplen,
-   mach_port_t *fds,
-   size_t fdslen,
-   mach_port_t *portarray,
-   size_t portarraylen,
-   int *intarray,
-   size_t intarraylen,
-   mach_port_t *deallocnames,
-   size_t deallocnameslen,
-   mach_port_t *destroynames,
-   size_t destroynameslen)
-{
-  return netfs_S_file_exec_file_name (user,
-  task,
-  flags,
-  "",
-  argv, argvlen,
-  envp, envplen,
-  fds, fdslen,
-  portarray, portarraylen,
-  intarray, intarraylen,
-  deallocnames, deallocnameslen,
-  destroynames, destroynameslen);
-}
-
-kern_return_t
 netfs_S_file_exec_file_name (struct protid *user,
 			 task_t task,
 			 int flags,
@@ -895,6 +864,38 @@ netfs_S_file_exec_file_name (struct prot
   return err;
 }
 
+kern_return_t
+netfs_S_file_exec (struct protid *user,
+   task_t task,
+   int flags,
+   char *argv,
+   size_t argvlen,
+   char *envp,
+   size_t envplen,
+   mach_port_t *fds,
+   size_t fdslen,
+   mach_port_t *portarray,
+   size_t portarraylen,
+   int *intarray,
+   size_t intarraylen,
+   mach_port_t *deallocnames,
+   size_t deallocnameslen,
+   mach_port_t *destroynames,
+   size_t destroynameslen)
+{
+  return netfs_S_file_exec_file_name (user,
+  task,
+  flags,
+  "",
+  argv, argvlen,
+  envp, envplen,
+  fds, fdslen,
+  portarray, portarraylen,
+  intarray, intarraylen,
+  deallocnames, deallocnameslen,
+  destroynames, destroynameslen);
+}
+
 error_t
 netfs_S_io_map (struct protid *user,
 		mach_port_t *rdobj, mach_msg_type_name_t *rdobjtype,


Re: FOSDEM talk?

2014-12-11 Thread Manolis Ragkousis
Nice idea.

I will be able to join you this year. Looking forward.

Manolis



Re: Neat trick to rescue Hurd systems

2014-12-11 Thread Svante Signell
On Wed, 2014-12-10 at 15:02 +0100, Justus Winter wrote:
> Hello,
> 
> I came up with a neat trick to rescue hanging Hurd systems.  Or
> rather, the filesystems.  When we kill an essential task from the
> kernel debugger, /hurd/startup will reboot the system:
> 
> 
> Stopped  at  machine_idle+0xe:   leave
> db> call task_terminate($task4)
>  0
> db> c
> /hurd/startup: Crashing system; essential task proc died
> startup: notifying ext2fs device:hd0s1 of reboot...done
> startup: rebooting Mach (flags 0)...

Hi, I tried your trick but got:
no more room for vm_map_enter in f5cbbf80
Stopped at eip 0x80109422: ret
call task_terminate($task4)
Kernel page fault trap, eip 0x801474de
Caught page fault (14), code = 0, pc = 801474de

I saw somewhere that you wrote how to list all processes but cannot find
it right now.





Re: Neat trick to rescue Hurd systems

2014-12-11 Thread Svante Signell
On Thu, 2014-12-11 at 22:25 +0100, Svante Signell wrote:
> On Wed, 2014-12-10 at 15:02 +0100, Justus Winter wrote:
> > Hello,
> > 
> > I came up with a neat trick to rescue hanging Hurd systems.  Or
> > rather, the filesystems.  When we kill an essential task from the
> > kernel debugger, /hurd/startup will reboot the system:
> > 
> > 
> > Stopped  at  machine_idle+0xe:   leave
> > db> call task_terminate($task4)
> >  0
> > db> c
> > /hurd/startup: Crashing system; essential task proc died
> > startup: notifying ext2fs device:hd0s1 of reboot...done
> > startup: rebooting Mach (flags 0)...
> 
> Hi, I tried your trick but got:
> no more room for vm_map_enter in f5cbbf80
> Stopped at eip 0x80109422: ret
> call task_terminate($task4)
> Kernel page fault trap, eip 0x801474de
> Caught page fault (14), code = 0, pc = 801474de
> 
> I saw somewhere that you wrote how to list all processes but cannot find
> it right now.

Found out myself: show all threads
tried to task_terminate some tasks, but the reply was the same as
above :(





Re: [PATCH hurd 27/30] hurd: add intranpayload functions to all hurd types

2014-12-11 Thread Samuel Thibault
Justus Winter, le Thu 27 Nov 2014 14:19:07 +0100, a écrit :
> +#ifdef HURD_DEFAULT_PAYLOAD_TO_PORT
> +#if HURD_DEFAULT_PAYLOAD_TO_PORT
> +/* Any non-numeric value will fail this test.  If 1 (or any number) is
> +   given, do not inject the default translator function.  */
> +#undef HURD_DEFAULT_PAYLOAD_TO_PORT
> +#endif
> +#else
> +   import ;
> +#define HURD_DEFAULT_PAYLOAD_TO_PORT ports_payload_get_name
> +#endif

We're now getting it from libc:

/usr/src/glibc-2.19/build-tree/hurd-i386-libc/hurd/libhurduser_pic.a(msg_server.os):
 In function `_Xmsg_describe_ports':
/usr/src/glibc-2.19/build-tree/hurd-i386-libc/hurd/./hurd/msg_server.c:2071: 
undefined reference to `ports_payload_get_name'

Perhaps we should revert the logic: not define any
HURD_DEFAULT_PAYLOAD_TO_PORT by default, and have servers which want to
enable the payload optimization to define it?

Samuel



Re: [PATCH hurd] trans/fakeroot.c: fix compiler warnings

2014-12-11 Thread Samuel Thibault
Svante Signell, le Thu 11 Dec 2014 12:03:25 +0100, a écrit :
> The attached patch fixes the compiler warnings when compiling
> trans/fakeroot.c.

Applied, thanks!

Samuel



Re: [PATCH glibc] Hurd: Fix definition of `PAGE_COPY_THRESHOLD'

2014-12-11 Thread Samuel Thibault
Justus Winter, le Wed 10 Dec 2014 12:59:43 +0100, a écrit :
> I believe pflocal is just fine.  Looks like runsystem.sysv or sysvinit
> crashes (I wish /hurd/crash would tell us about crashes):

You can set gnumach's debug_all_traps_with_kdb variable to 1 to catch
crashes.

Samuel