[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: active swapping using rumpdisk



On 30/08/2025 00:12, Samuel Thibault wrote:
+  err = mach_port_set_ktype (master_host,
+			     mach_task_self (),
+			     bd->port.port_right,
+			     MACH_PORT_RIGHT_RECEIVE,
+			     MACH_PORT_KTYPE_USER_DEVICE);
+  if (err != 0)
+    {
+      mach_print ("Failed to set receive port as USER_DEVICE\n");
+      rump_sys_close (fd);
+      pthread_rwlock_unlock (&rumpdisk_rwlock);
+      return err;
      }
bd->taken = 1;
We don't want to make this fatal, because that would immediately break a
box that upgrades its hurd package but not its gnumach package. Better
just print a fat warning that swapping might hang.

I wavered many times between a warning and a terminal error. How typical of me to land on the wrong side of the fence! I'll get this and the other alterations submitted later today.

I've realised that the mig types and the C types each need separate declarations so would you prefer a 'mach_port_ktype_t' typedef used for the 'ktype' argument or just leave it as unsigned?

Regards,

Mike.


Reply to: