ReFS and Windows 8.1 to Windows 8.1 Update1

Experts,

We have a volume upper filter driver which is used to track volume block
level changes. The driver works for all scenarios explored so far, it is a
production driver WHQL qualified.

This driver is used to provide changes blocks which is then used by the
backupware engine to create incremental VSS backups.

It supports all windows file systems including incremental backups on ReFS.

Scenario:

  1. Windows 8.1 or windows server 2012R2 installed.
  2. backupware installed and activated on an ReFS data drive. Please note it
    is a data drive,
  3. upon activation the driver starts tracking all IO on the ReFS drive.
  4. We insert the windows 8.1 update 1 (or windows 2012R2 Update 1) DVD
    (depending on which ever os was originally installed) and run setup from
    the DVD. The idea is to update to update1 from the DVD and not from the
    windows update path.
  5. The setup continues and updates the OS to Update1, a couple of reboots
    later we are booted into the updated OS.
  6. At his point we decide to take a backup of the already being tracked
    ReFS volume, we do so.

** This backup is corrupt, the reason seems that teh driver has missed IO
on certain blocks and the incremental image didn’t capture those and hence
the backup is unusable.

Questions:

  1. The same behaviour is not seen for NTFS drives, so why is ReFS causing
    this? Yes the ReFS driver binary gets updated, but that shouldn’t cause
    this scenario, if they played by teh rules and loaded the entire stack. My
    assumption is that while setup they didn’t load the filter drivers and
    hence the problem.
  2. Why would setup even need to touch data in a data drive? I would
    understand if it is the system volume. We even tried with a blank ReFS
    drive, same problem persists.
  3. How in the world am I supposed to debug this? I don’t think the kernel
    debugger session will survive the OS install scenario.

I know there is not a lot of data points at this time for you guys, but I
am hoping that your pointers will help me gather some. I also know that
this is a ridiculous demand from the customer that the product should
support an OS upgrade and continue to perform flawlessly, but lets not get
into that scenario.

We tried checking whether the build number etc of the OS change after the
upgrade, so that in the user land we can detect such changes and stop
tracking the volume, but that also will not work, as winver build number is
the same.

Any suggestions at this point will help.

thanks in advance

B
PS: SOry for the cross post, I didn’t know which forum would be better,

Sounds like you have a bug in your change block tracking filter. Seriously. Either that or ReFS has “features”…

I guess I’d monitor the I/Os, paying special attention to the ioctls, going through my filter on the ReFS volume. Does anything look unusual. Understand what I/O is happening on that volume and why.

And… Cross posting is against the rules. I’ll lock the thread on NTFSD for you.

Peter
OSR
@OSRDrivers

thanks peter. but during OS installation how do I even connect a debugger?
that session wont survive the multiple reboots…

On Wed, May 28, 2014 at 6:04 PM, wrote:

> Sounds like you have a bug in your change block tracking filter.
> Seriously. Either that or ReFS has “features”…
>
> I guess I’d monitor the I/Os, paying special attention to the ioctls,
> going through my filter on the ReFS volume. Does anything look unusual.
> Understand what I/O is happening on that volume and why.
>
> And… Cross posting is against the rules. I’ll lock the thread on NTFSD
> for you.
>
> Peter
> OSR
> @OSRDrivers
>
>
> —
> NTDEV is sponsored by OSR
>
> Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev
>
> OSR is HIRING!! See http://www.osr.com/careers
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>

You make a winpe USB key and boot off of it right after you run setup. Then you modify the BCD database on the target machine.

The first boot will be to a temporary BCD entry called (iirc Windows Setup).

When that reboots into the upgraded OS I think your debugger settings from before the upgrade should be preserved. If not use the USB key again.

-p

Sent from my Windows Phone


From: Bedantomailto:xxxxx
Sent: ?5/?28/?2014 5:46 AM
To: Windows System Software Devs Interest Listmailto:xxxxx
Subject: Re: [ntdev] ReFS and Windows 8.1 to Windows 8.1 Update1

thanks peter. but during OS installation how do I even connect a debugger? that session wont survive the multiple reboots…

On Wed, May 28, 2014 at 6:04 PM, > wrote:
Sounds like you have a bug in your change block tracking filter. Seriously. Either that or ReFS has “features”…

I guess I’d monitor the I/Os, paying special attention to the ioctls, going through my filter on the ReFS volume. Does anything look unusual. Understand what I/O is happening on that volume and why.

And… Cross posting is against the rules. I’ll lock the thread on NTFSD for you.

Peter
OSR
@OSRDrivers


NTDEV is sponsored by OSR

Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev

OSR is HIRING!! See http://www.osr.com/careers

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

— NTDEV is sponsored by OSR Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev OSR is HIRING!! See http://www.osr.com/careers For our schedule of WDF, WDM, debugging and other seminars visit: http://www.osr.com/seminars To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer</mailto:xxxxx></mailto:xxxxx>

Or see if setup still honors the /noreboot flag

Sent from my Windows Phone


From: Peter Wielandmailto:xxxxx
Sent: ?5/?28/?2014 7:59 AM
To: Windows System Software Devs Interest Listmailto:xxxxx
Subject: RE: [ntdev] ReFS and Windows 8.1 to Windows 8.1 Update1

You make a winpe USB key and boot off of it right after you run setup. Then you modify the BCD database on the target machine.

The first boot will be to a temporary BCD entry called (iirc Windows Setup).

When that reboots into the upgraded OS I think your debugger settings from before the upgrade should be preserved. If not use the USB key again.

-p

Sent from my Windows Phone
________________________________
From: Bedantomailto:xxxxx
Sent: ?5/?28/?2014 5:46 AM
To: Windows System Software Devs Interest Listmailto:xxxxx
Subject: Re: [ntdev] ReFS and Windows 8.1 to Windows 8.1 Update1

thanks peter. but during OS installation how do I even connect a debugger? that session wont survive the multiple reboots…

On Wed, May 28, 2014 at 6:04 PM, > wrote:
Sounds like you have a bug in your change block tracking filter. Seriously. Either that or ReFS has “features”…

I guess I’d monitor the I/Os, paying special attention to the ioctls, going through my filter on the ReFS volume. Does anything look unusual. Understand what I/O is happening on that volume and why.

And… Cross posting is against the rules. I’ll lock the thread on NTFSD for you.

Peter
OSR
@OSRDrivers


NTDEV is sponsored by OSR

Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev

OSR is HIRING!! See http://www.osr.com/careers

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

— NTDEV is sponsored by OSR Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev OSR is HIRING!! See http://www.osr.com/careers For our schedule of WDF, WDM, debugging and other seminars visit: http://www.osr.com/seminars To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer


NTDEV is sponsored by OSR

Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev

OSR is HIRING!! See http://www.osr.com/careers

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer</mailto:xxxxx></mailto:xxxxx></mailto:xxxxx></mailto:xxxxx>

thanks peter, I will try these. On a side note, is it possible to detect
(after installation completes) whether the installation wsa done through a
DVD media or windows update? is there some registry key which maintains
this information?

On Wed, May 28, 2014 at 8:30 PM, Peter Wieland wrote:

> Or see if setup still honors the /noreboot flag
>
>
> Sent from my Windows Phone
> ------------------------------
> From: Peter Wieland
> Sent: ‎5/‎28/‎2014 7:59 AM
>
> To: Windows System Software Devs Interest List
> Subject: RE: [ntdev] ReFS and Windows 8.1 to Windows 8.1 Update1
>
> You make a winpe USB key and boot off of it right after you run setup.
> Then you modify the BCD database on the target machine.
>
> The first boot will be to a temporary BCD entry called (iirc Windows
> Setup).
>
> When that reboots into the upgraded OS I think your debugger settings from
> before the upgrade should be preserved. If not use the USB key again.
>
> -p
>
> Sent from my Windows Phone
> ------------------------------
> From: Bedanto
> Sent: ‎5/‎28/‎2014 5:46 AM
> To: Windows System Software Devs Interest List
> Subject: Re: [ntdev] ReFS and Windows 8.1 to Windows 8.1 Update1
>
> thanks peter. but during OS installation how do I even connect a
> debugger? that session wont survive the multiple reboots…
>
>
> On Wed, May 28, 2014 at 6:04 PM, wrote:
>
>> Sounds like you have a bug in your change block tracking filter.
>> Seriously. Either that or ReFS has “features”…
>>
>> I guess I’d monitor the I/Os, paying special attention to the ioctls,
>> going through my filter on the ReFS volume. Does anything look unusual.
>> Understand what I/O is happening on that volume and why.
>>
>> And… Cross posting is against the rules. I’ll lock the thread on NTFSD
>> for you.
>>
>> Peter
>> OSR
>> @OSRDrivers
>>
>>
>> —
>> NTDEV is sponsored by OSR
>>
>> Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev
>>
>> OSR is HIRING!! See http://www.osr.com/careers
>>
>> For our schedule of WDF, WDM, debugging and other seminars visit:
>> http://www.osr.com/seminars
>>
>> To unsubscribe, visit the List Server section of OSR Online at
>> http://www.osronline.com/page.cfm?name=ListServer
>>
>
> — NTDEV is sponsored by OSR Visit the list at:
> http://www.osronline.com/showlists.cfm?list=ntdev OSR is HIRING!! See
> http://www.osr.com/careers For our schedule of WDF, WDM, debugging and
> other seminars visit: http://www.osr.com/seminars To unsubscribe, visit
> the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>
> —
> NTDEV is sponsored by OSR
>
> Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev
>
> OSR is HIRING!! See http://www.osr.com/careers
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>
> —
> NTDEV is sponsored by OSR
>
> Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev
>
> OSR is HIRING!! See http://www.osr.com/careers
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>

I have no idea. I’m not aware of one.

-p

From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Bedanto
Sent: Thursday, May 29, 2014 6:44 AM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] ReFS and Windows 8.1 to Windows 8.1 Update1

thanks peter, I will try these. On a side note, is it possible to detect (after installation completes) whether the installation wsa done through a DVD media or windows update? is there some registry key which maintains this information?

On Wed, May 28, 2014 at 8:30 PM, Peter Wieland > wrote:
Or see if setup still honors the /noreboot flag

Sent from my Windows Phone

From: Peter Wielandmailto:xxxxx
Sent: ‎5/‎28/‎2014 7:59 AM

To: Windows System Software Devs Interest Listmailto:xxxxx
Subject: RE: [ntdev] ReFS and Windows 8.1 to Windows 8.1 Update1
You make a winpe USB key and boot off of it right after you run setup. Then you modify the BCD database on the target machine.

The first boot will be to a temporary BCD entry called (iirc Windows Setup).

When that reboots into the upgraded OS I think your debugger settings from before the upgrade should be preserved. If not use the USB key again.

-p

Sent from my Windows Phone

From: Bedantomailto:xxxxx
Sent: ‎5/‎28/‎2014 5:46 AM
To: Windows System Software Devs Interest Listmailto:xxxxx
Subject: Re: [ntdev] ReFS and Windows 8.1 to Windows 8.1 Update1
thanks peter. but during OS installation how do I even connect a debugger? that session wont survive the multiple reboots…

On Wed, May 28, 2014 at 6:04 PM, > wrote:
Sounds like you have a bug in your change block tracking filter. Seriously. Either that or ReFS has “features”…

I guess I’d monitor the I/Os, paying special attention to the ioctls, going through my filter on the ReFS volume. Does anything look unusual. Understand what I/O is happening on that volume and why.

And… Cross posting is against the rules. I’ll lock the thread on NTFSD for you.

Peter
OSR
@OSRDrivers


NTDEV is sponsored by OSR

Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev

OSR is HIRING!! See http://www.osr.com/careers

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

— NTDEV is sponsored by OSR Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev OSR is HIRING!! See http://www.osr.com/careers For our schedule of WDF, WDM, debugging and other seminars visit: http://www.osr.com/seminars To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer


NTDEV is sponsored by OSR

Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev

OSR is HIRING!! See http://www.osr.com/careers

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer


NTDEV is sponsored by OSR

Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev

OSR is HIRING!! See http://www.osr.com/careers

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

— NTDEV is sponsored by OSR Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev OSR is HIRING!! See http://www.osr.com/careers For our schedule of WDF, WDM, debugging and other seminars visit: http://www.osr.com/seminars To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer</mailto:xxxxx></mailto:xxxxx></mailto:xxxxx></mailto:xxxxx>