[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnumach] 01/01: Make more object functions mutable
From: |
Samuel Thibault |
Subject: |
[gnumach] 01/01: Make more object functions mutable |
Date: |
Sun, 25 May 2014 14:42:05 +0000 |
This is an automated email from the git hooks/post-receive script.
sthibault pushed a commit to branch master
in repository gnumach.
commit e5433deb01eb264eaa3417515fc0e1a9e0f596cb
Author: Samuel Thibault <address@hidden>
Date: Sun May 25 16:41:47 2014 +0200
Make more object functions mutable
* patches/git-notify_translatable{,2}.patch: New patch to make notify
functions mutable.
* patches/git-device_translatable{,2}.patch: New patch to make device
functions mutable.
---
debian/changelog | 9 +++++
debian/patches/git-device_translatable.patch | 46 +++++++++++++++++++++++++
debian/patches/git-device_translatable2.patch | 37 +++++++++++++++++++++
debian/patches/git-notify_translatable.patch | 48 +++++++++++++++++++++++++++
debian/patches/series | 3 ++
5 files changed, 143 insertions(+)
diff --git a/debian/changelog b/debian/changelog
index da5f8ef..9c712e8 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,12 @@
+gnumach (2:1.4-10) UNRELEASED; urgency=medium
+
+ * patches/git-notify_translatable{,2}.patch: New patch to make notify
+ functions mutable.
+ * patches/git-device_translatable{,2}.patch: New patch to make device
+ functions mutable.
+
+ -- Samuel Thibault <address@hidden> Sun, 25 May 2014 16:41:06 +0200
+
gnumach (2:1.4-9) unstable; urgency=medium
* patches/git-memory_object_translatable.patch: New patch to make memory
diff --git a/debian/patches/git-device_translatable.patch
b/debian/patches/git-device_translatable.patch
new file mode 100644
index 0000000..df23a1c
--- /dev/null
+++ b/debian/patches/git-device_translatable.patch
@@ -0,0 +1,46 @@
+commit f1cdf417edeb9979a5f1f32c20d7ad75abc97a14
+Author: Justus Winter <address@hidden>
+Date: Tue Apr 8 15:40:42 2014 +0200
+
+ include: make the device_t types translation functions mutable
+
+ Make the intran, outtran and destructor functions mutable using
+ preprocessor macros. Make it possible to inject imports using the
+ DEVICE_IMPORTS macro. This way, userspace servers can provide their
+ own translation functions.
+
+ * include/device/device_types.defs: Honor DEVICE_IMPORTS.
+ (device_t): Make the translation mutable using preprocessor macros.
+
+diff --git a/include/device/device_types.defs
b/include/device/device_types.defs
+index 79e4c5b..ff6cff6 100644
+--- a/include/device/device_types.defs
++++ b/include/device/device_types.defs
+@@ -39,6 +39,10 @@
+
+ #include <mach/std_types.defs>
+
++#ifdef DEVICE_IMPORTS
++DEVICE_IMPORTS
++#endif
++
+ type recnum_t = unsigned32;
+ type dev_mode_t = unsigned32;
+ type dev_flavor_t = unsigned32;
+@@ -55,6 +59,16 @@ type device_t = mach_port_t
+ intran: device_t dev_port_lookup(mach_port_t)
+ outtran: mach_port_t convert_device_to_port(device_t)
+ destructor: device_deallocate(device_t)
++#else /* KERNEL_SERVER */
++#ifdef DEVICE_INTRAN
++ intran: DEVICE_INTRAN
++#endif
++#ifdef DEVICE_OUTTRAN
++ outtran: DEVICE_OUTTRAN
++#endif
++#ifdef DEVICE_DESTRUCTOR
++ destructor: DEVICE_DESTRUCTOR
++#endif
+ #endif /* KERNEL_SERVER */
+ ;
+
diff --git a/debian/patches/git-device_translatable2.patch
b/debian/patches/git-device_translatable2.patch
new file mode 100644
index 0000000..4e8f149
--- /dev/null
+++ b/debian/patches/git-device_translatable2.patch
@@ -0,0 +1,37 @@
+commit 5e533682c0df29d28dc8250c57c2e33406a57835
+Author: Justus Winter <address@hidden>
+Date: Thu Apr 10 19:13:47 2014 +0200
+
+ include: fix the definition of device_open
+
+ Previously, every userspace server implementing the device protocol
+ filtered the device definitions to replace the device_t type with
+ mach_port_send_t to make the device argument of device_open
+ polymorphic. Rather than doing that, which makes it impossible to use
+ translation functions, fix the definition of device_open.
+
+ * include/device/device.defs (device_open): Redefine the device
+ argument to make it polymorphic unless a outran function is specified.
+
+diff --git a/include/device/device.defs b/include/device/device.defs
+index d9234e3..5fdf1bd 100644
+--- a/include/device/device.defs
++++ b/include/device/device.defs
+@@ -52,7 +52,16 @@ routine device_open(
+ sreplyport reply_port : reply_port_t;
+ mode : dev_mode_t;
+ name : dev_name_t;
+- out device : device_t
++ out device : device_t =
++ MACH_MSG_TYPE_PORT_SEND
++ ctype: mach_port_t
++#if KERNEL_SERVER
++ outtran: mach_port_t convert_device_to_port(device_t)
++#else
++#ifdef DEVICE_OUTTRAN
++ outtran: DEVICE_OUTTRAN
++#endif
++#endif /* KERNEL_SERVER */
+ );
+
+ routine device_close(
diff --git a/debian/patches/git-notify_translatable.patch
b/debian/patches/git-notify_translatable.patch
new file mode 100644
index 0000000..dd58913
--- /dev/null
+++ b/debian/patches/git-notify_translatable.patch
@@ -0,0 +1,48 @@
+commit 119294278af2390971305224c9772d89525d97e1
+Author: Justus Winter <address@hidden>
+Date: Sat Apr 5 15:08:06 2014 +0200
+
+ include: make the notify_port_t types translation functions mutable
+
+ Make the intran, outtran and destructor functions mutable using
+ preprocessor macros. Make it possible to inject imports using the
+ NOTIFY_IMPORTS macro. This way, userspace servers can provide their
+ own translation functions.
+
+ * include/mach/notify.defs: Honor NOTIFY_IMPORTS.
+ (notify_port_t): Make the translation mutable using preprocessor macros.
+
+diff --git a/include/mach/notify.defs b/include/mach/notify.defs
+index e06f6b4..fdf35e9 100644
+--- a/include/mach/notify.defs
++++ b/include/mach/notify.defs
+@@ -28,6 +28,10 @@ subsystem notify 64;
+
+ #include <mach/std_types.defs>
+
++#ifdef NOTIFY_IMPORTS
++NOTIFY_IMPORTS
++#endif
++
+ #if SEQNOS
+ serverprefix do_seqnos_;
+ serverdemux seqnos_notify_server;
+@@ -37,7 +41,17 @@ serverdemux notify_server;
+ #endif SEQNOS
+
+ type notify_port_t = MACH_MSG_TYPE_MOVE_SEND_ONCE
+- ctype: mach_port_t;
++ ctype: mach_port_t
++#ifdef NOTIFY_INTRAN
++ intran: NOTIFY_INTRAN
++#endif
++#ifdef NOTIFY_OUTTRAN
++ outtran: NOTIFY_OUTTRAN
++#endif
++#ifdef NOTIFY_DESTRUCTOR
++ destructor: NOTIFY_DESTRUCTOR
++#endif
++;
+
+ /* MACH_NOTIFY_FIRST: 0100 */
+ skip;
diff --git a/debian/patches/series b/debian/patches/series
index 81ff71b..59f4ee1 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -14,4 +14,7 @@ git-quiet-cd-floppy.patch
git-task_set_name.patch
git-physical-access.patch
git-memory_object_translatable.patch
+git-notify_translatable.patch
+git-device_translatable.patch
+git-device_translatable2.patch
90-fix_headers.patch
--
Alioth's /usr/local/bin/git-commit-notice on
/srv/git.debian.org/git/pkg-hurd/gnumach.git