This is an automated email from the git hooks/post-receive script. sthibault pushed a commit to branch master in repository gnumach.
commit 9f84aa6ca908dcc7a813078f71ff2cbf28912c84 Merge: e192f0c bc2d3a9 Author: Samuel Thibault <[email protected]> Date: Tue Sep 20 22:58:25 2016 +0000 Merge tag 'upstream/1.7+git20160921' Upstream version 1.7+git20160921 ChangeLog | 520 ++++++++++++++ Makefile.am | 4 +- Makefile.in | 30 +- configure | 20 +- debian/changelog | 9 + debian/patches/60_bigmem.patch | 70 -- debian/patches/70_dde.patch | 2 +- debian/patches/99_biosmem.patch | 107 --- debian/patches/series | 2 - device/ds_routines.c | 4 +- doc/mach.info | 242 +++---- doc/mach.info-1 | 26 +- doc/mach.info-2 | 6 +- doc/mach.texi | 2 +- doc/stamp-vti | 8 +- doc/version.texi | 8 +- i386/Makefrag.am | 1 + i386/i386/db_trace.c | 19 +- i386/i386/locore.S | 2 + i386/i386/model_dep.h | 7 - i386/i386/phys.c | 22 +- i386/i386/strings.c | 150 ++++ i386/i386/trap.c | 10 - i386/i386at/biosmem.c | 586 ++++++++------- i386/i386at/biosmem.h | 47 +- i386/i386at/boothdr.S | 4 +- i386/i386at/interrupt.S | 1 + i386/i386at/mem.c | 22 +- i386/i386at/model_dep.c | 93 ++- i386/include/mach/i386/asm.h | 14 +- i386/intel/pmap.c | 150 ++-- i386/intel/pmap.h | 12 +- i386/xen/xen.c | 2 +- ipc/ipc_init.c | 2 +- ipc/mach_debug.c | 3 + kern/lock.c | 3 + kern/slab.c | 4 +- kern/startup.c | 1 - kern/strings.c | 103 +++ kern/task.c | 2 +- kern/thread.c | 6 +- kern/thread.h | 5 +- linux/dev/glue/block.c | 35 +- linux/dev/glue/net.c | 63 +- linux/dev/init/main.c | 2 +- version.m4 | 2 +- vm/pmap.h | 32 +- vm/vm_fault.c | 8 +- vm/vm_kern.c | 8 +- vm/vm_kern.h | 2 +- vm/vm_map.c | 124 ++-- vm/vm_map.h | 16 +- vm/vm_page.c | 1507 ++++++++++++++++++++++++++++++++++++--- vm/vm_page.h | 184 +++-- vm/vm_pageout.c | 690 +++--------------- vm/vm_pageout.h | 4 +- vm/vm_resident.c | 385 +++------- xen/block.c | 51 +- xen/console.c | 4 +- xen/net.c | 49 +- 60 files changed, 3398 insertions(+), 2099 deletions(-) diff --cc debian/changelog index ebb7b21,0000000..1a9532f mode 100644,000000..100644 --- a/debian/changelog +++ b/debian/changelog @@@ -1,1258 -1,0 +1,1267 @@@ ++gnumach (2:1.7+git20160921-1) unstable; urgency=medium ++ ++ * New upstream snapshot. ++ - Highmem support, i.e. >2GiB memory support. ++ - patches/99_biosmem.patch: Drop, fixed. ++ - patches/60_bigmem.patch: Drop, now useless. ++ ++ -- Samuel Thibault <[email protected]> Tue, 20 Sep 2016 22:59:43 +0000 ++ +gnumach (2:1.7+git20160809-2) unstable; urgency=medium + + * patches/99_biosmem.patch: New patch to brown-tape-fix memory allocation + against debugging symbols. + + -- Samuel Thibault <[email protected]> Fri, 12 Aug 2016 17:41:51 +0000 + +gnumach (2:1.7+git20160809-1) unstable; urgency=medium + + * New upstream snapshot. + + -- Samuel Thibault <[email protected]> Tue, 09 Aug 2016 21:55:03 +0000 + +gnumach (2:1.7+git20160607-1) unstable; urgency=medium + + * New upstream snapshot. + * patches/99_RB.patch: Drop, fixed upstream. + + -- Samuel Thibault <[email protected]> Tue, 07 Jun 2016 13:57:41 +0000 + +gnumach (2:1.7+git20160522-2) unstable; urgency=medium + + * Bump mig build-dep to fix stdint use in headers. + * control: Bump Standards-Version to 3.9.8 (no change) + * patches/99_RB.patch: revert RB patch for now, fixes mouse input in X. + + -- Samuel Thibault <[email protected]> Sat, 04 Jun 2016 17:06:58 +0000 + +gnumach (2:1.7+git20160522-1) unstable; urgency=medium + + * New upstream release & snapshot + - Rename packages to 1.7 according to upstream version. + * patches/99_revert-page-cache-policy.patch: Drop, performance regression + fixed upstream. + + -- Samuel Thibault <[email protected]> Sat, 21 May 2016 23:29:13 +0000 + +gnumach (2:1.6+git20160502-1) unstable; urgency=medium + + [ Samuel Thibault ] + * New upstream snapshot. + * control.in: Really bump dpkg-dev and debhelper versions. + * patches/20_FP_NO.patch: Avoid defining FP_NO. + * patches/70_dde.patch: Fix crash when delivering the interrupt makes the + thread sleep. It is fine to do another check loop when running the + interrupt handlers anyway. + * patches/99_revert-page-cache-policy.patch: Revert the new cache policy for + now: when ext2fs has a lot of objects, vm_map_enter becomes very slow. + + [ Svante Signell ] + * rules: Add custom version in uname -v and custom packages names. + + -- Samuel Thibault <[email protected]> Tue, 03 May 2016 00:16:34 +0000 + +gnumach (2:1.6+git20160311-1) unstable; urgency=medium + + * New upstream snapshot. + * patches/70_dde.patch: Update. + * control: bump dpkg-dev and debhelper versions for restriction formulas + support. + * control: Bump Standards-Version to 3.9.7 (no change). + + -- Samuel Thibault <[email protected]> Fri, 11 Mar 2016 21:45:02 +0000 + +gnumach (2:1.6+git20160114-1) unstable; urgency=medium + + * New upstream snapshot. + * control: Bump dpkg-dev and debhelper versions to get restriction formula + support. + + -- Samuel Thibault <[email protected]> Wed, 13 Jan 2016 23:21:10 +0000 + +gnumach (2:1.6+git20151211-1) unstable; urgency=medium + + * New upstream snapshot. + + -- Samuel Thibault <[email protected]> Fri, 11 Dec 2015 01:55:39 +0000 + +gnumach (2:1.6-1) unstable; urgency=medium + + * New upstream release. + + -- Samuel Thibault <[email protected]> Tue, 03 Nov 2015 21:31:18 +0000 + +gnumach (2:1.5+git20150922-1) unstable; urgency=medium + + * New upstream snapshot. + * patches/70_dde.patch: Include kern/experimental.server.h to fix build with + newer mig. + + -- Samuel Thibault <[email protected]> Tue, 22 Sep 2015 17:12:19 +0000 + +gnumach (2:1.5+git20150827-1) unstable; urgency=medium + + * New upstream snapshot. + * Add stage1 build profile for cross-bootstrapping gnumach. Bump dpkg-dev + and debhelper build-dependency versions accordingly + * patches/70_dde.patch: Also install intr.h. Closes: Bug#795770. + + -- Samuel Thibault <[email protected]> Tue, 18 Aug 2015 11:24:24 +0200 + +gnumach (2:1.5+git20150728-1) unstable; urgency=medium + + * New upstream snapshot. + * Bump version number to 1.5 according to upstream release. + + -- Samuel Thibault <[email protected]> Tue, 28 Jul 2015 19:21:04 +0000 + +gnumach (2:1.4+git20150711-1) unstable; urgency=medium + + * New upstream snapshot, fixes a pageout issue. + + -- Samuel Thibault <[email protected]> Sat, 11 Jul 2015 12:16:52 +0000 + +gnumach (2:1.4+git20150709-1) unstable; urgency=medium + + * New upstream snapshot. + + -- Samuel Thibault <[email protected]> Thu, 09 Jul 2015 12:23:39 +0000 + +gnumach (2:1.4+git20150704-1) unstable; urgency=medium + + * New upstream snapshot. + * patches/git-payload-unsafe-access.patch: Remove, merged upstream. + + -- Samuel Thibault <[email protected]> Sat, 04 Jul 2015 22:34:53 +0000 + +gnumach (2:1.4+git20150409-2) unstable; urgency=medium + + * patches/git-payload-unsafe-access.patch: Add patch to fix unsafe protected + payload access. + + -- Samuel Thibault <[email protected]> Fri, 17 Apr 2015 01:17:34 +0000 + +gnumach (2:1.4+git20150409-1) unstable; urgency=medium + + * New upstream snapshot. + + -- Samuel Thibault <[email protected]> Sun, 12 Apr 2015 20:26:20 +0000 + +gnumach (2:1.4+git20150208-1) unstable; urgency=medium + + * New upstream snapshot. + + -- Samuel Thibault <[email protected]> Sun, 08 Feb 2015 20:14:10 +0000 + +gnumach (2:1.4+git20150102-1) unstable; urgency=medium + + * New upstream snapshot. + + -- Samuel Thibault <[email protected]> Fri, 02 Jan 2015 18:44:06 +0000 + +gnumach (2:1.4+git20141214-1) unstable; urgency=medium + + * New upstream snapshot. + + -- Samuel Thibault <[email protected]> Mon, 15 Dec 2014 00:35:29 +0000 + +gnumach (2:1.4+git20141211-1) unstable; urgency=medium + + * New upstream snapshot. + - patches/git-R-vm_map.patch,git-nodma.patch: Remove patches, merged + upstream. + + -- Samuel Thibault <[email protected]> Wed, 10 Dec 2014 23:37:24 +0000 + +gnumach (2:1.4+git20141109-2) unstable; urgency=medium + + * patches/git-nodma.patch: Add nodma option. + + -- Samuel Thibault <[email protected]> Thu, 13 Nov 2014 00:30:10 +0000 + +gnumach (2:1.4+git20141109-1) unstable; urgency=medium + + * New upstream snapshot. Fixes protected payload support. + * patches/git-R-vm_map.patch: Revert upstream commit for now, it seems to + interact badly with paging. + + -- Samuel Thibault <[email protected]> Sun, 09 Nov 2014 22:03:06 +0000 + +gnumach (2:1.4+git20141107-1) unstable; urgency=medium + + * New upstream snapshot + * rules: ignore +git version. + * patches/git-*, patches/80_missing_files.patch: Remove. + * Bump Standards-Version to 3.9.6 (no changes). + * control: rename into control.in with 1.4 replaced with @version@, so + that... + * rules: ... make DEB_BUILD_OPTIONS=custom use the package version instead + of the upstream version. Thanks Svante Signell for the original patch. + Closes: Bug#762175. + + -- Samuel Thibault <[email protected]> Fri, 07 Nov 2014 01:06:55 +0000 + +gnumach (2:1.4-12) unstable; urgency=medium + + * rules: Rebuild info documentation once (in the source tree) before building + all variants in parallel. Closes: Bug#756909. + * patches/git-vm-tune.patch: New patch that tunes VM parameters. + * patches/git-vm_map.patch: New patch to fix vm_map with anywhere=true. + + -- Samuel Thibault <[email protected]> Sat, 06 Sep 2014 10:37:40 +0000 + +gnumach (2:1.4-11) unstable; urgency=medium + + * patches/git-halt.patch: Add ACPI powerdown support. + * patches/git-xen_races.patch: New patch to fix race conditions, notably in + disk writes. + + -- Samuel Thibault <[email protected]> Fri, 25 Jul 2014 17:05:41 +0000 + +gnumach (2:1.4-10) unstable; urgency=medium + + * patches/git-notify_translatable{,2}.patch: New patch to make notify + functions mutable. + * patches/git-device_translatable.patch: New patch to make device + functions mutable. + * patches/git-memory_object_translatable2.patch: Fix memory object reference + leak. + * patches/git-mach_debug{,2}.patch: Install mach_debug defs files. + * patches/90-fix_headers.patch: Remove, replaced by patch above. + + -- Samuel Thibault <[email protected]> Sun, 25 May 2014 20:06:12 +0000 + +gnumach (2:1.4-9) unstable; urgency=medium + + * patches/git-memory_object_translatable.patch: New patch to make memory + object types translation functions mutable. + + -- Samuel Thibault <[email protected]> Wed, 26 Mar 2014 09:59:55 +0000 + +gnumach (2:1.4-8) unstable; urgency=medium + + * patches/git-physical-access.patch: Fix overflow brought by patch. + + -- Samuel Thibault <[email protected]> Sat, 22 Mar 2014 15:05:11 +0000 + +gnumach (2:1.4-7) unstable; urgency=medium + + [ Samuel Thibault ] + * patches/git-physical-access.patch: New patch, fixes access to physical + pages beyond last_phys_addr. + * patches/git-task_set_name.patch: New patch from git to add task_set_name + RPC. + * patches/90-fix_headers.patch: New patch to fix gnumach.defs build. + * rules: Remove generated doc files. + + [ Guillem Jover ] + * Remove myself from Uploaders. + + -- Samuel Thibault <[email protected]> Thu, 20 Mar 2014 02:26:40 +0000 + +gnumach (2:1.4-6) unstable; urgency=medium + + * Re-enable patches/git-kentry_data_size.patch, but with an additional + change to reduce KMEM_MAP_SIZE by 32MiB to make room for that. + + -- Samuel Thibault <[email protected]> Tue, 11 Feb 2014 23:47:14 +0000 + +gnumach (2:1.4-5) unstable; urgency=medium + + * Disable patches/git-kentry_data_size.patch for now, it breaks d-i boot for + some reason. + + -- Samuel Thibault <[email protected]> Tue, 11 Feb 2014 23:10:46 +0000 + +gnumach (2:1.4-4) unstable; urgency=medium + + * patches/git-quiet-cd-floppy.patch: New patch to quiet down CD and floppy + sense errors. + + -- Samuel Thibault <[email protected]> Mon, 10 Feb 2014 00:21:43 +0000 + +gnumach (2:1.4-3) unstable; urgency=medium + + * patches/{kentry_data_size,thread_terminate_release, + xen_clock_overflow}.patch: Add "git-" prefix to patch name. + * patches/git-cursor_init.patch: New patch to make sure cursor is + initialized. + * patches/git-coverity-fixes.patch: New patch to fix several issues found by + Coverity. + * patches/git-mig-inlines.patch: New patch to inline MIG-generated demuxers. + * control: Bump mig version dependency to get inlined MIG demuxers. + + -- Samuel Thibault <[email protected]> Wed, 05 Feb 2014 11:47:53 +0000 + +gnumach (2:1.4-2) unstable; urgency=medium + + * control: Bump Standards-Version to 3.9.5 (no changes). + * patches/kentry_data_size.patch: New patch to increase KENTRY_DATA_SIZE. + * patches/thread_terminate_release.patch: New patch to add + thread_terminate_release RPC. + * patches/xen_clock_overflow.patch: New patch to fix Xen clock computation. + + -- Samuel Thibault <[email protected]> Wed, 01 Jan 2014 16:54:11 +0000 + +gnumach (2:1.4-1) unstable; urgency=low + + [ Samuel Thibault ] + * New upstream release. + - Rename packages from 1.3.99 to 1.4. + - patches/00_clean_gfdl.patch: Drop, upstream documentation does not have + invariant sections any more. + - rules: Install documentation. + - control: Depend on texinfo. + * Bump Standards-Version to 3.9.4 (no changes). + * patches/70_dde.patch: Fix experimental.defs creation. + * patches/80_missing_files.patch: Add missing files from git. + + [ Pino Toscano ] + * Update Vcs-* headers. + + -- Samuel Thibault <[email protected]> Sat, 28 Sep 2013 12:10:13 +0000 + +gnumach (2:1.3.99.dfsg.git20130624-1) unstable; urgency=low + + * New upstream snapshot + - Fix partitioning reloading. + + -- Samuel Thibault <[email protected]> Mon, 24 Jun 2013 15:22:49 +0200 + +gnumach (2:1.3.99.dfsg.git20130610-1) unstable; urgency=low + + * New upstream snapshot + - Adds non-contiguous memory maps support. + + -- Samuel Thibault <[email protected]> Mon, 10 Jun 2013 00:46:11 +0000 + +gnumach (2:1.3.99.dfsg.git20130510-1) unstable; urgency=low + + * New upstream snapshot. + - Adds AHCI support. + + -- Samuel Thibault <[email protected]> Fri, 10 May 2013 22:29:22 +0000 + +gnumach (2:1.3.99.dfsg.git20130501-1) unstable; urgency=low + + * New upstream snapshot + * Fixes grave issues with grub-probe/update-grub/reconfigure gnumach-image. + * rules: Do not pass -fno-omit-frame-pointer for -dbg builds ourselves, + upstream is now doing it. + + -- Samuel Thibault <[email protected]> Wed, 01 May 2013 23:25:29 +0000 + +gnumach (2:1.3.99.dfsg.git20130311-1) unstable; urgency=low + + * New upstream snapshot. + - patches/20_slow-boot.patch: Remove, merged upstream. + - patches/60_bigmem.patch: Refresh. + * control: Make gnumach-dev multi-arch:same. + + -- Samuel Thibault <[email protected]> Sun, 10 Mar 2013 23:52:47 +0000 + +gnumach (2:1.3.99.dfsg.git20121227-2) unstable; urgency=low + + * patches/20_slow-boot.patch: Cherry-pick from upstream to fix slow boot in + virtualbox. + + -- Samuel Thibault <[email protected]> Thu, 27 Dec 2012 21:58:55 +0000 + +gnumach (2:1.3.99.dfsg.git20121227-1) unstable; urgency=low + + * New upstream snapshot. + + -- Samuel Thibault <[email protected]> Thu, 27 Dec 2012 16:52:39 +0000 + +gnumach (2:1.3.99.dfsg.git20120923-1) unstable; urgency=low + + * New upstream snapshot + - patches/10_cdromlock.patch: Remove, merged upstream + - patches/13_ide_dma.patch: Remove, merged upstream + - patches/24_pci_irq_fix.patch: Remove, merged upstream + - patches/70_dde.patch: Refresh. + * patches/60_bigmem.patch: Also set Xen to 2/2 memory model. + * patches/40_iopl_mem.patch: Remove + * control: Break xserver before 1.9.99.1. + + -- Samuel Thibault <[email protected]> Sat, 14 Jul 2012 15:59:33 +0200 + +gnumach (2:1.3.99.dfsg.git20120710-1) unstable; urgency=low + + * New upstream snaphsot + + -- Samuel Thibault <[email protected]> Tue, 10 Jul 2012 01:59:41 +0000 + +gnumach (2:1.3.99.dfsg.git20120610-1) unstable; urgency=low + + * New upstream snapshot. + * patches/12_version_suffix.patch: New patch to append suffix to Mach version. + * rules: + - Disable net, pcmcia and wireless groups + - Add version suffixes. + * control: + - Do not provide nic-modules, nic-pcmcia-modules, nic-wireless-modules + and pcmcia-modules any more. + - Break old hurd package versions, to provide smooth network driver + transition. + + -- Samuel Thibault <[email protected]> Sun, 10 Jun 2012 23:36:00 +0200 + +gnumach (2:1.3.99.dfsg.git20120505-1) unstable; urgency=low + + * New upstream snapshot. + * control: Bump Standards-Version to 3.9.3 (no changes). + * patches/50_initrd.patch: Refresh. + * patches/60_bigmem.patch: Also update the kernel/user addresses limit. + * patches/70_dde.patch: Fix erroneous prototype. + + -- Samuel Thibault <[email protected]> Sat, 05 May 2012 13:22:36 +0200 + +gnumach (2:1.3.99.dfsg.git20120219-1) unstable; urgency=low + + * New upstream snapshot. + * debian/control: + - Do not make gnumach-dbg depend on gnumach. + - Remove article in synopsis. + - Set Multi-Arch: foreign for gnumach-common. + * debian/rules: + - Add stamp files, and build-indep and build-arch targets. + - Pass -fno-omit-frame-pointer for -dbg builds, to fix kernel debugger + traces & co. + - Enable parallel build. + * debian/patches/70_dde.patch: Add experimental support for irq passing and + physical memory allocation for DDE. Also adds nonetdev boot parameter to + disable network device drivers. + + -- Samuel Thibault <[email protected]> Sun, 19 Feb 2012 00:32:41 +0000 + +gnumach (2:1.3.99.dfsg.git20111010-1) unstable; urgency=low + + * New upstream snapshot. + - debian/patches/50_initrd.patch: Refresh. + * debian/control: + - Do not make -dbg package depend on the non-dbg packages. + - Make gnumach-image-* packages depend on gnumach-common + (Closes: Bug#632445). + + -- Samuel Thibault <[email protected]> Mon, 10 Oct 2011 21:53:25 +0000 + +gnumach (2:1.3.99.dfsg.git20110805-1) unstable; urgency=low + + * New upstream snapshot. + * debian/control: build udebs on hurd-i386 only. + * debian/patches/13_ide_dma.patch: Do not stop DMA before reading its + status. + * debian/rules: Add prerm, preinst, postrm, postinst to -dbg kernels too, to + update grub list. + + -- Samuel Thibault <[email protected]> Fri, 05 Aug 2011 11:41:13 +0000 + +gnumach (2:1.3.99.dfsg.git20110609-1) unstable; urgency=low + + * New upstream snapshot + * Bump Standards-Version to 3.9.2 (no change needed) + + -- Samuel Thibault <[email protected]> Wed, 08 Jun 2011 22:50:30 +0000 + +gnumach (2:1.3.99.dfsg.git20110305-1) unstable; urgency=low + + [ Samuel Thibault ] + * New upstream snapshot + - debian/patches/50_initrd.patch: Refresh. + * debian/rules: Add rules to build Xen variants of gnumach. + * debian/source/options: Enable bz2 compression. + * debian/patches/60_bigmem.patch: Add patch to support almost up to 2GiB + memory. + * debian/rules: Rename /boot/gnumach* into + /boot/gnumach-1.3.99-{xen-,}486{,-dbg} + * debian/control: + - Rename gnumach{,-dbg} into gnumach-image-1.3.99-486{,-dbg} (except in + udebs). + - Add gnumach-image-1.3.99-xen-486{,-dbg} containing Xen variants of gnumach + - Add gnumach-common to contain msgids and info documentation shared by + gnumach-image-1.3.99 packages, which now depend on it and replace the + previous gnumach package. + - Add gnumach-image-{xen-,}486, which depend on + gnumach-image-1.3.99-{xen-,}486. + - Re-add gnumach{,-dbg} packages, which depend on gnumach-image-486 and + gnumach-image-1.3.99-486-dbg, make these packages break grub-pc versions + before the one which generate menu entries for all /boot/gnumach* files. + - Rename gnumach-udeb into kernel-image-1.3.99-486-di. + - Add kernel-image-1.3.99-xen-486-di. + - Use Package-Type instead of XC-Package-Type. + - Make gnumach packages break glibc versions before the one which can cope + with > 1GiB memory support. + - Fix upstream URL (Closes: Bug#604257). + * debian/rules: Apply package renames in $(pkg{,_xen,_udeb,_dbg,_xen_dbg). + * debian/gnumach*.{install,docs}: Rename accordingly. + * debian/patches/11_ignore_CSIn.patch: Ignore \E[6n emited by busybox. + * debian/gnumach-image.{preinst,postinst,prerm,postrm}: Add script to get + e.g. update-grub called. + + -- Samuel Thibault <[email protected]> Sat, 31 Jul 2010 17:35:20 +0200 + +gnumach (2:1.3.99.dfsg.git20100732-1) unstable; urgency=low + + [ Samuel Thibault ] + * New upstream snapshot. + * debian/control + - (gnumach-udeb): Add XC- prefix to Package-Type. Add Provides: + kernel-image, *-modules. + - Remove duplicate priority and section fields. + - Add ${misc:Depends}. + * debian/patches/40_iopl_mem.patch: Add patch, not enabled yet, to be used + instead of 40_iopl_mmap.patch when a new snapshot is taken. + * debian/patches/40_iopl_mmap.patch: Add a "mem" alias for the iopl device, + since that is what upstream provides. + * Now using Standards-Version 3.9.1 (no changes needed). + * debian/rules: Remove enable-sis900 as it's now the default. + * debian/patches/50_initrd.patch: New patch to add ramdisk support for d-i. + * debian/control: Remove Neal and Jeff from Uploaders (Closes: #565164). + + [ Guillem Jover ] + * Use any-i386 in binary package Architecture fields. + * Update Vcs fields to point to the new git repositories. + + -- Samuel Thibault <[email protected]> Sat, 31 Jul 2010 17:35:20 +0200 + +gnumach (2:1.3.99.dfsg.git20091128-1) unstable; urgency=low + + * New upstream git snapshot. + + [ Guillem Jover ] + * Update debian/copyright to point to the git repository. + * Sync with upstream: + - debian/patches/05_halt_on_panic_flag.patch: Remove, merged upstream. + - debian/patches/12_sis900.patch: Likewise. + - debian/patches/14_alloc_params.patch: Likewise. + - debian/patches/15_mem_obj_proxy.patch: Likewise. + - debian/patches/16_ide_multsect.patch: Likewise. + - debian/patches/20_xmm_support.patch: Likewise. + * Switch to source format “3.0 (quilt)”: + - Remove quilt from Build-Depends. + - Remove quilt.make include from debian/rules. + - Remove patch and unpatch targets from debian/rules. + - Remove now unneeded debian/README.source. + * Do not include ChangeLog.0*, they are not shipped upstream anymore. + * Remove Marcus Brinkmann from Uploaders. Closes: #503568 + + -- Guillem Jover <[email protected]> Sat, 28 Nov 2009 19:14:15 +0100 + +gnumach (2:1.3.99.dfsg.cvs20090220-2) unstable; urgency=low + + [ Guillem Jover ] + * Change gnumach-dbg section to debug. + * Change source and gnumach section to kernel. + * Now using Standards-Version 3.8.3. + + [ Samuel Thibault ] + * debian/patches/14_alloc_params.patch: reserve 128MiB for virtual memory + space. Fixes boot with more than ~900MiB. + * debian/patches/20_mmx_support.patch: rename to 20_xmm_support.patch and + fix comment: the added support is XMM registers, not MMX. + * debian/control: Add myself as uploader. + + -- Guillem Jover <[email protected]> Mon, 08 Jun 2009 22:23:13 +0200 + +gnumach (2:1.3.99.dfsg.cvs20090220-1) unstable; urgency=low + + * New upstream CVS snapshot. + - Do not panic in fpintr if we receive the interrupt twice in the same + thread. (Closes: #447036) + + [ Samuel Thibault ] + * Remove kern/mach_param.h patch from debian/patches/14_alloc_params.patch, + increase zone_map_size and maximum number of cached objects. + + [ Guillem Jover ] + * Switch to debhelper compatibility level 7. + * Use dh_prep instead of “dh_clean -k”. + * Remove XC- prefix from Package-Type field. + * Sync with upstream: + - debian/patches/00_clean_gfdl.patch: Refresh. + - debian/patches/05_halt_on_panic_flag.patch: Likewise. + - debian/patches/14_alloc_params.patch: Likewise. + - debian/patches/15_mem_obj_proxy.patch: Likewise. + - debian/patches/20_mmx_support.patch: Likewise. + + -- Guillem Jover <[email protected]> Fri, 20 Feb 2009 03:27:59 +0200 + +gnumach (2:1.3.99.dfsg.cvs20080708-1) unstable; urgency=low + + * New upstream CVS snapshot. + - Fix zalloc alignment support, and thus alignment of FPU save area. + (Closes: #440068) + - Enable multicast for IPv6. + - Enable Bus Mastering on triton chipsets. + - Fix gcc-4.3 non-inlining. (Closes: #474902) + - Fix direction flag on syscall entry. (Closes: #469566) + - Fix initialization of RTL8139. (Closes: #469566) + + [ Samuel Thibault ] + * Append more agressive caching parameter to + debian/patches/14_alloc_params.patch. + * New patch to enable IDE multiple sector I/O when the drive can do it. + - debian/patches/16_ide_multsect.patch + * Clean debian/tmp-dbg. + + [ Guillem Jover ] + * Add Homepage field. + * Add Vcs-Browser and Vcs-Svn fields. + * Remove repository information from debian/copyright as it is now on + debian/control. + * Refer to GPL-2 from common-licenses instead of just GPL. + * Add a README.source. + * Now using Standards-Version 3.8.0. + * Refresh patches with -pab. + * Remove DPATCHLEVEL variable from patches. + * Change source and binary packages from Section base to admin. + * Mangle the Debian version in the watch file. + * Sync with upstream: + - debian/patches/00_clean_gfdl.patch: Refresh. + - debian/patches/05_halt_on_panic_flag.patch: Likewise. + - debian/patches/13_ide_dma.patch: Likewise. + - debian/patches/14_alloc_params.patch: Likewise. + * Use $(filter ...) instead of $(findstring ...) to extract space separated + options from DEB_BUILD_OPTIONS in debian/rules. + * Merge check targets into build targets. + * Clean up debian/rules: + - Run autoreconf on-demand, which fixes a FTBFS when built twice in a + row. (Closes: #424353) + - Support parallel builds by moving 'patch' dependency from + the build to a new pre-patch-* targets that serializes configuration. + * Properly clean up autogenerated cruft. + * Add Build-Depends on autoconf and automake now that we call autoreconf at + build time. + + -- Guillem Jover <[email protected]> Tue, 08 Jul 2008 16:54:06 +0300 + +gnumach (2:1.3.99.dfsg.cvs20070809-1) unstable; urgency=low + + * New upstream CVS snapshot. + - debian/patches/90_autoconf_autogen.patch: Regenerated. + * Add an autoregen target to ease regenerating the autoconf patch. + * Use binary:Version instead of the deprecated Source-Version substvar. + * Do not use configure file stamps, use config.status instead. + + -- Guillem Jover <[email protected]> Thu, 09 Aug 2007 01:45:22 +0300 + +gnumach (2:1.3.99.dfsg.cvs20070526-1) unstable; urgency=low + + * New upstream CVS snapshot. + - debian/patches/41_io_unlock_ioremove.patch: Removed, fixed upstream. + - debian/patches/42_disable_ioperm.patch: Likewise. + - debian/patches/43_debvice_port_fix.patch: Likewise. + - debian/patches/44_more_ports.patch: Likewise. + - debian/patches/45_io_per_task.patch: Likewise. + - debian/patches/46_io_device.patch: Likewise. + - debian/patches/20_mmx_support.patch: Sync. + - debian/patches/90_autoconf_autogen.patch: Regenerated. + * Temporarily restore support for memory mapping through the iopl device, + so that stuff like X can work again. (Closes: #421135) + - debian/patches/40_iopl_mmap.patch: New file. + Thanks to Samuel Thibault <[email protected]>. + + -- Guillem Jover <[email protected]> Sat, 26 May 2007 10:01:54 +0300 + +gnumach (2:1.3.99.dfsg.cvs20070405-1) unstable; urgency=low + + * New upstream CVS snapshot. + - debian/patches/44_more_ports.patch: Sync. + - debian/patches/45_io_per_task.patch: Likewise. + - debian/patches/05_halt_on_panic_flag.patch + - debian/patches/12_sis900.patch: Unfuzzy. + - debian/patches/13_ide_dma.patch: Likewise. + - debian/patches/14_alloc_params.patch: Likewise. + - debian/patches/45_io_per_task.patch: Likewise. + - debian/patches/46_io_device.patch: Likewise. + - debian/patches/90_autoconf_autogen.patch: Regenerated. + + -- Guillem Jover <[email protected]> Thu, 05 Apr 2007 07:33:38 +0300 + +gnumach (2:1.3.99.dfsg.cvs20070306-1) unstable; urgency=low + + * New upstream CVS snapshot. + - Protect the net filter code from being interrupted. + (Closes: #396741, #413185) + Thanks to Samuel Thibault <[email protected]>. + - debian/patches/00_clean_gfdl.patch: Sync. + - debian/patches/90_autoconf_autogen.patch: Regenerated. + * Fixed MMX register support. (Closes: #413177) + - debian/patches/20_mmx_support.patch: Updated. + Thanks to Samuel Thibault <[email protected]>. + * Run the test suite after build. (Closes: #390872) + + -- Guillem Jover <[email protected]> Tue, 6 Mar 2007 07:51:30 +0200 + +gnumach (2:1.3.99.dfsg.cvs20070211-1) unstable; urgency=low + + * New upstream CVS snapshot. + - debian/patches/22_scsi_inf_loop.patch: Removed, merged upstream. + - debian/patches/47_pcmcia_isa.patch: Likewise. + - debian/patches/10_cdromlock.patch: Sync. + - debian/patches/12_sis900.patch: Likewise. + - debian/patches/15_mem_obj_proxy.patch: Likewise. + - debian/patches/90_autoconf_autogen.patch: Regenerated. + * Add MMX register support. + - debian/patches/20_mmx_support.patch: New file. + Thanks to Samuel Thibault <[email protected]>. + + -- Guillem Jover <[email protected]> Sun, 11 Feb 2007 16:11:00 +0200 + +gnumach (2:1.3.99.dfsg.1-1) unstable; urgency=low + + * New upstream CVS snapshot. + - debian/patches/01_gcc-4.1.patch: Removed, merged upstream. + - debian/patches/00_clean_gfdl.patch: Sync. + - debian/patches/05_halt_on_panic_flag.patch: Likewise. + - debian/patches/10_cdromlock.patch: Likewise. + - debian/patches/12_sis900.patch: Likewise. + - debian/patches/13_ide_dma.patch: Likewise. + - debian/patches/14_alloc_params.patch: Likewise. + - debian/patches/15_mem_obj_proxy.patch: Likewise. + - debian/patches/41_io_unlock_ioremove.patch: Likewise. + - debian/patches/42_disable_ioperm.patch: Likewise. + - debian/patches/43_debvice_port_fix.patch: Likewise. + - debian/patches/44_more_ports.patch: Likewise. + - debian/patches/45_io_per_task.patch: Likewise. + - debian/patches/46_io_device.patch: Likewise. + - debian/patches/47_pcmcia_isa.patch: Disabled, merged upstream. + - debian/patches/90_autoconf_autogen.patch: Regenerated. + - debian/patches/61_vm_resident-zoned.patch: Disable for now, it's + causing problems with current applied patches in CVS. + * Adapt to the new automakified build system: + - New D and D_DBG variables pointing to the package destination dirs. + - Remove debian/rules.options, now unneeded with the default configure + options, except for '--enable-sis900' which is not enabled by default. + - Pass --prefix and --exec-prefix to configure. + - Use DESTDIR instead of passing the prefix and exec_prefix variables. + - Call install instead of install-kernel and install-headers for the + default build. + - Call install-exec instead of install-kernel for the -dbg build. + - Use dh_install to install files from D and D_DBG into the proper + package dirs. + - debian/gnumach-dbg.install: New file. + - debian/gnumach-dev.install: Likewise. + - debian/gnumach-udeb.install: Likewise. + - debian/gnumach.install: Likewise. Install the msgids. (Closes: #365828) + * Completely removed the doc/ directory. + - Document the removal of the non-free GFDL manual in debian/copyright. + - Do not try to build the now non-existent doc/ directory. + - Disable dh_installinfo. + * Cleanup debian/rules file: + - Remove the manual cruft-removal line from the clean target. + - Remove the stamp file for the -dbg build. + - Merge the install-gnumach-dbg and install-gnumach targets into install. + + -- Guillem Jover <[email protected]> Tue, 14 Nov 2006 05:11:48 +0200 + +gnumach (1:20060826.dfsg.1-1) unstable; urgency=low + + * New upstream CVS snapshot. + - Disable wavelan driver as it does not build anymore with the updated + Linux header files. + - Make gnumach-dbg Depend on gnumach with the exact same version, due + to an interface change in the networking code, to drag it as well. + - debian/patches/05_halt_on_panic_flag.patch: Sync. + - debian/patches/10_cdromlock.patch: Likewise. + - debian/patches/12_sis900.patch: Likewise. + - debian/patches/13_ide_dma.patch: Likewise. + - debian/patches/61_vm_resident-zoned.patch: Likewise. + - debian/patches/90_autoconf_autogen.patch: Likewise. + - debian/patches/23_ps2_mouse.patch: Removed, integrated upstream. + - debian/patches/50_mem_limit.patch: Likewise. + * Switch to quilt: + - debian/control: Add quilt (>= 0.40) to Build-Depends. + - debian/patches/series: New file. + - debian/patch.mk: Removed. + - debian/rules: Include '/usr/share/quilt/quilt.make' instead of + 'debian/patch.mk'. Change clean to a single colon target and make it + depend on patch. + * Now using Standards-Version 3.7.2 (no changes needed). + * Fix an unused field optimization with gcc 4.1 which was causing the + descriptor initialization to do it partially. + - debian/patches/01_gcc-4.1.patch: New file. + Thanks to Samuel Thibault <[email protected]>. + * Enable PCMCIA ISA support. + - debian/patches/47_pcmcia_isa.patch: New file. + Thanks to Stefan Siegl <[email protected]>. + * Enable all PCMCIA options. + + -- Guillem Jover <[email protected]> Thu, 31 Aug 2006 04:43:57 +0300 + +gnumach (1:20060408.dfsg.1-1) unstable; urgency=low + + * New upstream CVS snapshot. + - Fix I/O problem with Hurd console and X. + + -- Guillem Jover <[email protected]> Sat, 8 Apr 2006 19:35:22 +0300 + +gnumach (1:20060402.dfsg.1-1) unstable; urgency=low + + * New upstream CVS snapshot. + - Remove GFDL license and the manual licensed with it. + - debian/patches/00_clean_gfdl.patch: Do not build the manual. + - debian/patches/11_nic_update.patch: Removed, integrated upstream. + - debian/patches/16_net_apricot_stack_of.patch: Likewise. + - debian/patches/17_net_gcc_4.0.patch: Likewise. + - debian/patches/20_ide_disable_irqs.patch: Likewise. + - debian/patches/21_pata_off_by_one_irq.patch: Likewise. + - debian/patches/31_tls_ldt.patch: Likewise. + - debian/patches/40_user-tss.patch: Likewise. + - debian/patches/00_build_make_beta.patch: Removed, fixed upstream + - debian/patches/12_sis900.patch: Sync. + - debian/patches/13_ide_dma.patch: Likewise. + - debian/patches/15_mem_obj_proxy.patch: Likewise. + - debian/patches/41_io_unlock_ioremove.patch: Likewise. + - debian/patches/42_disable_ioperm.patch: Likewise. + - debian/patches/44_more_ports.patch: Likewise. + - debian/patches/45_io_per_task.patch: Likewise. + - debian/patches/46_io_device.patch: Likewise. + - debian/patches/50_mem_limit.patch: Likewise. + - debian/patches/90_autoconf_autogen.patch: Likewise. + * Fix -H kernel command line argument to halt on panic. (Closes: #184624) + - debian/patches/05_halt_on_panic_flag.patch: New file. + Thanks to Soeren D. Schulze <[email protected]>. + * Do not allow PCI IRQ's higher than 16. + - debian/patches/patches/24_pci_irq_fix.patch: New file. + Thanks to Gianluca Guida <[email protected]>. + * Make the Linux device drivers use dynamic memory allocation via the + glue code. + - debian/patches/61_vm_resident-zoned.patch: New file. + Thanks to Gianluca Guida <[email protected]>. + * Build with -fno-strict-aliasing. + * Remove Build-Depend on the new POSIX compliant make, it should work on + old versions as well now. + * Remove the no longer needed texinfo Buil-Depends, and comment out the + mach.info from debian/gnumach.info. + + -- Guillem Jover <[email protected]> Sun, 2 Apr 2006 17:30:25 +0300 + +gnumach (1:20050801-4) unstable; urgency=low + + * Actually enable the io access disabling patch. + - debian/patches/42_disable_ioperm.disabled: Rename to ... + - debian/patches/42_disable_ioperm.patch: ... this. + * Check for correct return code from pcibios in de4x5 SCSI driver, which + was making it loop infinitely if probed. + - debian/patches/22_scsi_inf_loop.patch: New file. + Thanks to Samuel Thibault <[email protected]>. + * Fix PS2 mouse command drivers reception, affecting among others its + correct detection. + - debian/patches/23_ps2_mouse.patch: New file. + Thanks to Samuel Thibault <[email protected]>. + * Build-Depend on the new POSIX compliant make. + + -- Guillem Jover <[email protected]> Mon, 16 Jan 2006 05:40:33 +0200 + +gnumach (1:20050801-3) unstable; urgency=low + + * Fix build failure with latest make 3.81 beta and the new POSIX behaviour + related to new line vs shell command. + - debian/patches/00_build_make_beta.patch: New file. + Thanks to Alfred M. Szmidt <[email protected]>. + * Added ChangeLog entries. + - debian/patches/13_ide_dma.patch: Modify + - debian/patches/14_alloc_params.patch: Likewise. + * Fix io port access. (Closes: #46709) + - debian/patches/40_user-tss.patch: New file. + - debian/patches/41_io_unlock_ioremove.patch: Likewise. + - debian/patches/42_disable_ioperm.disabled: Likewise. + - debian/patches/43_debvice_port_fix.patch: Likewise. + - debian/patches/44_more_ports.patch: Likewise. + - debian/patches/45_io_per_task.patch: Likewise. + - debian/patches/46_io_device.patch: Likewise. + Thanks to Samuel Thibault <[email protected]>. + * Fix memory limit, that was causing panics when having roughly more than + 768 MiB of physical memory. (Closes: #226609) + - debian/patches/50_mem_limit.patch: New file. + Thanks to Samuel Thibault <[email protected]>. + + -- Guillem Jover <[email protected]> Thu, 12 Jan 2006 00:54:05 +0200 + +gnumach (1:20050801-2) unstable; urgency=low + + * Added a watch file. + * Fix segmentation fault on boot. The apricot net driver was trashing the + stack when reading the MAC address from the io port. (Closes: #340389) + - debian/patches/16_net_apricot_stack_of.patch: New file. + Thanks to Sergio Lopez <[email protected]>. + * Fix invalid lvalue errors with gcc-4.0 in ne2k-pci driver. + - debian/patches/11_nic_update.patch: Split into ... + - debian/pacthes/17_net_gcc_4.0.patch: ... here. + Thanks to Thomas Schwinge <[email protected]>. + + -- Guillem Jover <[email protected]> Mon, 28 Nov 2005 03:46:36 +0200 + +gnumach (1:20050801-1) unstable; urgency=low + + * New upstream CVS snapshot. + - debian/patches/00_autoconf_update.patch: Remove, integrated upstream. + - debian/patches/11_nic_update.patch: Rediff. + - debian/patches/90_autoconf_autogen.patch: Regenerate. + * No need to rename Drivers.in to configure.ac anymore. + * Add DPATCHLEVEL and ChangeLog entry. + - debian/patches/12_sis900.patch: Update. + * Disable IDE interrupts when the driver requests that through + request_irq(). + - debian/patches/20_ide_disable_irqs.patch: New file. + Thanks to Samuel Thibault <[email protected]>. + * Fix an off-by-one bug in the PATA probe function. + - debian/patches/21_pata_off_by_one_irq.patch: New file. + Thanks to Sergio Lopez <[email protected]>. + * Set correct values for %gs and %fs when entering kernel mode. Make sure + to always copy the master LDT when the user does not have a modified one. + - debian/patches/31_tls_ldt.patch: New file. + Thanks to Jeroen Dekkers <[email protected]>. + * Now using Standards-Version 3.6.2 (no changes needed). + * Wrap lines in debian/control fields (knowingly breaking policy). + * Upgrade to debhelper compat version 5. + * Update FSF's address. + + -- Guillem Jover <[email protected]> Thu, 10 Nov 2005 06:01:36 +0200 + +gnumach (1:20050501-4) unstable; urgency=low + + * Add proxy memory objets. + - debian/patches/15_mem_obj_proxy.patch. + Thanks to Marcus Brinkmann <[email protected]>. + + -- Guillem Jover <[email protected]> Wed, 8 Jun 2005 02:01:42 +0300 + +gnumach (1:20050501-3) unstable; urgency=low + + * Provide a udeb package. + - Depend on debhelper >= 4.2. + * Cleaned debian/rules: + - Merge install-gnumach-dev target with install-gnumach. + - Add PHONY targets. + - Remove unused all target. + + -- Guillem Jover <[email protected]> Thu, 2 Jun 2005 22:14:40 +0300 + +gnumach (1:20050501-2) unstable; urgency=low + + * Add a system stabilizer patch. + - debian/patches/14_alloc_params.patch. + Thanks to Neal H. Walfield <[email protected]>. + * Reverse the meaning of --enable-ide-forcedma. + - debian/patches/13_ide_dma.patch. + Thanks to Sergio López <[email protected]> for noticing. + + -- Guillem Jover <[email protected]> Sat, 14 May 2005 20:42:29 +0300 + +gnumach (1:20050501-1) unstable; urgency=low + + * New upstream CVS snapshot. + - debian/patches/12_fixes_gcc-3.4.patch: Remove upstream integrated patch. + - debian/patches/14_disable_fpe.patch: Likewise. + - debian/patches/15_disable_qlogic_firmware.patch: Likewise. + - debian/patches/16_enable_debug.patch: Likewise. + - debian/patches/17_fix_double_free.patch: Likewise. + - debian/patches/18_linux_printk_buffer_overrun.patch: Likewise. + - debian/patches/19_cpu_detect.patch: Likewise. + - debian/patches/20_glue_block_assert.patch: Likewise. + - debian/patches/10_cdromlock.patch: Rediff. + - debian/patches/90_autoconf_autogen.patch: Regenerate. + * Add support for SiS 900 NIC. + - debian/patches/12_sis900.patch: New file. + Thanks to Andreas B. Mundt <[email protected]>. + * Move configure drivers list to debian/rules.options. + + -- Guillem Jover <[email protected]> Sun, 1 May 2005 20:29:08 +0300 + +gnumach (1:20040915.dfsg.1-2) unstable; urgency=low + + * Fix a typo in natsemi driver enable command. (Closes: #293950) + Thanks to Regis Boudin <[email protected]>. + * Sync patches with latest ones sent to upstream. + * Remove leftover assert on the block glue code. + * Fix Subversion repository address. + + -- Guillem Jover <[email protected]> Thu, 10 Feb 2005 06:19:15 +0100 + +gnumach (1:20040915.dfsg.1-1) unstable; urgency=low + + * Repackage upstream source to remove binary only data. (Closes: #252323) + - i386/i386/fpe.b: Remove binary without source. + - i386/i386/fpe.b_elf: Likewise. + - linux/src/drivers/scsi/qlogicisp_asm.c: Likewise. + * Disable floating point emulation usage. + * Disable qlogicisp firmware loading. + * Change "ifdef DEBUG" to "ifndef NDEBUG" for asserts and other low + footprint debugging stuff, so building with asserts enabled by default. + * Fix double free and memory loss probing partition table. + Thanks to Neal H. Walfield <[email protected]>. + * Fix possible buffer overrun on linux printk. + Thanks to Neal H. Walfield <[email protected]>. + * Fix cpu detection code. + * Do not use stamp files for build targets. + + -- Guillem Jover <[email protected]> Mon, 22 Nov 2004 04:50:50 +0100 + +gnumach (1:20040915-1) unstable; urgency=low + + * New upstream CVS snapshot. + * Changed Maintainer address. + * Added former implicit maintainers to Uploaders. + * Added myself to Uploaders. + * Cleaned and updated debian/copyright file. + * Honour DEB_BUILD_OPTIONS. + * Split patches into debian/patches/. + * Allow to build natively on non GNU/Hurd systems. + * Enable i386, kfreebsd-i386 and knetbsd-i386 on all packages. + * Move gnumach-dev to binary-arch in debian/rules. + * Switched to debhelper. + * Now using Standards-Version 3.6.1. + * Update autoconf. + Based on a patch by Neal H. Walfield <[email protected]>, thanks. + * Update NICs from Linux. + Thanks to Alfred M. Szmidt <[email protected]> and + Arief M. Utama <[email protected]>. + * Add newer IDE DMA support. + Thanks to Sergio López <[email protected]>. + * Fix build failures for gcc-3.4. + + -- Guillem Jover <[email protected]> Mon, 25 Oct 2004 09:53:30 +0200 + +gnumach (1:20040229-1) unstable; urgency=low + + * Update to CVS 20040229. + * debian/control: Add texinfo to build dependencies. + * debian/control: Add myself as uploader. + * Patches applied to CVS code: cdromlock. + + -- Marcus Brinkmann <[email protected]> Sun, 29 Feb 2004 21:43:12 +0200 + +gnumach (1:20020421-1) unstable; urgency=low + + * Update to CVS 20020421. + * Patches applied to CVS code: cdromlock. + + -- Marcus Brinkmann <[email protected]> Sun, 21 Apr 2002 18:53:13 +0200 + +gnumach (1:20011013-1) unstable; urgency=low + + * Update to CVS 20011013. + * Patches applied to CVS code: cdromlock. + + -- Marcus Brinkmann <[email protected]> Sat, 13 Oct 2001 00:21:15 +0200 + +gnumach (1:20011005-2) unstable; urgency=low + + * Update to CVS 20011005. + * Patches applied to CVS code: cdromlock. + + -- Marcus Brinkmann <[email protected]> Fri, 5 Oct 2001 21:14:51 +0200 + +gnumach (1:20010918-1) unstable; urgency=low + + * Update to CVS 2001918. + * Patches applied to CVS code: cdromlock. + + -- Marcus Brinkmann <[email protected]> Tue, 18 Sep 2001 23:15:17 +0200 + +gnumach (1:20010818-1) unstable; urgency=low + + * Update to CVS 20010718. + * Patches applied to CVS code: cdromlock. + The other patches are in CVS now. + + * Wading through the bug list, there are some old bugs + fixed long ago, closes: #37954, #47948, #85302, #45792 + * debian/rules: Make it build via direct invocation, submitted + by Robert Bihlmeyer, closes: #101697. + + * control: New package gnumach-dbg. This kernel is not stripped and includes the + kernel-level debugger. + * debian/rules: Build this package. + + -- Marcus Brinkmann <[email protected]> Sat, 18 Aug 2001 02:15:06 +0200 + +gnumach (1:20010718-1) unstable; urgency=low + + * Update to CVS 20010718. + * Patches applied to CVS code: cdromlock, color, kbd_enqueu. + + -- Marcus Brinkmann <[email protected]> Wed, 18 Jul 2001 22:10:20 +0200 + +gnumach (1:1.2-11) unstable; urgency=low + + * debian/rules (stamp-configure): Add ncr53c8xx driver. + * Update to CVS 20010528. + * Patches applied to CVS code: cdromlock, color, kbd_enqueu. + + -- Marcus Brinkmann <[email protected]> Sun, 27 May 2001 14:14:12 +0200 + +gnumach (1:1.2-10) unstable; urgency=low + + * debian/rules (stamp-configure): Disable eatadma driver, which + prevents booting on some AMD K7 motherboards. Reported by + Robert Bihlmeyer <[email protected]>. + * Update to CVS 20010429, which contains support for high baud rates + (B57600, B115200). + * Patches applied to CVS code: cdromlock, color, kbd_enqueu. + + -- Marcus Brinkmann <[email protected]> Sun, 29 Apr 2001 21:41:34 +0200 + +gnumach (1:1.2-9) unstable; urgency=low + + * Update to CVS 20010111, which contains a new interface for + block devices with a large number of blocks. + + -- Marcus Brinkmann <[email protected]> Thu, 11 Jan 2001 23:45:49 +0100 + +gnumach (1:1.2-8) unstable; urgency=low + + * Applied patch by Alexey Dejneka <[email protected]> to fix CD ROM + locking problem. + * debian/control: Add mig and sharutils to list of build dependencies + (sharutils for uudecode for fpu emu), closes: #74794. + * linux/src/drivers/net/tulip.c: Update from Linux 2.2.17, thanks + Jason Henry Parker <[email protected]> + + -- Marcus Brinkmann <[email protected]> Sun, 26 Nov 2000 03:46:08 +0100 + +gnumach (1:1.2-7) unstable; urgency=low + + * Update to CVS 20000929, which contains a fix for comX. + * debian/rules: Drop --enable-lpr, which doesn't work. + Drop --enable-com, which is already enforced. + + -- Marcus Brinkmann <[email protected]> Fri, 29 Sep 2000 20:24:54 +0200 + +gnumach (1:1.2-5) unstable; urgency=low + + * Update to CVS 20000817, which contains a fix for + linux/dev/glue/block.c. + + -- Marcus Brinkmann <[email protected]> Thu, 17 Aug 2000 03:22:30 +0200 + +gnumach (1:1.2-4) unstable; urgency=low + + * Add color support to gnumach. Set TERM to mach-color to get the full + effect. Thanks to Juli-Manel Merino Vidal <[email protected]> for working + out the mapping between ANSI color codes and the bits to poke into the + attribute. + + -- Marcus Brinkmann <[email protected]> Tue, 8 Aug 2000 21:00:50 +0200 + +gnumach (1:1.2-3) unstable; urgency=low + + * Snapshot from CVS 20000703. + * i386/i386at/kd.c: Receive 0xE0 scan codes (patch by Kalle Olavi Niemitalo). + * Patch to get it compile with gcc-2.95.1 or newer + ( by "Weil, Stefan 3732 EPE-24" <[email protected]> + and Igor Khavkine <[email protected]>) + + -- Marcus Brinkmann <[email protected]> Mon, 3 Jul 2000 21:05:42 +0200 + +gnumach (1:1.2-2) unstable; urgency=low + + * Snapshot from CVS 19990907. + * Reenable all network interfaces, because the problem is fixed. + * Gzip gnumach binary. + + -- Marcus Brinkmann <[email protected]> Wed, 8 Sep 1999 00:15:39 +0200 + +gnumach (1:1.2-1) unstable; urgency=low + + * Snapshot from CVS 19990725. + * Start from official 1.2 release. + * Remove some network card drivers that seems to have no autodetection in + order to get a maximum set of cards enabled that allows GNU Mach to detect + at least one. + + -- Marcus Brinkmann <[email protected]> Mon, 26 Jul 1999 01:31:31 +0200 + +gnumach (1:1.1.92-5) unstable; urgency=low + + * Snapshot from CVS 19990616. + * Marks dummy network driver still there. + + -- Marcus Brinkmann <[email protected]> Thu, 17 Jun 1999 16:53:50 +0200 + +gnumach (1:1.1.92-4) unstable; urgency=low + + * Snapshot from CVS 19990602. + * Marks dummy network driver still there. + * Replaced linux/dev/drivers/block/genhd.c to avoid a bug. + + -- Marcus Brinkmann <[email protected]> Sat, 5 Jun 1999 00:59:43 +0200 + +gnumach (1:1.1.92-2) unstable; urgency=low + + * Snapshot from CVS 19990524. + * Applied Marks dummy network driver. + * Enabled thousands more devices. + + -- Marcus Brinkmann <[email protected]> Mon, 24 May 1999 18:00:19 +0200 + +gnumach (1:1.1.92-1) unstable; urgency=low + + * Snapshot from CVS 19990507. + + -- Marcus Brinkmann <[email protected]> Fri, 7 May 1999 20:46:06 +0200 + +gnumach (1:1.1.90-2) unstable; urgency=low + + * Fix package administration information to reflect that maintainership + has been transferred to [email protected]. + * Merge a few configuration fixes from Marcus Brinkmann. + * Install include files into /usr/include, for the benefit of people + without the /usr symlink. + + -- Gordon Matzigkeit <[email protected]> Wed, 17 Feb 1999 16:50:54 -0600 + +gnumach (1:1.1.90-1) unstable; urgency=low + + * New version from OKUJI Yoshinori. + * Use DEB_{BUILD,HOST}_GNU_TYPE, in accordance with Marcus's new + cross-build proposal. + + -- Gordon Matzigkeit <[email protected]> Tue, 11 Feb 1999 22:14:01 -0600 + +gnumach (19990116-1) unstable; urgency=low + + * New version from OKUJI Yoshinori. + * Added kmsg. + + -- Marcus Brinkmann <[email protected]> Mon, 18 Jan 1999 17:11:58 +0100 + +gnumach (19981118-2) unstable; urgency=low + + * Split into gnumach and gnumach-dev. + * Added keyboard patch by Tudor Hulubei <[email protected]> to fix some + keybord issues. + * Bumped Standards: version to 2.5.0.0. + + -- Marcus Brinkmann <[email protected]> Sun, 3 Jan 1999 13:53:28 +0100 + +gnumach (19981118-1) unstable; urgency=low + + * New version from OKUJI Yoshinori <[email protected]>. + This is not a new upstream version, but includes the Linux 2.0.36 driver. + * Strip the kernel. + + -- Marcus Brinkmann <[email protected]> Sat, 19 Dec 1998 05:27:30 +0100 + +gnumach (19981025-1) unstable; urgency=low + + * New upstream snapshot. + + -- Marcus Brinkmann <[email protected]> Sat, 7 Nov 1998 18:56:53 +0100 + +gnumach (1.1.3-2) unstable; urgency=low + + * Added CPU_TYPE_{I486,PENTIUM,PENTIUMPRO,POWERPC} to + ./include/mach/machine.h. This is needed for latest hurd release. + * Changed description (thank you, Santiagio). + + -- Marcus Brinkmann <[email protected]> Sat, 1 Aug 1998 21:33:31 +0200 + +gnumach (1.1.3-1) unstable; urgency=low + + * Initial Version. + + -- Marcus Brinkmann <[email protected]> Sat, 1 Aug 1998 21:33:31 +0200 diff --cc debian/patches/70_dde.patch index c0b1a32,0000000..39f3e21 mode 100644,000000..100644 --- a/debian/patches/70_dde.patch +++ b/debian/patches/70_dde.patch @@@ -1,794 -1,0 +1,794 @@@ +TODO: This needs to be cleaned to be pushed upstream. Notably, userland +shouldn't be able to mask a kernel IRQ. Instead, device_intr_enable() should +just disable/enable IRQ delivery to userland. + +Index: gnumach/Makefrag.am +=================================================================== +--- gnumach.orig/Makefrag.am ++++ gnumach/Makefrag.am +@@ -220,6 +220,7 @@ EXTRA_DIST += \ + kern/mach.srv \ + kern/mach4.srv \ + kern/gnumach.srv \ ++ kern/experimental.srv \ + kern/mach_debug.srv \ + kern/mach_host.srv \ + kern/task_notify.cli +@@ -303,6 +304,7 @@ libkernel_a_SOURCES += \ + device/device_types_kernel.h \ + device/ds_routines.c \ + device/ds_routines.h \ ++ device/intr.c \ + device/if_ether.h \ + device/if_hdr.h \ + device/io_req.h \ +@@ -353,6 +355,7 @@ include_device_HEADERS = \ + include/device/device_types.defs \ + include/device/device_types.h \ + include/device/disk_status.h \ ++ include/device/intr.h \ + include/device/net_status.h \ + include/device/tape_status.h \ + include/device/tty_status.h +@@ -375,6 +378,7 @@ include_mach_HEADERS = \ + include/mach/memory_object_default.defs \ + include/mach/notify.defs \ + include/mach/std_types.defs \ ++ include/mach/experimental.defs \ + include/mach/alert.h \ + include/mach/boolean.h \ + include/mach/boot.h \ +@@ -523,6 +527,7 @@ nodist_lib_dep_tr_for_defs_a_SOURCES += + kern/mach.server.defs.c \ + kern/mach4.server.defs.c \ + kern/gnumach.server.defs.c \ ++ kern/experimental.server.defs.c \ + kern/mach_debug.server.defs.c \ + kern/mach_host.server.defs.c + nodist_libkernel_a_SOURCES += \ +@@ -535,6 +540,9 @@ nodist_libkernel_a_SOURCES += \ + kern/gnumach.server.h \ + kern/gnumach.server.c \ + kern/gnumach.server.msgids \ ++ kern/experimental.server.h \ ++ kern/experimental.server.c \ ++ kern/experimental.server.msgids \ + kern/mach_debug.server.h \ + kern/mach_debug.server.c \ + kern/mach_debug.server.msgids \ +@@ -544,6 +552,7 @@ nodist_libkernel_a_SOURCES += \ + # kern/mach.server.defs + # kern/mach4.server.defs + # kern/gnumach.server.defs ++# kern/experimental.server.defs + # kern/mach_debug.server.defs + # kern/mach_host.server.defs + +Index: gnumach/device/ds_routines.c +=================================================================== +--- gnumach.orig/device/ds_routines.c ++++ gnumach/device/ds_routines.c +@@ -318,6 +318,43 @@ ds_device_map (device_t dev, vm_prot_t p + offset, size, pager, unmap); + } + ++io_return_t ++experimental_device_intr_register (ipc_port_t master_port, int line, ++ int id, int flags, ipc_port_t receive_port) ++{ ++#ifdef MACH_XEN ++ return D_INVALID_OPERATION; ++#else /* MACH_XEN */ ++ extern int install_user_intr_handler (unsigned int line, ++ unsigned long flags, ++ ipc_port_t dest); ++ io_return_t ret; ++ ++ /* Open must be called on the master device port. */ ++ if (master_port != master_device_port) ++ return D_INVALID_OPERATION; ++ ++ /* XXX: move to arch-specific */ ++ if (line < 0 || line >= 16) ++ return D_INVALID_OPERATION; ++ ++ ret = insert_intr_entry (line, receive_port); ++ if (ret) ++ return ret; ++ // TODO The original port should be replaced ++ // when the same device driver calls it again, ++ // in order to handle the case that the device driver crashes and restarts. ++ ret = install_user_intr_handler (line, flags, receive_port); ++ ++ /* If the port is installed successfully, increase its reference by 1. ++ * Thus, the port won't be destroyed after its task is terminated. */ ++ if (ret == 0) ++ ip_reference (receive_port); ++ ++ return ret; ++#endif /* MACH_XEN */ ++} ++ + boolean_t + ds_notify (mach_msg_header_t *msg) + { +@@ -1798,6 +1835,24 @@ device_writev_trap (mach_device_t device + return (result); + } + ++kern_return_t ++experimental_device_intr_enable(ipc_port_t master_port, int line, char status) ++{ ++#ifdef MACH_XEN ++ return D_INVALID_OPERATION; ++#else /* MACH_XEN */ ++ if (master_port != master_device_port) ++ return D_INVALID_OPERATION; ++ ++ if (status) ++ /* TODO: better name for generic-to-arch-specific call */ ++ enable_irq (line); ++ else ++ disable_irq (line); ++ return 0; ++#endif /* MACH_XEN */ ++} ++ + struct device_emulation_ops mach_device_emulation_ops = + { + (void*) mach_device_reference, +Index: gnumach/device/ds_routines.h +=================================================================== +--- gnumach.orig/device/ds_routines.h ++++ gnumach/device/ds_routines.h +@@ -83,4 +83,7 @@ io_return_t ds_device_writev_trap( + io_buf_vec_t *iovec, + vm_size_t count); + ++/* XXX arch-specific */ ++extern ipc_port_t intr_rcv_ports[16]; ++ + #endif /* DS_ROUTINES_H */ +Index: gnumach/device/intr.c +=================================================================== +--- /dev/null ++++ gnumach/device/intr.c +@@ -0,0 +1,200 @@ ++#include <device/intr.h> ++#include <device/ds_routines.h> ++#include <kern/queue.h> ++#include <kern/printf.h> ++ ++#ifndef MACH_XEN ++// TODO this is only for x86 system ++#define sti() __asm__ __volatile__ ("sti": : :"memory") ++#define cli() __asm__ __volatile__ ("cli": : :"memory") ++ ++static boolean_t deliver_intr (int line, ipc_port_t dest_port); ++ ++struct intr_entry ++{ ++ queue_chain_t chain; ++ ipc_port_t dest; ++ int line; ++ /* The number of interrupts occur since last run of intr_thread. */ ++ int interrupts; ++}; ++ ++static queue_head_t intr_queue; ++/* The total number of unprocessed interrupts. */ ++static int tot_num_intr; ++ ++static struct intr_entry * ++search_intr (int line, ipc_port_t dest) ++{ ++ struct intr_entry *e; ++ queue_iterate (&intr_queue, e, struct intr_entry *, chain) ++ { ++ if (e->dest == dest && e->line == line) ++ return e; ++ } ++ return NULL; ++} ++ ++/* This function can only be used in the interrupt handler. */ ++void ++queue_intr (int line, ipc_port_t dest) ++{ ++ extern void intr_thread (); ++ struct intr_entry *e; ++ ++ cli (); ++ e = search_intr (line, dest); ++ assert (e); ++ e->interrupts++; ++ tot_num_intr++; ++ sti (); ++ ++ thread_wakeup ((event_t) &intr_thread); ++} ++ ++/* insert an interrupt entry in the queue. ++ * This entry exists in the queue until ++ * the corresponding interrupt port is removed.*/ ++int ++insert_intr_entry (int line, ipc_port_t dest) ++{ ++ int err = 0; ++ struct intr_entry *e, *new; ++ int free = 0; ++ ++ new = (struct intr_entry *) kalloc (sizeof (*new)); ++ if (new == NULL) ++ return D_NO_MEMORY; ++ ++ /* check whether the intr entry has been in the queue. */ ++ cli (); ++ e = search_intr (line, dest); ++ if (e) ++ { ++ printf ("the interrupt entry for line %d and port %p has been inserted\n", ++ line, dest); ++ free = 1; ++ err = D_ALREADY_OPEN; ++ goto out; ++ } ++ new->line = line; ++ new->dest = dest; ++ new->interrupts = 0; ++ queue_enter (&intr_queue, new, struct intr_entry *, chain); ++out: ++ sti (); ++ if (free) ++ kfree ((vm_offset_t) new, sizeof (*new)); ++ return err; ++} ++ ++/* this function should be called when line is disabled. */ ++void mark_intr_removed (int line, ipc_port_t dest) ++{ ++ struct intr_entry *e; ++ ++ e = search_intr (line, dest); ++ if (e) ++ e->dest = NULL; ++} ++ ++void ++intr_thread () ++{ ++ struct intr_entry *e; ++ int line; ++ ipc_port_t dest; ++ queue_init (&intr_queue); ++ ++ for (;;) ++ { ++ assert_wait ((event_t) &intr_thread, FALSE); ++ cli (); ++ while (tot_num_intr) ++ { ++ int del = 0; ++ ++ queue_iterate (&intr_queue, e, struct intr_entry *, chain) ++ { ++ /* if an entry doesn't have dest port, ++ * we should remove it. */ ++ if (e->dest == NULL) ++ { ++ clear_wait (current_thread (), 0, 0); ++ del = 1; ++ break; ++ } ++ ++ if (e->interrupts) ++ { ++ clear_wait (current_thread (), 0, 0); ++ line = e->line; ++ dest = e->dest; ++ e->interrupts--; ++ tot_num_intr--; ++ ++ sti (); ++ deliver_intr (line, dest); ++ cli (); ++ } ++ } ++ ++ /* remove the entry without dest port from the queue and free it. */ ++ if (del) ++ { ++ assert (!queue_empty (&intr_queue)); ++ queue_remove (&intr_queue, e, struct intr_entry *, chain); ++ sti (); ++ kfree ((vm_offset_t) e, sizeof (*e)); ++ cli (); ++ } ++ } ++ sti (); ++ thread_block (NULL); ++ } ++} ++ ++static boolean_t ++deliver_intr (int line, ipc_port_t dest_port) ++{ ++ ipc_kmsg_t kmsg; ++ mach_intr_notification_t *n; ++ mach_port_t dest = (mach_port_t) dest_port; ++ ++ if (dest == MACH_PORT_NULL) ++ return FALSE; ++ ++ kmsg = ikm_alloc(sizeof *n); ++ if (kmsg == IKM_NULL) ++ return FALSE; ++ ++ ikm_init(kmsg, sizeof *n); ++ n = (mach_intr_notification_t *) &kmsg->ikm_header; ++ ++ mach_msg_header_t *m = &n->intr_header; ++ mach_msg_type_t *t = &n->intr_type; ++ ++ m->msgh_bits = MACH_MSGH_BITS(MACH_MSG_TYPE_PORT_SEND, 0); ++ m->msgh_size = sizeof *n; ++ m->msgh_seqno = INTR_NOTIFY_MSGH_SEQNO; ++ m->msgh_local_port = MACH_PORT_NULL; ++ m->msgh_remote_port = MACH_PORT_NULL; ++ m->msgh_id = MACH_INTR_NOTIFY; ++ ++ t->msgt_name = MACH_MSG_TYPE_INTEGER_32; ++ t->msgt_size = 32; ++ t->msgt_number = 1; ++ t->msgt_inline = TRUE; ++ t->msgt_longform = FALSE; ++ t->msgt_deallocate = FALSE; ++ t->msgt_unused = 0; ++ ++ n->intr_header.msgh_remote_port = dest; ++ n->line = line; ++ ++ ipc_port_copy_send (dest_port); ++ ipc_mqueue_send_always(kmsg); ++ ++ return TRUE; ++} ++#endif /* MACH_XEN */ +Index: gnumach/kern/experimental.srv +=================================================================== +--- /dev/null ++++ gnumach/kern/experimental.srv +@@ -0,0 +1,3 @@ ++#define KERNEL_SERVER 1 ++ ++#include <mach/experimental.defs> +Index: gnumach/include/mach/experimental.defs +=================================================================== +--- /dev/null ++++ gnumach/include/mach/experimental.defs +@@ -0,0 +1,100 @@ ++/* ++ * Mach Operating System ++ * Copyright (c) 1991,1990,1989 Carnegie Mellon University ++ * All Rights Reserved. ++ * ++ * Permission to use, copy, modify and distribute this software and its ++ * documentation is hereby granted, provided that both the copyright ++ * notice and this permission notice appear in all copies of the ++ * software, derivative works or modified versions, and any portions ++ * thereof, and that both notices appear in supporting documentation. ++ * ++ * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" ++ * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR ++ * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. ++ * ++ * Carnegie Mellon requests users of this software to return to ++ * ++ * Software Distribution Coordinator or [email protected] ++ * School of Computer Science ++ * Carnegie Mellon University ++ * Pittsburgh PA 15213-3890 ++ * ++ * any improvements or extensions that they make and grant Carnegie Mellon ++ * the rights to redistribute these changes. ++ */ ++ ++subsystem ++#if KERNEL_USER ++ KernelUser ++#endif /* KERNEL_USER */ ++#if KERNEL_SERVER ++ KernelServer ++#endif /* KERNEL_SERVER */ ++ experimental 424242; ++ ++#include <mach/std_types.defs> ++#include <mach/mach_types.defs> ++ ++serverprefix experimental_; ++ ++type notify_port_t = MACH_MSG_TYPE_MOVE_SEND_ONCE ++ ctype: mach_port_t; ++ ++skip; /*simpleroutine mach_intr_notify( ++ notify : notify_port_t; ++ name : int);*/ ++ ++routine device_intr_register( ++ master_port : mach_port_t; ++ in line : int; ++ in id : int; ++ in flags : int; ++ in receive_port : mach_port_send_t ++ ); ++ ++/* ++ * enable/disable the specified line. ++ */ ++/* XXX: Naming a function taht can disable something "xxx_enable" is confusing. */ ++/* Is the disable part actually used at all? AIUI, the kernel IRQ handler ++should always disable the line; and the userspace driver only has to ++reenable it, after acknowledging and handling the interrupt... ++*/ ++routine device_intr_enable( ++ master_port : mach_port_t; ++ line : int; ++ status : char); ++ ++/* ++ * This routine is created for allocating DMA buffers. ++ * We are going to get a contiguous physical memory ++ * and its physical address in addition to the virtual address. ++ */ ++ ++ /* XXX ++ This RPC lacks a few additional constraints like boundaries, alignment ++and maybe phase. We may not use them now, but they're important for ++portability (e.g. if GNU Mach supports PAE, drivers that can't use ++physical memory beyond the 4 GiB limit must be able to express it). ++ ++> What do you mean by "phase"? ++ ++Offset from the alignment. But I don't think it's useful at all in this ++case. Minimum and maximum addresses and alignment should do. Maybe ++boundary crossing but usually, specifying the right alignment and size ++is enough. ++ ++For upstream ++inclusion, we need to do it properly: the RPC should return a special ++memory object (similar to device_map() ), which can then be mapped into ++the process address space with vm_map() like any other memory object. ++ ++phys_address_t? ++ */ ++routine vm_allocate_contiguous( ++ host_priv : host_priv_t; ++ target_task : vm_task_t; ++ out vaddr : vm_address_t; ++ out paddr : vm_address_t; ++ size : vm_size_t); +Index: gnumach/include/device/intr.h +=================================================================== +--- /dev/null ++++ gnumach/include/device/intr.h +@@ -0,0 +1,17 @@ ++#ifndef __INTR_H__ ++ ++#define __INTR_H__ ++ ++#include <device/device_types.h> ++ ++typedef struct ++{ ++ mach_msg_header_t intr_header; ++ mach_msg_type_t intr_type; ++ int line; ++} mach_intr_notification_t; ++ ++#define INTR_NOTIFY_MSGH_SEQNO 0 ++#define MACH_INTR_NOTIFY 424242 ++ ++#endif +Index: gnumach/kern/startup.c +=================================================================== +--- gnumach.orig/kern/startup.c ++++ gnumach/kern/startup.c +@@ -79,6 +79,7 @@ boolean_t reboot_on_panic = TRUE; ++ + /* XX */ - extern vm_offset_t phys_first_addr, phys_last_addr; + extern char *kernel_cmdline; ++extern void intr_thread(); + + /* + * Running in virtual memory, on the interrupt stack. +@@ -221,6 +222,9 @@ void start_kernel_threads(void) + (void) kernel_thread(kernel_task, reaper_thread, (char *) 0); + (void) kernel_thread(kernel_task, swapin_thread, (char *) 0); + (void) kernel_thread(kernel_task, sched_thread, (char *) 0); ++#ifndef MACH_XEN ++ (void) kernel_thread(kernel_task, intr_thread, (char *)0); ++#endif /* MACH_XEN */ + + #if NCPUS > 1 + /* +Index: gnumach/linux/dev/arch/i386/kernel/irq.c +=================================================================== +--- gnumach.orig/linux/dev/arch/i386/kernel/irq.c ++++ gnumach/linux/dev/arch/i386/kernel/irq.c +@@ -83,6 +83,7 @@ struct linux_action + void *dev_id; + struct linux_action *next; + unsigned long flags; ++ volatile ipc_port_t delivery_port; + }; + + static struct linux_action *irq_action[16] = +@@ -102,6 +103,7 @@ linux_intr (int irq) + { + struct pt_regs regs; + struct linux_action *action = *(irq_action + irq); ++ struct linux_action **prev = &irq_action[irq]; + unsigned long flags; + + kstat.interrupts[irq]++; +@@ -113,7 +115,37 @@ linux_intr (int irq) + + while (action) + { +- action->handler (irq, action->dev_id, ®s); ++ // TODO I might need to check whether the interrupt belongs to ++ // the current device. But I don't do it for now. ++ if (action->delivery_port) ++ { ++ /* The reference of the port was increased ++ * when the port was installed. ++ * If the reference is 1, it means the port should ++ * have been destroyed and I destroy it now. */ ++ if (action->delivery_port ++ && action->delivery_port->ip_references == 1) ++ { ++ mark_intr_removed (irq, action->delivery_port); ++ ipc_port_release (action->delivery_port); ++ *prev = action->next; ++ printk ("irq handler %d: release an dead delivery port\n", irq); ++ linux_kfree(action); ++ action = *prev; ++ continue; ++ } ++ else ++ { ++ /* We disable the irq here and it will be enabled ++ * after the interrupt is handled by the user space driver. */ ++ disable_irq (irq); ++ queue_intr (irq, action->delivery_port); ++ } ++ ++ } ++ else if (action->handler) ++ action->handler (irq, action->dev_id, ®s); ++ prev = &action->next; + action = action->next; + } + +@@ -233,6 +265,7 @@ setup_x86_irq (int irq, struct linux_act + } + while (old); + shared = 1; ++ printk("store a new irq %d\n", irq); + } + + save_flags (flags); +@@ -250,6 +283,51 @@ setup_x86_irq (int irq, struct linux_act + return 0; + } + ++int ++install_user_intr_handler (unsigned int irq, unsigned long flags, ++ ipc_port_t dest) ++{ ++ struct linux_action *action; ++ struct linux_action *old; ++ int retval; ++ ++ assert (irq < 16); ++ ++ /* Test whether the irq handler has been set */ ++ // TODO I need to protect the array when iterating it. ++ old = irq_action[irq]; ++ while (old) ++ { ++ if (old->delivery_port == dest) ++ { ++ printk ("The interrupt handler has been installed on line %d", irq); ++ return linux_to_mach_error (-EAGAIN); ++ } ++ old = old->next; ++ } ++ ++ /* ++ * Hmm... Should I use `kalloc()' ? ++ * By OKUJI Yoshinori. ++ */ ++ action = (struct linux_action *) ++ linux_kmalloc (sizeof (struct linux_action), GFP_KERNEL); ++ if (action == NULL) ++ return linux_to_mach_error (-ENOMEM); ++ ++ action->handler = NULL; ++ action->next = NULL; ++ action->dev_id = NULL; ++ action->flags = flags; ++ action->delivery_port = dest; ++ ++ retval = setup_x86_irq (irq, action); ++ if (retval) ++ linux_kfree (action); ++ ++ return linux_to_mach_error (retval); ++} ++ + /* + * Attach a handler to an IRQ. + */ +@@ -278,6 +356,7 @@ request_irq (unsigned int irq, void (*ha + action->next = NULL; + action->dev_id = dev_id; + action->flags = flags; ++ action->delivery_port = NULL; + + retval = setup_x86_irq (irq, action); + if (retval) +Index: gnumach/vm/vm_user.c +=================================================================== +--- gnumach.orig/vm/vm_user.c ++++ gnumach/vm/vm_user.c +@@ -449,3 +449,106 @@ kern_return_t vm_wire(port, map, start, size, access) + round_page(start+size), + access); + } ++ ++kern_return_t experimental_vm_allocate_contiguous(host_priv, map, result_vaddr, result_paddr, size) ++ host_t host_priv; ++ vm_map_t map; ++ vm_address_t *result_vaddr; ++ vm_address_t *result_paddr; ++ vm_size_t size; ++{ ++ unsigned int npages; ++ unsigned int i; ++ unsigned int order; ++ vm_page_t pages; ++ vm_object_t object; ++ vm_map_entry_t entry; ++ kern_return_t kr; ++ vm_address_t vaddr; ++ vm_offset_t offset = 0; ++ ++ if (host_priv == HOST_NULL) ++ return KERN_INVALID_HOST; ++ ++ if (map == VM_MAP_NULL) ++ return KERN_INVALID_TASK; ++ ++ /* ++ * XXX The page allocator returns blocks with a power-of-two size. ++ * The requested size may not be a power-of-two, causing the pages ++ * at the end of a block to be unused. In order to keep track of ++ * those pages, they must all be inserted in the VM object created ++ * by this function. ++ */ ++ order = vm_page_order(size); ++ size = (1 << (order + PAGE_SHIFT)); ++ ++ /* We allocate the contiguous physical pages for the buffer. */ ++ ++ npages = size / PAGE_SIZE; ++ pages = vm_page_grab_contig(size, VM_PAGE_SEL_DIRECTMAP); ++ if (pages == NULL) ++ { ++ return KERN_RESOURCE_SHORTAGE; ++ } ++ ++#if 0 ++ kr = vm_page_grab_contig(npages, pages, NULL, TRUE); ++ if (kr) ++ { ++ kfree (pages, npages * sizeof (vm_page_t)); ++ return kr; ++ } ++#endif ++ ++ /* Allocate the object ++ * and find the virtual address for the DMA buffer */ ++ ++ object = vm_object_allocate(size); ++ vm_map_lock(map); ++ /* TODO user_wired_count might need to be set as 1 */ ++ kr = vm_map_find_entry(map, &vaddr, size, (vm_offset_t) 0, ++ VM_OBJECT_NULL, &entry); ++ if (kr != KERN_SUCCESS) ++ { ++ vm_map_unlock(map); ++ vm_object_deallocate(object); ++ vm_page_free_contig(pages, size); ++ return kr; ++ } ++ ++ entry->object.vm_object = object; ++ entry->offset = 0; ++ ++ /* We can unlock map now. */ ++ vm_map_unlock(map); ++ ++ /* We have physical pages we need and now we need to do the mapping. */ ++ ++ pmap_pageable (map->pmap, vaddr, vaddr + size, FALSE); ++ ++ *result_vaddr = vaddr; ++ *result_paddr = pages->phys_addr; ++ ++ for (i = 0; i < npages; i++) ++ { ++ vm_object_lock(object); ++ vm_page_lock_queues(); ++ vm_page_insert(&pages[i], object, offset); ++ vm_page_wire(&pages[i]); ++ vm_page_unlock_queues(); ++ vm_object_unlock(object); ++ ++ /* Enter it in the kernel pmap */ ++ PMAP_ENTER(map->pmap, vaddr, &pages[i], VM_PROT_DEFAULT, TRUE); ++ ++ vm_object_lock(object); ++ PAGE_WAKEUP_DONE(&pages[i]); ++ vm_object_unlock(object); ++ ++ vaddr += PAGE_SIZE; ++ offset += PAGE_SIZE; ++ } ++ ++ return KERN_SUCCESS; ++} +Index: gnumach/linux/dev/drivers/block/genhd.c +=================================================================== +--- gnumach.orig/linux/dev/drivers/block/genhd.c ++++ gnumach/linux/dev/drivers/block/genhd.c +@@ -812,7 +812,9 @@ void device_setup(void) + #ifdef MACH + linux_intr_pri = SPL6; + #endif +- net_dev_init(); ++ extern char *kernel_cmdline; ++ if (!strstr(kernel_cmdline, " nonetdev")) ++ net_dev_init(); + #endif + #ifndef MACH + console_map_init(); +Index: gnumach/kern/ipc_kobject.c +=================================================================== +--- gnumach.orig/kern/ipc_kobject.c ++++ gnumach/kern/ipc_kobject.c +@@ -56,6 +56,7 @@ + #include <device/device_pager.server.h> + #include <kern/mach4.server.h> + #include <kern/gnumach.server.h> ++#include <kern/experimental.server.h> + + #if MACH_DEBUG + #include <kern/mach_debug.server.h> +@@ -159,6 +160,7 @@ ipc_kobject_server(request) + * to perform the kernel function + */ + { ++ extern mig_routine_t experimental_server_routine(); + check_simple_locks(); + if ((routine = mach_server_routine(&request->ikm_header)) != 0 + || (routine = mach_port_server_routine(&request->ikm_header)) != 0 +@@ -170,6 +172,7 @@ ipc_kobject_server(request) + #endif /* MACH_DEBUG */ + || (routine = mach4_server_routine(&request->ikm_header)) != 0 + || (routine = gnumach_server_routine(&request->ikm_header)) != 0 ++ || (routine = experimental_server_routine(&request->ikm_header)) != 0 + #if MACH_MACHINE_ROUTINES + || (routine = MACHINE_SERVER_ROUTINE(&request->ikm_header)) != 0 + #endif /* MACH_MACHINE_ROUTINES */ diff --cc debian/patches/series index 215fa28,0000000..418767b mode 100644,000000..100644 --- a/debian/patches/series +++ b/debian/patches/series @@@ -1,7 -1,0 +1,5 @@@ +11_ignore_CSIn.patch +12_version_suffix.patch +20_FP_NO.patch +50_initrd.patch - 60_bigmem.patch +70_dde.patch - 99_biosmem.patch -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-hurd/gnumach.git
