[Bug 226974] kernel DSI read trap at boot

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Wed Mar 28 02:29:50 UTC 2018


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=226974

Mark Millard <marklmi26-fbsd at yahoo.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |marklmi26-fbsd at yahoo.com

--- Comment #4 from Mark Millard <marklmi26-fbsd at yahoo.com> ---
What is the relationship of mp_ncpus vs. mp_maxid
as used in the code from vfs_bio.c :

static void
bd_init(struct bufdomain *bd)
{
. . .
        bd->bd_cleanq = &bd->bd_subq[mp_ncpus];
        bq_init(bd->bd_cleanq, QUEUE_CLEAN, -1, "bufq clean lock");
        for (i = 0; i <= mp_maxid; i++)
                bq_init(&bd->bd_subq[i], QUEUE_CLEAN, i,
                    "bufq clean subqueue lock");
. . .

Is mp_maxid<mp_ncpus always so that the loop never
replaces bd->bd_subq[mp_ncpus]? Note that the
loop goes over 0..mp_maxid (inclusive of both ends),
which has mp_maxid+1 values in the range.

If the numbering can be sparse, might mp_maxid+1
be a better pick than mp_ncpus (assuming mp_ncpus
does not count/include "missing" id's)?

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-ppc mailing list