Hi :) the way our demuxer functions chain the X_server functions is initializing the reply message over and over again. This can be avoided by following the recommendations of the Mach Server Writer's Guide. A patch for libdiskfs is sent as a follow-up.
To improve the situation further, I propose to change mig so that the X_server_routine functions can be inlined into the demuxer function to avoid the function call overhead just to test whether the msgh_id is in range. Cheers, Justus