[Bug 280037] KTLS with Intel QAT may trigger kernel panics

[email protected]
Newsgroups gmane.os.freebsd.devel.net
Message-ID <[email protected]/bugzilla/>
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=280037

ss3bsd <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Version|14.1-RELEASE                |14.2-RELEASE

--- Comment #14 from ss3bsd <[email protected]> ---
Another (reproducible) panic while high TX load is found.

Something (such as infinite loop) is happening in this path?

***
        /*
         * Caller marked the request to be processed immediately; dispatch it
         * directly to the driver unless the driver is currently blocked, in
         * which case it is queued for deferred dispatch.
         */
        cap = crp->crp_session->cap;
        if (!atomic_load_int(&cap->cc_qblocked)) {
                result = crypto_invoke(cap, crp, hint);
                if (result != ERESTART)
                        return (result);

                /*
                 * The driver ran out of resources, put the request on the
                 * queue.
                 */
        }
**

--

Now on FreeBSD 14.2


(kgdb) backtrace
#0  __curthread () at /usr/src/sys/amd64/include/pcpu_aux.h:57
#1  doadump (textdump=<optimized out>) at /usr/src/sys/kern/kern_shutdown.c:405
#2  0xffffffff809908e7 in kern_reboot (howto=260) at
/usr/src/sys/kern/kern_shutdown.c:523
#3  0xffffffff80990dbe in vpanic (fmt=0xffffffff8100a112 "double fault",
ap=ap@entry=0xfffffe003a415e40) at /usr/src/sys/kern/kern_shutdown.c:967
#4  0xffffffff80990c13 in panic (fmt=<unavailable>) at
/usr/src/sys/kern/kern_shutdown.c:891
#5  0xffffffff80e87f6e in dblfault_handler (frame=<optimized out>) at
/usr/src/sys/amd64/amd64/trap.c:1012
#6  <signal handler called>
#7  0xffffffff80e49460 in bounce_bus_dmamap_load_buffer
(dmat=0xfffff801ceb14700, map=0xffffffff81a27d90 <nobounce_dmamap>,
buf=0xfffff807af688ad8, buflen=5,
    pmap=0xffffffff817514d0 <kernel_pmap_store>, flags=1, segs=0x0,
segp=0xfffffe014e2c90d4) at /usr/src/sys/x86/x86/busdma_bounce.c:741
#8  0xffffffff809d4699 in _bus_dmamap_load_buffer (dmat=0xfffff801ceb14700,
map=0x0, buf=0xfffff807af688ad8, buflen=18446744071589494160, flags=1,
segs=0x0,
    segp=0xfffffe014e2c90d4, pmap=<optimized out>) at
/usr/src/sys/x86/include/bus_dma.h:166
#9  _bus_dmamap_load_mbuf_epg (dmat=dmat@entry=0xfffff801ceb14700,
map=map@entry=0x0, m=0xfffff807af688a00, segs=segs@entry=0x0,
nsegs=nsegs@entry=0xfffffe014e2c90d4,
    flags=1) at /usr/src/sys/kern/subr_bus_dma.c:176
#10 0xffffffff809d4431 in _bus_dmamap_load_single_mbuf
(dmat=0xfffff801ceb14700, map=0x0, m=0xfffff807af688ad8, segs=0x0,
nsegs=0xfffffe014e2c90d4, flags=1)
    at /usr/src/sys/kern/subr_bus_dma.c:220
#11 bus_dmamap_load_crp_buffer (dmat=0xfffff801ceb14700, map=0x0, cb=<optimized
out>, callback=0xffffffff83000840 <qat_ocf_crypto_load_buf_cb>,
    callback_arg=0xfffffe014e2c9138, flags=1) at
/usr/src/sys/kern/subr_bus_dma.c:554
#12 0xffffffff82fff7ad in qat_ocf_process () from /boot/kernel/qat.ko
#13 0xffffffff80c99700 in crypto_dispatch_one (crp=0xfffff807a8af10b8, hint=0)
at /usr/src/sys/opencrypto/crypto.c:1432
#14 crypto_dispatch (crp=0xfffff807a8af10b8) at
/usr/src/sys/opencrypto/crypto.c:1448
#15 0xffffffff80ca1cf7 in ktls_ocf_dispatch_async_cb (crp=0xfffff801ceb14700)
at /usr/src/sys/opencrypto/ktls_ocf.c:246
#16 0xffffffff82fff801 in qat_ocf_process () from /boot/kernel/qat.ko
#17 0xffffffff80c99700 in crypto_dispatch_one (crp=0xfffff807a8af10b8, hint=0)
at /usr/src/sys/opencrypto/crypto.c:1432
#18 crypto_dispatch (crp=0xfffff807a8af10b8) at
/usr/src/sys/opencrypto/crypto.c:1448
#19 0xffffffff80ca1cf7 in ktls_ocf_dispatch_async_cb (crp=0xfffff801ceb14700)
at /usr/src/sys/opencrypto/ktls_ocf.c:246
#20 0xffffffff82fff801 in qat_ocf_process () from /boot/kernel/qat.ko
#21 0xffffffff80c99700 in crypto_dispatch_one (crp=0xfffff807a8af10b8, hint=0)
at /usr/src/sys/opencrypto/crypto.c:1432
#22 crypto_dispatch (crp=0xfffff807a8af10b8) at
/usr/src/sys/opencrypto/crypto.c:1448

: omit :

#245 0xffffffff80c99700 in crypto_dispatch_one (crp=0xfffff807a8af10b8, hint=0)
at /usr/src/sys/opencrypto/crypto.c:1432
#246 crypto_dispatch (crp=0xfffff807a8af10b8) at
/usr/src/sys/opencrypto/crypto.c:1448
#247 0xffffffff80ca1cf7 in ktls_ocf_dispatch_async_cb (crp=0xfffff801ceb14700)
at /usr/src/sys/opencrypto/ktls_ocf.c:246
#248 0xffffffff82fff801 in qat_ocf_process () from /boot/kernel/qat.ko
#249 0xffffffff80c99700 in crypto_dispatch_one
(crp=crp@entry=0xfffff807a8af10b8, hint=0) at
/usr/src/sys/opencrypto/crypto.c:1432
#250 crypto_dispatch (crp=crp@entry=0xfffff807a8af10b8) at
/usr/src/sys/opencrypto/crypto.c:1448
#251 0xffffffff80ca16bd in ktls_ocf_dispatch_async (state=0xfffff801ceaf8420,
crp=0xfffff807a8af10b8) at /usr/src/sys/opencrypto/ktls_ocf.c:268
#252 ktls_ocf_tls13_aead_encrypt (state=0xfffff801ceaf8420,
tls=0xfffff805c1fec108, m=0xfffffe014c5687c0, outiov=0xfffff801ceaf8000,
outiovcnt=0)
    at /usr/src/sys/opencrypto/ktls_ocf.c:856
#253 0xffffffff80a2807e in ktls_encrypt_async (wq=wq@entry=0xfffff804cc22c680,
top=top@entry=0xfffff807af688a00) at /usr/src/sys/kern/uipc_ktls.c:3108
#254 0xffffffff80a27a36 in ktls_work_thread (ctx=ctx@entry=0xfffff804cc22c680)
at /usr/src/sys/kern/uipc_ktls.c:3254
#255 0xffffffff8094a75f in fork_exit (callout=0xffffffff80a26a50
<ktls_work_thread>, arg=0xfffff804cc22c680, frame=0xfffffe014e2ccf40) at
/usr/src/sys/kern/kern_fork.c:1164
#256 <signal handler called>

-- 
You are receiving this mail because:
You are the assignee for the bug.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.