[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug #45204] EFI PXE boot fails for some firmware
From: |
Mark Salter |
Subject: |
[bug #45204] EFI PXE boot fails for some firmware |
Date: |
Thu, 28 May 2015 19:35:37 +0000 |
User-agent: |
Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0 |
Follow-up Comment #5, bug #45204 (project grub):
I added code to dump the filter info:
+static void dump_snp_filter(grub_efi_simple_network_t *net)
+{
+ struct grub_efi_simple_network_mode *m = net->mode;
+ int i;
+
+ grub_dprintf("efi", "FilterMask[%x] FilterSetting[%x] McastCount[%x]n",
+ m->receive_filter_mask,
+ m->receive_filter_setting,
+ m->mcast_filter_count
+ );
+ for (i = 0; i < m->mcast_filter_count; i++) {
+ grub_dprintf("efi", " %d: %02x:%02x:%02x:%02x:%02x:%02xn",
+ i,
+ m->mcast_filter[i][0],
+ m->mcast_filter[i][1],
+ m->mcast_filter[i][2],
+ m->mcast_filter[i][3],
+ m->mcast_filter[i][4],
+ m->mcast_filter[i][5]);
+
+ }
+}
+
Using my patch to save/restore values, I see:
>From grub_efinet_findcards():
net/drivers/efi/efinet.c:42: FilterMask[1f] FilterSetting[7] McastCount[3]
net/drivers/efi/efinet.c:51: 0: 01:005e:00:00:01
net/drivers/efi/efinet.c:51: 1: 33:33:00:00:00:01
net/drivers/efi/efinet.c:51: 2: 33:33:ff:57:3f:62
After open exclusive, before calling receive_filters():
net/drivers/efi/efinet.c:42: FilterMask[1f] FilterSetting[0] McastCount[0]
net/drivers/efi/efinet.c:186: receive_filters returned 0
After receive_filters() using values saved in grub_efinet_findcards():
net/drivers/efi/efinet.c:42: FilterMask[1f] FilterSetting[7] McastCount[3]
net/drivers/efi/efinet.c:51: 0: 01:00:5e:00:00:01
net/drivers/efi/efinet.c:51: 1: 33:33:00:00:00:01
net/drivers/efi/efinet.c:51: 2: 33:33:ff:57:3f:62
Using your suggesting values:
>From grub_efinet_findcards():
net/drivers/efi/efinet.c:42: FilterMask[1f] FilterSetting[7] McastCount[3]
net/drivers/efi/efinet.c:51: 0: 01:00:5e:00:00:01
net/drivers/efi/efinet.c:51: 1: 33:33:00:00:00:01
net/drivers/efi/efinet.c:51: 2: 33:33:ff:57:3f:62
After open exclusive, before calling receive_filters():
net/drivers/efi/efinet.c:42: FilterMask[1f] FilterSetting[0] McastCount[0]
After receive_filters() using your suggested values in
grub_efinet_findcards():
net/drivers/efi/efinet.c:199: receive_filters returned 0
net/drivers/efi/efinet.c:42: FilterMask[1f] FilterSetting[15] McastCount[0]
The subsequent pxe boot worked fine both ways.
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?45204>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/