summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-08-31Disable global page while writing in kernel spaceSamuel Thibault
* i386/i386/db_interface.c (db_write_bytes): If CPU has PGE feature, disable CR4_PGE before enabling kernel page write access, and re-enable the former after disabling the latter.
2011-08-31Protect set_cr3 against compiler assignment optimizationsSamuel Thibault
This fixes the kdb `break' command. i386/i386/proc_reg.h (set_cr3): Add "memory" clobber.
2011-08-31Fix undefined operation on assigning self pre-incremented variableGuillem Jover
* linux/src/drivers/scsi/wd7000.c (mail_out): Add `1' instead of pre-incrementing self assigned variable. * linux/src/drivers/net/de4x5.c (de4x5_sw_reset, de4x5_queue_pkt, de4x5_rx) (de4x5_tx, de4x5_rx_ovfc, set_multicast_list, ping_media, mii_get_phy) (de4x5_ioctl): Likewise. * linux/src/drivers/net/depca.c (depca_rx, depca_tx, load_packet): Likewise.
2011-08-31Honour type promotion on variable argument handlingGuillem Jover
* linux/dev/lib/vsprintf.c (linux_vsprintf): Use `int' when retrieving a `short' through `va_arg'.
2011-08-31Correct MiG Mach types to fix compilation warningsGuillem Jover
* include/mach/mach_types.defs (thread_info_t): Change from array of natural_t to integer_t. (task_info_t): Likewise. (host_info_t): Likewise. (processor_info_t): Likewise. (processor_set_info_t): Likewise.
2011-08-31Denote __exit symbols as usedGuillem Jover
* linux/src/include/linux/init.h: Include <linux/compiler.h>. (__exitused): New macro. (__exit): Define to ` __exitused __cold notrace'. * linux/src/include/linux/kcomp.h (__exit): Remove.
2011-08-31Move <linux/init.h> from linux/pcmcia-cs to linux/srcGuillem Jover
* linux/pcmcia-cs/include/linux/init.h: Move to ... * linux/src/include/linux/init.h: ... here.
2011-08-31Import Linux 3.1 compiler definitionsGuillem Jover
* linux/src/include/linux/compiler.h: New file. * linux/src/include/linux/compiler-gcc.h: Likewise. * linux/src/include/linux/compiler-gcc3.h: Likewise. * linux/src/include/linux/compiler-gcc4.h: Likewise. * linux/dev/include/linux/kernel.h (barrier): Remove definition and include <linux/compiler.h> instead.
2011-08-31Import Linux 3.1 ctype codeGuillem Jover
* linux/src/include/linux/ctype.h: Update file. * linux/src/lib/ctype.c: Likewise.
2011-08-31Remove unused and non-functional string specialization headerGuillem Jover
* linux/src/include/asm-i386/string-486.h: Remove.
2011-08-31Fix memcmp prototypeGuillem Jover
* include/string.h (memcmp): Remove bogus `*' from return type.
2011-08-31Fix declarationsSamuel Thibault
* device/ds_routines.h (io_done_list): Add variable declaration. (device_io_map): Keep variable declaration and move definition to... * device/ds_routines.c: ... here. * i386/i386/fpu.c: Include <i386/pic.h> (curr_ipl): Remove declaration. (fpintr): Add int unit parameter. * linux/dev/glue/glue.h: New header. * i386/i386/fpu.h (fpintr): Add function prototype. * i386/i386/hardclock.c (clock_interrupt, linux_timer_intr): Remove prototypes. [LINUX_DEV]: Include <linux/dev/glue/glue.h> * i386/i386/ipl.h (curr_ipl): Add declaration. * i386/i386/pic.h (curr_pic_mask, pic_mask, prtnull, intnull): Add declarations. * i386/i386at/kd.h (kdintr): Add declaration. * i386/i386at/pic_isa.c: Include <i386/fpu.h> and <i386at/kd.h> (intnull, fpintr, hardclock, kdintr, prtnull): Remove prototypes. * i386/xen/xen.c: Include <kern/mach_clock.h> (clock_interrupt): Remove prototype. * linux/dev/arch/i386/kernel/irq.c: Include <linux/dev/glue/glue.h> and <machine/machspl.h> (linux_timer_intr, splhigh, spl0, curr_ipl, curr_pic_mask, pic_mask, get_options): Remove declarations. * linux/dev/drivers/block/floppy.c: Include <linux/dev/glue/glue.h> (issig, get_options): Remove declarations. * linux/dev/drivers/block/genhd.c: Include <linux/dev/glue/glue.h> (linux_intr_pri): Remove declaration. * linux/dev/glue/block.c: Include <devices/ds_routines.h> and <linux/dev/glue/glue.h>. (device_io_map, blksize_size): Remove declarations. * linux/dev/glue/kmem.c: Include <kern/printf.h> and <linux/dev/glue/glue.h> (alloc_contig_mem, printf): Remove declarations. * linux/dev/glue/misc.c: Include <printf.h> and <linux/dev/glue/glue.h> (vm_map_lookup_entry, printf): Remove prototypes. * linux/dev/glue/net.c: Include <kern/printf.h>, <device/ds_routines.h> and <linux/dev/glue/glue.h>. (linux_intr_pri, io_done_list): Remove declarations. * linux/dev/init/main.c: Include <machine/model_dep.h> and <linux/dev/glue/glue.h>. (phys_last_addr, alloc_contig_mem, free_contig_mem, init_IRQ, restore_IRQ, startrtclock, linux_version_init, linux_kmem_init, pci_init, linux_net_emulation_init, device_setup, linux_printk, linux_timer_intr, spl0, splhigh, form_pic_mask, linux_bad_intr, prtnull, intnull, linux_sched_init, pcmcia_init): Remove declarations. * linux/dev/kernel/sched.c: Include <kern/printf.h>, <machine/machspl.h> and <linux/dev/glue/glue.h>. (alloc_contig_mem, free_contig_mem, splhigh, splx, linux_soft_intr, issig, printf, linux_auto_config): Remove prototypes. * linux/dev/kernel/softirq.c: Include <linux/dev/glue/glue.h>. * linux/src/drivers/block/floppy.c: Include <linux/dev/glue/glue.h>. (get_options): Remove prototype. * linux/src/init/main.c: Include <linux/dev/glue/glue.h> (init_IRQ): Remove prototype.
2011-08-30Add linux_timer_intr function declarationGuillem Jover
* i386/i386/hardclock.c [LINUX_DEV] (linux_timer_intr): New prototype.
2011-08-30Add missing headersGuillem Jover
* device/dev_pager.c: Include <device/memory_object_reply.user.h>. * linux/pcmcia-cs/glue/wireless_glue.h: Include <kern/debug.h>.
2011-08-30Remove unused variableGuillem Jover
* i386/i386at/rtc.c (rtc): Remove variable.
2011-08-30Cast host_get_time() arguments to fix warningsGuillem Jover
* linux/dev/glue/misc.c (do_gettimeofday): Cast arguments to `host_get_time'.
2011-08-30Cast function timeout() argument to fix a warningGuillem Jover
* kern/mach_clock.h (timer_func_t): New function type. (struct timer_elt): Change fcn type to timer_func_t. * i386/i386at/com.c (comstart): Cast `ttrstrt' to `timer_funct_t *' in `timeout' call. * i386/i386at/lpr.c (lprstart): Likewise,
2011-08-30Return a value on non-void functionGuillem Jover
* i386/i386at/com.c (comcnprobe, comcninit, comcnputc): Return 0.
2011-08-30Fix copyright assignmentSamuel Thibault
I have assigned copyright to the Free Software Foundation. * i386/i386/xen.h: Fix copyright assignment * i386/xen/xen.c: Likewise. * i386/xen/xen_boothdr.S: Likewise. * i386/xen/xen_locore.S: Likewise. * include/mach/xen.h: Likewise. * xen/block.c: Likewise. * xen/block.h: Likewise. * xen/console.c: Likewise. * xen/console.h: Likewise. * xen/evt.c: Likewise. * xen/evt.h: Likewise. * xen/grant.c: Likewise. * xen/grant.h: Likewise. * xen/net.c: Likewise. * xen/net.h: Likewise. * xen/ring.c: Likewise. * xen/ring.h: Likewise. * xen/store.c: Likewise. * xen/store.h: Likewise. * xen/time.c: Likewise. * xen/time.h: Likewise. * xen/xen.c: Likewise. * xen/xen.h: Likewise.
2011-08-30Console declaration cleanupSamuel Thibault
* device/cons.h: Add multiple inclusion _DEVICE_CONS_H macro protector. (struct consdev): Add function members prototypes. * i386/i386/xen.h: Include <mach/xen.h>. * i386/i386at/com.c (comcnprobe, comcninit, comcngetc, comcnputc): Move prototypes... * i386/i386at/com.h: ... here. Include <device/cons.h>. * i386/i386at/cons_conf.c [MACH_HYP]: Include <xen/console.h>. [!MACH_HYP]: Include "kd.h". [!MACH_HYP && NCOM > 0]: Include "com.h". (hypcnprobe, hypcninit, hypcngetc, hypcnputc, kdcnprobe, kdcninit, kdcngetc, kdcnputc comcnprobe, comcninit, comcngetc, comcnputc): Remove prototypes. * i386/i386at/kd.c (kdcnputc): Make it return int, -1 on error, 0 on success. (kdcnprobe, kdcninit, kdcngetc, kdcnputc): Move prototypes... * i386/i386at/kd.h: ... here. Include <device/cons.h>. * xen/console.c (hypcnprobe): Remove unused `my_console' local variable. * xen/console.h: Include <device/cons.h> (hypcnputc, hypcngetc, hypcnprobe, hypcninit): Add prototypes.
2011-08-30Move Linux module macros to their original headerGuillem Jover
* linux/pcmcia-cs/glue/wireless_glue.h (EXPORT_SYMBOL) (SET_MODULE_OWNER): Move to ... * linux/src/include/linux/module.h [!MODULE]: ... here.
2011-08-30Move cdrom_sleep() definition to its original source fileGuillem Jover
* linux/dev/kernel/sched.c (cdrom_sleep): Move to ... * linux/src/drivers/block/ide-cd.c [MACH]: ... here, make it static. Include <kern/sched_prim.h>.
2011-08-29Make copyout run in 1 loop on >= i486Samuel Thibault
* i386/i386/locore.S (copyout): On >= i486, skip WP-check loop split and just use byte count.
2011-08-28Skip kernel WP check on i486 and aboveSamuel Thibault
* i386/i386/i386asm.sym (machine_slot.sub_type): Define. * i386/i386/locore.S (copyout_retry): Skip if machine_slot[0].cpu_type > 3.
2011-08-28Enable >4GiB cr3Samuel Thibault
* i386/xen/xen_boothdr.S (__xen_guest): Add [extended-cr3] to PAE (XEN_ELFNOTE_PAE_MODE): Likewise.
2011-08-28Disable (<i486)-only WP workaround on Xen & PAESamuel Thibault
i386 didn't support PAE anyway. * i386/i386/locore.S (copyout_retry) [MACH_HYP || PAE]: Remove. * xen/xen.c (hyp_invalidate_pte): Remove function. * xen/xen.h (hyp_invalidate_pte): Remove prototype.
2011-08-28Fix pmap_clear_bootstrap_pagetable with >4G mfnsSamuel Thibault
* i386/intel/pmap.c (pmap_clear_bootstrap_pagetable): Use pte_to_pa instead of atop.
2011-08-28Rework memory mapping reservationSamuel Thibault
* i386/i386/vm_param.h (VM_KERNEL_MAP_SIZE): Define to 192MiB. * i386/i386at/model_dep.c (mem_size_init): Use VM_KERNEL_MAP_SIZE instead of 1/6 factor. * i386/intel/pmap.c (morevm): Remove. (pmap_bootstrap): Use VM_KERNEL_MAP_SIZE instead of morevm.
2011-08-28Move free_skbuffs declaration to the topSamuel Thibault
* device/ds_routines.c (free_skbuffs): Move declaration to the top.
2011-08-27Initialize the new map entry when it's a projected bufferGuillem Jover
* vm/vm_map.c (vm_map_fork): Call vm_map_entry_create for projected_on buffers too.
2011-08-27Fix initialization from incompatible pointer typeGuillem Jover
* linux/dev/glue/block.c (device_get_status): Cast `hg' to `unsigned long' in ioctl call.
2011-08-27Match signedness of char pointer comparisons and assignmentsGuillem Jover
* linux/dev/drivers/block/genhd.c (msdos_partition): Cast `data' assignment to `unsigned char *'. * linux/src/drivers/block/ide-cd.c (cdrom_queue_request_sense): Cast `buffer' assignment to `unsigned char *'. (cdrom_transfer_packet_command): Change `cmd_buf' argument type to `unsigned char *'. (cdrom_read_capacity): Cast `pc.buffer' assignments to `unsigned char *'. Use temporary `model' and `fw_rev' `const char *' variables to compare against literal strings and characters. * linux/src/drivers/block/ide.c (execute_drive_cmd): Cast `args' assignment to `byte *'. (ide_open): Cast `rq.buffer' assignment to `char *'. (ide_release): Likewise. (ide_ioctl): Likewise. (do_identify): Cast variables being compared against literal string to `char *'. (probe_for_drive): Likewise. * linux/src/drivers/block/ide.h (struct packet_command): Change `buffer' type to `unsigned char *'.
2011-08-27Always initialize A and X variables in BPF codeGuillem Jover
* device/net_io.c (bpf_do_filter): Remove lint conditional.
2011-08-27Disable unused variablesGuillem Jover
* i386/i386at/com.c (comstart): Disable `i' variable. * linux/src/drivers/net/at1700.c (net_close): Disable `lp' variable. * linux/dev/include/linux/blk.h (end_request): Disable `nsect' variable on MACH.
2011-08-27Remove unused variablesGuillem Jover
* vm/memory_object_proxy.c (memory_object_create_proxy): Remove unused `kr' variable. * linux/dev/glue/block.c (free_buffer): Remove unused `i' variable. (register_blkdev): Remove unused `err' variable. (unregister_blkdev): Likewise. (bread): Likewise. (init_partition): Likewise. * linux/dev/glue/net.c (device_write): Likewise.
2011-08-27Remove ident tags producing preprocessor warningsGuillem Jover
* linux/src/drivers/scsi/FlashPoint.c: Remove #ident tags.
2011-08-27Add header for printf prototypeGuillem Jover
* vm/memory_object_proxy.c: Include <kern/printf.h>.
2011-08-27Add prototype for free_skbuffs functionGuillem Jover
* device/ds_routines.c [LINUX_DEV && CONFIG_INET] (free_skbuffs): Add prototype.
2011-08-27Add prototype for log functionGuillem Jover
* kern/debug.h (log): New prototype.
2011-08-27* Makefile.am (AM_CFLAGS): Add -fno-builtin-log.Samuel Thibault
2011-08-27Add prototypes for locore functionsGuillem Jover
* i386/i386at/model_dep.c (discover_x86_cpu_type): Move ... * i386/i386/locore.h: ... here. (inst_fetch, cpu_shutdown): New prototypes. * i386/i386at/kd.c: Include <i386/locore.h>.
2011-08-27Do not take obsolete and unused bcopy and bzero from libcGuillem Jover
* Makefile.am (clib_routines): Remove bcopy and bzero.
2011-08-27Use AC_LANG_SOURCE inside AC_LANG_CONFTEST to fix autoconf warningGuillem Jover
* configure.ac (AC_LANG_CONFTEST): Wrap the source into a AC_LANG_SOURCE call.
2011-08-27Add a .gitignore fileGuillem Jover
* .gitignore: New file.
2011-08-22Make ipc_space_zone not exhaustibleSamuel Thibault
Users of ipc_space_create() actually assume that it succeeds. * ipc/ipc_init.c (ipc_bootstrap): Create ipc_space_zone without EXHAUSTIBLE flag.
2011-08-22Add more details to "zone exhausted" panics.Samuel Thibault
* kern/zalloc (zalloc): Add more details to "zone exhausted" panics.
2011-08-21Add 8byte breakpoint macroSamuel Thibault
* i386/i386/db_interface.h (I386_DB_LEN_8): Define macro.
2011-08-18Add compiler barrier to update_mapped_timeSamuel Thibault
* kern/mach_clock.c (update_mapped_time): Add compiler barriers between writes to shared memory. Update comment: on SMP, write barriers are required.
2011-08-10Do not warn for cross-space spurious port deallocationSamuel Thibault
These are harmless (the target is stopped) and difficult to fix anyway. * ipc/mach_port.c (mach_port_destroy): Do not warn about spurious port deallocation when SPACE is not equal to current_space(). (mach_port_deallocate): Likewise.
2011-08-10Add more spurious deallocation debuggingSamuel Thibault
* ipc/mach_port.c (mach_port_destroy): Print the current space and the target space on spurious deallocation. (mach_port_deallocate): Likewise.