o) Have the FreeBSD kernel option "INVARIANTS" trickle down into the Simple

Executive code where similar invariant knobs exist.
o) Make the Simple Executive's warning function print "WARNING: " on the same
   line as the warning it is displaying, rather than on a separate line.
This commit is contained in:
Juli Mallett 2012-11-24 02:55:05 +00:00
parent 6dd853a77a
commit ea716a4f24
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=243473
3 changed files with 38 additions and 5 deletions

View File

@ -80,9 +80,23 @@
extern "C" {
#endif
/* Default to having all POW constancy checks turned on */
#ifndef CVMX_ENABLE_POW_CHECKS
#define CVMX_ENABLE_POW_CHECKS 1
#if defined(__FreeBSD__) && defined(_KERNEL)
/*
* For the FreeBSD kernel, have POW consistency checks depend on
* the setting of INVARIANTS.
*/
#ifndef CVMX_ENABLE_POW_CHECKS
#ifdef INVARIANTS
#define CVMX_ENABLE_POW_CHECKS 1
#else
#define CVMX_ENABLE_POW_CHECKS 0
#endif
#endif
#else
/* Default to having all POW constancy checks turned on */
#ifndef CVMX_ENABLE_POW_CHECKS
#define CVMX_ENABLE_POW_CHECKS 1
#endif
#endif
/**

View File

@ -76,8 +76,12 @@ void cvmx_warn(const char *format, ...)
#ifdef CVMX_BUILD_FOR_LINUX_KERNEL
printk("WARNING:");
vprintk(format, args);
#else
#ifdef CVMX_BUILD_FOR_FREEBSD_KERNEL
printf("WARNING: ");
#else
printf("WARNING:\n");
#endif
vprintf(format, args);
#endif
va_end(args);

View File

@ -53,13 +53,28 @@
/* Control whether simple executive applications use 1-1 TLB mappings to access physical
** memory addresses. This must be disabled to allow large programs that use more than
** the 0x10000000 - 0x20000000 virtual address range.
**
** The FreeBSD kernel ifdefs elsewhere should mean that this is never even checked,
** and so does not need to be defined.
*/
#if !defined(__FreeBSD__) || !defined(_KERNEL)
#ifndef CVMX_USE_1_TO_1_TLB_MAPPINGS
#define CVMX_USE_1_TO_1_TLB_MAPPINGS 1
#endif
#endif
#ifndef CVMX_ENABLE_PARAMETER_CHECKING
#define CVMX_ENABLE_PARAMETER_CHECKING 1
#if defined(__FreeBSD__) && defined(_KERNEL)
#ifndef CVMX_ENABLE_PARAMETER_CHECKING
#ifdef INVARIANTS
#define CVMX_ENABLE_PARAMETER_CHECKING 1
#else
#define CVMX_ENABLE_PARAMETER_CHECKING 0
#endif
#endif
#else
#ifndef CVMX_ENABLE_PARAMETER_CHECKING
#define CVMX_ENABLE_PARAMETER_CHECKING 1
#endif
#endif
#ifndef CVMX_ENABLE_DEBUG_PRINTS