Josef Karthauser wrote:
> The slowdown during start up appears to be in biowr; this is probably
> because of IDE write caching being switched off.  More seriously
> the vmware hangs during various phases of it's boot process.

Write caching is incompaible with soft updates.
The drive must NEVER report that something is on disk when it really is not!

> i.e:
>   714 root     -14   0   123M 79192K inode    0:45 25.29% 25.29% vmware
> When this happens the whole machine freezes also.  Processes run, but
> new processes don't get forked.  The whole machine appears to be I/O
> bound.   (What's the 'inode' state?)
this sounds like a differnt starvation problem.
when it's happenning, what does 'iostat 1' show?
(how many transactions per second?)

I believe that vmware mmaps a region of memory and then somehow syncs 
it to disk. (It is certainly doing something like it here).

> The problem is definitely solved by enabling ATA_ENABLE_WC in the kernel
> config.  What's unclear to me is why the hang in 'inode' with it
> switched off.  I understand that biowr's would take longer, which is
> vmware does as it brings up the virtual machine, but why the hanging
> and freezing in 'inode'?

maybe syncing mmapped regions locks out other types of activity?

> +#else
> +    if (ata_command(adp->controller, adp->unit, ATA_C_SETFEATURES,
> +                   0, 0, 0, 0, ATA_C_F_DIS_WCACHE, ATA_WAIT_INTR))
> +       printf("ad%d: disabling write cache failed\n", adp->lun);
> +#endif

we used to do this on the interjet because we ran soft updates.

      __--_|\  Julian Elischer
     /       \ [EMAIL PROTECTED]
    (   OZ    ) World tour 2000-2001
---> X_.---._/  

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to