Just a little dumb question while I'm wrapping my head around the change here - why do we even punch the pagecache to start with? As long as the regions that we failed to write to aren't marked uptdate (at the page or block level for sub-block writes), who cares if they remain in the page cache for now?