<feed xmlns='http://www.w3.org/2005/Atom'>
<title>teythoon/gnumach.git/device, 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-11T11:38:45Z</updated>
<entry>
<title>kern: make sure the queue macros are only used on queues</title>
<updated>2015-07-11T11:38:45Z</updated>
<author>
<name>Justus Winter</name>
<email>4winter@informatik.uni-hamburg.de</email>
</author>
<published>2015-07-11T11:27:58Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=2ba043d04468261cc767a3b91cec6df4b2238950'/>
<id>urn:sha1:2ba043d04468261cc767a3b91cec6df4b2238950</id>
<content type='text'>
This turns mistakes as the one corrected in e59f05e9 into compile-time
errors.

* kern/queue.h: Add a new macro, queue_assert, and use it to assert
that all arguments given to the queue macros have the correct type.
* device/net_io.c (ENQUEUE_DEAD): Adapt to the fact that
`queue_next(q)' is no longer an lvalue.
</content>
</entry>
<entry>
<title>i386: improve the immediate console</title>
<updated>2015-06-28T10:55:30Z</updated>
<author>
<name>Justus Winter</name>
<email>4winter@informatik.uni-hamburg.de</email>
</author>
<published>2014-03-25T21:25:44Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=4b9758c8ec6103c26228e1cda9731ab8bf1113e9'/>
<id>urn:sha1:4b9758c8ec6103c26228e1cda9731ab8bf1113e9</id>
<content type='text'>
Improve the immediate console to the point that it can be enabled and
display e.g. assertion failures from very early on (i.e. from
`c_boot_entry').

* device/cons.h (romgetc, romputc): New declarations.
* i386/configfrag.ac: Add configuration variable.
* i386/i386at/conf.c (dev_name_list): Add entry.
* i386/i386at/cons_conf.c (constab): Add entry.
* i386/i386at/immc.c: Add missing includes.
(immc_cnprobe, immc_cninit, immc_cngetc, immc_romputc): New functions.
(immc_cnputc): Fix signature, use virtual addresses.
* i386/i386at/immc.h: New file.
* i386/i386at/kd.c: Use `#if ENABLE_IMMEDIATE_CONSOLE'.
* i386/i386at/kd.h (kd_setpos): Add missing declaration.
* i386/i386at/model_dep.c (c_boot_entry): Install immediate console as
early boot console.
</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>Fix warnings</title>
<updated>2015-05-02T12:18:47Z</updated>
<author>
<name>Samuel Thibault</name>
<email>samuel.thibault@ens-lyon.org</email>
</author>
<published>2015-05-02T12:18:47Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=30ce514d975026e05a3580c7fb9ab39c9f35b84e'/>
<id>urn:sha1:30ce514d975026e05a3580c7fb9ab39c9f35b84e</id>
<content type='text'>
* device/ds_routines.c (device_open, ds_open_done, device_close,
device_write, device_write_inband, ds_write_done, device_read,
device_read_inband, ds_read_done, device_set_status, mach_device_get_status,
device_set_filter, device_map, ds_no_senders): Convert from K&amp;R declaration,
fix type of `device' into void*.
</content>
</entry>
<entry>
<title>Fix block_io_mmap prototype</title>
<updated>2015-05-02T12:05:52Z</updated>
<author>
<name>Samuel Thibault</name>
<email>samuel.thibault@ens-lyon.org</email>
</author>
<published>2015-05-02T12:05:52Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=8ab33477c2009b998c781111ba53d38f3c90e427'/>
<id>urn:sha1:8ab33477c2009b998c781111ba53d38f3c90e427</id>
<content type='text'>
* device/blkio.c (block_io_mmap): Fix prototype of dummy function.
* device/blkio.h (block_io_mmap): Likewise.
</content>
</entry>
<entry>
<title>device: Fix typos in comments (found by codespell)</title>
<updated>2015-01-02T19:08:45Z</updated>
<author>
<name>Stefan Weil</name>
<email>sw@weilnetz.de</email>
</author>
<published>2015-01-02T15:02:48Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=b8fdffc2877992e5c5121bb7e011561581691d14'/>
<id>urn:sha1:b8fdffc2877992e5c5121bb7e011561581691d14</id>
<content type='text'>
Signed-off-by: Stefan Weil &lt;sw@weilnetz.de&gt;
</content>
</entry>
<entry>
<title>device: fix net_rcv_msg-messages</title>
<updated>2014-06-11T08:29:18Z</updated>
<author>
<name>Justus Winter</name>
<email>4winter@informatik.uni-hamburg.de</email>
</author>
<published>2014-06-08T09:17:08Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=b0039d6972f631ca7fdff2379d50ad31c3781a7d'/>
<id>urn:sha1:b0039d6972f631ca7fdff2379d50ad31c3781a7d</id>
<content type='text'>
Previously, all net_rcv_msg-messages sent by net_deliver were
malformed.  It never was a problem in practice, since the messages are
not complex and thus the kernel does not try to parse the message.

struct net_rcv_msg contains an additional field of type boolean_t.
This field has no associated type descriptor, so it must not be
included in the message.

* device/net_io.c (net_deliver): Account for the extra field in the
msgh_size calculation.
</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>Use explicit prototypes for struct dev_ops fields</title>
<updated>2014-04-04T19:52:39Z</updated>
<author>
<name>Marin Ramesa</name>
<email>mpr@hi.t-com.hr</email>
</author>
<published>2014-04-04T19:52:39Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=2a8d65dfceb4ac35b09935a5e5fb62be1a44ab14'/>
<id>urn:sha1:2a8d65dfceb4ac35b09935a5e5fb62be1a44ab14</id>
<content type='text'>
* device/conf.h: Include &lt;sys/types.h&gt;, &lt;mach/port.h&gt;, &lt;mach/vm_prot.h&gt;.
Predefine struct io_req, io_req_t and io_return_t.
(dev_ops): Add explicit prototypes for d_open, d_close, d_read, d_write,
d_getstat, d_setstat, d_mmap, d_port_death.
(nulldev_open, nulldev_close, nulldev_read, nulldev_write,
nulldev_getstat, nulldev_setstat, nulldev_portdeath): Add prototypes.
(nomap): Fix prototype.
* device/dev_name.c (nulldev_open, nulldev_close, nulldev_read,
nulldev_write, nulldev_getstat, nulldev_setstat, nulldev_portdeath): New
functions.
(nomap): Fix prototype.
* device/ds_routines.c (dev_close): Pass 0 as flag parameter.
* device/kmsg.c (kmsgclose): Drop return value.
* device/kmsg.h (kmsgclose): Fix prototype.
* i386/i386at/com.c (comopen): Fix prototype.
(comclose): Fix prototype, drop return value.
(comread, comwrite): Fix prototype.
* i386/i386at/com.h (comopen, comclose, comread, comwrite): Fix
prototype.
* i386/i386at/conf.c (dev_ops): Use nulldev_open, nulldev_close,
nulldev_read, nulldev_write, nulldev_getstat, nulldev_setstat,
nulldev_portdeath where appropriate.
* i386/i386at/kd.c (kdclose, kdread, kdwrite, kdmmap): Fix prototype.
* i386/i386at/kd.h (kdclose, kdread, kdwrite, kdmmap): Likewise.
* i386/i386at/kd_event.c (kbdopen): Likewise.
* i386/i386at/kd_event.h (kbdopen): Likewise.
* i386/i386at/kd_mouse.c (mouseopen): Likewise.
* i386/i386at/kd_mouse.h (mouseopen): Likewise.
* i386/i386at/lpr.c (lpropen, lprclose, lprread, lprwrite): Likewise.
* i386/i386at/lpr.h (lpropen, lprclose, lprread, lprwrite): Likewise.
* i386/i386at/mem.c (memmmap): Likewise.
* i386/i386at/mem.h (memmmap): Likewise.
* i386/i386at/model_dep.c (timemmap): Likewise.
* i386/i386at/model_dep.h (timemmap): Likewise.
* kern/mach_clock.c (timeopen, timeclose): Likewise.
* kern/mach_clock.h: Include &lt;sys/types.h&gt;, predefine struct io_req and
io_req_t.
(timeopen, timeclose): Fix prototype.
</content>
</entry>
<entry>
<title>Remove duplicate typedef</title>
<updated>2014-02-05T13:51:30Z</updated>
<author>
<name>Samuel Thibault</name>
<email>samuel.thibault@ens-lyon.org</email>
</author>
<published>2014-02-05T13:50:27Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/gnumach.git/commit/?id=e5b90c13cb7d762a52f81c110ca5cc53eb16ac7b'/>
<id>urn:sha1:e5b90c13cb7d762a52f81c110ca5cc53eb16ac7b</id>
<content type='text'>
* device/net_io.c (net_rcv_port_t, net_hash_entry_t, net_hash_header_t):
Remove duplicate typedefs.
</content>
</entry>
</feed>
