Description of problem: Complaints about bogus ioctls in kernel log: ioctl32(gnome-terminal:20631): Unknown cmd fd(22) cmd(0000530b){t:'S';sz:0} arg(01289d1c) on /dev/pts/7 ioctl32(gnome-terminal:20682): Unknown cmd fd(20) cmd(0000530b){t:'S';sz:0} arg(01289d0c) on /dev/pts/7 ioctl32(gnome-terminal:20682): Unknown cmd fd(20) cmd(0000530b){t:'S';sz:0} arg(01289d14) on /dev/pts/7 This seems to be because vte is trying to ioctl(I_FIND), which is not supported in Linux and probably shouldn't even be defined (so maybe this should be a glibc bug).
And if it's not considered a glibc bug, it should probably be considered a kernel bug that it complains about this "unknown" ioctl and doesn't silently return -ENOTTY. We should fix one or the other.
Yeah, not vte.
At least a few years ago streams support could be added just by insmoding an extra kernel module. But as that module likely doesn't work at all on Fedora nor any recent RHEL, guess for Fedora/RHEL glibc we can nuke stropts.h header and #define _XOPEN_STREAMS -1 to tell that XSR POSIX option isn't supported at all.
Removing stropts.h breaks the build of samba4 (somewhere along the line it includes /usr/include/python2.5/pyconfig-32.h from python-devel which has #define HAVE_STROPTS_H 1 ). You might also what to consider removing the man pages that refer to stropts.h, such as /usr/share/man/man3p/fattach.3p.gz and /usr/share/man/man0p/stropts.h.0p.gz .
Then python needs rebuilding, so that pyconfig*.h doesn't contain it. The 3p and 0p man pages should stay, they document a POSIX option, which just isn't implemented in Linux.