summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* It is not an error to have no devices in the kernel: Return thephk2003-08-171-4/+4
| | | | generation number and start it from one instead of zero.
* Bump __FreeBSD_version due to movement of libraries to /lib and rtld togordon2003-08-171-1/+1
| | | | /libexec.
* Stage 3 of dynamic root support. Make all the libraries needed to rungordon2003-08-171-0/+1
| | | | | | binaries in /bin and /sbin installed in /lib. Only the versioned files reside in /lib, the .so symlink continues to live /usr/lib so the toolchain doesn't need to be modified.
* Fixup the ELF branding information to point to the new home of rtld.gordon2003-08-178-8/+8
|
* Cleanup <machine/cpu.h> by moving MD prototypes to <machine/md_var.h>marcel2003-08-1736-176/+197
| | | | | | | | | | | | | | | like we have on other platforms. Move savectx() to <machine/pcb.h>. A lot of files got these MD prototypes through the indirect inclusion of <machine/cpu.h> and now need to include <machine/md_var.h>. The number of which is unexpectedly large... osf1_misc.c especially is tricky because szsigcode is redefined in one of the osf1 header files. Reordering of the include files was needed. linprocfs.c now needs an explicit extern declaration. Tested with: LINT
* In pmap_copy(), since we have the page table page's physical addressalc2003-08-172-6/+4
| | | | in hand, use PHYS_TO_VM_PAGE() rather than vm_page_lookup().
* In vm_thread_swap{in|out}(), remove the alpha specific conditionalmarcel2003-08-169-27/+79
| | | | | | compilation and replace it with a call to cpu_thread_swap{in|out}(). This allows us to add similar code on ia64 without cluttering the code even more.
* Use constants less throughout the code and instead use the objsizebmilekic2003-08-161-6/+6
| | | | | | | variable. This makes changing the size of an mbuf or cluster for testing/debugging/whatever purposes easier. Submitted by: sam
* bandaide to make this build againimp2003-08-163-6/+18
|
* Further cleanup <machine/cpu.h> and <machine/md_var.h>: move the MImarcel2003-08-1618-75/+53
| | | | | | | | | | | | | | | | | | | prototypes of cpu_halt(), cpu_reset() and swi_vm() from md_var.h to cpu.h. This affects db_command.c and kern_shutdown.c. ia64: move all MD prototypes from cpu.h to md_var.h. This affects madt.c, interrupt.c and mp_machdep.c. Remove is_physical_memory(). It's not used (vm_machdep.c). alpha: the MD prototypes have been left in cpu.h with a comment that they should be there. Moving them is left for later. It was expected that the impact would be significant enough to be done in a seperate commit. powerpc: MD prototypes left in cpu.h. Comment added. Suggested by: bde Tested with: make universe (pc98 incomplete)
* Give timecounters a numeric quality field.phk2003-08-166-33/+68
| | | | | | | | | | | | | | | | A timecounter will be selected when registered if its quality is not negative and no less than the current timecounters. Add a sysctl to report all available timecounters and their qualities. Give the dummy timecounter a solid negative quality of minus a million. Give the i8254 zero and the ACPI 1000. The TSC gets 800, unless APM or SMP forces it negative. Other timecounters default to zero quality and thereby retain current selection behaviour.
* Revision 1.44 of ufs/ufs/inode.h has made it necessary to add two newalc2003-08-161-0/+2
| | | | #includes to this file. Otherwise, it doesn't compile.
* Eliminate pmap_page_lookup() and its uses. Instead, use PHYS_TO_VM_PAGE()alc2003-08-161-40/+4
| | | | | | to convert the pte's physical address into a vm page. Reviewed by: peter
* FICL doesn't build on PowerPC yet, so disable.obrien2003-08-163-21/+21
|
* Fix a range check bug. Don't left-shift the integer argument 'data'.marcel2003-08-161-12/+7
| | | | | | | | | Sign extension happens after the shift, not before so that boundary cases like 0x40000000 will not be caught properly. Instead, right shift ndirty. It is guaranteed to be a multiple of 8. While here, do some manual code motion and code commoning. Range check bug pointed out by: iedowse
* Argh. Last commit only had the __FBSDID() fix. Really add the device IDwpaul2003-08-152-0/+3
| | | | for the 8100 this time.
* It appears in some configurations with an on-board RTL8100 chip (in thiswpaul2003-08-151-2/+0
| | | | | | | | | | case, a "Vortex86" mini PC), the PCI device ID value in the EEPROM (0x8100) does not agree with the PCI device ID returned by pci_get_device() (0x8139). This means that while rl_probe() matches the device, rl_attach() doesn't. Work around this by adding an entry to the rl_devs table for the 8100 with a device ID of 0x8100. Also, get rid of extra instance of __FBSDID(). One is enough.
* - Various style fixes in both code and comments.jhb2003-08-153-66/+75
| | | | | | | | | - Update some stale comments. - Sort a couple of includes. - Only set 'newcpu' in updatepri() if we use it. - No functional changes. Obtained from: bde (via an old diff I got a long time ago)
* Eliminate the i_devvp field from the incore UFS inodes, we canphk2003-08-154-7/+5
| | | | | | | | | | | get the same value from ip->i_ump->um_devvp. This saves a pointer in the memory copies of inodes, which can easily run into several hundred kilobytes. The extra indirection is unmeasurable in benchmarks. Approved by: mckusick
* Add ptrace_machdep.c.marcel2003-08-151-0/+1
|
* #ifdef __i386__ the "int slice" definition that became i386-only withrwatson2003-08-151-0/+2
| | | | | | | recent Vinum changes. Fixes non-i386 build on vinumio.c. Accidental oversight of: grog Fix hopefully not minded by: grog
* remove acquire_timer0() and release_timer0() and related stuff.phk2003-08-153-270/+4
|
* - Fix a typo in a comment.jhb2003-08-152-14/+14
| | | | | - Use macros for MSR register indexes as well as the bitfields in the APICBASE MSR.
* - Add macros describing some new MSR's in the Pentium 4 and some olderjhb2003-08-151-0/+25
| | | | | MSR's in the original Pentium. - Add macros describing the bit fields in the APICBASE MSR.
* - Fix a duplicated typo.jhb2003-08-153-9/+9
| | | | | | - Add a macro for the logical shift needed to extract an APIC ID from either from the local APIC ICR Hi register or the APIC ID registers of the local and IO APICs.
* - Remove redundant <sys/sysctl.h> include.jhb2003-08-151-4/+1
| | | | - Move the <machine/vm86.h> include up to the other <machine/*> includes.
* Adjust the style of the #ifdef SMP in casuptr() so that the #ifdef SMPjhb2003-08-151-5/+4
| | | | | just covers the lock prefix to match the existing style in other asm files in i386.
* - Update location of PCI headers.jhb2003-08-151-5/+6
| | | | | - Use macros for PCI config registers instead of magic numbers. - Small whitespace nits.
* As warned: Initiate deorbit burn for the pcaudio driver.phk2003-08-157-1188/+0
|
* Remove a few ushorts I missed in my earlier pass.jhb2003-08-152-37/+37
| | | | Requested by: bde
* Eliminate unnecessary udev_t variable: we can derive it from the dev_tphk2003-08-151-6/+4
| | | | when we need it.
* Make swaponvp() static to the swap_pager.phk2003-08-152-2/+2
|
* Remove the magic way of configuring NFS backed swap.phk2003-08-154-243/+1
| | | | | | | | | | | | | This code dates back to the very first diskless support on FreeBSD, back when swapon(8) couldn't simply be run on a NFS backed file. Suggested replacement command sequence on the client: dd if=/dev/zero of=/swapfile bs=1k count=1 oseek=100000 swapon /swapfile rm -f /swapfile For whatever value of 100000 you want.
* Lock down arc4random so it can be safely called w/o Giant.silby2003-08-151-17/+26
| | | | | | Minor code reorganization was required, but the only functional change was that the first 1024 bytes of output are thrown out after each reseed, rather than just the initial seed.
* Revert part of rev. 1.16 -- reinstate system notify handler. It turns outnjl2003-08-151-0/+6
| | | | | | at least the Casio FIVA requires this. Requested by: takawata
* Improve the C3 CPU identification. I didn't notice that the CPU idimp2003-08-151-12/+6
| | | | | | | | was masked. However KIMURA Yasuhiro-san noticed my mistake and was kind enough to provide a better patch in PR 55581. I've merged that into the routine. Hopefully I've not overlooked anything this time. MFC After: 5 days
* Fix the generation of coredumps. We did not take the dirty registersmarcel2003-08-151-1/+38
| | | | | | | | | | | that were on the kernel stack into account. For now we write them out to the register stack of the process before creating the dump. This however is not the final solution. The problem is that we may invalidate the coredump by overwriting vital information due to an invalid backing store pointer. Instead we need to write the dirty registers to an unused region of VM which will result in a seperate segment in the coredump. For now we can at least get to all the registers from a coredump.
* Add an instruction group break after the move to application registermarcel2003-08-151-2/+2
| | | | | | | and the move to control register to avoid dependency violations when these functions are used. Note that explicit data and instruction serialization also need to be in a subsequent instruction group. This too requires that we have an igrp break here.
* Introduce two machine specific ptrace(2) requests: PT_GETKSTACK andmarcel2003-08-152-2/+75
| | | | | | | | | | | | | | | | | | PT_SETKSTACK. These requests allow the tracing process to access the dirty registers of the traced process that are on the kernel stack. Note that there's currently no way to access the rnat register for those dirty registers that are not (yet) covered by a nat collection point. The interface for this is still being slept on. Also note that implied by these requests is the division of work: The tracing process has to keep track of where registers are spilled and is responsible to figure out where the NaT bit of the stacked registers are at any time during the execution of the traced process. The kernel provides the interfaces but will not abstract the fact that the register stack can be split. This model does not follow the approach taken in Linux where PT_PEEK and PT_POKE deals with this automagically.
* Add or finish support for machine dependent ptrace requests. When wemarcel2003-08-152-22/+17
| | | | | | | | | | | | | | | | | check for permissions, do it for all requests, not the known requests. Later when we actually service the request we deal with the invalid requests we previously caught earlier. This commit changes the behaviour of the ptrace(2) interface for boundary cases such as an unknown request without proper permissions. Previously we would return EINVAL. Now we return EBUSY or EPERM. Platforms need to define __HAVE_PTRACE_MACHDEP when they have MD requests. This makes the prototype of cpu_ptrace() visible and introduces a call to this function for all requests greater or equal to PT_FIRSTMACH. Silence on: audit
* Extend the scope of the page queues lock in vm_pageout_scan() to coveralc2003-08-151-14/+4
| | | | the traversal of the PQ_INACTIVE queue.
* vinum_scandisk:grog2003-08-151-1/+5
| | | | | | | | | | Correctly handle additional disks without BIOS partition tables. Previously, vinum_scandisk stopped scanning additional disks for native partitions after any good partition was found. This applies to all platforms, but was a particular problem on systems without BIOS partition tables. Submitted by: harti
* if we got this far, we definately don't have an EBADF. Return a morejmg2003-08-151-1/+1
| | | | | | | sane result of EPIPE. Reported by: nCircle dev team MFC after: 3 day
* Drop Giant when calling the disk drivers directly, and reacquiregrog2003-08-151-4/+13
| | | | | | afterwards. This fixes the Vinum breakage in -CURRENT. Breakage explained by: phk
* modify commentscg2003-08-151-3/+11
|
* De-inline functions which do not need to be inline. Move the DEVMETHODnjl2003-08-151-23/+23
| | | | block to where it is in similar drivers.
* Don't install a system notify handler. Move the device notify handlernjl2003-08-151-12/+11
| | | | | installation to just before we're ready to handle events. Make a loop more readable (no functional change).
* Fix a couple changes that were incorrect in updating for 0619. Only unlocknjl2003-08-151-1/+7
| | | | | | | | the hardware mutex if it is held. Re-add calls to Enable/Clear fixed events. This is not known to have caused problems. Bug symptoms might have included instability after an aborted suspend attempt or power/sleep buttons not being enabled.
* add a few missing bits for future usecg2003-08-151-1/+27
|
* disable resume code implementing panic().cg2003-08-141-1/+6
| | | | this needs to be reimplemented properly.
OpenPOWER on IntegriCloud