grub-devel
[Top][All Lists]
Advanced

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

RE: [edk2] [grub PATCH] efinet: disable MNP background polling


From: Ye, Ting
Subject: RE: [edk2] [grub PATCH] efinet: disable MNP background polling
Date: Wed, 14 Oct 2015 06:15:06 +0000

May I know the details what problems it causes in some cases? 

Thanks,
Ye Ting

-----Original Message-----
From: Andrei Borzenkov [mailto:address@hidden 
Sent: Wednesday, October 14, 2015 1:58 PM
To: Ye, Ting; Laszlo Ersek; address@hidden; address@hidden
Cc: address@hidden; edk2-devel-01; address@hidden; address@hidden; Mark Salter
Subject: Re: [edk2] [grub PATCH] efinet: disable MNP background polling

14.10.2015 08:19, Ye, Ting пишет:
> Hi all,
>
> If I understand the issue correctly, I don't quite agree that UEFI spec is 
> imprecise about SNP constraints described as following.
> The "constraint" described here is that the grub should use attribute 
> "EXCLUSIVE" to open SNP protocol to gain exclusive access. This usage is 
> clearly described in page 184, chapter 6.3 EFI_BOOT_SERVICES.OpenProtocol().
>
> EXCLUSIVE             Used by applications to gain exclusive access to a 
> protocol interface.
>                       If any drivers have the protocol interface opened with 
> an attribute of BY_DRIVER,
>                       then an attempt will be made to remove them by calling 
> the driver's Stop() function.
>
> The grub code should not assume that the SNP is not occupied by other 
> drivers, instead, it should use EXCLUSIVE to open SNP protocol, or to be more 
> precise, use OpenProtocolInformation() to check whether SNP is already opened 
> by other driver, then decide whether need to use EXCLUSIVE to disconnect the 
> other drivers. This is the typical usage for all UEFI protocol, not 
> particular constraints to SNP protocol.
>

That is exactly what grub currently does - it opens SNP exclusively. 
Apparently it is causing problems in some cases.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]