Mailing-List: contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm Sender: cygwin-developers-owner AT sourceware DOT cygnus DOT com Delivered-To: mailing list cygwin-developers AT sourceware DOT cygnus DOT com Message-Id: <199904122339.SAA16654@modi.xraylith.wisc.edu> X-Authentication-Warning: modi.xraylith.wisc.edu: localhost.xraylith.wisc.edu [127.0.0.1] didn't use HELO protocol To: cygwin-developers AT sourceware DOT cygnus DOT com Subject: struct stat st_dev question Date: Mon, 12 Apr 1999 18:39:13 -0500 From: Mumit Khan <khan AT xraylith DOT wisc DOT EDU> I'm trying to debug a problem with egcs and the causes seems to be the fact that the st_dev member of struct stat is always set to 4096. This is with Cygwin b20.1 DLL (and needs to be since egcs-1.2 needs to work with b20.1 as well as any future release). Can anyone confirm if this is indeed intended? Here's a simple test case: === cut here #include <sys/types.h> #include <sys/stat.h> #include <stdio.h> int main (int argc, char *argv[]) { const char *path = (argc >= 2) ? argv[1] : "/"; struct stat s; int i = stat (path, &s); printf ("stat (%s) = %d\n", path, i); printf ("inode = %d\n", s.st_ino); printf ("%s.st_dev = %d\n", path, s.st_dev); return 0; } === to here $ ./stdev-test-cyg / stat (/) = 0 inode = 22896814 /.st_dev = 4096 $ ./stdev-test-cyg //d stat (//d) = 0 inode = 22642860 //d.st_dev = 4096 $ ./stdev-test-cyg //u stat (//u) = 0 inode = 13213796 //u.st_dev = 4096 Microsoft's runtime does report different device id's. Regards, Mumit