| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
Adjust the order of operations in spinlock_enter() and spinlock_exit() to
work properly with single-stepping in a kernel debugger.
Notes:
svn path=/stable/7/; revision=217856
|
| |
|
|
|
|
|
|
|
|
| |
The NetBSD Foundation has granted permission to remove clause 3 and 4 from
the software.
Obtained from: NetBSD
Notes:
svn path=/stable/7/; revision=213957
|
| |
|
|
|
|
|
| |
required.
Notes:
svn path=/stable/7/; revision=207883
|
| |
|
|
|
|
|
|
|
|
| |
Define architectural load bases for PIE binaries.
MFC r198203:
Change the load base to below 2GB for sparc64/sun4v.
Notes:
svn path=/stable/7/; revision=202642
|
| |
|
|
|
|
|
|
| |
Add INCLUDE_CONFIG_FILE in GENERIC on all non-embedded platforms.
# This is the resolution of removing it from DEFAULTS...
Notes:
svn path=/stable/7/; revision=202547
|
| |
|
|
|
|
|
| |
Add vlan(4) to all GENERIC kernels.
Notes:
svn path=/stable/7/; revision=202135
|
| |
|
|
| |
Notes:
svn path=/stable/7/; revision=201536
|
| |
|
|
|
|
|
|
| |
Add INCLUDE_CONFIG_FILE, and a note in comments about how to also
include the comments with CONFIGARGS
Notes:
svn path=/stable/7/; revision=201164
|
| |
|
|
|
|
|
| |
Add AT_EXECPATH ELF auxinfo entry type.
Notes:
svn path=/stable/7/; revision=200861
|
| |
|
|
|
|
|
|
|
|
| |
AT_DEBUG and AT_BRK were OBE like 10 years ago, so retire them.
MFC r186225:
Remove two remnant uses of AT_DEBUG.
Notes:
svn path=/stable/7/; revision=200858
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Cleanup ALIGNED_POINTER:
o add to platforms where it was missing (arm, i386, powerpc, sparc64, sun4v)
o define as "1" on amd64 and i386 where there is no restriction
o make the type returned consistent with ALIGN
o remove _ALIGNED_POINTER
o make associated comments consistent
Reviewed by: bde, imp, marcel
Approved by: sam (MFC to stable/7)
Notes:
svn path=/stable/7/; revision=200625
|
| |
|
|
|
|
|
| |
Add a new sysctl for reporting all of the supported page sizes.
Notes:
svn path=/stable/7/; revision=198742
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
195385, 195649, 195660, 195749, and 195774:
Add support to the virtual memory system for configuring machine-
dependent memory attributes:
- Refactor contigmalloc() into two functions: a simple front-end that deals
with the malloc tag and calls a new back-end, kmem_alloc_contig(), that
allocates the pages and maps them.
- Use kmem_alloc_contig() to implement the UMA back-end allocator for
jumbo frame zones.
- Use kmem_alloc_contig() to allocate the top-level page tables for PAE.
- Introduce vm_memattr_t to as a type to hold memory attributes.
- Introduce vm_object_set_memattr() for setting the default memory
attributes that will be given to an object's pages.
- Introduce and use pmap_page_{get,set}_memattr() for getting and
setting a page's machine-dependent memory attributes. Add full
support for these functions on amd64 and i386 and stubs for them on
the other architectures. The function pmap_page_set_memattr() is also
responsible for any other machine-dependent aspects of changing a
page's memory attributes, such as flushing the cache or updating the
direct map. The uses include kmem_alloc_contig(), vm_page_alloc(),
and the device pager:
kmem_alloc_contig() can now be used to allocate kernel memory with
non-default memory attributes on amd64 and i386.
vm_page_alloc() and the device pager will set the memory attributes
for the real or fictitious page according to the object's default
memory attributes.
- Update the various pmap functions on amd64 and i386 that map pages to
incorporate each page's memory attributes in the mapping.
Reviewed by: alc
Notes:
svn path=/stable/7/; revision=196838
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Enable POSIX semaphores on all non-embedded architectures by default.
More applications (including Firefox) seem to depend on this nowadays,
so not having this enabled by default is a bad idea.
Proposed by: miwi
Patch by: Florian Smeets <flo kasimir com>
Approved by: re (kib)
Notes:
svn path=/stable/7/; revision=195706
|
| |
|
|
| |
Notes:
svn path=/stable/7/; revision=193641
|
| |
|
|
|
|
|
|
|
| |
- Add the interrupt vector number to intr_event_create so MI code can
lookup hard interrupt events by number.
- Add support to cpuset for binding hardware interrupts.
Notes:
svn path=/stable/7/; revision=192409
|
| |
|
|
|
|
|
|
| |
This allows all the INTR_FILTER #ifdef's to be removed from the MD
interrupt code.
Notes:
svn path=/stable/7/; revision=192406
|
| |
|
|
|
|
|
|
| |
and ie_eoi methods and collapsing down to a single intr_event_create()
routine.
Notes:
svn path=/stable/7/; revision=192311
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix KBI breakage by r190520 which affects older linux.ko binaries:
1) Move the new field (brand_note) to the end of the Brandinfo structure.
2) Add a new flag BI_BRAND_NOTE that indicates that the brand_note pointer
is valid.
3) Use the brand_note field if the flag BI_BRAND_NOTE is set and as old
modules won't have the flag set, so the new field brand_note would be
ignored.
Suggested by: jhb
Reviewed by: jhb
Approved by: re (Ken Smith), kib (mentor)
Notes:
svn path=/stable/7/; revision=191210
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix recognition of kernel-mode traps that pass through the KDB trap handler
but do not actually invoke KDB. This includes recoverable machine checks
encountered in kernel mode.
This patch causes machines with Grackle host-PCI bridges to be able to
correctly enumerate them again.
Reviewed by: marcel
Approved by: re
Notes:
svn path=/stable/7/; revision=191001
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
r189771:
Implement new way of branding ELF binaries by looking to a
".note.ABI-tag" section.
The search order of a brand is changed, now first of all the
".note.ABI-tag" is looked through.
Move code which fetch osreldate for ELF binary to check_note() handler.
r189919:
Use the properly sized types for ELF object header and program headers.
This fixes osrel fetching from the FreeBSD branding note for the 64bit
platforms (bug introduced by r189771).
r190264:
Fix several issues with parsing the notes for ELF objects.
Badly formed ELF note may cause the caclulated pointer to the next note
to point both after the note region, that was checked in the code, but
also to point before the region, that was not checked [1]. Remember the
first note location in note0 and leap out if the note is not between
note0 and note_end.
In the similar way, badly formed note may cause infinite loop by
pointing next note into the same or previous note. Guard against this
by
limiting amount of loop iterations by arbitrary choosen big number.
For clarity, check the calculated note alignment in each iteration.
PR: kern/132886
Approved by: re(Ken Smith)
Notes:
svn path=/stable/7/; revision=190520
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Change the PVO zone for fictitious pages to the unmanaged PVO zone, to match
the unmanaged flag set in the PVO attributes. Without doing this,
pmap_remove() could try to remove fictitious pages (like those created
by mmap of physical memory) from the wrong UMA zone, causing a panic.
Reported by: Justin Hibbits
Notes:
svn path=/stable/7/; revision=190302
|
| |
|
|
|
|
|
|
|
|
|
| |
builds with
KDB enabled to fail.
Pointy hat to: me
Notes:
svn path=/stable/7/; revision=189536
|
| |
|
|
|
|
|
| |
Altivec support for PowerPC.
Notes:
svn path=/stable/7/; revision=189498
|
| |
|
|
|
|
|
|
|
| |
implement pmap-level support for superpages.
Pointy hat to: jhb
Notes:
svn path=/stable/7/; revision=189088
|
| |
|
|
|
|
|
|
|
|
|
| |
superpage reservation system to the machine-independent VM system as well as
changes to the pmap code for amd64 and i386 to support superpages.
Reviewed by: alc
Tested by: ps
Notes:
svn path=/stable/7/; revision=189075
|
| |
|
|
|
|
|
|
|
|
|
| |
Change the static struct sysentvec and struct Elf_Brandinfo initializers
to the C99 style.
Explicitely initialize sysentvec.sv_maxssiz that was missed in most
sysvecs.
Notes:
svn path=/stable/7/; revision=186936
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Expand DBDMA API to allow setting device-dependent control bits and allow
DBDMA registers to lie in a subregion of a resource.
Also import changes to the BMAC driver to handle these changes and
change the way we enable the BMAC cell in macio. Instead of calling the
macio's enable-enet word, which apparently does nothing on some machines,
open an OF instance of the ethernet controller. This fixes cold booting
from disk on my Blue & White G3.
Approved by: re (gnn)
Notes:
svn path=/stable/7/; revision=184461
|
| |
|
|
|
|
|
| |
lines line up nicely.
Notes:
svn path=/stable/7/; revision=182621
|
| |
|
|
|
|
|
|
|
|
| |
by an MFC of r179646, which does the same thing.
Suggested by: rwatson
Approved by: marcel (mentor)
Notes:
svn path=/stable/7/; revision=182551
|
| |
|
|
|
|
|
| |
NOTES to powerpc-specific NOTES.
Notes:
svn path=/stable/7/; revision=182439
|
| |
|
|
|
|
|
|
|
| |
Support for Apple BMAC ethernet controller and associated DBDMA support and required changes to macio and scc(4) to support multiple interrupts on macio children.
Approved by: grehan (mentor)
Notes:
svn path=/stable/7/; revision=182379
|
| |
|
|
|
|
|
|
|
|
| |
DTrace support.
Note that this defaults the 'make buildkernel' to build with CTF data so
that the release kernel and modules are DTrace-able.
Notes:
svn path=/stable/7/; revision=182231
|
| |
|
|
| |
Notes:
svn path=/stable/7/; revision=182202
|
| |
|
|
|
|
|
|
|
| |
addition of a ';' after a SYSINIT declaration was missed in
powerpc/machdep.c because the file had moved in head. This
commit adds the missing ';'.
Notes:
svn path=/stable/7/; revision=181234
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
- Add a new method to interrupt events (ie_assign_cpu) for binding events
to CPUs.
- Bind ithreads to CPUs in their main loop (this is the original
implementation, it may be changed if the cpuset stuff is MFC'd).
- Add intr_event_bind().
- Implement ie_assign_cpu() and a 'intr_bind()' wrapper on amd64, i386,
and sparc64.
Notes:
svn path=/stable/7/; revision=180082
|
| |
|
|
|
|
|
| |
Requested by: mav (twice)
Notes:
svn path=/stable/7/; revision=179964
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
o Rename cpu_thread_setup() to cpu_thread_alloc() to better communicate that
it relates to (is called by) thread_alloc()
o Add cpu_thread_free() which is called from thread_free() to counter-act
cpu_thread_alloc().
i386: Have cpu_thread_free() call cpu_thread_clean() to preserve behaviour.
ia64: Have cpu_thread_free() call mtx_destroy() for the mutex initialized
in cpu_thread_alloc().
files: sys/amd64/amd64/vm_machdep.c:1.256
sys/arm/arm/vm_machdep.c:1.35
sys/i386/i386/vm_machdep.c1.284
sys/ia64/ia64/machdep.c:1.227
sys/ia64/ia64/vm_machdep.c:1.95
sys/kern/kern_thread.c:1.260
sys/powerpc/powerpc/vm_machdep.c:1.117
sys/sparc64/sparc64/vm_machdep.c:1.77
sys/sun4v/sun4v/vm_machdep.c:1.8
sys/sys/proc.h:1.495
Notes:
svn path=/stable/7/; revision=178467
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
amd64/conf/GENERIC:1.489, amd64/include/stack.h:1.1, arm/db_trace.c:1.14,
arm/stack_machdep.c:1.1, arm/include/stack.h:1.1, NOTES:1.1457,
files:1.1254, files.amd64:1.115, files.arm:1.19, files.i386:1.588,
files.ia64:1.94, files.powerpc:1.67, files.sparc64:1.93, files.sun4v:1.13,
options:1.610, i386/conf/GENERIC:1.478, i386/db_trace.c:1.80,
i386/stack_machdep.c:1.1, i386/include/stack.h:1.1, ia64/conf/GENERIC:1.93,
ia64/db_machdep.c:1.6, ia64/stack_machdep.c:1.1, kern/subr_stack.c:1.5,
pc98/conf/GENERIC:1.299, powerpc/conf/GENERIC:1.73,
powerpc/include/stack.h:1.1, powerpc/db_trace.c:1.14,
powerpc/stack_machdep.c:1.1, sparc64/conf/GENERIC:1.129,
sparc64/include/stack.h:1.1, sparc64/db_trace.c:1.27,
sparc64/stack_machdep.c:1.1, sun4v/conf/GENERIC:1.16,
sun4v/include/stack.h:1.1, sun4v/db_trace.c:1.2, sun4v/stack_machdep.c:1.1,
sys/stack.h:1.4 from HEAD to RELENG_7:
Break out stack(9) from ddb(4):
- Introduce per-architecture stack_machdep.c to hold stack_save(9).
- Introduce per-architecture machine/stack.h to capture any common
definitions required between db_trace.c and stack_machdep.c.
- Add new kernel option "options STACK"; we will build in stack(9) if it
is defined, or also if "options DDB" is defined to provide
compatibility with existing users of stack(9).
Add new stack_save_td(9) function, which allows the capture of a
stacktrace of another thread rather than the current thread, which the
existing stack_save(9) was limited to. It requires that the thread be
neither swapped out nor running, which is the responsibility of the
consumer to enforce.
Update stack(9) man page.
Build tested: amd64, arm, i386, ia64, powerpc, sparc64, sun4v
Runtime tested: amd64 (rwatson), arm (cognet), i386 (rwatson)
Merge i386/stack_machdep.c:1.2 from HEAD to RELENG_7:
Remove duplicate $FreeBSD$ tag.
Merge files.pc98:1.359, pc98/include/stack.h:1.1 from HEAD to RELENG_7:
Catch up pc98 for i386 stack(9) changes:
Add stub stack.h for pc98 that includes i386 pc98.
Add i386 stack_machdep.c to files.pc98.
Spotted by: tinderbox
Notes:
svn path=/stable/7/; revision=178079
|
| |
|
|
| |
Notes:
svn path=/stable/7/; revision=178061
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
uart_dev_at91usart.c:1.13, scsi_low.h:1.9, subr_ntoskrnl.c:1.94,
OsdDebug.c:1.14, dcons_os.c:1.20, ofw_consle.c:1.37,
dev/sio.c:1.473, syscons.c:1.454, uart_core.c:1.23,
union_subr.c:1.96, i386/machdep.c:1.664, i386/mp_watchdog.c:1.6,
ia64/machdep.c:1.228, kern_clock.c:1.206, kern_shutdown.c:1.186,
subr_kdb.c:1.25, subr_witness.c:1.239, vfs_subr.c:1.711,
ng_base.c:1.140, cbus/sio.c:1.247, pc98/machdep.c:1.399,
aim/machdep.c:1.107, pswitch.c:1.7, mac_test.c:19.3,
psycho.c:1.73, sparc64/machdep.c:1.140, sparc64/trap.c:1.89,
hvcons.c:1.7, sun4v/machdep.c:1.17, sun4v/trap.c:1.17, kdb.h:1.6
from HEAD to RELENG_7:
Add a new 'why' argument to kdb_enter(), and a set of constants to use
for that argument. This will allow DDB to detect the broad category of
reason why the debugger has been entered, which it can use for the
purposes of deciding which DDB script to run.
Assign approximate why values to all current consumers of the
kdb_enter() interface.
For ABI/KPI reasons, the MFC creates a new function, kdb_enter_why(),
with the new argument, updating existing consumers to use that,
preserving kdb_enter() with the current argument, and wrapping it around
kdb_enter_why().
Notes:
svn path=/stable/7/; revision=177734
|
| |
|
|
|
|
|
|
|
| |
done after necessary ULE changes to be MFC'ed.
Pointed out by: peter
Notes:
svn path=/stable/7/; revision=176931
|
| |
|
|
|
|
|
| |
architectures.
Notes:
svn path=/stable/7/; revision=176923
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
silent NULL pointer dereference in the i386 and sparc64 pmap_pinit()
when the kmem_alloc_nofault() failed to allocate address space. Both
functions now return error instead of panicing or dereferencing NULL.
The reason for MFCing this so late in release cycle is, according to
marius@, because
> it fixes the crashing (though no panic) of the test suite
> of the graphic/OpenEXR port on sparc64. This test suite is run
> (and required to succeed) during the package build and that's
> why portmgr@ bitch about at it as OpenEXR is a dependency of KDE
> which in turn is supposed to end up on the release CD images.
Revisions MFCed:
1.677 of src/sys/amd64/amd64/machdep.c
1.592 of src/sys/amd64/amd64/pmap.c
1.88 of src/sys/arm/arm/pmap.c
1.27 of src/sys/arm/at91/kb920x_machdep.c
1.22 of src/sys/arm/sa11x0/assabet_machdep.c
1.8 of src/sys/arm/xscale/i80321/ep80219_machdep.c
1.29 of src/sys/arm/xscale/i80321/iq31244_machdep.c
1.3 of src/sys/arm/xscale/i8134x/crb_machdep.c
1.6 of src/sys/arm/xscale/ixp425/avila_machdep.c
1.41 of src/sys/compat/pecoff/imgact_pecoff.c
1.26 of src/sys/compat/svr4/imgact_svr4.c
1.660 of src/sys/i386/i386/machdep.c
1.596 of src/sys/i386/i386/pmap.c
1.68 of src/sys/i386/ibcs2/imgact_coff.c
1.56 of src/sys/i386/linux/imgact_linux.c
1.226 of src/sys/ia64/ia64/machdep.c
1.192 of src/sys/ia64/ia64/pmap.c
1.102 of src/sys/kern/imgact_aout.c
1.179 of src/sys/kern/imgact_elf.c
1.56 of src/sys/kern/imgact_gzip.c
1.310 of src/sys/kern/kern_exec.c
1.287 of src/sys/kern/kern_fork.c
1.236 of src/sys/kern/kern_kse.c
1.253 of src/sys/kern/kern_proc.c
1.352 of src/sys/kern/kern_sig.c
1.63 of src/sys/kern/kern_thr.c
1.257 of src/sys/kern/kern_thread.c
1.397 of src/sys/pc98/pc98/machdep.c
1.104 of src/sys/powerpc/powerpc/machdep.c
1.10 of src/sys/powerpc/powerpc/pmap_dispatch.c
1.139 of src/sys/sparc64/sparc64/machdep.c
1.167 of src/sys/sparc64/sparc64/pmap.c
1.16 of src/sys/sun4v/sun4v/machdep.c
1.40 of src/sys/sun4v/sun4v/pmap.c
1.493 of src/sys/sys/proc.h
1.78 of src/sys/sys/signalvar.h
1.80 of src/sys/vm/pmap.h
1.79 of src/sys/vm/vm_extern.h
1.226 of src/sys/vm/vm_glue.c
1.390 of src/sys/vm/vm_map.c
Requested by: marius
Tested by: Peter Holm, marius (make universe and sparc64 runs)
Approved by: re (kensmith)
Notes:
svn path=/stable/7/; revision=175435
|
| |
|
|
| |
Notes:
svn path=/stable/7/; revision=174217
|
| |
|
|
|
|
|
|
|
| |
don't stall.
Approved by: re
Notes:
svn path=/stable/7/; revision=173943
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Split decr_init() into two, with the section that reads the timebase
frequency from OpenFirmware moved out and into a routine that is called
from cpu_startup().
This allows correct reporting of the CPU clockspeed when printing out
CPU information at boot time.
Approved by: re (Ken Smith)
Notes:
svn path=/stable/7/; revision=173609
|
| |
|
|
|
|
|
|
|
| |
GEOM wants to save the stack as part of KTR support.
Approved by: re (kensmith)
Notes:
svn path=/stable/7/; revision=173123
|
| |
|
|
|
|
|
|
|
|
| |
UPDATING that says debugging support makes FreeBSD slower, and note
RELENG_7 creation.
Approved by: re (implicit)
Notes:
svn path=/stable/7/; revision=172534
|
| |
|
|
| |
Notes:
svn path=/stable/7/; revision=172506
|