]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
* grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_recv): Relax checks as
authorSeth Goldberg <seth.goldberg@oracle.com>
Tue, 24 Jan 2012 02:01:46 +0000 (03:01 +0100)
committerVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Tue, 24 Jan 2012 02:01:46 +0000 (03:01 +0100)
a workaround for intel problem.

ChangeLog
grub-core/net/drivers/i386/pc/pxe.c

index aae30b5389f6580d463796a32c4edd84a9ad7a77..1f575d15bd97ada68fcb361ae5fdd96ef9810af6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2012-01-14  Seth Goldberg <seth.goldberg@oracle.com>
+
+       * grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_recv): Relax checks as
+       a workaround for intel problem.
+
 2012-01-23  Paulo de Rezende Pinatti <ppinatti@linux.vnet.ibm.com>
 2012-01-23  Vladimir Serbinenko  <phcoder@gmail.com>
 2012-01-23  pfsmorigo
index 3343533ef7cc46bef9f70874ed8b31607a4ca0cc..34e43f5852a658f4a3a0ed6663f4808530563066 100644 (file)
@@ -179,7 +179,11 @@ grub_pxe_recv (const struct grub_net_card *dev __attribute__ ((unused)))
       grub_memset (isr, 0, sizeof (*isr));
       isr->func_flag = GRUB_PXE_ISR_IN_START;
       grub_pxe_call (GRUB_PXENV_UNDI_ISR, isr, pxe_rm_entry);
-      if (isr->status || isr->func_flag != GRUB_PXE_ISR_OUT_OURS)
+      /* Normally according to the specification we should also check
+        that isr->func_flag != GRUB_PXE_ISR_OUT_OURS but unfortunately it
+        breaks on intel cards.
+       */
+      if (isr->status)
        {
          in_progress = 0;
          return NULL;