[PATCH v2 1/8] kernel32/tests: Fix NtMapViewOfSection tests results for w1064v1809

Huw Davies huw at codeweavers.com
Tue Jun 18 06:49:26 CDT 2019


On Tue, Jun 18, 2019 at 12:34:07PM +0200, Rémi Bernon wrote:
> On Mon, 2019-06-17 at 10:39 +0100, Huw Davies wrote:
> > On Fri, Jun 14, 2019 at 03:11:10PM +0200, Rémi Bernon wrote:
> > > @@ -1328,25 +1329,30 @@ static void test_NtMapViewOfSection(void)
> > >      size = 0;
> > >      offset.QuadPart = 0;
> > >      status = pNtMapViewOfSection( mapping, hProcess, &ptr2, 12, 0,
> > > &offset, &size, 1, 0, PAGE_READWRITE );
> > 
> > Also, changing this and the other non-zero zero_bits below to '1'
> > would improve the tests.  i.e. it's something that one would expect
> > to
> > succeed if ptr2 was set to NULL.
> 
> After doing some testing it looks like it would change the test results
> as well. The comment here is wrong in the sense that it looks like
> Windows returns INVALID_PARAMETER whenever the fixed address parameter
> does not satisfy the provided zero_bits constraint. Whenever it does,
> then the tests fail with MAPPED_ALIGNMENT instead.
> 
> So with 12 or more zero bits, there was little chance for the provided
> address to ever satisfy the check, and INVALID_PARAMETER was returned.
> If we change it to 1 zero bit, then the tests will usually succeed.
> 
> This also explains the "broken" behaviour that was sometimes seen on
> w1064v1809.
> 
> This first patch was merely to add results seen on w1064v1809, and I
> didn't want to change test logic before moving them to ntdll. I can do
> the logic changes before moving the tests, but I don't think doing
> logic changes both before and after moving them is very clear.

The idea is to fix the tests before moving them.  So yes, making these
changes first makes sense.

Huw.



More information about the wine-devel mailing list