syzbot


assert "tname->un_flags & UNVEIL_USERSET" failed: file "/syzkaller/panic: kernel diagnostic assertion "!_kernel_lock_hel

Status: closed as dup on 2019/03/27 11:07
Reported-by: syzbot+7d96e28cdca06a5ee62f@syzkaller.appspotmail.com
First crash: 1284d, last: 1284d
Duplicate of (1):
Title Repro Cause bisect Fix bisect Count Last Reported
assert "tname->un_flags & UNVEIL_USERSET" failed in kern_unveil.c C 1447 1284d 1286d

Sample crash report:
login: panic: kernel diagnostic assertion "tname->un_flags & UNVEIL_USERSET" failed: file "/syzkaller/panic: kernel diagnostic assertion "!_kernel_lock_held()" failed: file "/syzkaller/managers/setuid/kernel/sys/kern/kern_fork.c", line 689
Stopped at      db_enter+0x18:  addq    $0x8,%rsp
    TID    PID    UID     PRFLAGS     PFLAGS  CPU  COMMAND
  51415  81580  32767        0x10  0x4000000    0  syz-executor.0
*225637  81580  32767        0x10  0x4000000    1  syz-executor.0
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:398
panic() at panic+0x174 sys/kern/subr_prf.c:208
__assert(ffffffff81f7c61c,ffffffff81f53f4e,2b1,ffffffff81f4e3ff) at __assert+0x2e sys/kern/subr_prf.c:155
proc_trampoline_mp() at proc_trampoline_mp+0x13b
end trace frame: 0x0, count: 11
https://www.openbsd.org/ddb.html describes the minimum info required in bug
reports.  Insufficient info makes it difficult to find and fix bugs.
ddb{1}> 
ddb{1}> set $lines = 0
ddb{1}> set $maxwidth = 0
ddb{1}> show panic
kernel diagnostic assertion "tname->un_flags & UNVEIL_USERSET" failed: file "/syzkaller/managers/setuid/kernel/sys/kern/kern_unveil.c", line 879
ddb{1}> trace
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:398
panic() at panic+0x174 sys/kern/subr_prf.c:208
__assert(ffffffff81f7c61c,ffffffff81f53f4e,2b1,ffffffff81f4e3ff) at __assert+0x2e sys/kern/subr_prf.c:155
proc_trampoline_mp() at proc_trampoline_mp+0x13b
end trace frame: 0x0, count: -4
ddb{1}> show registers
rdi                                0
rsi                              0x1
rbp               0xffff800020c59480
rbx               0xffff800020c59530
rdx               0xffffffff81f1e360    cmd0646_9_tim_udma+0x129e0
rcx                                0
rax                                0
r8                0xffffffff813481d3    kprintf+0x183
r9                               0x1
r10                             0x25
r11               0xa803675a0a6c27a7
r12                     0x3000000008
r13               0xffff800020c59490
r14                            0x104
r15                              0x1
rip               0xffffffff81266358    db_enter+0x18
cs                               0x8
rflags                         0x246
rsp               0xffff800020c59470
ss                                 0
db_enter+0x18:  addq    $0x8,%rsp
ddb{1}> show proc
PROC (syz-executor.0) pid=225637 stat=onproc
    flags process=10<SUGID> proc=4000000<THREAD>
    pri=86, usrpri=86, nice=20
    forw=0xffffffffffffffff, list=0xffff800020b74bd0,0xffff800020b74028
    process=0xffff800020b3a010 user=0xffff800020c54000, vmspace=0xfffffd807effe438
    estcpu=36, cpticks=1, pctcpu=0.0
    user=0, sys=1, intr=0
ddb{1}> ps
   PID     TID   PPID    UID  S       FLAGS  WAIT          COMMAND
  9857  443947    287  32767  2        0x10                syz-executor.1
  9857   81722    287  32767  3   0x4000090  fsleep        syz-executor.1
 81580   83280   8208  32767  2        0x10                syz-executor.0
 81580   51415   8208  32767  7   0x4000010                syz-executor.0
*81580  225637   8208  32767  7   0x4000010                syz-executor.0
 81580  444931   8208  32767  2   0x4000010                syz-executor.0
   287  426755  93157  32767  3        0x90  nanosleep     syz-executor.1
 93157  461187  49423      0  3        0x82  wait          syz-executor.1
  8208  336702  10003  32767  3        0x90  nanosleep     syz-executor.0
 10003  178996  49423      0  3        0x82  wait          syz-executor.0
 49423  493150   1938      0  3        0x82  thrsleep      syz-fuzzer
 49423  122182   1938      0  3   0x4000082  thrsleep      syz-fuzzer
 49423  497942   1938      0  3   0x4000082  thrsleep      syz-fuzzer
 49423  177763   1938      0  3   0x4000082  thrsleep      syz-fuzzer
 49423  121196   1938      0  3   0x4000082  thrsleep      syz-fuzzer
 49423  215587   1938      0  3   0x4000082  thrsleep      syz-fuzzer
 49423  102307   1938      0  3   0x4000082  thrsleep      syz-fuzzer
 49423  448856   1938      0  3   0x4000082  thrsleep      syz-fuzzer
 49423  139452   1938      0  3   0x4000082  kqread        syz-fuzzer
 49423  388045   1938      0  3   0x4000082  thrsleep      syz-fuzzer
  1938  246278  33339      0  3    0x10008a  pause         ksh
 33339  323488  32028      0  3        0x92  select        sshd
 74952   65939      1      0  3    0x100083  ttyin         getty
 32028  365463      1      0  3        0x80  select        sshd
 19156  405099  83518     73  3    0x100090  kqread        syslogd
 83518  223590      1      0  3    0x100082  netio         syslogd
 40024   69194      1     77  3    0x100090  poll          dhclient
 97819   19964      1      0  3        0x80  poll          dhclient
 84727   54173      0      0  2     0x14200                zerothread
 52702   33287      0      0  3     0x14200  aiodoned      aiodoned
 64088  452595      0      0  3     0x14200  syncer        update
 74573  207889      0      0  3     0x14200  cleaner       cleaner
 83429  254843      0      0  3     0x14200  reaper        reaper
 69127  145041      0      0  3     0x14200  pgdaemon      pagedaemon
 37455  195082      0      0  3     0x14200  bored         crynlk
 48344   64325      0      0  3     0x14200  bored         crypto
 15824  401164      0      0  3  0x40014200  acpi0         acpi0
 62241  334340      0      0  3  0x40014200                idle1
 54295  219682      0      0  3     0x14200  bored         softnet
 47162  361350      0      0  3     0x14200  bored         systqmp
 37853  190304      0      0  3     0x14200  bored         systq
 51386   37953      0      0  3  0x40014200  bored         softclock
 78114    9349      0      0  3  0x40014200                idle0
 25344   38796      0      0  3     0x14200  bored         smr
     1  516436      0      0  3        0x82  wait          init
     0       0     -1      0  3     0x10200  scheduler     swapper
ddb{1}> show all locks
Process 81580 (syz-executor.0) thread 0xffff800020b74978 (51415)
exclusive rrwlock inode r = 0 (0xfffffd807c8281b0) locked @ /syzkaller/managers/setuid/kernel/sys/ufs/ufs/ufs_vnops.c:1547
#0  witness_lock+0x594 sys/kern/subr_witness.c:1201
#1  _rw_enter+0x45d sys/kern/kern_rwlock.c:280
#2  _rrw_enter+0x60 sys/kern/kern_rwlock.c:410
#3  VOP_LOCK+0x57 sys/kern/vfs_vops.c:602
#4  vn_lock+0x6e sys/kern/vfs_vnops.c:549
#5  vget+0x1c3 sys/kern/vfs_subr.c:672
#6  cache_lookup+0x300 sys/kern/vfs_cache.c:224
#7  ufs_lookup+0x1d7 sys/ufs/ufs/ufs_lookup.c:162
#8  VOP_LOOKUP+0x67 sys/kern/vfs_vops.c:90
#9  vfs_lookup+0x556 sys/kern/vfs_lookup.c:523
#10 namei+0x4b2 sys/kern/vfs_lookup.c:224
#11 vn_open+0x157 sys/kern/vfs_vnops.c:103
#12 doopenat+0x2ca sys/kern/vfs_syscalls.c:1045
#13 syscall+0x5b8 mi_syscall sys/sys/syscall_mi.h:99 [inline]
#13 syscall+0x5b8 sys/arch/amd64/amd64/trap.c:574
#14 Xsyscall+0x128
exclusive rrwlock inode r = 0 (0xfffffd807c828f80) locked @ /syzkaller/managers/setuid/kernel/sys/ufs/ufs/ufs_vnops.c:1547
#0  witness_lock+0x594 sys/kern/subr_witness.c:1201
#1  _rw_enter+0x45d sys/kern/kern_rwlock.c:280
#2  _rrw_enter+0x60 sys/kern/kern_rwlock.c:410
#3  VOP_LOCK+0x57 sys/kern/vfs_vops.c:602
#4  vn_lock+0x6e sys/kern/vfs_vnops.c:549
#5  vfs_lookup+0xf5 sys/kern/vfs_lookup.c:387
#6  namei+0x4b2 sys/kern/vfs_lookup.c:224
#7  vn_open+0x157 sys/kern/vfs_vnops.c:103
#8  doopenat+0x2ca sys/kern/vfs_syscalls.c:1045
#9  syscall+0x5b8 mi_syscall sys/sys/syscall_mi.h:99 [inline]
#9  syscall+0x5b8 sys/arch/amd64/amd64/trap.c:574
#10 Xsyscall+0x128
exclusive kernel_lock &kernel_lock r = 0 (0xffffffff82397440) locked @ /syzkaller/managers/setuid/kernel/sys/sys/syscall_mi.h:90
#0  witness_lock+0x594 sys/kern/subr_witness.c:1201
#1  syscall+0x48b mi_syscall sys/sys/syscall_mi.h:91 [inline]
#1  syscall+0x48b sys/arch/amd64/amd64/trap.c:574
#2  Xsyscall+0x128
ddb{1}> show malloc
           Type InUse  MemUse  HighUse   Limit  Requests Type Lim Kern Lim
         devbuf  9457   6320K    6320K  78643K     10544        0        0
            pcb    25      9K       9K  78643K        61        0        0
         rtable    97      3K       3K  78643K       169        0        0
         ifaddr    34      9K       9K  78643K        34        0        0
       counters    39     33K      33K  78643K        39        0        0
       ioctlops     0      0K       2K  78643K        15        0        0
            iov     0      0K       8K  78643K         1        0        0
          mount     1      1K       1K  78643K         1        0        0
         vnodes  1200     75K      75K  78643K      1213        0        0
      UFS quota     1     32K      32K  78643K         1        0        0
      UFS mount     5     36K      36K  78643K         5        0        0
            shm     2      1K       1K  78643K         2        0        0
         VM map     2      1K       1K  78643K         2        0        0
            sem     4      0K       0K  78643K         4        0        0
        dirhash    12      2K       2K  78643K        12        0        0
           ACPI  1808    196K     290K  78643K     12628        0        0
      file desc     8     25K      25K  78643K        48        0        0
           proc    44     50K      58K  78643K       261        0        0
        subproc    68  69634K   69634K  78643K        68        0        0
    NFS srvsock     1      0K       0K  78643K         1        0        0
     NFS daemon     1     16K      16K  78643K         1        0        0
    ip_moptions     0      0K       0K  78643K        10        0        0
       in_multi    33      2K       2K  78643K        37        0        0
    ether_multi     1      0K       0K  78643K         2        0        0
    ISOFS mount     1     32K      32K  78643K         1        0        0
  MSDOSFS mount     1     16K      16K  78643K         1        0        0
           ttys    48    212K     212K  78643K        48        0        0
           exec     0      0K       1K  78643K       165        0        0
        pagedep     1      8K       8K  78643K         1        0        0
       inodedep     1     32K      32K  78643K         1        0        0
         newblk     1      0K       0K  78643K         1        0        0
        VM swap     7     26K      26K  78643K         7        0        0
       UVM amap    79     20K      20K  78643K       875        0        0
       UVM aobj     2      2K       2K  78643K         4        0        0
        memdesc     1      4K       4K  78643K         1        0        0
    crypto data     1      1K       1K  78643K         1        0        0
            NDP     5      0K       0K  78643K         9        0        0
           temp    80   2364K    2428K  78643K      2943        0        0
      SYN cache     2     16K      16K  78643K         2        0        0
ddb{1}> show all pools
Name      Size Requests Fail Releases Pgreq Pgrel Npage Hiwat Minpg Maxpg Idle
arp         64        4    0        0     1     0     1     1     0     8    0
inpcbpl    280       45    0       37     1     0     1     1     0     8    0
plimitpl   152       17    0        8     1     0     1     1     0     8    0
plcache    128       20    0        0     1     0     1     1     0     8    0
rtentry    112       41    0        1     2     0     2     2     0     8    0
syncache   264        4    0        4     1     1     0     1     0     8    0
tcpqe       32       27    0       27     1     0     1     1     0     8    1
tcpcb      544       16    0       12     1     0     1     1     0     8    0
nd6         48        4    0        0     1     0     1     1     0     8    0
art_heap8  4096       1    0        0     1     0     1     1     0     8    0
art_heap4  256      184    0        0    12     0    12    12     0     8    0
art_table   32      185    0        0     2     0     2     2     0     8    0
art_node    16       40    0        6     1     0     1     1     0     8    0
semapl     112        2    0        0     1     0     1     1     0     8    0
shmpl      112        2    0        2     1     0     1     1     0     8    1
dirhash    1024      17    0        0     3     0     3     3     0     8    0
dino1pl    128     1471    0       59    46     0    46    46     0     8    0
ffsino     272     1471    0       59    95     0    95    95     0     8    0
nchpl      144     1732    0      107    61     0    61    61     0     8    0
uvmvnodes   72     1514    0        0    28     0    28    28     0     8    0
vnodes     200     1514    0        0    80     0    80    80     0     8    0
namei      1024    4216    0     4215     2     1     1     1     0     8    0
percpumem   16       30    0        0     1     0     1     1     0     8    0
scxspl     192     4237    0     4237     7     4     3     6     0     8    3
sigapl     432      218    0      202     2     0     2     2     0     8    0
futexpl     56      414    0      413     1     0     1     1     0     8    0
knotepl    112       56    0       37     1     0     1     1     0     8    0
kqueuepl   104       12    0       10     1     0     1     1     0     8    0
pipepl     112      162    0      143     2     1     1     1     0     8    0
fdescpl    488      219    0      202     3     0     3     3     0     8    0
filepl     152     1157    0     1056     6     1     5     5     0     8    1
lockfpl    104       21    0       21     2     1     1     1     0     8    1
lockfspl    32       44    0       44     2     1     1     1     0     8    1
sessionpl  112       17    0        7     1     0     1     1     0     8    0
pgrppl      48       17    0        7     1     0     1     1     0     8    0
ucredpl     96      133    0      124     1     0     1     1     0     8    0
zombiepl   144      202    0      202     2     1     1     1     0     8    1
processpl  840      234    0      202     4     0     4     4     0     8    0
procpl     600      315    0      270     4     0     4     4     0     8    0
sockpl     384       93    0       73     3     0     3     3     0     8    1
mcl64k     65536      1    0        0     1     0     1     1     0     8    0
mcl12k     12288      1    0        0     1     0     1     1     0     8    0
mcl8k      8192       1    0        0     1     0     1     1     0     8    0
mcl4k      4096       5    0        0     1     0     1     1     0     8    0
mcl2k      2048     114    0        0    14     0    14    14     0     8    0
mtagpl      80        1    0        0     1     0     1     1     0     8    0
mbufpl     256      135    0        0     8     0     8     8     0     8    0
bufpl      256     5579    0     1122   279     0   279   279     0     8    0
anonpl      16    28848    0    22195    32     1    31    31     0   125    4
amapchunkpl 152     869    0      782     5     0     5     5     0   158    1
amappl16   192      572    0      234    20     0    20    20     0     8    3
amappl15   184       48    0       44     1     0     1     1     0     8    0
amappl14   176       20    0       19     2     1     1     1     0     8    0
amappl13   168       41    0       35     1     0     1     1     0     8    0
amappl12   160       22    0       19     2     1     1     1     0     8    0
amappl11   152       17    0        6     1     0     1     1     0     8    0
amappl10   144       60    0       57     2     1     1     1     0     8    0
amappl9    136      550    0      543     1     0     1     1     0     8    0
amappl8    128      111    0       97     1     0     1     1     0     8    0
amappl7    120       25    0       23     1     0     1     1     0     8    0
amappl6    112       53    0       46     1     0     1     1     0     8    0
amappl5    104      124    0      113     1     0     1     1     0     8    0
amappl4     96      417    0      388     2     1     1     2     0     8    0
amappl3     88      116    0      111     1     0     1     1     0     8    0
amappl2     80      906    0      844     2     0     2     2     0     8    0
amappl1     72    13304    0    12849    24     9    15    19     0     8    6
amappl      72      516    0      480     1     0     1     1     0    75    0
dma4096    4096       1    0        1     1     1     0     1     0     8    0
dma256     256        6    0        6     1     1     0     1     0     8    0
dma64       64      259    0      259     1     1     0     1     0     8    0
dma32       32        7    0        7     1     1     0     1     0     8    0
dma16       16       17    0       17     1     1     0     1     0     8    0
aobjpl      64        3    0        2     1     0     1     1     0     8    0
uaddrrnd    24      219    0      202     1     0     1     1     0     8    0
uaddrbest   32        2    0        0     1     0     1     1     0     8    0
uaddr       24      219    0      202     1     0     1     1     0     8    0
vmmpekpl   168     5790    0     5769     2     0     2     2     0     8    0
vmmpepl    168    30249    0    28792    82    12    70    72     0   357    6
vmsppl     360      218    0      202     2     0     2     2     0     8    0
pdppl      4096     446    0      404     6     0     6     6     0     8    0
pvpl        32   114581    0   104657   105     4   101   102     0   265   20
pmappl     224      218    0      202     1     0     1     1     0     8    0
extentpl    40       39    0       25     1     0     1     1     0     8    0
phpool     112      426    0        3    13     0    13    13     0     8    0

Crashes (1):
Manager Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Title
ci-openbsd-setuid 2019/03/27 07:55 openbsd ad597a5fc5a3 55684ce1 .config log report
* Struck through repros no longer work on HEAD.