Date: Sun, 21 Jun 2009 19:02:32 +0000 (UTC) From: Dmitry Chagin <dchagin@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/compat/linux linux_file.c linux_stats.c Message-ID: <200906211902.n5LJ2j2j048462@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
dchagin 2009-06-21 19:02:32 UTC FreeBSD src repository Modified files: (Branch: RELENG_6) sys/compat/linux linux_file.c linux_stats.c Log: SVN rev 194599 on 2009-06-21 19:02:32Z by dchagin MFC r164890 (by jkim): Fixes for 'blocking in fifoor state' problem of LTP tests. linux_*stat*() functions were opening files with O_RDONLY to get major/minor pair for char/block special files. Unfortunately, when these functions are used against fifo, it is blocked forever because there is no writer. Instead, we only open char/block special files for major/minor conversion. We have to get rid of kern_open() entirely from translate_path_major_minor() but today is not the day. While I am here, add checks for errors before calling translate_path_major_minor(). MFC r179651: d_ino member of linux_dirent structure should be unsigned long. MFC r182892: Getdents requires padding with 2 bytes instead of 1 byte as with getdents64. The last byte is used for storing the d_type, add this to plain getdents case where it was missing before. Also change the code to use strlcpy instead of plain strcpy. MFC r188572: Fix an edge-case of the linux readdir: We need the size of a linux dirent structure, not the size of a pointer to it. PR: kern/113939 Approved by: kib (mentor) Revision Changes Path 1.91.2.7 +56 -35 src/sys/compat/linux/linux_file.c 1.72.2.9 +22 -26 src/sys/compat/linux/linux_stats.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200906211902.n5LJ2j2j048462>