• This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.

memory not taken into account

philo_neo

Active Member

Thanks: 1
Messages: 244

#1
Hello,
I know how to compile the kernels under FreeBSD, but I'm thinking that it does not fully support the memory of my computer: I have 12288MB Ram or it support only 3000MB, I would like to compile a new kernel with the total memory.
How to do it because I'm not seen in the kernel configuration file about RAM memory settings.

Regards
Philippe
 

Terry_Kennedy

Aspiring Daemon

Thanks: 257
Messages: 879

#2
Hello,
I know how to compile the kernels under FreeBSD, but I'm thinking that it does not fully support the memory of my computer: I have 12288MB Ram or it support only 3000MB, I would like to compile a new kernel with the total memory.
How to do it because I'm not seen in the kernel configuration file about RAM memory settings.
Memory should be auto-detected on all Tier 1 platforms, up to the architectural limit of the platform.

Which is to say, I think you are running an i386 kernel on amd64 hardware. What is the output of uname -m and grep CPU: /var/run/dmesg.boot?

Note that if I'm right, you will need to do a clean install from the FreeBSD distribution media for the correct architecture as i386 -> amd64 (or the reverse) is not supported as an in-place upgrade.
 

philo_neo

Active Member

Thanks: 1
Messages: 244

#3
i have 2 cpu , i think i must install AMD64 distribution ?
Code:
root@hpc-bella:/usr/home/phipo #  uname -m
i386
root@hpc-bella:/usr/home/phipo # grep CPU: /var/run/dmesg.boot
CPU: Intel(R) Xeon(R) CPU           E5540  @ 2.53GHz (2532.17-MHz 686-class CPU)
root@hpc-bella:/usr/home/phipo #
 

Chris_H

Aspiring Daemon

Thanks: 121
Messages: 878

#4
Terry_Kennedy is right; you've built FreeBSD from the 32-bit source, on a 64-bit CPU.
You've either installed your system from the 32-bit version of the install media, or simply used the wrong KERNCONF building you're kernel.
Which KERNCONF did you use?

--Chris
 

philo_neo

Active Member

Thanks: 1
Messages: 244

#5
I used the KERNCONF from the i386 distribution.
I am on version 12 of FreeBSD I do not know if it is supported on this forum!
here is my dmesg in attached file.

Philippe
 

Attachments

Chris_H

Aspiring Daemon

Thanks: 121
Messages: 878

#6
Yes. 12-CURRENT is supported here. :)
Your Xeon is a 64-bit CPU. You'll want to glean all your hardware recognized from dmesg(8), and ensure they are listed in /usr/src/sys/amd64/conf/GENERIC.
You can comment, or completely remove anything you have no use for in that file. Then save it with a unique name (don't overwrite GENERIC). When you're satisfied save it under it's new unique name. Then make a copy of it somewhere in your home folder, for later use.
In fact, I have a NODEBUG template I use, I think would work well for you:
Code:
#
# GENERIC-NODEBUG -- WITNESS and INVARIANTS free kernel configuration file
#            for FreeBSD/amd64
#
# This configuration file removes several debugging options, including
# WITNESS and INVARIANTS checking, which are known to have significant
# performance impact on running systems.  When benchmarking new features
# this kernel should be used instead of the standard GENERIC.
# This kernel configuration should never appear outside of the HEAD
# of the FreeBSD tree.
#
# For more information on this file, please read the config(5) manual page,
# and/or the handbook section on Kernel Configuration Files:
#
#    https://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
#
# The handbook is also available locally in /usr/share/doc/handbook
# if you've installed the doc distribution, otherwise always see the
# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the
# latest information.
#
# An exhaustive list of options and more detailed explanations of the
# device lines is also present in the ../../conf/NOTES and NOTES files.
# If you are in doubt as to the purpose or necessity of a line, check first
# in NOTES.
#
# $FreeBSD: head/sys/amd64/conf/GENERIC-NODEBUG 325096 2018-01-09 09:55:27Z chrish $

include YOUR-KERN-NAME

ident   GENERIC-NODEBUG

nooptions       INVARIANTS
nooptions       INVARIANT_SUPPORT
nooptions       WITNESS
nooptions       WITNESS_SKIPSPIN
nooptions       BUF_TRACKING
nooptions       DEADLKRES
nooptions       FULL_BUF_TRACKING
You can name this file anything you consider meaningful to you, and copy it to the conf/ folder, along with your new KERNCONF. Then change the YOUR-KERN-NAME entry, to whatever you have named your new KERNCONF file, as well as the GENERIC-NODEBUG, to reflect these changes.
When ready to build the kernel; use make buildkernel KERNCONF=GENERIC-NODEBUG.

Best wishes!

--Chris
 
Top