<feed xmlns='http://www.w3.org/2005/Atom'>
<title>teythoon/gnumach.git/i386/intel, branch master</title>
<subtitle>Personal GNU Mach development repository</subtitle>
<id>https://darnassus.sceen.net/cgit/teythoon/gnumach.git/atom?h=master</id>
<link rel='self' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/'/>
<updated>2015-07-15T09:36:22Z</updated>
<entry>
<title>i386: fix typo</title>
<updated>2015-07-15T09:36:22Z</updated>
<author>
<name>Justus Winter</name>
<email>4winter@informatik.uni-hamburg.de</email>
</author>
<published>2015-07-15T01:01:38Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=3b3e25e36a01df682973c1c72b084fe4c9bbdea8'/>
<id>urn:sha1:3b3e25e36a01df682973c1c72b084fe4c9bbdea8</id>
<content type='text'>
* i386/intel/pmap.c: Fix typo.
</content>
</entry>
<entry>
<title>kern: import `macros.h' from x15</title>
<updated>2015-05-19T14:11:56Z</updated>
<author>
<name>Justus Winter</name>
<email>4winter@informatik.uni-hamburg.de</email>
</author>
<published>2015-03-31T10:57:05Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=b3c5e41bc05bc622c637d1da75a3c63091e4e789'/>
<id>urn:sha1:b3c5e41bc05bc622c637d1da75a3c63091e4e789</id>
<content type='text'>
Import the macro definitions from the x15 kernel project, and replace
all similar definitions littered all over the place with it.

Importing this file will make importing code from the x15 kernel
easier.  We are already using the red-black tree implementation and
the slab allocator from it, and we will import even more code in the
near future.

* kern/list.h: Do not define `structof', include `macros.h' instead.
* kern/rbtree.h: Likewise.
* kern/slab.c: Do not define `ARRAY_SIZE', include `macros.h' instead.
* i386/grub/misc.h: Likewise.
* i386/i386/xen.h: Do not define `barrier', include `macros.h' instead.
* kern/macro_help.h: Delete file.  Replaced by `macros.h'.
* kern/macros.h: New file.
* Makefrag.am (libkernel_a_SOURCES): Add new file, remove old file.
* device/dev_master.h: Adopt accordingly.
* device/io_req.h: Likewise.
* device/net_io.h: Likewise.
* i386/intel/read_fault.c: Likewise.
* ipc/ipc_kmsg.h: Likewise.
* ipc/ipc_mqueue.h: Likewise.
* ipc/ipc_object.h: Likewise.
* ipc/ipc_port.h: Likewise.
* ipc/ipc_space.h: Likewise.
* ipc/ipc_splay.c: Likewise.
* ipc/ipc_splay.h: Likewise.
* kern/assert.h: Likewise.
* kern/ast.h: Likewise.
* kern/pc_sample.h: Likewise.
* kern/refcount.h: Likewise.
* kern/sched.h: Likewise.
* kern/sched_prim.c: Likewise.
* kern/timer.c: Likewise.
* kern/timer.h: Likewise.
* vm/vm_fault.c: Likewise.
* vm/vm_map.h: Likewise.
* vm/vm_object.h: Likewise.
* vm/vm_page.h: Likewise.
</content>
</entry>
<entry>
<title>Do not unmap page 0 when not needed</title>
<updated>2014-07-06T16:49:55Z</updated>
<author>
<name>Samuel Thibault</name>
<email>samuel.thibault@ens-lyon.org</email>
</author>
<published>2014-07-06T16:49:55Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=859c342d11a2d018e7b220e955bbe1ba1940f02f'/>
<id>urn:sha1:859c342d11a2d018e7b220e955bbe1ba1940f02f</id>
<content type='text'>
Since we need it to access some BIOS information, e.g. at ACPI shutdown.  When
the kernel VM is not starting at 0, there is already nothing mapped there in
user tasks, anyway.

* i386/i386at/model_dep.c (machine_init) [VM_MIN_KERNEL_ADDRESS != 0]:
Do not call pmap_unmap_page_zero.
* i386/intel/pmap.c (pmap_unmap_page_zero): Warn that unmapping page
zero may break some BIOS functions.
</content>
</entry>
<entry>
<title>Convert from K&amp;R to ANSI</title>
<updated>2014-04-04T20:32:52Z</updated>
<author>
<name>Marin Ramesa</name>
<email>mpr@hi.t-com.hr</email>
</author>
<published>2014-04-04T20:32:14Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=fe0231ba14d8597b0d78bf6121dd15a82bbab34a'/>
<id>urn:sha1:fe0231ba14d8597b0d78bf6121dd15a82bbab34a</id>
<content type='text'>
Convert from K&amp;R style function definitions to ANSI style
function definitions.

* ddb/db_access.c: Convert function prototypes from K&amp;R to ANSI.
* ddb/db_aout.c: Likewise.
* ddb/db_break.c: Likewise.
* ddb/db_command.c: Likewise.
* ddb/db_cond.c: Likewise.
* ddb/db_examine.c: Likewise.
* ddb/db_expr.c: Likewise.
* ddb/db_ext_symtab.c: Likewise.
* ddb/db_input.c: Likewise.
* ddb/db_lex.c: Likewise.
* ddb/db_macro.c: Likewise.
* ddb/db_mp.c: Likewise.
* ddb/db_output.c: Likewise.
* ddb/db_print.c: Likewise.
* ddb/db_run.c: Likewise.
* ddb/db_sym.c: Likewise.
* ddb/db_task_thread.c: Likewise.
* ddb/db_trap.c: Likewise.
* ddb/db_variables.c: Likewise.
* ddb/db_watch.c: Likewise.
* device/blkio.c: Likewise.
* device/chario.c: Likewise.
* device/dev_lookup.c: Likewise.
* device/dev_name.c: Likewise.
* device/dev_pager.c: Likewise.
* device/ds_routines.c: Likewise.
* device/net_io.c: Likewise.
* device/subrs.c: Likewise.
* i386/i386/db_interface.c: Likewise.
* i386/i386/fpu.c: Likewise.
* i386/i386/io_map.c: Likewise.
* i386/i386/loose_ends.c: Likewise.
* i386/i386/mp_desc.c: Likewise.
* i386/i386/pcb.c: Likewise.
* i386/i386/phys.c: Likewise.
* i386/i386/trap.c: Likewise.
* i386/i386/user_ldt.c: Likewise.
* i386/i386at/com.c: Likewise.
* i386/i386at/kd.c: Likewise.
* i386/i386at/kd_event.c: Likewise.
* i386/i386at/kd_mouse.c: Likewise.
* i386/i386at/kd_queue.c: Likewise.
* i386/i386at/lpr.c: Likewise.
* i386/i386at/model_dep.c: Likewise.
* i386/i386at/rtc.c: Likewise.
* i386/intel/pmap.c: Likewise.
* i386/intel/read_fault.c: Likewise.
* ipc/ipc_entry.c: Likewise.
* ipc/ipc_hash.c: Likewise.
* ipc/ipc_kmsg.c: Likewise.
* ipc/ipc_marequest.c: Likewise.
* ipc/ipc_mqueue.c: Likewise.
* ipc/ipc_notify.c: Likewise.
* ipc/ipc_port.c: Likewise.
* ipc/ipc_right.c: Likewise.
* ipc/mach_debug.c: Likewise.
* ipc/mach_msg.c: Likewise.
* ipc/mach_port.c: Likewise.
* ipc/mach_rpc.c: Likewise.
* kern/act.c: Likewise.
* kern/exception.c: Likewise.
* kern/ipc_mig.c: Likewise.
* kern/ipc_tt.c: Likewise.
* kern/lock_mon.c: Likewise.
* kern/mach_clock.c: Likewise.
* kern/machine.c: Likewise.
* kern/printf.c: Likewise.
* kern/priority.c: Likewise.
* kern/startup.c: Likewise.
* kern/syscall_emulation.c: Likewise.
* kern/syscall_subr.c: Likewise.
* kern/thread_swap.c: Likewise.
* kern/time_stamp.c: Likewise.
* kern/timer.c: Likewise.
* kern/xpr.c: Likewise.
* vm/memory_object.c: Likewise.
* vm/vm_debug.c: Likewise.
* vm/vm_external.c: Likewise.
* vm/vm_fault.c: Likewise.
* vm/vm_kern.c: Likewise.
* vm/vm_map.c: Likewise.
* vm/vm_pageout.c: Likewise.
* vm/vm_user.c: Likewise.
</content>
</entry>
<entry>
<title>Fix overflow</title>
<updated>2014-03-22T15:33:25Z</updated>
<author>
<name>Samuel Thibault</name>
<email>samuel.thibault@ens-lyon.org</email>
</author>
<published>2014-03-22T15:33:25Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=7e59fbeb2f05e1400dadbbd2d9c93d8bd2ad8178'/>
<id>urn:sha1:7e59fbeb2f05e1400dadbbd2d9c93d8bd2ad8178</id>
<content type='text'>
We were filling much more than the mapwindows array, thus overwriting in
at least debugger variables.

* i386/intel/pmap.c (pmap_bootstrap): Make sure to limit mapwindows
initialization within PMAP_NMAPWINDOWS.
</content>
</entry>
<entry>
<title>Keep two virtual pages as mapping windows to access physical memory</title>
<updated>2014-03-02T23:57:24Z</updated>
<author>
<name>Samuel Thibault</name>
<email>samuel.thibault@ens-lyon.org</email>
</author>
<published>2014-03-02T23:50:33Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=b9a59e483225093dec4e28ee5841b5b7f5e73562'/>
<id>urn:sha1:b9a59e483225093dec4e28ee5841b5b7f5e73562</id>
<content type='text'>
PCI devices expose their memory etc. way beyond last_phys_addr. Userland
drivers opening /dev/mem need to open those too, even if phystokv() will
not work for them.

* i386/intel/pmap.h (pmap_mapwindow_t): New type.
(pmap_get_mapwindow, pmap_put_mapwindow): New prototypes.
(PMAP_NMAPWINDOWS): New macro.
* i386/intel/pmap.c (mapwindows): New array.
(pmap_get_mapwindow, pmap_put_mapwindow): New functions.
(pmap_bootstrap, pmap_virtual_space): Reserve virtual pages for the mapping
windows.
* i386/i386/phys.c: Include &lt;i386/model_dep.h&gt;
(INTEL_PTE_W, INTEL_PTE_R): New macros
(pmap_zero_page, pmap_copy_page, copy_to_phys, copy_from_phys): Use
`pmap_get_mapwindow' to temporarily map physical pages beyond last_phys_addr.
</content>
</entry>
<entry>
<title>ddb: qualify pointers whose dereferenced values are constant with const</title>
<updated>2013-12-15T20:42:30Z</updated>
<author>
<name>Marin Ramesa</name>
<email>mpr@hi.t-com.hr</email>
</author>
<published>2013-12-15T10:48:39Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=f885fde0a7177f954893be22efdf8c55c7c40fdb'/>
<id>urn:sha1:f885fde0a7177f954893be22efdf8c55c7c40fdb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Declare void argument lists</title>
<updated>2013-12-15T18:19:23Z</updated>
<author>
<name>Marin Ramesa</name>
<email>mpr@hi.t-com.hr</email>
</author>
<published>2013-11-29T21:54:20Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=be78a5c7937a31128a3624dcace9df23492866f9'/>
<id>urn:sha1:be78a5c7937a31128a3624dcace9df23492866f9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Cleanup of the memcpy(), memmove(), memcmp() and memset() calls</title>
<updated>2013-12-10T23:09:43Z</updated>
<author>
<name>Marin Ramesa</name>
<email>mpr@hi.t-com.hr</email>
</author>
<published>2013-12-10T23:01:34Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=f167a7b8c8aaa0f5522303566a5b48d4d89782ef'/>
<id>urn:sha1:f167a7b8c8aaa0f5522303566a5b48d4d89782ef</id>
<content type='text'>
Addresses were cast to (void *). Pointers uncasted.

* device/ds_routines.c (ds_read_done) (memset) (start_sent): Cast to (void *) instead to (char *). Argument is an address.
(ds_read_done) (memset) (end_data): Likewise.
* i386/i386/pcb.c (thread_getstatus) (memcpy) (pm): Don't cast. Argument is a pointer.
(thread_getstatus) (memcpy) (iopb): Likewise.
* i386/i386at/immc.c (immc_cnputc) (memmove): Cast first argument to (void *). Argument is an address.
(immc_cnputc) (memmove): Cast second argument to (void *). Argument is an address.
(immc_cnputc) (memset): Cast first argument to (void *). Argument is an address.
* i386/i386at/model_dep.c (i386at_init) (memcpy) (phystokv): Cast to (void *) instead to (char *). Argument is an address.
* i386/intel/pmap.c (pmap_init) (memset) (addr): Likewise.
* ipc/mach_debug.c (mach_port_space_info) (memset) (table_addr + size_used): Likewise.
(mach_port_space_info) (memset) (tree_addr + size_used): Likewise.
* kern/host.c (host_processor_sets) (memcpy) (newaddr): Likewise.
(host_processor_sets) (memcpy) (addr): Likewise.
* kern/xpr.c (xprbootstrap) (memset) (addr): Likewise.
* vm/vm_debug.c (mach_vm_object_pages) (memset) (addr + size_used): Likewise.
</content>
</entry>
<entry>
<title>i386/intel/pmap.c: remove unused variable</title>
<updated>2013-12-08T15:13:29Z</updated>
<author>
<name>Marin Ramesa</name>
<email>mpr@hi.t-com.hr</email>
</author>
<published>2013-12-05T21:03:40Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=db76d6bfd6b70c6fa03f90e0d77577df83e22f70'/>
<id>urn:sha1:db76d6bfd6b70c6fa03f90e0d77577df83e22f70</id>
<content type='text'>
* i386/intel/pmap.c (end): Remove unused variable.
</content>
</entry>
</feed>
