summaryrefslogtreecommitdiffstats
path: root/sys/i386
Commit message (Collapse)AuthorAgeFilesLines
...
* Introduce new syscons(4) kernel options:sobomax2001-09-211-0/+6
| | | | | | | | | | | | | - SC_CUT_SPACES2TABS - when copying text into the cut buffer convert leading spaces into the tabs; - SC_CUT_SEPCHARS="XYZ" - treat supplied characters as possible words separators when the driver searches for words boundaries when doing cut operation. Also unify cut code a bit to decrease amount of duplicated code. This fixes line cut mode, so that it is no longer pads line with useless spaces. Approved by: ru
* Add some comments about KVA_PAGES and a test.peter2001-09-211-0/+9
|
* Introduce a new option, KVA_SPACE, which can be used to reconfigurepeter2001-09-211-4/+13
| | | | | | the size of the kernel virtual address space relatively painlessly. Userland will adapt via the exported kernbase symbol. Increasing this causes the user part of address space to reduce.
* Reserve an extra 16 bytes in case we have to grow the trapframe intopeter2001-09-191-1/+2
| | | | | | | a vm86trapframe for switching to vm86 [unlikely] while exiting. I lost this when doing the pcb move that went in with the KSE commit. Reviewed by: jake
* Fix a mistake I made with the pcb movement relative to the stack in thepeter2001-09-191-2/+2
| | | | | KSE patch. We need to leave the 16 bytes here for enabling the trapframe to be converted to a vm86trapframe if we're switching *to* a vm86 context.
* Cleanup and split of nfs client and server code.peter2001-09-185-24/+25
| | | | This builds on the top of several repo-copies.
* Remove accidentally included debug stuff.julian2001-09-181-3/+0
| | | | Noticed by: jhb
* Whitespace fixes.jhb2001-09-181-2/+2
|
* - If we ever do the per-cpu KTR stuff, the index won't be volatile as itjhb2001-09-182-28/+28
| | | | | | will be private to each CPU. - Re-style(9) the globaldata structures. There really needs to be a MI struct pcpu that has a MD struct mdpcpu member at some point.
* If we have a p variable pointing to td->td_proc already, use it instead ofjhb2001-09-181-8/+8
| | | | | | needlessly repeating the indirection in several places. Half of the places used td->td_proc, and half used p. They are now consistent with each other and all use p.
* Whitespace fixes.jhb2001-09-181-3/+3
|
* Add a lock assertion to linux_sendsig() to match other sendsig functions.jhb2001-09-171-0/+1
|
* Fill out some gaps in ia64 DDB support. This involves generalising DDB'sdfr2001-09-151-0/+2
| | | | | breakpoint handling slightly to cope with the fact that ia64 instructions are not located on byte boundaries.
* Add a wrapper for linux_getsid -> getsid Syscall.mr2001-09-151-1/+0
|
* Implement LINUX_[SEM|IPC]_[STAT|INFO]mr2001-09-151-0/+2
| | | | | | | to make /compat/linux/usr/bin/ipcs -s happy. PR: kern/29698 (part) Reviewed by: audit
* Place CPU_UPGRADE_HW_CACHE in the right section.asmodai2001-09-141-3/+3
|
* s/thread'/thread's/imp2001-09-141-1/+1
|
* KSE Milestone 2julian2001-09-1291-1385/+1699
| | | | | | | | | | | | | | Note ALL MODULES MUST BE RECOMPILED make the kernel aware that there are smaller units of scheduling than the process. (but only allow one thread per process at this time). This is functionally equivalent to teh previousl -current except that there is a thread associated with each process. Sorry john! (your next MFC will be a doosie!) Reviewed by: peter@freebsd.org, dillon@freebsd.org X-MFC after: ha ha ha ha
* Increase AUTHNAME to 42 bytes for users of T-Online, which requires 41gj2001-09-121-1/+1
| | | | | | bytes. MFC after: 2 weeks
* Fix some signed/unsigned integer confusion, and add bounds checking ofkris2001-09-101-0/+1
| | | | | | | | arguments to some functions. Obtained from: NetBSD Reviewed by: peter MFC after: 2 weeks
* Fix LINT breakage caused by previous commit. The linux_rt_sendsigmarcel2001-09-101-0/+9
| | | | | | | | | | | | and linux_sendsig functions guarded their debugging output with ldebug(sigreturn). This has been mistaken for a cut-n-paste bug, and was replaced by ldebug(rt_sendsig) and ldebug(sendsig) resp. Since the sendsig functions are not syscalls, this brokei any build that defines DEBUG. The fix maps both functions to the unused syscall 0 so that they can be enabled/disabled independently from sigreturn, but not independently from each other.
* Rip some well duplicated code out of cpu_wait() and cpu_exit() and movepeter2001-09-101-26/+0
| | | | | | | | | | | | it to the MI area. KSE touched cpu_wait() which had the same change replicated five ways for each platform. Now it can just do it once. The only MD parts seemed to be dealing with fpu state cleanup and things like vm86 cleanup on x86. The rest was identical. XXX: ia64 and powerpc did not have cpu_throw(), so I've put a functional stub in place. Reviewed by: jake, tmm, dillon
* gcc-3 has objections about the bluetrap6 and bluetrap13 inline asmpeter2001-09-101-19/+19
| | | | functions. Apparently multi-line string asm arguments are deprecated.
* Missing part of dillon's coredump commit. cpu_coredump() was stillpeter2001-09-081-4/+2
| | | | | passing IO_NODELOCKED to vn_rdwr(), this would cause operations on the unlocked core vnode and softupdates nastiness if an a.out binary cored.
* Round of cleanups and enhancements. These include (in random order):marcel2001-09-088-798/+1102
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | o Introduce private types for use in linux syscalls for two reasons: 1. establish type independence for ease in porting and, 2. provide a visual queue as to which syscalls have proper prototypes to further cleanup the i386/alpha split. Linuxulator types are prefixed by 'l_'. void and char have not been "virtualized". o Provide dummy functions for all syscalls and remove dummy functions or implementations of truely obsolete syscalls. o Sanitize the shm*, sem* and msg* syscalls. o Make a first attempt to implement the linux_sysctl syscall. At this time it only returns one MIB (KERN_VERSION), but most importantly, it tells us when we need to add additional sysctls :-) o Bump the kenel version up to 2.4.2 (this is not the same as the KERN_VERSION MIB, BTW). o Implement new syscalls, of which most are specific to i386. Our syscall table is now up to date with Linux 2.4.2. Some highlights: - Implement the 32-bit uid_t and gid_t bases syscalls. - Implement a couple of 64-bit file size/offset bases syscalls. o Fix or improve numerous syscalls and prototypes. o Reduce style(9) violations while I'm here. Especially indentation inconsistencies within the same file are addressed. Re-indenting did not obfuscate actual changes to the extend that it could not be combined. NOTE: I spend some time testing these changes and found that if there were regressions, they were not caused by these changes AFAICT. It was observed that installing a RH 7.1 runtime environment did make matters worse. Hangs and/or reboots have been observed with and without these changes, so when it failed to make life better in cases it doesn't look like it made it worse.
* o Introduce private types for use in linux syscalls for two reasons:marcel2001-09-081-166/+215
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. establish type independence for ease in porting and, 2. provide a visual queue as to which syscalls have proper prototypes to further cleanup the i386/alpha split. Linuxulator types are prefixed by 'l_'. void and char have not been "virtualized". o Remove dummy functions for syscalls that are now truely unimplemented. o Rename syscalls so they match the names used in the Linux kernel. Also, provide more accurate prototypes. This generally improves cross-referencing and reduces head-scratching. o Provide seperate implementations for the 16-bit uid_t and gid_t based syscalls as Linux used to have. The new 32-bit uid_t and gid_t based syscalls now map to their FreeBSD equivalents. o Fix the linux_ipc syscall so that it doesn't force the shm*, sem* and msg* syscalls to have the same syscall. The prototypes for these syscalls now match the those used on Alpha. While here, add the same kludge for MSGRCV as is present in the Linux kernel. o Implement the following syscalls: linux_stat64, linux_lstat64 and linux_fstat64 linux_sysctl o Added syscalls numbered 198 - 221. This include: - the 32-bit uid_t and gid_t bases syscalls - 64-bit file offset/size based syscalls
* Now that this code is MD, we don't need the i386 ifdefs.msmith2001-09-071-6/+9
|
* Call sendsig() with the proc lock held and return with it held.jhb2001-09-063-8/+8
|
* Don't specify the number of vlan interfaces any more, they are createdbrooks2001-09-051-1/+1
| | | | at runtime.
* Remove superfluous statement.jlemon2001-09-051-1/+0
|
* Rework the ISA PnP driver pnp and the PnP resource parser to fixyokota2001-09-051-5/+21
| | | | | | | | | | | | | | | | | | | | | | | | the following bugs. - When constructing a resource configuration, respect the order in which resource descriptors are read, in order to establish the correct mapping between the descriptors and configuration registers. "Plug and Play ISA Specification, Version 1.0a", Sec 4.6.1, May 5, 1994. "Clarifications to the Plug and Play ISA Specification, Version 1.0a", Sec 6.2.1, Dec. 10, 1994. - Do not ignore null (empty) descriptors; they are valid descriptors acting as filler. "Clarifications to the Plug and Play ISA Specification, Version 1.0a", Sec 6.2.1. - Correctly set up logical device configuration registers for null resources. "Clarifications to the Plug and Play ISA Specification, Version 1.0a" - Handle null resources properly in the resource allocator for the ISA bus.
* style(9) the structure definitions.obrien2001-09-053-6/+6
|
* Reenable RTC interrupts after wakeup. Some laptops have a problemiwasaki2001-09-044-4/+46
| | | | | | | | | with system statistics monitoring tools (such as systat, vmstat...) because of stopping RTC interrupts generation. Restore all the timers (RTC and i8254) atomically. Reviewed by: bde MFC after: 1 week
* Add `-I.' option to CFLAGS so that we can compile asm code togetheriwasaki2001-09-041-0/+1
| | | | with `-nostdinc' option.
* Mostly cosmetic. Move various variables from .s files to .c files so thatpeter2001-09-042-11/+8
| | | | gdb generates debug info for them.
* Zap #if 0'ed map init code that got moved to the MI area.peter2001-09-041-140/+0
| | | | Convert the powerpc tree to use the common code.
* Nuke #if 0'ed "setredzone()" stub. We never used it, and probablypeter2001-09-041-17/+0
| | | | | never will. I've implemented an optional redzone as part of the KSE upage breakup.
* Fix the argument specifier for the PnP BIOS function 2yokota2001-09-031-1/+1
| | | | | | | (PNP_SET_DEVNODE). The second argument is not a segment:offset pointer, but a 16 bit short. MFC after: 4 weeks
* Always turned on 8bit access card support for the fe drivershiba2001-09-021-1/+0
| | | | | | both i386/pc98, so options FE_8BIT_SUPPORT was deleted. Reviewed by: nyan
* Synchronize syscalls.master(s) with recent Giant pushdown workdillon2001-09-012-11/+11
|
* note 2300/2312 supportmjacob2001-08-311-1/+2
|
* Do a style cleanup pass for the pmap_{new,dispose,etc}_proc() functionspeter2001-08-311-40/+34
| | | | | to get them closer to the KSE tree. I will do the other $machine/pmap.c files shortly.
* Revert previous "fix"; bus mice still have to be manually probed even inmsmith2001-08-311-1/+1
| | | | | | the presence of PnP data. Submitted by: yokota
* Remove the MPSAFE keyword from the parser for syscalls.master.dillon2001-08-302-17/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead introduce the [M] prefix to existing keywords. e.g. MSTD is the MP SAFE version of STD. This is prepatory for a massive Giant lock pushdown. The old MPSAFE keyword made syscalls.master too messy. Begin comments MP-Safe procedures with the comment: /* * MPSAFE */ This comments means that the procedure may be called without Giant held (The procedure itself may still need to obtain Giant temporarily to do its thing). sv_prepsyscall() is now MP SAFE and assumed to be MP SAFE sv_transtrap() is now MP SAFE and assumed to be MP SAFE ktrsyscall() and ktrsysret() are now MP SAFE (Giant Pushdown) trapsignal() is now MP SAFE (Giant Pushdown) Places which used to do the if (mtx_owned(&Giant)) mtx_unlock(&Giant) test in syscall[2]() in */*/trap.c now do not. Instead they explicitly unlock Giant if they previously obtained it, and then assert that it is no longer held to catch broken system calls. Rebuild syscall tables.
* Add ACPI attachments.msmith2001-08-307-1/+8
|
* Correct usage of ISA_PNP_PROBEmsmith2001-08-302-6/+3
|
* Note that compiling ACPI into the kernel is deprecated for normal use.msmith2001-08-301-0/+3
|
* o Remove some GCCisms in src/powerpc/include/endian.h.mike2001-08-302-10/+13
| | | | | | | | | | | | | | | | | | | | o Unify <machine/endian.h>'s across all architectures. o Make bswapXX() functions use a different spelling of u_int16_t and friends to reduce namespace pollution. The bswapXX() functions don't actually exist, but we'll probably import these at some point. Atleast one driver (if_de) depends on bswapXX() for big endian cases. o Deprecate byteorder(3) prototypes from <sys/types.h>, these are now prototyped indirectly in <arpa/inet.h>. o Deprecate in_addr_t and in_port_t typedefs in <sys/types.h>, these are now typedef'd in <arpa/inet.h>. o Change byteorder(3) prototypes to use standards compliant uint32_t (spelled __uint32_t to reduce namespace pollution). o Document new preferred headers and standards compliance. Discussed with: bde PR: 29946 Reviewed by: bmilekic
* It turns out that while Toshiba laptops don't want to route interruptsimp2001-08-282-34/+20
| | | | | | | | | | | | | | | | | | multiple times, others do. The last strategy, which was to assume that already routed interrupts were good and just return them doesn't work for some laptops. So, instead, we have a new strategy: we notice that we have an interrupt that's already routed. We go ahead and try to route it, none the less. We will assume that it is correctly routed, even if the route fails. We still assume that other failures in the bios32 call are because the interrupt is NOT routed. Note: some laptops do not support the bios32 interface to PCI BIOS and we need to call it via the INT 2A interface. That is another windmill to till at later. Also correct a minor typo and minor whitespace nits. Strong MFC candidate.
* MFS: IRQ ordering, PRVERB and more whining in pcibios_get_version on failure.imp2001-08-272-60/+120
| | | | | | | Check return value from bios32. [[ Yes, I was bad and committed this to stable first. I should have done the commit in the other order. ]]
OpenPOWER on IntegriCloud