cas

Get your dangerous XP Cache Filter here

Recommended Posts

Allnighte - since your performance was normal before the patch, it makes since it didn't improve anything.

I appreciate the real world performance data, however. Hopefully someone with a demonstrated performance hit will run this with real world tasks (other than ATTO) and report back.

If so, I might just have to reinstall XP again :)

Share this post


Link to post
Share on other sites
Allnighte - since your performance was normal before the patch, it makes since it didn't improve anything.

I appreciate the real world performance data, however.  Hopefully someone with a demonstrated performance hit will run this with real world tasks (other than ATTO) and report back.

If so, I might just have to reinstall XP again :)

I got time today. What exactly do you want me to do. My basic disk writes on atto are now inline with what they were as a dynamic disk and the copies through explorer seem to show the gain dramaticaly.

Outline EXACTLY what you would like to see. The box has one u160 drive and also a ide raid array to copy to and from. I have tons of space and will time whatever you want.

Tex

Share this post


Link to post
Share on other sites

Well, I'll give you a simple one to try: select a rather large directory of (preferably mostly large) files - say a few gigabytes. Copy the whole directory to a different disk and time it via stopwatch. Erase the newly copied files, reboot and do the same thing with/without this new file. See if you see a difference.

Share this post


Link to post
Share on other sites
When mounted on storage systems with a write back cache, journaling and careful write filesystems do not perform as advertised.  By using the FUA bit to selectively disable the wb cache for specific writes, integrity can be maintained, while retaining some of the performance benefits of the cache.  This is why OS designers recommend that ATA disks have their writeback caches disabled.

cas,

Thanks for the explanation, but I'm still not clear, and value any education you can give here. In my mental model, a journaled filesystem can self-recover from any state where the data and metadata are in synch. Let me give examples as to how I see it given the above:

1) Using a write cache, a file is updated. The data and metadata (including journal entries) are cached, but the system fails before they are written to disk. In this case, it would seem that as ALL the changes are lost, the journaled system can simply recover from the last known good state, and lose that update. However, the filesystem itself would be intact and cohesive.

2) Using a data-only write cach, a file is updated. The data is not committed, but the metadata IS. The system fails, leaving an inconsistent state between the metadata (which reflects some level of filechange, such as length and any new extents created by the update), and the file, which still contains only the pre-update data. This inconsistencycan only be addressed by re-setting the metadata to it's pre-crash state, basically reversing the journaled update. Notice that this gets you right back to where you were in 1) above (but 2 requires more work on someone's part).

3) Using no cache, a file is updated. The data and metadata are written immediately, resulting in consistecy between the two. The system fails, and the journaled filesystem recovers to the proper post-update configuration.

Given this, 1) and 3) are workeable solutions, differing only as to the recoverabliliy of the last update - but 2) leads to a system that is essentially unstable. MS does not provide a solution to 2) (but cas does!), but what have I missed here?

Future Shock

Share this post


Link to post
Share on other sites

I just tried to install the XPCacheFilter without success. When I reboot I get a blue screen immediately after the XP logo with the message:

A problem has been detected and windows have bee shut down............................

Technical info

XXX STOP:0X0000007D(0XF8EE..........................

My system:

PIII 700

BX chipset

Adaptec 39160 (native XP driver)

Boot disk Cheetah 15K.3

Newly installed XP, none SP1,FAT32

I also have A IDE disk (IBM GXP34)

Fortunately I just had to boot the Last Known Good configuration to get the system up again.

Is there maybe a conflict with the IDE or FAT32?

EBE

Share this post


Link to post
Share on other sites

Public forums are ideal for vetting the kinds of problems that don’t show up in the lab. That said, I apologize for any inconvenience I might have caused.

I assume that the only messages that appeared when you installed XPCacheFilter were:

Installing cas' XP SCSI Cache Filter

You must reboot your system for the changes to take effect

If you are feeling adventurous, and would like to help out, you might consider installing XPCacheFilter.sys by hand.

First, make sure that WindowsSystem32Drivers contains the file XPCacheFilter.sys. It should be 4224 bytes long.

Next, double click on XPCacheFilterService.reg and add the entries to the registry. Using regedit, open HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesXPCacheFilter. Make sure that ImagePath is ‘System32DRIVERSxpcachefilter.sys’, ErrorControl is 1, Start is 0, and Type is 1.

Reboot.

When the machine boots, the driver will be loaded, but should not be a part of the storage stack. Verify that it is there, by going to the Device Manager and clicking View->Show hidden devices. Look for ‘XP SCSI Cache Filter (cas)’ under Non-Plug and Play Drivers.

If the driver is installed, it is time to insert it in the stack. Using regedit, open [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass{4D36E967-E325-11CE-BFC1-08002BE10318}. Look for a REG_MULTI_SZ entry named UpperFilters. It should contain PartMgr. Now look for a REG_MULTI_SZ entry named LowerFilters. If there is one, come back and tell us. If not, create a new REG_MULTI_SZ entry named LowerFilters, and add XPCacheFilter as its only entry.

Take a deep breath, and reboot your machine.

XPCacheFilter.sys and XPCacheFilterService.reg can be found here.

Share this post


Link to post
Share on other sites

FS: I am contemplating a complete article including diagrams to illustrate the operation of the XP driver stack. The goal would be to describe how it worked before, how it was changed and why, and ultimately what my filter does. It is my hope, that such an article, together with the (hopefully debugged) driver, would finally put this issue to rest.

Share this post


Link to post
Share on other sites

cas, that would be great to see. Please note that I am NOT questioning the veracity or efficacy of your driver (far be it for me to do so!) - I'm questioning my mental model of journaled filesystems...any background you need to give on that would be a welcome addition to the paper.

FS

Share this post


Link to post
Share on other sites

Ahh, cas, I should have known better than to even remotely disagree with you on anything vaguely Windows related.

Share this post


Link to post
Share on other sites

CAS,

You need to put your *.sys driver into system32dllcache also. If somebody making it by hand to load driver (make it appear under Non-Plug and Play Drivers) he need to copy it not only to system32drivers folder but to system32dllcache folder also.

But all this didn’t help. System hang after applying in registry LowerFilters with name XPCacheFilter and rebooting. Hang with code: 0x0000007B(0xF7A8A640, 0xC0000034, 0x00000000, 0x00000000)

Share this post


Link to post
Share on other sites

Hey guys thought I would chip in my 2 cents.

I am running:

1800+ XP

Asus A7N8X Deluxe

DVD ROM on single IDE channel as master

512mb of ram

LSI U160 single channel controller

IBM Ultrastar 36Z15 18.4Gb as boot drive

I am running the system overclocked at a synchronous 190MHz FSB.

When I install XP with or without SP1 integrated, on a basic disk it is slow as all hell. I mean I almost cried before I changed it to dynamic disk ( I learned all of my scsi tips from this single site!!) After the change from basic to dynamic the machine flys like it should. My reads and writes are close to 45Mb. On the basic disk setup I can almost score 5mb for reads or writes!!!! Well on a clean install of XP with SP1 integrated I immediately changed to a dynamic disk and rebooted. I then rebooted again. I installed all of my drivers. Ran atto and HD Tach and Winbench 99. ATTO socores around 44 wirtes and 44.5-45 for reads. I turned off system restore, took off the indexing of the drive, it is in the properties of the dirve in my computer, I then installed the XPCacheFitler. My scores went to 48 write and close to 49 reads. Plus the machine boots quicker and shuts down quicker. I installed BattleField 1942 from a 10gig IDE Drive on my file server and it installed noticably quicker then without the patch installed. Way to go my friend. I will let you know on anything else I find.

I can run those benchmarks for anybody who needs or wants to see them.

Thanks again

Chett

Share this post


Link to post
Share on other sites
You need to put your *.sys driver into  system32dllcache  also.

For our purposes, it is sufficient for the driver to be present at boot time where ImagePath says it should be. That is the first thing I asked ebe to check.

From your message, can I infer that you added the service entries to the registry, but the driver was not loaded? If the driver won’t load for some reason, you shouldn’t try to insert it in to the stack.

Share this post


Link to post
Share on other sites

Psyco,

Thank you for reporting your findings. Although it may not be clear, XPCacheFilter is actually intended for use in lieu of Dynamic Disks for those who don’t really need the additional functionality. Once the Dynamic Disk driver has been fixed by Microsoft however, XPCacheFilter will be required by all who want their FUA bits stripped.

Thank you for reporting your success here (with OS ver and config). It’s clear that some are having trouble installing the driver, so any additional information helps in determining why.

Share this post


Link to post
Share on other sites

CAS

If you are feeling adventurous, and would like to help out, you might consider installing XPCacheFilter.sys by hand. 

I would like to help out but I’m going away for Christmas and do not have the time at the moment, and yes the only message that appeard when I installed the filter was:

Installing cas' XP SCSI Cache Filter You must reboot your system for the changes to take effect

Thank you for your efforts to solve this

Merry Christmas

EBE

Share this post


Link to post
Share on other sites

Cas wrote,

From your message, can I infer that you added the service entries to the registry, but the driver was not loaded? If the driver won’t load for some reason, you shouldn’t try to insert it in to the stack.

Nope. After added the service entries to the registry and only in case of coping XPCacheFilter.sys to the system32dllcache folder I can load the driver (sow it in the Device Manager under Non-Plug and Play Drivers). But after rebooting WinXPpro hang with above mentioned code.

Sorry for my english.

I have the next hardware configuration - VIA KT333 chipset on Gigabyte 7VRA MB, Adaptec 19160 SCSI adapter (310 BIOS, adpu160m.sys driver from SP1) with Seagate 15K 18Gb ST318452LW drive(15% full) attached to 16bit wide SCSI bus and IDE IBM 7200 80Gb (80% full) drive, 2x512MB DDR 3000CL=2 Corsair memory, Athlon 2100XP CPU, RadeOn 8500 video. IOMEGA ZIP drive and TEAC CD-RW attached to narrow (8bit) bus of the same SCSI adapter.

WInXPpro SP1 installed on bootable SCSI disk. Both drives have FAT32 partition. SCSI adapter was put in PCI 2 slot with separate IRQ. In adapter’s BIOS have the next settings: “domain validation” – dis., “write back cache” – en. for the devices “00” and “07”, “parity” – en., “bus scan” – en. only for connected devices. “Enable write cache” is checked for both drives. I have installed after SP1 last VIA 4in1 drivers, VIA raid patch and GB’s 020B latency patch. My both disks are basic. And I set system swapping – disabled.

Share this post


Link to post
Share on other sites
Public forums are ideal for vetting the kinds of problems that don’t show up in the lab.  That said, I apologize for any inconvenience I might have caused.

I assume that the only messages that appeared when you installed XPCacheFilter were:

Installing cas' XP SCSI Cache Filter

You must reboot your system for the changes to take effect

If you are feeling adventurous, and would like to help out, you might consider installing XPCacheFilter.sys by hand.

First, make sure that WindowsSystem32Drivers contains the file XPCacheFilter.sys.  It should be 4224 bytes long.

Next, double click on XPCacheFilterService.reg and add the entries to the registry.  Using regedit, open HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesXPCacheFilter.  Make sure that ImagePath is ‘System32DRIVERSxpcachefilter.sys’, ErrorControl is 1, Start is 0, and Type is 1.

Reboot.

When the machine boots, the driver will be loaded, but should not be a part of the storage stack.  Verify that it is there, by going to the Device Manager and clicking View->Show hidden devices.  Look for ‘XP SCSI Cache Filter (cas)’ under Non-Plug and Play Drivers.

If the driver is installed, it is time to insert it in the stack.  Using regedit, open [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass{4D36E967-E325-11CE-BFC1-08002BE10318}.  Look for a REG_MULTI_SZ entry named UpperFilters.  It should contain PartMgr.  Now look for a REG_MULTI_SZ entry named LowerFilters.  If there is one, come back and tell us.  If not, create a new REG_MULTI_SZ entry named LowerFilters, and add XPCacheFilter as its only entry.

Take a deep breath, and reboot your machine.

XPCacheFilter.sys and XPCacheFilterService.reg can be found here.

Well be it running the .exe file to install the XPCacheFilter or following your method of manually installing the XPCacheFilter, my system (VIA Apollo Pro266T) will automatically restarts itself during bootup after a blue screen of death. Is there any way to get it to work?

Share this post


Link to post
Share on other sites

XPCacheFilter Results:

I am also having the reboot problem. I see the black Windows loading screen and then all of the sudden I'm rebooting.

In fact, it happens at exactly the same place on the progress bar each time! I always thought the progress bar was a purely visual effect with no relation to actual OS load progress???

Anyway, I checked the registry and driver file and all is as cas specified. Still, I am hopeful!!! I've been following this issue for over 10 months. (I understand that the benchmarks are flawed in this case but my 10k IBM Ultra160 drive has never scored much better than my 7.2k IDE drive on my XP system.) Lets keep up the good work!

Thanks all

(PS sorry if this is a duplicate, had posting problems)

Share this post


Link to post
Share on other sites
Guest russofris

Cas,

If you want, I have a couple spare 2940UW's, Advansys PCI UW's, and other older SCSI cards I can ship your way. I also have an assortment of 2-4GB hdd's. Nothing worth actual money, and I'll cover shipping.

Just pop me a e-mail if you need anything.

My address is "my SR username" @hotmail.com

Thank you for your time,

Frank Russo

Share this post


Link to post
Share on other sites

Thank you for your very generous offer Frank.

I am inclined to hold off on any specific configuration, until I can pin down what the failures have in common. I really need to be able to reproduce the error, before I can fix it.

In the meantime, a request directed at users of XPCacheFilter:

If you are successfully using the software, please post here.

If you were unable to use the software, please post here.

It would be very helpful if you could include the following information:

  • 1. CPU

2. Chipset

3. SCSI HBA Model(s)

4. A complete list of all of the devices hanging off of your SCSI bus(es)

5. A list of other storage devices in use ( ATA, IEEE1394, or USB disks)

6. File systems in use

7. Nation in which you bought XP

8. A list of any service packs or hox fixes you have installed

  • vltk’s post is a good example(thank you).

If you don’t want to provide specific information for privacy reasons, please, leave it blank rather than making something up.

After Christmas, I will look at writing a more proper installation routine, which may address the issue.

Share this post


Link to post
Share on other sites

I have tried installing your driver on both Win2k SP3 and WinXP SP1. Both sucessfully installed, changed the ATTO graph back to normal (from really low write speeds) and did not blue screen the machine (yet).

As per your request, this is on a:

1. CPU 

2. Chipset 

3. SCSI HBA Model(s) 

4. A complete list of all of the devices hanging off of your SCSI bus(es) 

5. A list of other storage devices in use ( ATA, IEEE1394, or USB disks) 

6. File systems in use 

7. Nation in which you bought XP 

8. A list of any service packs or hox fixes you have installed

1. Dual Athlon MP 1.53ghz

2.762 Northbridge, 768 Southbridge

3. LSI53C1010 LSI branded card.

4. Seagate ST336752LW

5. WD and IBM disks (1 each), 1 QUE USB 2.0 Hard disk.

6. NTFS (respecive versions to 2k and XP)

7. America

8. SP3 win2k / SP1 Winxp.

Hope this helps.

Share this post


Link to post
Share on other sites
Thank you for your very generous offer Frank.

I am inclined to hold off on any specific configuration, until I can pin down what the failures have in common.  I really need to be able to reproduce the error, before I can fix it. 

In the meantime, a request directed at users of XPCacheFilter:

If you are successfully using the software, please post here.

If you were unable to use the software, please post here.

It would be very helpful if you could include the following information:

  • 1. CPU

2. Chipset

3. SCSI HBA Model(s)

4. A complete list of all of the devices hanging off of your SCSI bus(es)

5. A list of other storage devices in use ( ATA, IEEE1394, or USB disks)

6. File systems in use

7. Nation in which you bought XP

8. A list of any service packs or hox fixes you have installed

  • vltk’s post is a good example(thank you).

If you don’t want to provide specific information for privacy reasons, please, leave it blank rather than making something up.

After Christmas, I will look at writing a more proper installation routine, which may address the issue.

UNSUCCESFUL - BSOD on WINXP BootUp 0x0..07B

1. Athlon Thoroughbred 2400+

2. VIA KT400 (Epox 8K92a+)

3. Adaptec 39160

Channel A-

36Gig IBM 'Z15'

18Gig IBM 'Z15'

18Gig Atlas III (XP Boot Drive)

Channel B-

SONY SDT-10000 DDS-4 DAT Drive

4. Other Storage Device

Motherboard IDE Controllers

Primary IDE

Master - WD800JB, 80G, w/8M

Slave - LGC 48x24x52 CDRW

Secondary IDE

Master - WD1000JB, 100G, w/8M

Slave - LiteOn 16X DVD

RAID Controller Highpoint 372

Disabled in BIOS

Promise ATA-100 Controller

Primary IDE

Master - IBM 120GXP 80G

Slave - NONE

Secondary IDE

Master - Maxtor D740X 80G

Slave - NONE

6. Filesystems in Use -

Primarily FAT32, except Linux partitions on Second HD

7. WINXP purchased in USA

8. Service Packs

All Service packs & Hot Fixes up to Dec 18 2002

including Svc Pk 1 and IE Updates

HTH,

Share this post


Link to post
Share on other sites
Nope. After added the service entries to the registry and only in case of coping XPCacheFilter.sys to the system32dllcache folder I can load the driver (sow it in the Device Manager under Non-Plug and Play Drivers). But after rebooting WinXPpro hang with above mentioned code.

You added the service entries, but not the LowerFilters entry, and got a 0x7B?

Without the LowerFilters entry, there is nothing to associate the filter with the boot device, so this doesn't make very much sense.

Share this post


Link to post
Share on other sites
Windows BSOD Err. Code 0x0000007B=123 mean “The file name, directory name, or volume label syntax is incorrect.”

Actually 7B indicates an Inaccessible Boot Device.

If a driver has been specified as a filter for the Disk class, and there is something wrong with that driver, the entire Disk stack will fail to load. This will result in an Inaccessible Boot Device.

Share this post


Link to post
Share on other sites

Sucessfull!

I have 2 cheetah 10ks one is basic disk FAT32 and one is Dynamic NTFS

The NTFS disc now has more or less the same performance as before and it was faster then the other disc before this patch, even though they are identical otherwise. Now the FAT32 disk is faster! Reads in atto is as fast as 53 MB/s at most on the FAT32 and on the other one they are at most 49MB/s.

1. Athlon XP 1700+

2. KT133A

3. Tekram DC-390U2W

4. 2x Seagate cheetah 10k

Sony CD-RW on a narrow scsi cable 10MB/s

5. 3x WD different sizes

Pioneer DVD

6. FAT32 and NTFS

7. WinXP PRO

8. Service pack 1 and all other updates to date

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now