r313494 make perl File::Temp broken
Iblis Lin
iblis at hs.ntnu.edu.tw
Fri Feb 10 13:50:58 UTC 2017
On Fri, Feb 10, 2017 at 02:37:05PM +0100, Mark Martinec wrote:
> 2017-02-10 14:09, Iblis Lin wrote:
> > as not a perl programmer myself. I have no idea what is going on.
> > I found this issue while compiling math/openblas.
> >
> > [iblis at ns]% uname -a
> > FreeBSD ns 12.0-CURRENT FreeBSD 12.0-CURRENT #1 r313500: Fri Feb 10
> > 16:39:21
> > CST 2017 root at ns:/usr/obj/usr/src/sys/GENERIC amd64
> >
> > [iblis at ns]% cat test.pl
> > use File::Temp qw(tempfile);
> > $tmpf = new File::Temp( UNLINK => 1 );
> >
> > [iblis at ns]% perl test.pl
> > Error in tempfile() using template /tmp/XXXXXXXXXX: Could not create
> > temp file
> > /tmp/dI5uhUsijR: Bad file descriptor at test.pl line 2.
>
> [...]
>
> > stat("/tmp/",{ mode=drwxrwxrwt
> > ,inode=24317568,size=1024,blksize=32768}) = 0 (0x0)
> > stat("/tmp/",{ mode=drwxrwxrwt
> > ,inode=24317568,size=1024,blksize=32768}) = 0 (0x0)
> > openat(AT_FDCWD,"/tmp/Nn0Epra5ff",O_RDWR|O_EXLOCK|O_NOFOLLOW|O_CREAT|O_EXCL,0600)
> > ERR#9 'Bad file descriptor'
>
>
> Perhaps your /tmp is a logical link, and O_NOFOLLOW does not allow that.
>
> Mark
hmm... no, it's no a logical link.
I just reverted the file changed in r313494 (sys/kern/vfs_vnops.c), and
perl is happy again.
--
Iblis Lin
林峻頤
More information about the freebsd-current
mailing list