History log of /freebsd/sys/kern/kern_linker.c (Results 51 – 75 of 542)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 50896984 10-Oct-2017 Enji Cooper <ngie@FreeBSD.org>

MFhead@r324482


# 693593b6 05-Oct-2017 Andriy Gapon <avg@FreeBSD.org>

sysctl-s in a module should be accessible only when the module is initialized

A sysctl can have a custom handler that may access data that is initialized
via SYSINIT(9) or via a module event handler

sysctl-s in a module should be accessible only when the module is initialized

A sysctl can have a custom handler that may access data that is initialized
via SYSINIT(9) or via a module event handler (also invoked via SYSINIT).
Thus, it is not safe to allow access to the module's sysctl-s until
the initialization is performed. Likewise, we should not allow access
to teh sysctl-s after the module is uninitialized.
The latter is easy to achieve by properly ordering linker_file_unregister_sysctls
and linker_file_sysuninit.
The former is not as easy for two reasons:
- the initialization may depend on tunables which get set when sysctl-s are
registered, so we need to set the tunables before running sysinit-s
- the initialization may try to dynamically add more sysctl-s under statically
defined sysctl nodes
So, this change splits the sysctl setup into two phases. In the first phase
the sysctl-s are registered as before but they are disabled and hidden from
consumers. In the second phase, done after sysinit-s, normal access to the
sysctl-s is enabled.

The change should affect only dynamic module loading and unloading after
the system boot-up. Nothing changes for sysctl-s compiled into the kernel
and sysctl-s in preloaded modules.

Discussed with: hselasky, ian, jhb
Reviewed by: julian, kib
MFC after: 2 weeks
Sponsored by: Panzura
Differential Revision: https://reviews.freebsd.org/D12545

show more ...


# 550374ef 01-Oct-2017 Andriy Gapon <avg@FreeBSD.org>

revert r324166, it has an unrelated change in it


# 7d5c6491 01-Oct-2017 Andriy Gapon <avg@FreeBSD.org>

MFV r323531: 8521 nvlist memory leak in get_clones_stat() and spa_load_best()

illumos/illumos-gate@7d3000f774e20097a1ee45cbd06d0e38065ddd5a
https://github.com/illumos/illumos-gate/commit/7d3000f774e

MFV r323531: 8521 nvlist memory leak in get_clones_stat() and spa_load_best()

illumos/illumos-gate@7d3000f774e20097a1ee45cbd06d0e38065ddd5a
https://github.com/illumos/illumos-gate/commit/7d3000f774e20097a1ee45cbd06d0e38065ddd5a

https://www.illumos.org/issues/8521
Yuri reported this to the mailing list:
doing a `reboot -d` on current illumos-gate HEAD gives the following "::
findleaks -dv" output:
findleaks: maximum buffers => 301061
findleaks: actual buffers => 297587
findleaks:
findleaks: potential pointers => 29289774
findleaks: dismissals => 26242305 (89.5%)
findleaks: misses => 331153 ( 1.1%)
findleaks: dups => 2419681 ( 8.2%)
findleaks: follows => 296635 ( 1.0%)
findleaks:
findleaks: peak memory usage => 7353 kB
findleaks: elapsed CPU time => 1.5 seconds
findleaks: elapsed wall time => 2.0 seconds
findleaks:
CACHE LEAKED BUFCTL CALLER
ffffff03d222b008 120 ffffff03ef7ceb78 nv_alloc_sys+0x1f
ffffff03d222a448 123 ffffff03f4150cc8 nv_alloc_sys+0x1f
ffffff03d222b448 5 ffffff03f28bd598 nv_alloc_sys+0x1f
ffffff03d222b888 87 ffffff03f28c10f0 nv_alloc_sys+0x1f
ffffff03d222c008 21 ffffff03f4139310 nv_alloc_sys+0x1f
ffffff03d222b888 43 ffffff040ef3f3e8 nv_alloc_sys+0x1f
ffffff03d222c008 120 ffffff03f4591e58 nv_alloc_sys+0x1f
ffffff03d222b008 121 ffffff03f352c068 nv_alloc_sys+0x1f
ffffff03d222a448 112 ffffff03f414e5f8 nv_alloc_sys+0x1f
ffffff03d222b008 119 ffffff03ee92fdc0 nv_alloc_sys+0x1f
ffffff03d222b888 46 ffffff03f28c1378 nv_alloc_sys+0x1f
ffffff03d222b448 4 ffffff03f28c7708 nv_alloc_sys+0x1f
ffffff03d222c008 20 ffffff03f2a6e7e8 nv_alloc_sys+0x1f

Reviewed by: Steve Gonczi <steve.gonczi@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Yuri Pankov <yuripv@gmx.com>
Reviewed by: Matt Ahrens <mahrens@delphix.com>
Approved by: Dan McDonald <danmcd@joyent.com>
Author: Pavel Zakharov <pavel.zakharov@delphix.com>

MFC after: 5 weeks
X-MFC after: r324163

show more ...


Revision tags: release/10.4.0
# 0275f9db 11-Aug-2017 Hans Petter Selasky <hselasky@FreeBSD.org>

Merge ^/head r321383 through r322397.


# 69ef36e3 01-Aug-2017 Enji Cooper <ngie@FreeBSD.org>

MFhead@r321829


# 0e34ba73 31-Jul-2017 Enji Cooper <ngie@FreeBSD.org>

MFhead@r321755


# ca3fec50 30-Jul-2017 Conrad Meyer <cem@FreeBSD.org>

kldstat: Use sizeof in place of named constants for sizing

No functional change.

This is handy for FreeBSD derivatives that want to modify the value of
MAXPATHLEN, but not the kld_file_stat ABI.

S

kldstat: Use sizeof in place of named constants for sizing

No functional change.

This is handy for FreeBSD derivatives that want to modify the value of
MAXPATHLEN, but not the kld_file_stat ABI.

Submitted by: Siddhant Agarwal <sagarwal AT isilon.com>
Sponsored by: Dell EMC Isilon

show more ...


Revision tags: release/11.1.0
# d0147e10 09-Mar-2017 Gleb Smirnoff <glebius@FreeBSD.org>

In linker_load_file() print name of a file that failed to load.

Discussed with: kib


# a0e610c4 16-Oct-2016 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r306906 through r307382.


# d9ce8a41 13-Oct-2016 Conrad Meyer <cem@FreeBSD.org>

kern_linker: Handle module-loading failures in preloaded .ko files

The runtime kernel loader, linker_load_file, unloads kernel files that
failed to load all of their modules. For consistency, treat

kern_linker: Handle module-loading failures in preloaded .ko files

The runtime kernel loader, linker_load_file, unloads kernel files that
failed to load all of their modules. For consistency, treat preloaded
(loader.conf loaded) kernel files in the same way.

Reviewed by: kib
Sponsored by: Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D8200

show more ...


Revision tags: release/11.0.1, release/11.0.0
# 8a3aeac2 09-Jun-2016 Conrad Meyer <cem@FreeBSD.org>

Add DDB command "kldstat"

It prints much the same information as kldstat(8) without any arguments.

Suggested by: jhibbits
Sponsored by: EMC / Isilon Storage Division


# e3043798 30-Apr-2016 Pedro F. Giffuni <pfg@FreeBSD.org>

sys/kern: spelling fixes in comments.

No functional change.


# d9c9c81c 21-Apr-2016 Pedro F. Giffuni <pfg@FreeBSD.org>

sys: use our roundup2/rounddown2() macros when param.h is available.

rounddown2 tends to produce longer lines than the original code
and when the code has a high indentation level it was not really

sys: use our roundup2/rounddown2() macros when param.h is available.

rounddown2 tends to produce longer lines than the original code
and when the code has a high indentation level it was not really
advantageous to do the replacement.

This tries to strike a balance between readability using the macros
and flexibility of having the expressions, so not everything is
converted.

show more ...


# d6084013 05-Apr-2016 Glen Barber <gjb@FreeBSD.org>

MFH

Sponsored by: The FreeBSD Foundation


# 35030a5d 29-Mar-2016 Edward Tomasz Napierala <trasz@FreeBSD.org>

Remove some NULL checks for M_WAITOK allocations.

MFC after: 1 month
Sponsored by: The FreeBSD Foundation


Revision tags: release/10.3.0
# b626f5a7 04-Jan-2016 Glen Barber <gjb@FreeBSD.org>

MFH r289384-r293170

Sponsored by: The FreeBSD Foundation


# 9a7cd2e6 22-Dec-2015 Bjoern A. Zeeb <bz@FreeBSD.org>

MFH @r292599

This includes the pluggable TCP framework and other chnages to the
netstack to track for VNET stability.

Security: The FreeBSD Foundation


# da82615a 11-Dec-2015 Warner Losh <imp@FreeBSD.org>

Create the MDT_PNP_INFO metadata record to communicate PNP info about
modules. External agents may use this data to automatically load those
modules.

Differential Review: https://reviews.freebsd.org

Create the MDT_PNP_INFO metadata record to communicate PNP info about
modules. External agents may use this data to automatically load those
modules.

Differential Review: https://reviews.freebsd.org/D3461

show more ...


# a5d8944a 19-Nov-2015 Navdeep Parhar <np@FreeBSD.org>

Catch up with head (r291075).


# 645743ea 12-Nov-2015 John Baldwin <jhb@FreeBSD.org>

Export various helper variables describing the layout and size of
certain kernel structures for use by debuggers. This mostly aids
in examining cores from a kernel without debug symbols as a debugger

Export various helper variables describing the layout and size of
certain kernel structures for use by debuggers. This mostly aids
in examining cores from a kernel without debug symbols as a debugger
can infer these values if debug symbols are available.

One set of variables describes the layout of 'struct linker_file' to
walk the list of loaded kernel modules.

A second set of variables describes the layout of 'struct proc' and
'struct thread' to walk the list of processes in the kernel and the
threads in each process.

The 'pcb_size' variable is used to index into the stoppcbs[] array.

The 'vm_maxuser_address' is used to distinguish kernel virtual addresses
from user addresses. This doesn't have to be perfect, and
'vm_maxuser_address' is a cheap and simple way to differentiate kernel
pointers from simple values like TIDs and PIDs.

While here, annotate the fields in struct pcb used by kgdb on amd64
and i386 to note that their ABI should be preserved. Annotations for
other platforms will be added in the future.

Reviewed by: kib
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D3773

show more ...


# 11d38a57 28-Oct-2015 Baptiste Daroussin <bapt@FreeBSD.org>

Merge from head

Sponsored by: Gandi.net


# becbad1f 13-Oct-2015 Baptiste Daroussin <bapt@FreeBSD.org>

Merge from head


# 5a2b666c 01-Oct-2015 Baptiste Daroussin <bapt@FreeBSD.org>

Merge from head


# 0f405ee7 28-Sep-2015 Navdeep Parhar <np@FreeBSD.org>

Sync up with head (up to r288341).


12345678910>>...22