[...] > What happened in our specific case was that the last > valid character in the > Rock Ridge file name was exactly the last byte in a > physical page. As the > strncat() implementation in the Solaris kernel > ignores POSIX rules and > overshoots by one with accessing the source memory, > we ended up in kernel > panic from accessing a non-existent page....... > fortunately we had a kernel > crash dump. > > Such problems can only be detected and fixed > correctly if the person who works > on the problem knows how to debug kernel crash dumps > and at the same time > correctly understands the low level structures of the > filesystem. These people > are rare and BTW: the initial analysis from the Sun > people who first debugged > the crash dump was wrong as they missed the needed > knowledge on the filesystem > structure. > > As you see, it is unpredicatble what an incorrect > implementation may finally > cause as result. > > Jörg
Attached is the test program I used; if you can think of some way to detect accesses of bytes beyond the permitted ones _within_ the last word, feel free to change it. -- This message posted from opensolaris.org
test.c
Description: Binary data
_______________________________________________ opensolaris-code mailing list opensolaris-code@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/opensolaris-code