commit-hurd
[Top][All Lists]
Advanced

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

gnumach ChangeLog configure.ac device/buf.h dev... [gnumach-1-branch-Xen


From: Thomas Schwinge
Subject: gnumach ChangeLog configure.ac device/buf.h dev... [gnumach-1-branch-Xen-branch]
Date: Mon, 07 May 2007 22:54:51 +0000

CVSROOT:        /cvsroot/hurd
Module name:    gnumach
Branch:         gnumach-1-branch-Xen-branch
Changes by:     Thomas Schwinge <tschwinge>     07/05/07 22:54:51

Modified files:
        .              : ChangeLog configure.ac 
        device         : buf.h device_types_kernel.h io_req.h kmsg.c 
        doc            : mach.texi 
        i386           : Makefrag.am configfrag.ac 
        i386/i386      : ktss.c ktss.h locore.S mp_desc.c mp_desc.h 
                         pcb.c thread.h tss.h 
        i386/i386at    : kd.c model_dep.c 
        i386/include/mach/i386: mach_i386.defs mach_i386_types.h 
        i386/intel     : read_fault.c 
        kern           : task.c task.h 
        linux          : configfrag.ac 
        vm             : memory_object.c memory_object.h pmap.h 
                         vm_external.c vm_external.h vm_fault.c 
                         vm_fault.h vm_kern.h vm_map.c vm_map.h 
                         vm_object.h vm_page.h vm_pageout.h vm_user.h 
Added files:
        i386/i386      : io_perm.c io_perm.h machine_task.c task.h 
        include        : stddef.h 
        vm             : vm_types.h 
Removed files:
        i386/i386      : io_port.h iopb.c iopb.h 

Log message:
        2007-05-07  Thomas Schwinge  <address@hidden>
        
                [bug #15295 --- ``Mach lets processes write to I/O ports'']
        
                * i386/Makefrag.am (libkernel_a_SOURCES): Add 
`i386/i386/io_perm.c',
                `i386/i386/io_perm.h', `i386/i386/machine_task.c', 
`i386/i386/task.h'
                and remove `i386/i386/io_port.h', `i386/i386/iopb.c',
                `i386/i386/iopb.h'.
        
                * i386/i386/io_port.h: Remove file.
                * i386/i386at/kd.c: Don't include <i386/io_port.h>.
                (vga_port_list, kd_io_device, kd_io_map_open, kd_io_map_close): 
Don't
                define and don't use anymore.
        
                * include/stddef.h: New file.
        
                * i386/i386/io_perm.c: Include <string.h>, 
<device/device_emul.h>,
                <ipc/ipc_space.h> and don't include <oskit/ds_oskit.h>.
                (io_perm_device_emulation_ops): New variable.
                (dev_open_alloc, setup_no_senders): Remove declarations.
                (convert_io_perm_to_port, convert_port_to_io_perm, 
io_perm_deallocate):
                Rewrite.
                (no_senders): New function.
                (i386_io_perm_create, i386_io_perm_modify): Rewrite partially, 
to adapt
                to the GNU Mach environment.
                * i386/i386/io_perm.h: Include <device/dev_hdr.h> and
                <ipc/ipc_types.h>.
                (io_perm, io_perm_t): New structure and accompanying type 
definition.
                (IO_PERM_NULL): Define.
                * i386/i386/locore.S (ktss): Move variable to...
                * i386/i386/ktss.c: ... here, make it a ``struct task_tss''.
                (ktss_init): Initialize the `task_tss' structure and the i/o 
permission
                bit map.
                * i386/i386/ktss.h: Adapt to that.
                * i386/i386/machine_task.c (machine_task_module_init): Adapt 
the `zinit'
                call to the GNU Mach environment.
                * i386/i386/mp_desc.c: Include <machine/ktss.h>.
                * i386/i386/tss.h: Include <machine/io_perm.h>.
                (task_tss): New structure, equivalent to the OSKit-Mach one.
                * i386/include/mach/i386/mach_i386.defs: Don't include
                <device/device_types.defs>.
                (device_list_t): Remove type.
                * i386/include/mach/i386/mach_i386_types.h (device_list_t): 
Remove type
                definition.
        
        2007-05-07  Marcus Brinkmann  <address@hidden>
        
                [bug #15295 --- ``Mach lets processes write to I/O ports'']
        
                * i386/i386/iopb.h, i386/i386/iopb.c: Obsolete files removed.
        
                * i386/i386/pcb.c (switch_context): Update the I/O permission
                bitmap from stack_handoff() here (not only in stack_handoff()).
        
                * i386/i386/machine_task.c (machine_task_module_init): Set
                ZONE_COLLECTABLE and ZONE_EXHAUSTIBLE flags for the iopb zone.
                Requested by Roland McGrath <address@hidden>.
        
                * i386/i386/io_perm.h: New file.
                * i386/i386/io_perm.c: New file.
                * i386/i386/machine_task.c: New file.
                * i386/i386/mp_desc.h: (struct mp_desc_table): Change type of 
ktss to
                struct task_tss.
                (mp_ktss): Likewise for array of pointers to the struct.
                * i386/i386/mp_desc.c: Include `machine/tss.h' and 
`machine/io_perm.h'.
                (mp_ktss): Change type to array of struct task_tss.
                (mp_desc_init): Cast pointer to x86_tss into pointer to 
task_tss,
                and use size of struct task_tss instead size of struct x86_tss.
                Initialize the task_tss structure.
                * i386/i386/pcb.c: Include `stddef.h' and `machine/tss.h'.
                (iopb_create, iopb_destroy): Prototypes removed.
                (curr_ktss): Cast pointer to base_tss to pointer to struct
                task_tss.
                (switch_ktss): Always use kernel TSS.
                (update_ktss_iopb): New function.
                (stack_handoff): Call update_ktss_iopb.
                (pcb_module_init): Do not call iopb_init.
                (pcb_terminate): Do not call iopb_destroy.
                (thread_setstatus): Remove local variable tss.
                (thread_getstatus): Rewrite i386_ISA_PORT_MAP_STATE case 
handler.
                * i386/i386/task.h: New file.
                * i386/i386/thread.h: Do not include `i386/iopb.h'.
                (struct i386_machine_state): Remove member io_tss.
                * i386/include/mach/i386/mach_i386.defs [KERNEL_SERVER]: Include
                `machine/io_perm.h'.  Define intran, outtran and destructor.
                (io_port_t): New type.
                (io_perm_t): Likewise.
                (i386_io_port_add): Interface removed.
                (i386_io_port_remove): Likewise.
                (i386_io_port_list): Likewise.
                (i386_io_perm_create): New interface.
                (i386_io_perm_modify): Likewise.
                * i386/include/mach/i386/mach_i386_types.h [MACH_KERNEL]: 
Include
                `i386/io_perm.h'.
                [!MACH_KERNEL]: Define types io_port_t and io_perm_t.
                * kern/task.c (task_init): Call machine_task_module_init.
                (task_create): Call machine_task_init.
                (task_deallocate): Call machine_task_terminate.
                (task_collect_scan): Call machine_task_collect.
                * task.h: Include `machine/task.h'.
                (struct task): Add member machine.
        
        2007-05-06  Thomas Schwinge  <address@hidden>
        
                * device/kmsg.c: Include <device/ds_routines.h>.
                (kmsg_lock): Use `decl_simple_lock_data'.
                (kmsgread, kmsg_read_done): Add two typecasts.
        
                * device/buf.h (minphys): Add return type.
                * device/device_types_kernel.h: We're not in the eighties 
anymore...
                * device/io_req.h: Likewise.
        
        2007-05-05  Thomas Schwinge  <address@hidden>
        
                * i386/i386at/model_dep.c (halt_cpu, halt_all_cpus): Call
                `machine_idle' to avoid busy-looping.
        
                * i386/intel/read_fault.c (intel_read_fault): Remove the last 
parameter
                from the calls of `vm_map_lookup'.
        
                We're not in the eighties anymore.  List arguments in function
                prototypes and definitions for a lot of symbols.  Also drop 
some unused
                prototypes.  I refrain from listing every changed symbol.
                * vm/memory_object.c: Do as described.
                * vm/memory_object.h: Likewise.
                * vm/pmap.h: Likewise.
                * vm/vm_external.c: Likewise.
                * vm/vm_external.h: Likewise.
                * vm/vm_fault.c: Likewise.
                * vm/vm_fault.h: Likewise.
                * vm/vm_kern.h: Likewise.
                * vm/vm_map.c: Likewise.
                * vm/vm_map.h: Likewise.
                * vm/vm_pageout.h: Likewise.
                * vm/vm_user.h: Likewise.
                * vm/memory_object.h: Include <ipc/ipc_types.h>.
                * vm/pmap.h: Include <kern/thread.h>.
                * vm/vm_fault.h: Include <mach/vm_prot.h>, <vm/vm_map.h> and
                <vm/vm_types.h>.
                * vm/vm_map.h: Include <mach/vm_attributes.h> and 
<vm/vm_types.h>.
                (vm_map_t, VM_MAP_NULL): Remove type and definition.
                * vm/vm_object.h (vm_object_t, VM_OBJECT_NULL): Remove type and
                definition.
                * vm/vm_page.h: Include <vm/vm_types.h>.
                (vm_page_t, VM_PAGE_NULL): Remove type and definition.
                * vm/vm_user.h: Include <mach/std_types.h>.
                * kern/task.h: Include <vm/vm_types.h> instead of <vm/vm_map.h>.
                * vm/vm_types.h: New file: the above-removed types and 
definitions.
        
        2007-05-02  Thomas Schwinge  <address@hidden>
        
                * configure.ac (--disable-default-device-drivers): Transform 
into...
                (--enable-device-drivers): ... this new option and extend it.
                * i386/configfrag.ac (--enable-lpr): Adapt to that.
                * linux/configfrag.ac (AC_OPTION_Linux_ix86_at, 
AC_Linux_DRIVER):
                Likewise.
                (AC_Linux_DRIVER_qemu): New definition.  Use it for the 
`floppy', `ide'
                and `ne' device drivers.
                * doc/mach.texi: Document all that.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnumach/ChangeLog?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.128.2.228.2.32&r2=1.128.2.228.2.33
http://cvs.savannah.gnu.org/viewcvs/gnumach/configure.ac?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.1.2.9.2.3&r2=1.1.2.9.2.4
http://cvs.savannah.gnu.org/viewcvs/gnumach/device/buf.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.1.1.1.6.1&r2=1.1.1.1.6.2
http://cvs.savannah.gnu.org/viewcvs/gnumach/device/device_types_kernel.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.2&r2=1.2.4.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/device/io_req.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.2.4.1&r2=1.2.4.2
http://cvs.savannah.gnu.org/viewcvs/gnumach/device/kmsg.c?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.1.4.3&r2=1.1.4.3.2.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/doc/mach.texi?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.4.2.9.2.2&r2=1.4.2.9.2.3
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/Makefrag.am?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.1.2.4.2.9&r2=1.1.2.4.2.10
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/configfrag.ac?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.1.2.4.2.2&r2=1.1.2.4.2.3
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/i386/ktss.c?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.1.1.1.4.1.2.1&r2=1.1.1.1.4.1.2.2
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/i386/ktss.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.2&r2=1.2.4.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/i386/locore.S?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.6.2.7.2.2&r2=1.6.2.7.2.3
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/i386/mp_desc.c?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.1.1.1.4.4.2.2&r2=1.1.1.1.4.4.2.3
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/i386/mp_desc.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.2.2.1.2.1&r2=1.2.2.1.2.2
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/i386/pcb.c?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.2.4.9.2.2&r2=1.2.4.9.2.3
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/i386/thread.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.3.2.1&r2=1.3.2.1.2.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/i386/tss.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.1&r2=1.1.4.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/i386/io_perm.c?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&rev=1.3.4.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/i386/io_perm.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&rev=1.2.4.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/i386/machine_task.c?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&rev=1.2.4.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/i386/task.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&rev=1.2.4.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/i386/io_port.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.1.1.1.6.1&r2=0
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/i386/iopb.c?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.1.1.1.4.2.2.2&r2=0
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/i386/iopb.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.1.1.1&r2=0
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/i386at/kd.c?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.5.2.11.2.1&r2=1.5.2.11.2.2
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/i386at/model_dep.c?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.9.2.11.2.9&r2=1.9.2.11.2.10
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/include/mach/i386/mach_i386.defs?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.2.2.1.2.1&r2=1.2.2.1.2.2
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/include/mach/i386/mach_i386_types.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.1.1.1&r2=1.1.1.1.6.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/i386/intel/read_fault.c?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.1.1.1.4.1&r2=1.1.1.1.4.1.2.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/include/stddef.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&rev=1.1.4.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/kern/task.c?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.3.4.7&r2=1.3.4.7.2.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/kern/task.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.3.2.3.2.1&r2=1.3.2.3.2.2
http://cvs.savannah.gnu.org/viewcvs/gnumach/linux/configfrag.ac?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.1.2.3.2.1&r2=1.1.2.3.2.2
http://cvs.savannah.gnu.org/viewcvs/gnumach/vm/memory_object.c?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.2.2.3&r2=1.2.2.3.2.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/vm/memory_object.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.2&r2=1.2.4.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/vm/pmap.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.2.4.1&r2=1.2.4.2
http://cvs.savannah.gnu.org/viewcvs/gnumach/vm/vm_external.c?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.1.1.1.4.1&r2=1.1.1.1.4.1.2.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/vm/vm_external.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.2&r2=1.2.4.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/vm/vm_fault.c?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.3.2.6.2.2&r2=1.3.2.6.2.3
http://cvs.savannah.gnu.org/viewcvs/gnumach/vm/vm_fault.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.2&r2=1.2.4.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/vm/vm_kern.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.2&r2=1.2.4.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/vm/vm_map.c?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.3.2.7&r2=1.3.2.7.2.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/vm/vm_map.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.2.2.1&r2=1.2.2.1.2.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/vm/vm_object.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.2.2.4&r2=1.2.2.4.2.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/vm/vm_page.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.3.4.1&r2=1.3.4.1.2.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/vm/vm_pageout.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.2&r2=1.2.4.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/vm/vm_user.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&r1=1.2&r2=1.2.4.1
http://cvs.savannah.gnu.org/viewcvs/gnumach/vm/vm_types.h?cvsroot=hurd&only_with_tag=gnumach-1-branch-Xen-branch&rev=1.1.4.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]