Displaying 20 results from an estimated 21 matches for "cb_status".
2016 Feb 28
0
[PATCH 0/1] UEFI UDP/TFTP
...;
- EFI_UDP4 *udp;
-
- udp = (EFI_UDP4 *)socket->net.efi.binding->this;
-
- /* Reset */
- status = uefi_call_wrapper(udp->Configure, 2, udp, NULL);
- if (status != EFI_SUCCESS)
- Print(L"Failed to reset UDP: %d\n", status);
+
+ return;
+
}
-static int volatile cb_status = -1;
-static EFIAPI void udp4_cb(EFI_EVENT event, void *context)
-{
- (void)event;
-
- EFI_UDP4_COMPLETION_TOKEN *token = context;
- if (token->Status == EFI_SUCCESS)
- cb_status = 0;
- else
- cb_status = 1;
+/**
+ *
+ * Send callback function
+ *
+ */
+VOID
+EFIAPI
+UdpIoOnDgra...
2013 Nov 13
3
syslinux.efi pxeboot across multiple subnets
>I played around with the udp4_cb function and it looked like it was coming
back with token->Status == 512, which (if I read the spec right) isn't a
valid value. I'm not sure what is coming through on that. I changed the if
to if (token->Event) { cb_status = 0; }
Looks like the same thing with tcp.c. After I changed that callback,
everything went through and I go into the OS install.
But, if I go back to 1 subnet after those changes, it errors out with
Invalid Parameter when attempting to send the first packet.
(Sorry for the top posting.)
2016 Feb 24
6
[PATCH 2/5] ntfs: remove unused variable and have ntfssect use char API calls
The variable 'ok' is never used and generates a warning. Remove it. Also
ntfssect.c is designed to be compiled in non Unicode mode when using
MSVC compilers, so remove all ambiguity about it (LPCTSTR -> LPCSTR, use
of 'A' API calls) so that it doesn't break when compiled in Unicode
mode, which is what Rufus uses with MSVC.
-------------- next part --------------
2013 Jul 03
2
Problems with gfxboot.c32
...ve
> calls *out* into a realmode section compiled into gfxboot.c32
> (realmode_callback.asm) to do things like open files, read sectors, etc.
>
> It's these utility functions that no longer work.
Calls to those functions only happen if the gfxboot core (bincode.asm) requests them.
cb_status, cb_fopen and cb_fread are only called from gfxboot core (prim_findfile) if
the requested file is not part of the bootlogo archive.
cb_getcwd is deprecated, cb_chdir and cb_mount were never supported on upstream syslinux.
The only function left is cb_readsector which seems optional in gfxboot core....
2013 Nov 11
2
syslinux.efi pxeboot across multiple subnets
On Mon, Nov 11, 2013 at 4:53 PM, Jason Matthews
<jason.david.matthews at gmail.com> wrote:
> On Sun, Nov 10, 2013 at 12:23 PM, Gene Cumm <gene.cumm at gmail.com> wrote:
>
>> On Sat, Nov 9, 2013 at 9:22 AM, Jason Matthews
>> <jason.david.matthews at gmail.com> wrote:
>> > The setup I was using was in a chassis. Slot 8 of the chassis is the
>>
2015 Sep 26
0
Problem with 90MB Initrd
...Periodic)
with callback function to calculate "jiffies" which is used to determine the increasing
receive timeout (based on a table).
The reception of every block also creates an event triggered by EFI_EVENT_NOTIFY which calls
a callback function (udp4_cb()) just to change a status (cb_status). Next we keep polling the
cb_status variable while calling EFI_UDP4_PROTOCOL.Poll()to speed things up.
So far I have been focusing my analysis on the EFI/UDP side of things because Wireshark
traffic captures shown a pretty constant heavy delay (under VMware) between the reception of a data...
2013 Nov 26
2
syslinux.efi pxeboot across multiple subnets
...>>>I played around with the udp4_cb function and it looked like it was coming
>> back with token->Status == 512, which (if I read the spec right) isn't a
>> valid value. I'm not sure what is coming through on that. I changed the if
>> to if (token->Event) { cb_status = 0; }
>>
>> Looks like the same thing with tcp.c. After I changed that callback,
>> everything went through and I go into the OS install.
>>
>> But, if I go back to 1 subnet after those changes, it errors out with
>> Invalid Parameter when attempting to send the...
2013 Nov 13
0
syslinux.efi pxeboot across multiple subnets
...s from that:
http://ge.tt/4O5N9Az/v/0
I played around with the udp4_cb function and it looked like it was coming
back with token->Status == 512, which (if I read the spec right) isn't a
valid value. I'm not sure what is coming through on that. I changed the if
to if (token->Event) { cb_status = 0; } and set the jiffies loop to set
cb_status to 1 on timeout. It went through and downloaded ldlinux.e64,
searched and found the config and downloaded it.
Now, it looks like it's failing to download the linux kernel (via http).
Gives me "failed: No such file or directory"
Here...
2017 Nov 21
2
[PATCH] EFI TCP buffer reuse bug
...+ frag->FragmentBuffer = socket->tcp_databuf;
+ frag->FragmentLength = sizeof(socket->tcp_databuf);
status = uefi_call_wrapper(tcp->Receive, 2, tcp, &iotoken);
if (status == EFI_CONNECTION_FIN) {
@@ -244,10 +241,8 @@ void core_tcp_fill_buffer(struct inode *
cb_status = -1;
len = frag->FragmentLength;
- memcpy(databuf, frag->FragmentBuffer, len);
- data = databuf;
- socket->tftp_dataptr = data;
+ socket->tftp_dataptr = socket->tcp_databuf;
socket->tftp_filepos += len;
socket->tftp_bytesleft = len;
2015 Jun 17
4
EFI & PXE-booting: very slow TFTP performance on a VMWare test setup
...he EFI switch.
> Have you considered single vCPU client VMs?
Yes. That's what I started with. But then I saw this piece of code in
efi/udp.c and thought it would be wise to enable an extra CPU to
receive the UDP packet. A single CPU has a 100% load here:
start = jiffies();
while (cb_status == -1) {
/* 15ms receive timeout... */
if (jiffies() - start >= 30) {
if (jiffies() - start >= 60)
printf("Failed to cancel UDP\n");
uefi_call_wrapper(udp->Cancel, 2, udp, &token);
printf("core_udp_recv...
2015 Sep 23
4
Problem with 90MB Initrd
On Wed, Sep 23, 2015 at 4:24 PM, Patrick Masotta <masottaus at yahoo.com> wrote:
>>>>
>
> > BTW if you take a minute and read the first report
> > https://communities.vmware.com/message/2536774
> > You'll realize that VMWare TFTP "surprisingly" does not present slow TFTP transfers
> > when they are driven by MS
2013 Nov 28
0
syslinux.efi pxeboot across multiple subnets
...;I played around with the udp4_cb function and it looked like it was coming
>>> back with token->Status == 512, which (if I read the spec right) isn't a
>>> valid value. I'm not sure what is coming through on that. I changed the if
>>> to if (token->Event) { cb_status = 0; }
>>>
>>> Looks like the same thing with tcp.c. After I changed that callback,
>>> everything went through and I go into the OS install.
>>>
>>> But, if I go back to 1 subnet after those changes, it errors out with
>>> Invalid Parameter whe...
2013 Jul 03
2
Problems with gfxboot.c32
Matt Fleming wrote:
> On Wed, 03 Jul, at 03:02:19PM, Andreas Heinlein wrote:
>> I had to add at least one boot entry to get a working config, so I
>> ended up with this isolinux.cfg:
>>
>> label live
>> menu label ^Try Ubuntu without installing
>> kernel /casper/vmlinuz
>> append file=/cdrom/preseed/ubuntu.seed boot=casper
>>
2013 Jul 04
0
Problems with gfxboot.c32
...mode section compiled into gfxboot.c32
>> (realmode_callback.asm) to do things like open files, read sectors, etc.
>>
>> It's these utility functions that no longer work.
>
> Calls to those functions only happen if the gfxboot core (bincode.asm)
> requests them.
> cb_status, cb_fopen and cb_fread are only called from gfxboot core
> (prim_findfile) if
> the requested file is not part of the bootlogo archive.
> cb_getcwd is deprecated, cb_chdir and cb_mount were never supported on
> upstream syslinux.
> The only function left is cb_readsector which seem...
2013 Nov 24
0
syslinux.efi pxeboot across multiple subnets
...l.com> wrote:
>>I played around with the udp4_cb function and it looked like it was coming
> back with token->Status == 512, which (if I read the spec right) isn't a
> valid value. I'm not sure what is coming through on that. I changed the if
> to if (token->Event) { cb_status = 0; }
>
> Looks like the same thing with tcp.c. After I changed that callback,
> everything went through and I go into the OS install.
>
> But, if I go back to 1 subnet after those changes, it errors out with
> Invalid Parameter when attempting to send the first packet.
>
>...
2015 Jun 18
0
EFI & PXE-booting: very slow TFTP performance on a VMWare test setup
...nsidered single vCPU client VMs?
>
> Yes. That's what I started with. But then I saw this piece of code in
> efi/udp.c and thought it would be wise to enable an extra CPU to
> receive the UDP packet. A single CPU has a 100% load here:
>
> start = jiffies();
> while (cb_status == -1) {
> /* 15ms receive timeout... */
> if (jiffies() - start >= 30) {
> if (jiffies() - start >= 60)
> printf("Failed to cancel UDP\n");
>
> uefi_call_wrapper(udp->Cancel, 2, udp, &token);
>...
2013 Nov 29
2
[PATCH] efi: reuse UDP port with sendto
...dress, &IPInfo.myip, sizeof(IPInfo.myip));
memcpy(&udata.SubnetMask, &IPInfo.netmask, sizeof(IPInfo.netmask));
memcpy(&udata.RemoteAddress, &ip, sizeof(ip));
@@ -373,6 +376,21 @@ void core_udp_sendto(struct pxe_pvt_inode *socket, const void *data,
/* Reset */
cb_status = -1;
+ /*
+ * If this is the first time sending a packet, save the random local
+ * port number that the UDPv4 Protocol Driver picked for us. The TFTP
+ * protocol uses the local port number as the TID, and it needs to
+ * be consistent across connect()/disconnect() calls.
+...
2008 Nov 22
5
[RFC][PATCH] Gfxboot COMBOOT module
...x_setup_menu
+ jc exit
+
+input:
+ call gfx_input
+ jc exit
+
+ cmp eax,1
+ jz exit
+
+ cmp eax,2
+ jz boot
+
+ jmp input
+
+boot:
+ call far [gfx_bc_done]
+ mov ax,cs
+ mov es,ax
+ mov bx,command_line
+ mov ax,3
+ int 22h
+exit:
+ call far [gfx_bc_done]
+error:
+ ret
+
+cb_table dw cb_status ; 0
+ dw cb_fopen ; 1
+ dw cb_fread ; 2
+ dw cb_getcwd ; 3
+ dw cb_chdir ; 4
+ dw cb_readsector ; 5
+cb_len equ ($-cb_table)/2
+
+gfx_cb:
+ push cs
+ pop ds
+
+ cmp al,cb_len
+ jae gfx_cb_error
+
+ movzx bx,al
+ add bx,bx
+ call word [bx+cb_table]
+ jmp gfx_cb_end
+gfx_cb_error:...
2009 Apr 05
3
[PATCH] Gfxboot COMBOOT module
...x_setup_menu
+ jc exit
+
+input:
+ call gfx_input
+ jc exit
+
+ cmp eax,1
+ jz exit
+
+ cmp eax,2
+ jz boot
+
+ jmp input
+
+boot:
+ call far [gfx_bc_done]
+ mov ax,cs
+ mov es,ax
+ mov bx,command_line
+ mov ax,3
+ int 22h
+exit:
+ call far [gfx_bc_done]
+error:
+ ret
+
+cb_table dw cb_status ; 0
+ dw cb_fopen ; 1
+ dw cb_fread ; 2
+ dw cb_getcwd ; 3
+ dw cb_chdir ; 4
+ dw cb_readsector ; 5
+cb_len equ ($-cb_table)/2
+
+gfx_cb:
+ push cs
+ pop ds
+
+ cmp al,cb_len
+ jae gfx_cb_error
+
+ movzx bx,al
+ add bx,bx
+ call word [bx+cb_table]
+ jmp gfx_cb_end
+gfx_cb_error:...
2017 May 31
6
[PATCH 1/4] efi/udp: core_udp_connect should use SubnetMask not StationAddress for netmask
Signed-off-by: Julien Viard de Galbert <jviarddegalbert at online.net>
---
efi/udp.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/efi/udp.c b/efi/udp.c
index 1088f47..b0f13ad 100644
--- a/efi/udp.c
+++ b/efi/udp.c
@@ -163,7 +163,7 @@ void core_udp_connect(struct pxe_pvt_inode *socket, uint32_t ip,
} else {
udata.UseDefaultAddress = FALSE;