How do I report a bug (or at least ask for help) in a newer kernel?
(The gory details are below, if you are interested.) I sent some
email to a developer whose name I found in the suspect source, but I
did not get any response. Any suggestions?
TIA,
Bill
****************************************************************
Date: Fri, 25 Jan 2002 14:40:01 -0500 (EST)
From: Bill Mills-Curran <Mills-Curran_Bill(a)emc.com>
To: claus(a)momo.math.rwth-aachen.de
Subject: nfs readdir bug?
Claus,
I am reporting a bug that I suspect is in nfs readdir. I am reporting
it to you, because I found your email address in the source. If this
is wrong, please tell me.
Symptom: Several programs (details below) do not read the contents of
an nfs-mounted directory. There is no indicated failure -- there just
is no data. The nfs server is DG/UX. The nfs client is linux, kernel
version 2.4.16. The problem does not show up with the 2.4.2 kernel
(RedHat 7.1 dist.) or on nfs systems from a SUN server.
Note: We are using reiserfs on an array which is locally mounted to
the linux host. The hardware is: DG (Data General) Aviion 8900 4
cpu, 500 MHz.
strace note: I ran strace on my program. It reported that getdents64
function was finding the right number of directory entries.
****************
These operations/programs fail to read a directory. In all cases, the
OS is linux 2.4.16 and the filesystem is served by DG/UX. All
directories (that I tested) on the filesystem have the problem.
tcsh file completion (using the tab key)
readdir in Perl
readdir in my own test program (included below)
****************
These operations work with the 2.4.16 kernel.
All operations on other filesystems, nfs (SUN server) and local
The "ls" command works everywhere
Thanks for your time.
Bill Mills-Curran
--
Bill Mills-Curran Mills-Curran_Bill(a)emc.com
EMC Corporation Tel: 508 382-7642
Coslin Drive, MS C33 Fax: 508 382-7913
Southboro, MA 01772
****************************************************************
Here's the source for my test program:
#include <stdio.h>
#include <sys/types.h>
#include <dirent.h>
int main(int argc, char *argv[]) {
DIR *dir;
struct dirent *dirent;
printf("Reading %s\n", argv[1]);
dir = opendir(argv[1]);
while((dirent = readdir(dir))) {
printf("%s\n", dirent->d_name);
}
return (0);
}