[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v5 09/14] hvmloader: Check modules whereabouts in perform_tests



On Fri, Jun 24, 2016 at 01:44:30AM -0600, Jan Beulich wrote:
> >>> On 22.06.16 at 19:15, <anthony.perard@xxxxxxxxxx> wrote:
> > +        uint64_t cmdline_paddr = modlist[i].cmdline_paddr;
> > +
> > +        if ( check_test_overlap(modlist[i].paddr, modlist[i].size) )
> > +        {
> > +            printf("Skipping tests due to memory used by module[%d]\n", i);
> > +            return;
> > +        }
> > +        if ( cmdline_paddr && cmdline_paddr < UINT_MAX &&
> > +             check_test_overlap(cmdline_paddr,
> > +                                strlen((char*)(uint32_t)cmdline_paddr)) )
> 
> As said on the previous patch - cmdline_paddr being below 4Gb
> doesn't necessarily mean the string not crossing that boundary.
> Depending on the resolution for that other patch this may need
> adjustment.

I'm not sure how I could handle that, here.

> Also, thinking about it again, the use of UINT_MAX for bounding
> pointers is unfortunate: I think this would better be UINTPTR_MAX.

Well, I do cast every addr to uint32_t, and I had to define UINT_MAX in
the previous patch (hvmloader: Locate the BIOS blob)(I should probably
add a comment about it in the patch description).

I could try to add UINTPTR_MAX instead.

-- 
Anthony PERARD

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.