In reply to:

When I make my small program, I get the error: warning: assignment makes pointer from integer without a cast on the line: if ((finfo = malloc(sizeof(struct stat))) == NULL).


That's a danger sign that you're missing a declaration for malloc() and the compiler is assuming a declaration of "int malloc(...)" which is not what you want. Make sure you #include <stdlib.h> in your program. Don't be tempted to hide the warning by casting the result of malloc to, say, void*, as this can mask problems in your code.

(I'd guess that the reason it compiles okay on Red Hat is that another include file, perhaps <string.h> is pulling in <stdlib.h> for you, but the empeg build environment does not. Always include it explicitly.)

As to the modtimes on /proc inodes, I think it's up to each device what it returns. I'd guess that in this case, the empeg_notify device just returns the current time, rather than storing the last-change time somewhere. I think one could make a small kernel change to do what you want... Also, be sure you're not being confused by the time-zone offset, if you're not working in UTC - user commands like ls will show times adjusted by TZ, whereas the timestamp value is in UTC.
_________________________
Toby Speight
030103016 (80GB Mk2a, blue)
030102806 (0GB Mk2a, blue)