#
259065 |
|
07-Dec-2013 |
gjb |
- Copy stable/10 (r259064) to releng/10.0 as part of the 10.0-RELEASE cycle. - Update __FreeBSD_version [1] - Set branch name to -RC1
[1] 10.0-CURRENT __FreeBSD_version value ended at '55', so start releng/10.0 at '100' so the branch is started with a value ending in zero.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
256281 |
|
10-Oct-2013 |
gjb |
Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation
|
#
254624 |
|
21-Aug-2013 |
obrien |
The PADLOCK_RNG and RDRAND_RNG kernel options are now devices. Thus "device padlock_rng" and "device rdrand_rng" should be used instead of "options PADLOCK_RNG" & "options RDRAND_RNG".
Requested by: so@ (des) Submitted by: obrien, arthurmesh@gmail.com Obtained from: Juniper Networks
|
#
240455 |
|
13-Sep-2012 |
kib |
Rename the IVY_RNG option to RDRAND_RNG.
Based on submission by: Arthur Mesh <arthurmesh@gmail.com> MFC after: 2 weeks
|
#
240135 |
|
05-Sep-2012 |
kib |
Add support for new Intel on-CPU Bull Mountain random number generator, found on IvyBridge and supposedly later CPUs, accessible with RDRAND instruction.
From the Intel whitepapers and articles about Bull Mountain, it seems that we do not need to perform post-processing of RDRAND results, like AES-encryption of the data with random IV and keys, which was done for Padlock. Intel claims that sanitization is performed in hardware.
Make both Padlock and Bull Mountain random generators support code covered by kernel config options, for the benefit of people who prefer minimal kernels. Also add the tunables to disable hardware generator even if detected.
Reviewed by: markm, secteam (simon) Tested by: bapt, Michael Moll <kvedulv@kvedulv.de> MFC after: 3 weeks
|
#
233433 |
|
24-Mar-2012 |
alc |
Disable detailed PV entry accounting by default. Add a config option to enable it.
MFC after: 1 week
|
#
233256 |
|
21-Mar-2012 |
alc |
Eliminate vm.pmap.shpgperproc and vm.pmap.pv_entry_max because they no longer serve any purpose. Prior to r157446, they served a purpose because there was a fixed amount of kernel virtual address space reserved for pv entries at boot time. However, since that change pv entries are accessed through the direct map, and so there is no limit imposed by a fixed amount of kernel virtual address space.
Fix a couple of nearby style issues.
Reviewed by: jhb, kib MFC after: 1 week
|
#
230843 |
|
31-Jan-2012 |
jimharris |
Add isci(4) driver for amd64 and i386 targets.
The isci driver is for the integrated SAS controller in the Intel C600 (Patsburg) chipset. Source files in sys/dev/isci directory are FreeBSD-specific, and sys/dev/isci/scil subdirectory contains an OS-agnostic library (SCIL) published by Intel to control the SAS controller. This library is used primarily as-is in this driver, with some post-processing to better integrate into the kernel build environment.
isci.4 and a README in the sys/dev/isci directory contain a few additional details.
This driver is only built for amd64 and i386 targets.
Sponsored by: Intel Reviewed by: scottl Approved by: scottl
|
#
225194 |
|
26-Aug-2011 |
jhb |
Make NKPT a kernel option on amd64 so that it can be set to a non-default value from kernel config files.
Reviewed by: alc Approved by: re (kib) MFC after: 1 week
|
#
214516 |
|
29-Oct-2010 |
attilio |
Merging mptable under x86 left this option undefined for amd64 case. Fix that.
Sponsored by: Sandvine Incorporated Reported by: jkim
|
#
209248 |
|
17-Jun-2010 |
mav |
Merge COUNT_XINVLTLB_HITS and COUNT_IPIS kernel options from i386 to amd64. This information can be very valuable for CPU sleep-time (and respectively idle power consumption) optimization.
Add counters for timer-related IPIs.
Reviewed by: jhb@ (previous version)
|
#
205014 |
|
11-Mar-2010 |
nwhitehorn |
Provide groundwork for 32-bit binary compatibility on non-x86 platforms, for upcoming 64-bit PowerPC and MIPS support. This renames the COMPAT_IA32 option to COMPAT_FREEBSD32, removes some IA32-specific code from MI parts of the kernel and enhances the freebsd32 compatibility code to support big-endian platforms.
Reviewed by: kib, jhb
|
#
197025 |
|
09-Sep-2009 |
delphij |
- Teach vesa(4) and dpms(4) about x86emu. [1] - Add vesa kernel options for amd64. - Connect libvgl library and splash kernel modules to amd64 build. - Connect manual page dpms(4) to amd64 build. - Remove old vesa/dpms files.
Submitted by: paradox <ddkprog yahoo com> [1], swell k at gmail.com (with some minor tweaks)
|
#
196196 |
|
13-Aug-2009 |
attilio |
* Completely Remove the option STOP_NMI from the kernel. This option has proven to have a good effect when entering KDB by using a NMI, but it completely violates all the good rules about interrupts disabled while holding a spinlock in other occasions. This can be the cause of deadlocks on events where a normal IPI_STOP is expected. * Adds an new IPI called IPI_STOP_HARD on all the supported architectures. This IPI is responsible for sending a stop message among CPUs using a privileged channel when disponible. In other cases it just does match a normal IPI_STOP. Right now the IPI_STOP_HARD functionality uses a NMI on ia32 and amd64 architectures, while on the other has a normal IPI_STOP effect. It is responsibility of maintainers to eventually implement an hard stop when necessary and possible. * Use the new IPI facility in order to implement a new userend SMP kernel function called stop_cpus_hard(). That is specular to stop_cpu() but it does use the privileged channel for the stopping facility. * Let KDB use the newly introduced function stop_cpus_hard() and leave stop_cpus() for all the other cases * Disable interrupts on CPU0 when starting the process of APs suspension. * Style cleanup and comments adding
This patch should fix the reboot/shutdown deadlocks many users are constantly reporting on mailing lists.
Please don't forget to update your config file with the STOP_NMI option removal
Reviewed by: jhb Tested by: pho, bz, rink Approved by: re (kib)
|
#
189699 |
|
11-Mar-2009 |
dfr |
Merge in support for Xen HVM on amd64 architecture.
|
#
188247 |
|
06-Feb-2009 |
wkoszek |
Fix AGP debugging code: - correct format strings - fill opt_agp.h if AGP_DEBUG is defined - bring AGP_DEBUG to LINT by mentioning it in NOTES
This should hopefully fix a warning that was...
Found by: Coverity Prevent(tm) CID: 3676 Tested on: amd64, i386
|
#
179315 |
|
26-May-2008 |
bz |
Remove ISDN4BSD (I4B) from HEAD as it is not MPSAFE and parts relied on the now removed NET_NEEDS_GIANT. Most of I4B has been disconnected from the build since July 2007 in HEAD/RELENG_7.
This is what was removed: - configuration in /etc/isdn - examples - man pages - kernel configuration - sys/i4b (drivers, layers, include files) - user space tools - i4b support from ppp - further documentation
Discussed with: rwatson, re
|
#
179225 |
|
23-May-2008 |
jb |
Add a kernel option for amd64 to compile with the frame on the stack so that the DTrace Function Bounadry Trace (fbt) provider can get coverage of most functions in the kernel.
|
#
177651 |
|
26-Mar-2008 |
phk |
Back in the good old days, PC's had random pieces of rock for frequency generation and what frequency the generated was anyones guess.
In general the 32.768kHz RTC clock x-tal was the best, because that was a regular wrist-watch Xtal, whereas the X-tal generating the ISA bus frequency was much lower quality, often costing as much as several cents a piece, so it made good sense to check the ISA bus frequency against the RTC clock.
The other relevant property of those machines, is that they typically had no more than 16MB RAM.
These days, CPU chips croak if their clocks are not tightly within specs and all necessary frequencies are derived from the master crystal by means if PLL's.
Considering that it takes on average 1.5 second to calibrate the frequency of the i8254 counter, that more likely than not, we will not actually use the result of the calibration, and as the final clincher, we seldom use the i8254 for anything besides BEL in syscons anyway, it has become time to drop the calibration code.
If you need to tell the system what frequency your i8254 runs, you can do so from the loader using hw.i8254.freq or using the sysctl kern.timecounter.tc.i8254.frequency.
|
#
174116 |
|
30-Nov-2007 |
peter |
Allow the sio acpi attachment to be disabled (ie: use hints only). This hack means you can get the units and flags to match up more easily with serial consoles on machines with acpi tables that cause the com ports to be probed in the wrong order (and hence get the wrong sio unit number).
This replaces the common alternative hack of editing the code to comment out the acpi attachment. This could go away entirely when device wiring patches are committed.
|
#
171196 |
|
03-Jul-2007 |
bz |
Temporary disconnect i4bing, i4bisppp and i4bipr from the build for the 7.0 timeframe.
This is needed because I4B is not locked and NET_NEEDS_GIANT goes away.
The plan is to lock I4B and bring everything back for 7.1.
Approved by: re (kensmith)
|
#
160813 |
|
29-Jul-2006 |
marcel |
Remove sio(4) and related options from MI files to amd64, i386 and pc98 MD files. Remove nodevice and nooption lines specific to sio(4) from ia64, powerpc and sparc64 NOTES. There were no such lines for arm yet. sio(4) is usable on less than half the platforms, not counting a future mips platform. Its presence in MI files is therefore increasingly becoming a burden.
|
#
158384 |
|
10-May-2006 |
ambrisko |
Fix LINSYSFS in the platform options files that I missed from the platform split out change.
|
#
158349 |
|
07-May-2006 |
netchild |
- change the example of compiling only specific modules to not contain the linux module, since it is not cross-platform - move linprocfs from "files" and "options" to architecture specific files, since it only makes sense to build this for those architectures, where we also have a linuxolator - disable the build of the linuxolator on our tier-2 architecture "Alpha": * we don't have a linux_base port which supports Alpha and at the same time is not outdated/obsoleted upstream/in a good condition/ currently working * the upcomming new default linux base port is based upon Fedora Core 3 (security support via http://www.fedoralegacy.org), which isn't available for Alpha (like the current default linux base port which is based upon Red Hat 8) * nobody answered my request for testing it ~1 month ago on current@ and alpha@ (it doesn't surprises me, see above) * a SoC student wouldn't have to waste time on something which nobody is willing to test
This does not remove the alpha specific MD files of the linuxolator yet.
Discussed on: arch (mostly silence) Spiritual support by: scottl
|
#
158005 |
|
24-Apr-2006 |
marcel |
o Move ISA specific code from ppc.c to ppc_isa.c -- a bus front- end for isa(4). o Add a seperate bus frontend for acpi(4) and allow ISA DMA for it when ISA is configured in the kernel. This allows acpi(4) attachments in non-ISA configurations, as is possible for ia64. o Add a seperate bus frontend for pci(4) and detect known single port parallel cards. o Merge PC98 specific changes under pc98/cbus into the MI driver. The changes are minor enough for conditional compilation and in this form invites better abstraction. o Have ppc(4) usabled on all platforms, now that ISA specifics are untangled enough.
|
#
153335 |
|
12-Dec-2005 |
ru |
Remove all redundant option file names that don't hurt readability.
|
#
153151 |
|
06-Dec-2005 |
jkim |
Add experimental BPF Just-In-Time compiler for amd64 and i386.
Use the following kernel configuration option to enable:
options BPF_JITTER
If you want to use bpf_filter() instead (e. g., debugging), do:
sysctl net.bpf.jitter.enable=0
to turn it off.
Currently BIOCSETWF and bpf_mtap2() are unsupported, and bpf_mtap() is partially supported because 1) no need, 2) avoid expensive m_copydata(9).
Obtained from: WinPcap 3.1 (for i386)
|
#
151634 |
|
24-Oct-2005 |
jhb |
Rename the KDB_STOP_NMI kernel option to STOP_NMI and make it apply to all IPI_STOP IPIs. - Change the i386 and amd64 MD IPI code to send an NMI if STOP_NMI is enabled if an attempt is made to send an IPI_STOP IPI. If the kernel option is enabled, there is also a sysctl to change the behavior at runtime (debug.stop_cpus_with_nmi which defaults to enabled). This includes removing stop_cpus_nmi() and making ipi_nmi_selected() a private function for i386 and amd64. - Fix ipi_all(), ipi_all_but_self(), and ipi_self() on i386 and amd64 to properly handle bitmapped IPIs as well as IPI_STOP IPIs when STOP_NMI is enabled. - Fix ipi_nmi_handler() to execute the restart function on the first CPU that is restarted making use of atomic_readandclear() rather than assuming that the BSP is always included in the set of restarted CPUs. Also, the NMI handler didn't clear the function pointer meaning that subsequent stop and restarts could execute the function again. - Define a new macro HAVE_STOPPEDPCBS on i386 and amd64 to control the use of stoppedpcbs[] and always enable it for i386 and amd64 instead of being dependent on KDB_STOP_NMI. It works fine in both the NMI and non-NMI cases.
|
#
147674 |
|
29-Jun-2005 |
peter |
Move the KDB_STOP_NMI option from opt_global.h to opt_kdb.h
Approved by: re
|
#
145727 |
|
30-Apr-2005 |
dwhite |
Implement an alternate method to stop CPUs when entering DDB. Normally we use a regular IPI vector, but this vector is blocked when interrupts are disabled. With "options KDB_STOP_NMI" and debug.kdb.stop_cpus_with_nmi set, KDB will send an NMI to each CPU instead. The code also has a context-stuffing feature which helps ddb extract the state of processes running on the stopped CPUs.
KDB_STOP_NMI is only useful with SMP and complains if SMP is not defined. This feature only applies to i386 and amd64 at the moment, but could be used on other architectures with the appropriate MD bits.
Submitted by: ups
|
#
145125 |
|
15-Apr-2005 |
peter |
Remove NO_MIXED_MODE option
|
#
141963 |
|
16-Feb-2005 |
wpaul |
Add support for Windows/x86-64 binaries to Project Evil. Ville-Pertti Keinonen (will at exomi dot comohmygodnospampleasekthx) deserves a big thanks for submitting initial patches to make it work. I have mangled his contributions appropriately.
The main gotcha with Windows/x86-64 is that Microsoft uses a different calling convention than everyone else. The standard ABI requires using 6 registers for argument passing, with other arguments on the stack. Microsoft uses only 4 registers, and requires the caller to leave room on the stack for the register arguments incase the callee needs to spill them. Unlike x86, where Microsoft uses a mix of _cdecl, _stdcall and _fastcall, all routines on Windows/x86-64 uses the same convention. This unfortunately means that all the functions we export to the driver require an intermediate translation wrapper. Similarly, we have to wrap all calls back into the driver binary itself.
The original patches provided macros to wrap every single routine at compile time, providing a secondary jump table with a customized wrapper for each exported routine. I decided to use a different approach: the call wrapper for each function is created from a template at runtime, and the routine to jump to is patched into the wrapper as it is created. The subr_pe module has been modified to patch in the wrapped function instead of the original. (On x86, the wrapping routine is a no-op.)
There are some minor API differences that had to be accounted for:
- KeAcquireSpinLock() is a real function on amd64, not a macro wrapper around KfAcquireSpinLock() - NdisFreeBuffer() is actually IoFreeMdl(). I had to change the whole NDIS_BUFFER API a bit to accomodate this.
Bugs fixed along the way: - IoAllocateMdl() always returned NULL - kern_windrv.c:windrv_unload() wasn't releasing private driver object extensions correctly (found thanks to memguard)
This has only been tested with the driver for the Broadcom 802.11g chipset, which was the only Windows/x86-64 driver I could find.
|
#
134553 |
|
30-Aug-2004 |
peter |
Add the mp_watchdog hooks, although it locks up my SMP test box. It might be useable to somebody.
|
#
133844 |
|
16-Aug-2004 |
obrien |
I'm not sure what tjr envisioned for turning on FreeBSD/i386 rt support, but make it COMPAT_IA32 for now. Fix the 'DEBUG' argument code to unbreak the amd64 LINT build.
|
#
133819 |
|
16-Aug-2004 |
tjr |
Add preliminary support for running 32-bit Linux binaries on amd64, enabled with the COMPAT_LINUX32 option. This is largely based on the i386 MD Linux emulations bits, but also builds on the 32-bit FreeBSD and generic IA-32 binary emulation work.
Some of this is still a little rough around the edges, and will need to be revisited before 32-bit and 64-bit Linux emulation support can coexist in the same kernel.
|
#
126930 |
|
13-Mar-2004 |
peter |
MFp4: comment out options that don't exist so that they cannot be accidently added to config files and be silently accepted. Comment out one bogo-option that crept into NOTES.
|
#
126640 |
|
05-Mar-2004 |
obrien |
VESA* is a mistake - it cannot exist due to requiring a 32 bit kernel for BIOS calls and/or VM86.
Submitted by: peter
|
#
126631 |
|
05-Mar-2004 |
obrien |
PECOFF_* isn't useful for AMD64.
|
#
126544 |
|
03-Mar-2004 |
obrien |
Add missing working options from i386 file.
|
#
122849 |
|
17-Nov-2003 |
peter |
Initial landing of SMP support for FreeBSD/amd64.
- This is heavily derived from John Baldwin's apic/pci cleanup on i386. - I have completely rewritten or drastically cleaned up some other parts. (in particular, bootstrap) - This is still a WIP. It seems that there are some highly bogus bioses on nVidia nForce3-150 boards. I can't stress how broken these boards are. I have a workaround in mind, but right now the Asus SK8N is broken. The Gigabyte K8NPro (nVidia based) is also mind-numbingly hosed. - Most of my testing has been with SCHED_ULE. SCHED_4BSD works. - the apic and acpi components are 'standard'. - If you have an nVidia nForce3-150 board, you are stuck with 'device atpic' in addition, because they somehow managed to forget to connect the 8254 timer to the apic, even though its in the same silicon! ARGH! This directly violates the ACPI spec.
|
#
116538 |
|
18-Jun-2003 |
jake |
Moved the syscons options, kbd options and DEV_SPLASH to the MI options file.
|
#
115171 |
|
19-May-2003 |
peter |
Another x86-64 comment fixup
Approved by: re (blanket amd64 stuff)
|
#
114987 |
|
14-May-2003 |
peter |
Add BASIC i386 binary support for the amd64 kernel. This is largely stolen from the ia64/ia32 code (indeed there was a repocopy), but I've redone the MD parts and added and fixed a few essential syscalls. It is sufficient to run i386 binaries like /bin/ls, /usr/bin/id (dynamic) and p4. The ia64 code has not implemented signal delivery, so I had to do that.
Before you say it, yes, this does need to go in a common place. But we're in a freeze at the moment and I didn't want to risk breaking ia64. I will sort this out after the freeze so that the common code is in a common place.
On the AMD64 side, this required adding segment selector context switch support and some other support infrastructure. The %fs/%gs etc code is hairy because loading %gs will clobber the kernel's current MSR_GSBASE setting. The segment selectors are not used by the kernel, so they're only changed at context switch time or when changing modes. This still needs to be optimized.
Approved by: re (amd64/* blanket)
|
#
114370 |
|
01-May-2003 |
peter |
Sync up with the files in the hammer branch in the p4 tree to get basic AMD64 support. There is still more to add.
|
#
113393 |
|
12-Apr-2003 |
des |
Options that go into homonymous headers shouldn't specify the header name.
Submitted by: Hiten Pandya <hiten@unixdaemons.com>
|
#
107043 |
|
18-Nov-2002 |
jmallett |
Move SHOW_BUSYBUFS and PANIC_REBOOT_WAIT_TIME into the MI options file, since MI code uses them, and every platform provides them (except x86_64 whose options file was lacking one).
Reviewed by: bde, rwatson
|
#
105312 |
|
17-Oct-2002 |
iwasaki |
Add new syscons option SC_NO_SUSPEND_VTYSWITCH. This disables vty switch during suspend/resume.
|
#
103082 |
|
07-Sep-2002 |
peter |
Move the KSTACK_PAGES option from MD to MI. Although not all platforms support this, we do have MI code that references it and is otherwise unaware of an override. The alternative is to put knowledge in these MI files about which platforms have the opt_kstack_pages.h option file. It is more likely that other platforms will gain the ability to tune the kstack size.
|
#
99127 |
|
30-Jun-2002 |
obrien |
This is the start of the FreeBSD/x86_64 kernel.
|