Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com X-Injected-Via-Gmane: http://gmane.org/ To: cygwin AT cygwin DOT com From: Rolf Campbell Subject: Re: (1.3.22) mount: strange 15 second delay Date: Thu, 17 Apr 2003 23:02:28 -0400 Lines: 48 Message-ID: References: <20030418001208 DOT GC18611 AT redhat DOT com> Reply-To: IDontLikePersonalReplies AT hotmail DOT com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Complaints-To: usenet AT main DOT gmane DOT org User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.3) Gecko/20030312 X-Accept-Language: en-us, en In-Reply-To: <20030418001208.GC18611@redhat.com> Christopher Faylor wrote: > On Thu, Apr 17, 2003 at 07:30:00PM -0400, Rolf Campbell wrote: > >>I straced it (and the problem went away) so, I straced 'bash -c mount' >>and the problem came back. The relavent portion of the strace is: >> >> 118 4305 [main] mount 2388 normalize_posix_path: src /dev/pipew >> 87 4392 [main] mount 2388 normalize_posix_path: /dev/pipew = >>normalize_posix_path (/dev/pipew) >> 113 4505 [main] mount 2388 mount_info::conv_to_win32_path: >>conv_to_win32_path (/dev/pipew) >> 113 4618 [main] mount 2388 mount_info::conv_to_win32_path: >>src_path /dev/pipew, dst \dev\pipew, flags 0x2, rc 0 >> 90 4708 [main] mount 2388 fhandler_base::fstat: here >> 100 4808 [main] mount 2388 fstat64: 0 = fstat (1, 0x22E8E0) >>11282054 11286862 [main] mount 2388 writev: writev (1, 0x22FDE0, 1) >> 257 11287119 [main] mount 2388 fhandler_base::write: binary write >> 125 11287244 [main] mount 2388 fhandler_base::write: 399 = write >>(0xA0403D8, 399) >> 90 11287334 [main] mount 2388 writev: 399 = write (1, 0x22FDE0, 1), >>errno 0 >> 91 11287425 [main] mount 2388 do_exit: do_exit (0) >> >>The 'writev' takes 11.2 seconds to complete. Could somebody give me a >>hint what is going on here? > The timestamp isn't time to complete. It's time since last timestamp. > So something between fstat and writev took 11282054 microseconds. Ok, I recompiled the mount.exe program with -ggdb. The delay was in on line 382. The last call to getmntent (the one that returns NULL) is the one that takes > 10 seconds. Was hoping that this would spark a thought in someone. I'll start trying to get a debug cygwin load building to test further. 374:static void 375:show_mounts (void) 376:{ 377: FILE *m = setmntent ("/-not-used-", "r"); 378: struct mntent *p; 379: const char *format = "%s on %s type %s (%s)\n"; 380: 381: // printf (format, "Device", "Directory", "Type", "Flags"); 382: while ((p = getmntent (m)) != NULL) 383: printf (format, p->mnt_fsname, p->mnt_dir, p->mnt_type, p->mnt_opts); 384: endmntent (m); 385:} -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/