summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-10-25Fix warningSamuel Thibault
* i386/intel/pmap.c (i): Declare only when [NCPUS > 1].
2009-10-20Fix warningsSamuel Thibault
* devices/io_reqs.h (io_req): Set type of io_alloc_size field to vm_size_t. * device/ds_routines.c (device_write_dealloc): Remove cast of io_alloc_size field. * device/subrs.c (brelse): Likewise.
2009-10-20Fix warningsSamuel Thibault
* device/chario.c (ttypush): Set parameter type to void * instead of struct tty *, and implicitly cast the former into the latter instead. * i386/i386at/com.c: Include <kern/mach_clock.h>. (timeout, ttrstrt): Remove declarations. (comtimer): Add unused void * parameter. (comopen): Pass NULL to comtimer function. * i386/i386at/kd.h (kd_belloff): Add unused void * parameter. * i386/i386at/kd.c (timeout): Remove declaration. (kd_belloff): Add unused void * parameter. (feep, kdsetbell): Pass NULL to kd_belloff function. * i386/i386at/lpr.c: Include <mach_clock.h>. (timeout, ttrstrt): Remove declarations. * kern/mach_clock.c (softclock, timeout, untimeout): Set parameter type of fcn function pointer to void * instead of char *. Set type of param to void * instead of char *. * kern/mach_clock.h (timer_elt): Set parameter type of fcn member to void * instead of char *. Set time of param member to void * instead of char *. (timeout): Set parameter type of fcn function pointer parameter to void * instead of char *. (untimeout): Likewise, set type of param parameter to void * instead of char *. * kern/sched_prim.c (sched_init): Remove cast of recompute_priorities. Replace (char *)0 with NULL. (thread_timeout): Set parameter type to void * instead of thread_t, and implicitly cast the former into the latter instead. (thread_timeout_setup): Remove cast of thread_timeout, cast thread_depress_timeout into (void (*) (void*)). Remove cast of thread. (thread_recompute_priorities): Add unused void * parameter.
2009-10-20Fix warningsSamuel Thibault
* device/tty.h (tty): Set type of t_ispeed and t_ospeed members to unsigned char instead of (potentially signed) char.
2009-10-20Fix warningsSamuel Thibault
* vm/vm_resident.c (vm_page_grab_contiguous_pages): Remove unused count_zeroes and not_found_em labels.
2009-10-20Fix warningSamuel Thibault
* vm/vm_pageout.c (vm_pageout_scan): Remove unused Restart label.
2009-10-20Fix warningSamuel Thibault
* vm/vm_map.c (vm_map_lookup): Add braces to fix readability.
2009-10-20Fix warningSamuel Thibault
* kern/thread.c (_s_): Remove unused variable.
2009-10-20Fix warningsSamuel Thibault
* kern/bootstrap.c (task_insert_send_right): Remove spurious cast of port into ipc_object_t. (load_protect_text, load_fault_in_text, boot_map, load_bootstrap_symbols): Comment out unused variables and function. (read_exec): Comment out unused user_map variable.
2009-10-20Fix boot from grub2 with more than 800MiB memorySamuel Thibault
* i386/i386at/model_dep.c (init_alloc_aligned): Add declaration. (i386at_init): Use init_alloc_aligned to allocate memory to save the content pointed by boot_info: cmdline, mods_addr, mod_start, and string. Set kernel_cmdline to the newly allocated string. (c_boot_entry): Do not set kernel_cmdline.
2009-10-20Better estimate avail_remainingSamuel Thibault
* i386/i386at/model_dep.c (mem_size_init): Move avail_remaining computation to after all phys_last_addr corrections.
2009-10-18Revert "Fix multiboot compliancy concerning x86 D flag"Samuel Thibault
This reverts commit de00e82b8c4491a4ff3320c0ddd80ac91ed0977b. Flags already get cleared using push/pop a few instructions later.
2009-10-17Fix multiboot compliancy concerning x86 D flagSamuel Thibault
i386/i386at/boothdr.S (boot_entry): Clear D flag.
2009-10-14Merge branch 'master' of git.savannah.gnu.org:/srv/git/hurd/gnumachSamuel Thibault
2009-10-14Update constants to nowadays standardsSamuel Thibault
kern/zalloc.c (zone_map_size): Increase to 64MiB. i386/i386at/model_dep.c (mem_size_init): Reduce cap to 1/6 of memory space to save room for zalloc area. linux/src/drivers/block/ide.h (INITIAL_MULT_COUNT): Set to 16. vm/vm_map.h (VM_MAP_COPY_PAGE_LIST_MAX): Set to 64. vm/vm_object.c (vm_object_cached_max): Set to 4000.
2009-10-14Merge branch 'master-zhengda'Thomas Schwinge
2009-10-14Apply patch #6851: fix a bug in BPFZheng Da
* net_io.c (net_filter): Correct the amount of data of a packet accepted by BPF.
2009-10-14Fix yet more allocation failures during gcSamuel Thibault
kern/zalloc.c (zone_gc): Allocate and free two vm_map_kentry_zone elements to make sure the gc will be able to allocate two in vm_map_delete.
2009-10-14Revert spurious part of 909c941dSamuel Thibault
2009-10-14Fix db kernel memory accessSamuel Thibault
i386/i386/db_interface.c (db_read_bytes): Also check addr against VM_MAX_KERNEL_ADDRESS.
2009-10-14Fix macro escapesSamuel Thibault
i386/intel/pmap.c (INVALIDATE_TLB): Fix macro escapes
2009-10-14Fix allocation failure during gcSamuel Thibault
kern/zalloc.c (zone_gc): Allocate and free a vm_map_kentry_zone element to make sure the gc will be able to allocate one for vm_map_delete.
2009-10-14More restrictive requirements on zone alignmentSamuel Thibault
kern/zalloc.c (zinit): Panic if requested alignment doesn't match page size and list elements.
2009-10-14Fix return with lock heldSamuel Thibault
vm/vm_map.c (vm_map_copy_overwrite): Unlock dst_map before returning.
2009-10-14Fix return with lock heldSamuel Thibault
vm/vm_map.c (vm_map_enter): Use RETURN instead of return to unlock the map before returning.
2009-10-14Make local variable staticSamuel Thibault
kern/lock.c (lock_wait_time): Add static qualifier.
2009-10-14Advertise memory size truncationsSamuel Thibault
i386/i386at/model_dep.c (mem_size_init): Advertise memory size truncations.
2009-09-27Disable CMD-640 supportSamuel Thibault
It messes too much with probing and brings hang issue. * i386/linux/dev/include/linux/autoconf.h (CONFIG_BLK_DEV_CMD640, CONFIG_BLK_DEV_CMD640_ENHANCED): Undefine macros.
2009-07-11Switch to the new ChangeLog style.Thomas Schwinge
* ChangeLog: Wipe out content, and add instructions about how to get it back. * ChangeLog.0: Remove file. * ChangeLog.00: Likewise.
2009-06-182009-02-26 Samuel Thibault <samuel.thibault@ens-lyon.org>Samuel Thibault
* i386/i386/prog_reg.h (invlpg_linear): Rename macro into... (invlpg_linear_range): ... this. (invlpg_linear): New macro. * i386/intel/pmap.c (INVALIDATE_TLB): Call invlpg_linear instead of flush_tlb when e - S is compile-time known to be PAGE_SIZE, instead of run-time known to be less than 32 * PAGE_SIZE.
2009-06-182009-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org>Samuel Thibault
* i386/intel/pmap.c (INVALIDATE_TLB): For now, disable use of invlpg.
2009-06-182009-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org>Samuel Thibault
* i386/i386/gdt.h (LINEAR_DS): New macro. * i386/i386/gdt.c (gdt_init): Initialize LINEAR_DS descriptor. * i386/i386/proc_reg.h (invlpg_user): Rename macro into... (invlpg_linear): ... this. Use movw instead of movl to set KERNEL_DS selector. Use LINEAR_DS selector instead of USER_DS selector. * i386/intel/pmap.c (INVALIDATE_TLB): Call invlpg_linear instead of invlpg_user.
2009-06-182008-12-30 Samuel Thibault <samuel.thibault@ens-lyon.org>Samuel Thibault
* i386/i386/proc_reg.h [__ASSEMBLER__ && __GNUC__]: Include <i386/gdt.h> and <i386/ldt.h> (invlpg_user): New macro. * i386/intel/pmap.c (INVALIDATE_TLB): Call invlpg_user instead of invlpg. (pmap_remove, pmap_page_protect, pmap_protect, pmap_enter, pmap_collect, phys_attribute_clear): Call PMAP_UPDATE_TLBS after pde update instead of before.
2009-06-182008-12-29 Samuel Thibault <samuel.thibault@ens-lyon.org>Samuel Thibault
* i386/intel/pmap.c (pmap_bootstrap): Extend kernel virtual memory to at least the size of the physical memory.
2009-06-182008-12-05 Samuel Thibault <samuel.thibault@ens-lyon.org>Samuel Thibault
* vm/vm_fault.c (vm_fault_page): Print value returned memory_object_data_request as %x instead of %d.
2009-06-182008-11-15 Shakthi Kannan <shakshurd@gmail.com>Samuel Thibault
* device/ds_routines.h (device_reference, device_deallocate): Add function prototypes. * kern/task.c (task_create): Moved unused i variable inside FAST_TAS. * vm/vm_map.h (vm_map_copy_page_discard): Add function prototype. * vm/vm_kern.c (projected_buffer_deallocate): Give &map->hdr instead of map to _vm_map_clip_start and _vm_map_clip_end functions. 2008-12-01 Samuel Thibault <samuel.thibault@ens-lyon.org> * device/device_emul.h (device_emulation_ops): Turn back reference, dealloc, dev_to_port, write_trap and writev_trap into taking a void*, as they do not always take a mach_device_t. * device/ds_routines.c (mach_device_emulation_ops): Cast mach_device_reference, mach_device_deallocate, mach_convert_device_to_port, device_write_trap and device_writev_trap to (void*) to make them accept a void* argument. * linux/pcmcia-cs/glue/ds.c (device_deallocate): Rename function into... (ds_device_deallocate): ... this. (dev_to_port): Call ds_device_deallocate instead of device_deallocate. (linux_pcmcia_emulation_ops): Use ds_device_deallocate instead of device_deallocate, cast mach_device_reference to (void*) to make it accept a void* argument.
2009-06-182008-11-28 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge
* doc/Makefrag.am: Only advertize updating the web pages on gnumach-1-branch.
2009-06-182008-11-27 Samuel Thibault <samuel.thibault@ens-lyon.org>Samuel Thibault
* i386/i386/proc_reg.h (invlpg): New macro. * i386/intel/pmap.c (INVALIDATE_TLB): If portion to be flushed is less than 32 pages, use calls to invlpg instead of flush_tlb.
2009-06-182008-11-23 Samuel Thibault <samuel.thibault@ens-lyon.org>Samuel Thibault
* i386/i386/proc_reg.h (get_cr0, get_cr2, get_cr3, get_cr4, get_tr, get_ldt): Add volatile qualifier to asm statement to prevent gcc from optimizing it away since there seems to be no way to clobber these properly in the set_* macros.
2009-06-18Enhance.Thomas Schwinge
2009-06-182008-11-17 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge
* Makefile.am (install_sh, INSTALL): Point to `build-aux/install-sh'.
2009-06-182008-11-17 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge
* configure.ac: Require GNU Automake 1.10.1. * Makefile.am: Adapt. * Makefile.correct_output_files_for_.S_files.patch: Remove.
2009-06-182008-07-19 Barry deFreese <bdefreese@debian.org>Samuel Thibault
* device/device_emul.h (struct device_emulation_ops): Make members reference, dealloc, dev_to_port, write_trap, and writev_trap take mach_device_t parameter instead of void *. * i386/i386at/autoconf.c: Make forward declarations for comintr() and lprintr() match prototype. Add brackets around initialization members for bus_ctlr and bus_device structs. * i386/i386at/conf.c (dev_name_list): Pass nomap instead of nulldev for map field. * i386/i386at/pic_isa.c (intnull, fpintr, hardclock, kdintr, prtnull): Declare the type of the value returned by functions to void.
2009-06-182008-11-13 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge
[task #8135 -- PAE for GNU Mach] * i386/configfrag.ac (enable_pae): Add checks: this is ix86-only. * doc/mach.texi (Configuration): Document the new option.
2009-06-182008-11-12 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge
* i386/configfrag.ac (enable_pae): Add checks: this is ix86-only.
2009-06-18Tidy up ChangeLog.Thomas Schwinge
2009-06-182008-11-11 Shakthi Kannan <shakshurd@gmail.com>Samuel Thibault
* kern/eventcount.c (evc_wait_clear): Remove unused variable 'ret'.
2009-06-182008-11-10 Samuel Thibault <samuel.thibault@ens-lyon.org>Samuel Thibault
* i386/i386/i386asm.sym (PTE_SIZE): New assembly macro. * i386/i386/locore.S (copyout_retry): take PTE_SIZE into account. * i386/intel/pmap.c (pmap_bootstrap, pmap_create): Use WRITE_PTE instead of dereference.
2009-06-182008-11-10 Samuel Thibault <samuel.thibault@ens-lyon.org>Samuel Thibault
[task #8135 --- ``PAE for GNU Mach'] * i386/configfrag.ac: Add --enable-pae option, which defines PAE. * i386/i386/i386asm.sym (PDPSHIFT, PDEMASK): New assembly macros. * i386/i386/locore.S [PAE] (copyout_retry): Use page directory pointer bits. * i386/i386at/model_dep.c [PAE] (i386at_init): Set second initial 2MB page. Enable PAE bit. Set cr3 to page directory pointer table instead of page directory. * i386/intel/pmap.c [PAE] (pmap_bootstrap, pmap_create): Allocate 4 pages for dirbase. Setup pdpbase. [PAE] (pmap_destroy): Free 4 pages from dirbase. Free pdpbase. * i386/intel/pmap.h [PAE] (pt_entry_t): Typedef to unsigned long long. [PAE] (PDPSHIFT, PDPNUM, PDPMASK): New macros. [PAE] (PDESHIFT, PDEMASK, PTEMASK): Set to PAE values. [PAE] (lin2pdenum, NPDES): Make them take the page directory pointer index into account too. [PAE] (struct pmap): Add `pdpbase' member. (set_dirbase): Remove macro, replaced by... (set_pmap): New macro, taking a pmap instead of the dirbase. (PMAP_ACTIVATE_USER): Use set_pmap instead of set_dirbase.
2009-06-182008-11-05 Shakthi Kannan <shakshurd@gmail.com>Samuel Thibault
* ipc/mach_port.c (mach_port_insert_right): Cast poly into (ipc_object_t) to fix compiler warning when calling ipc_object_copyout_name.