Date: Thu, 10 Apr 2014 21:39:53 GMT From: Garrett Cooper <yaneurabeya@gmail.com> To: freebsd-gnats-submit@FreeBSD.org Subject: kern/188443: [smbfs] Segfault with tail(1) when mmap(2) called Message-ID: <201404102139.s3ALdrYf024973@cgiserv.freebsd.org> Resent-Message-ID: <201404102140.s3ALe0ou039375@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 188443 >Category: kern >Synopsis: [smbfs] Segfault with tail(1) when mmap(2) called >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Apr 10 21:40:00 UTC 2014 >Closed-Date: >Last-Modified: >Originator: Garrett Cooper >Release: 11.0-CURRENT >Organization: n/a >Environment: FreeBSD fbsd-vm.zonarsystems.net 11.0-CURRENT FreeBSD 11.0-CURRENT #2 5dc0f18(atf): Tue Apr 8 18:39:49 PDT 2014 root@fbsd-vm.zonarsystems.net:/usr/obj/usr/src/sys/GENERIC i386 >Description: When I try to tail a file it fails with a segfault when run against an smbfs share. It doesn't do that when I run it against UFS. # ls -l /mnt/git/pjdfstest/typescript -rwxr-xr-x 1 root wheel 103464 Apr 10 12:23 /mnt/git/pjdfstest/typescript # truss tail -n 10 /mnt/git/pjdfstest/typescript mmap(0x0,32768,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 671498240 (0x28064000) issetugid(0x28063500,0xbfbfefc2,0x20,0x0,0x0,0x0) = 0 (0x0) lstat("/etc",{ mode=drwxr-xr-x ,inode=240768,size=2560,blksize=32768 }) = 0 (0x0) lstat("/etc/libmap.conf",{ mode=-rw-r--r-- ,inode=241195,size=47,blksize=32768 }) = 0 (0x0) open("/etc/libmap.conf",O_CLOEXEC,027757761354) = 3 (0x3) fstat(3,{ mode=-rw-r--r-- ,inode=241195,size=47,blksize=32768 }) = 0 (0x0) mmap(0x0,47,PROT_READ,MAP_PRIVATE,3,0x0) = 671531008 (0x2806c000) close(3) = 0 (0x0) lstat("/usr",{ mode=drwxr-xr-x ,inode=1845888,size=512,blksize=32768 }) = 0 (0x0) lstat("/usr/local",{ mode=drwxr-xr-x ,inode=1845909,size=512,blksize=32768 }) = 0 (0x0) lstat("/usr/local/etc",{ mode=drwxr-xr-x ,inode=1935380,size=512,blksize=32768 }) = 0 (0x0) lstat("/usr/local/etc/libmap.d",0xbfbfc9e0) ERR#2 'No such file or directory' munmap(0x2806c000,47) = 0 (0x0) open("/var/run/ld-elf.so.hints",O_CLOEXEC,00) = 3 (0x3) read(3,"Ehnt\^A\0\0\0\M^@\0\0\0-\0\0\0\0"...,128) = 128 (0x80) lseek(3,0x80,SEEK_SET) = 128 (0x80) read(3,"/lib:/usr/lib:/usr/lib/compat:/u"...,45) = 45 (0x2d) close(3) = 0 (0x0) access("/lib/libc.so.7",0) = 0 (0x0) open("/lib/libc.so.7",O_CLOEXEC,00) = 3 (0x3) fstat(3,{ mode=-r--r--r-- ,inode=81600,size=1266916,blksize=32768 }) = 0 (0x0) mmap(0x0,4096,PROT_READ,MAP_PRIVATE|MAP_PREFAULT_READ,3,0x0) = 671531008 (0x2806c000) mmap(0x0,1347584,PROT_NONE,MAP_PRIVATE|MAP_ANON|MAP_NOCORE,-1,0x0) = 671535104 (0x2806d000) mmap(0x2806d000,1241088,PROT_READ|PROT_EXEC,MAP_PRIVATE|MAP_FIXED|MAP_NOCORE|MAP_PREFAULT_READ,3,0x0) = 671535104 (0x2806d000) mmap(0x2819c000,24576,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_FIXED|MAP_PREFAULT_READ,3,0x12f000) = 672776192 (0x2819c000) mmap(0x281a2000,81920,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_FIXED|MAP_ANON,-1,0x0) = 672800768 (0x281a2000) munmap(0x2806c000,4096) = 0 (0x0) close(3) = 0 (0x0) munmap(0x2806b000,4096) = 0 (0x0) mmap(0x0,69632,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 672882688 (0x281b6000) sysarch(0xa,0xbfbfe334,0x28067500,0x280632b4,0xbfbfe358,0x2804d7f3) = 0 (0x0) sigprocmask(SIG_BLOCK,SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2,0x0) = 0 (0x0) sigprocmask(SIG_SETMASK,0x0,0x0) = 0 (0x0) readlink("/etc/malloc.conf",0xbfbfdacf,1024) ERR#2 'No such file or directory' issetugid(0x0,0xbfbfdacf,0x400,0x0,0x0,0x6d62696c) = 0 (0x0) mmap(0x0,4194304,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 672952320 (0x281c7000) munmap(0x281c7000,4194304) = 0 (0x0) mmap(0x0,8384512,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 672952320 (0x281c7000) munmap(0x281c7000,2330624) = 0 (0x0) munmap(0x28800000,1859584) = 0 (0x0) sigprocmask(SIG_BLOCK,SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2,0x0) = 0 (0x0) sigprocmask(SIG_SETMASK,0x0,0x0) = 0 (0x0) sigprocmask(SIG_BLOCK,SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2,0x0) = 0 (0x0) sigprocmask(SIG_SETMASK,0x0,0x0) = 0 (0x0) open("/mnt/git/pjdfstest/typescript",O_RDONLY,0666) = 3 (0x3) fstat(3,{ mode=-rwxr-xr-x ,inode=2105247163,size=103464,blksize=4356 }) = 0 (0x0) mmap(0x0,103464,PROT_READ,MAP_SHARED,3,0x0) = 672952320 (0x281c7000) SIGNAL 11 (SIGSEGV) process exit, rval = 0 # cp /mnt/git/pjdfstest/typescript /tmp/ # tail -10 /tmp/typescript ------------------- /mnt/git/pjdfstest/tests/open/19.t (Wstat: 9984 Tests: 1 Failed: 0) Non-zero exit status: 39 Parse errors: Bad plan. You planned 3 tests but ran 1. Files=220, Tests=12214, 1008 wallclock secs ( 4.00 usr 2.86 sys + 30.90 cusr 253.62 csys = 291.38 CPU) Result: FAIL [root@fbsd-vm /tmp/foobar]# vim ^C [root@fbsd-vm /tmp/foobar]# exit Script done on Thu Apr 10 13:58:45 2014 >How-To-Repeat: cd /path/to/smbfs/share fetch -o typescript http://pastebin.com/download.php?i=Sr4YAmss tail typescript >Fix: >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201404102139.s3ALdrYf024973>