-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
NetworkPkg/HttpBootDxe: Resume an interrupted boot file download. #6066
NetworkPkg/HttpBootDxe: Resume an interrupted boot file download. #6066
Conversation
Hi @SaloniKasbekar, Do I need to close this pull request and start another one? I'm new with this. Thank you! |
You can amend your commit and push the changes onto your branch. That will directly update this PR. You dont need to close this and start a new PR. |
Didn't worked. I ammended my commit and when tryied to push to my branch, is has failed. Probably because the previous push I did is now missing from my local copy after the ammend. What do you suggest? Restart from zero? No problem to me. I'm not an git expert. |
Can you share the command you used, and the error? Most likely you'll need to add a --force when pushing to your fork when trying to amend the previous commit. |
e007b62
to
17021bb
Compare
Using --force did the trick. Thanks |
17021bb
to
78d0f01
Compare
78d0f01
to
02ad29b
Compare
6051ef7
to
35a1652
Compare
As a complement, below is a log from a computer BIOS I'm working with, showing this improvement in action: ... |
I believe that all the required fixes were applied. If you need something else, please let me know. |
PR can not be merged due to conflict. Please rebase and resubmit |
Hi @SaloniKasbekar. During the rebase in my local computer, I solved a conflict in source you have changed. When I pushed it again, a conflict happened and a merge was made by GitHub. I undestand that merges are not allowed, so what do you suggest? Delete my branch from GitHub and push it again? |
I'm working with git rebase -i to solve this, please wait... |
e413cd4
to
aa0685c
Compare
PR can not be merged due to conflict. Please rebase and resubmit |
@SaloniKasbekar I'll give up. I will open another pull request later and close this one. It keeps conflicting even after I have rebased everything. Maybe I'm too newby using git. |
aa0685c
to
f848210
Compare
I think is finally ok. I restarted by branch using the last EDK2 master. |
f848210
to
d855afb
Compare
d855afb
to
cdedcae
Compare
3086c4f
to
ca15484
Compare
Added HTTP header definitions for the following headers: "Content-Range", "Last-Modified" and "If-Unmodified-Since" Signed-off-by: Leandro Gustavo Biss Becker <[email protected]>
When the boot file download operation is interrupted for some reason, HttpBootDxe will use HTTP Range header to try resume the download operation reusing the bytes downloaded so far. Signed-off-by: Leandro Gustavo Biss Becker <[email protected]>
ca15484
to
5fec4b1
Compare
When the boot file download operation is interrupted for some reason, HttpBootDxe will use HTTP Range header to try resume the download operation reusing the bytes downloaded so far.
Description
Sometimes while downloading a large boot file, like a Windows PE ISO file, the TCP connection drops and the HTTP operation is terminated with timeout. As HTTP have support to resume interrupted downloads using HTTP Range header, the download operation will be retried to get the remaining file data, keeping data that was already downloaded before the connection drop.
How This Was Tested
Configure the UEFI HTTP Boot feature to download a large .ISO file, like Windows .ISO file. During the file download, remove the uplink cable from your network switch and wait for the number of seconds defined at PCD PcdHttpIoTimeout. Reconnect the uplink cable to your network switch, the download operation must continue from the point were it was stopped.
Integration Instructions
N/A