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: Andrei Borzenkov
Subject: Re: [edk2] [grub PATCH] efinet: disable MNP background polling
Date: Wed, 14 Oct 2015 08:57:42 +0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0

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]