Subject: bug#6443: 23.2; Many files take 6-15 seconds to open after upgrade to 23.2 on WinXP

From: Kevin Rodgers <[email-masked]>
Date: Thu, 17 Jun 2010 07:04:10 -0600

Keith M Swartz wrote:

> Upgraded from emacs 22.3 to 23.2.1 on Windows XP SP 3, using pre-built 
> binaries from ftp.gnu.org. I've found that emacs is frequently 
> unresponsive, would hang for several seconds during routine operations, 
> including auto-save, etc. Did some searching, and found that default 
> setting for w32-get-true-file-attributes had changed, so I reverted that 
> back to nil -- this helped.
> 
> Now, at best, opening files takes about 1-2 seconds, which is 
> acceptable. But sometimes, it still takes 6-8 seconds to open files. 
> I've confirmed there is no CPU usage during this time, and Process 
> Monitor does not show enough specific information to determine whether 
> it's an I/O call it's hanging on, or what I/O call that is. Ctrl-G is 
> unresponsive and doesn't act until after control resumes. I can 
> reproduce this even with no startup files, and it happens just as often.
> 
> It APPEARED for a while that turning off font-lock-mode globally helped, 
> but I think that may be a red herring. When turning it off, the first 
> few file opens would usually go quickly, but after that, opening a file 
> from a new location would bring back the 6-8 second hang. Not EVERY file 
> opens this slowly, but enough do that it definitely interrupts the work 
> flow.
> 
> All of my operations are happening locally, and not on a network drive. 
> I have a network drive defined, but even when the drive is not mounted, 
> the hangs still occur.
> 
> I have AV software installed, but can't disable it (due to corporate 
> settings) -- however, I haven't seen this problem manifest in any other 
> program, so I'm hesitant to blame that.
> 
> I am working on testing with another machine to see if I can reproduce, 
> but advice on key differences to look for would be helpful.

Try this on each machine: (elp-instrument-file "/files\\.elc\\'")

Then visit a file, and M-x elp-results.

You'll need the attached helper function.

-- 
Kevin Rodgers
Denver, Colorado, USA