From: Subrata <sub...@us...> - 2008-03-28 08:28:54
|
Update of /cvsroot/ltp/ltp/testcases/kernel/syscalls/inotify In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22287/ltp/testcases/kernel/syscalls/inotify Modified Files: README inotify02.c Log Message: The 9th testcase of inotify02 failed due to event coalescence. We fix this by moving the IN_DELETE test in between of the 2 IN_MOVE_SELF events. Also add the test for event coalescence. Signed-off-by: Li Zefan <li...@cn...> Index: README =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/inotify/README,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** README 25 May 2007 05:21:14 -0000 1.1 --- README 28 Mar 2008 08:28:50 -0000 1.2 *************** *** 31,36 **** rename file IN_MOVED_FROM IN_MOVED_TO - unlink file IN_DELETE rename yourself IN_MOVE_SELF rename back IN_MOVE_SELF ! check that all events have been received --- 31,38 ---- rename file IN_MOVED_FROM IN_MOVED_TO rename yourself IN_MOVE_SELF + unlink file IN_DELETE + rename yourself again rename back IN_MOVE_SELF ! check that all events have been received and the last two successive ! IN_MOVE_SELF events will be coalesced into a single one. Index: inotify02.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/inotify/inotify02.c,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** inotify02.c 26 Mar 2008 06:11:28 -0000 1.5 --- inotify02.c 28 Mar 2008 08:28:50 -0000 1.6 *************** *** 38,41 **** --- 38,44 ---- * not support it. Ricardo Salveti de Araujo <rsa...@li...> * + * 03/27/2008 - Fix the test failure due to event coalescence. Also add + * test for this event coalescence. Li Zefan <li...@cn...> + * * ***************************************************************************/ *************** *** 71,75 **** #define BUF_SIZE 256 ! char fname1[BUF_SIZE], fname2[BUF_SIZE]; char buf[BUF_SIZE]; int fd, fd_notify; --- 74,78 ---- #define BUF_SIZE 256 ! char fname1[BUF_SIZE], fname2[BUF_SIZE], fname3[BUF_SIZE]; char buf[BUF_SIZE]; int fd, fd_notify; *************** *** 174,190 **** Tst_count++; - - - if (unlink(FILE_NAME2) == -1){ - tst_brkm(TBROK, cleanup, - "unlink(%s) Failed, errno=%d : %s", - FILE_NAME2, - errno, strerror(errno)); - } - event_set[Tst_count].mask = IN_DELETE; - strcpy(event_set[Tst_count].name, FILE_NAME2); - Tst_count++; - - if (getcwd(fname1, BUF_SIZE) == NULL){ tst_brkm(TBROK, cleanup, --- 177,180 ---- *************** *** 194,198 **** } ! snprintf(fname2, BUF_SIZE, "%s.rename", fname1); if (rename(fname1, fname2) == -1){ tst_brkm(TBROK, cleanup, --- 184,188 ---- } ! snprintf(fname2, BUF_SIZE, "%s.rename1", fname1); if (rename(fname1, fname2) == -1){ tst_brkm(TBROK, cleanup, *************** *** 205,213 **** Tst_count++; ! if (rename(fname2, fname1) == -1){ tst_brkm(TBROK, cleanup, "rename(%s, %s) Failed, errno=%d : %s", ! fname2, fname1, errno, strerror(errno)); } --- 195,224 ---- Tst_count++; + if (unlink(FILE_NAME2) == -1){ + tst_brkm(TBROK, cleanup, + "unlink(%s) Failed, errno=%d : %s", + FILE_NAME2, + errno, strerror(errno)); + } + event_set[Tst_count].mask = IN_DELETE; + strcpy(event_set[Tst_count].name, FILE_NAME2); + Tst_count++; ! /* ! * test that duplicate events will be coalesced into ! * a single event ! */ ! snprintf(fname3, BUF_SIZE, "%s.rename2", fname1); ! if (rename(fname2, fname3) == -1){ ! tst_brkm(TBROK, cleanup, ! "rename(%s, %s) Failed, errno=%d : %s", ! fname2, fname3, ! errno, strerror(errno)); ! } ! ! if (rename(fname3, fname1) == -1){ tst_brkm(TBROK, cleanup, "rename(%s, %s) Failed, errno=%d : %s", ! fname3, fname1, errno, strerror(errno)); } |