Skip to content
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

Clarify interfaction between File::set_len and file cursor #48480

Merged
merged 1 commit into from
Mar 13, 2018

Conversation

jethrogb
Copy link
Contributor

No description provided.

@rust-highfive
Copy link
Collaborator

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @bluss (or someone else) soon.

If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.

Please see the contribution instructions for more information.

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Feb 23, 2018
@retep998
Copy link
Member

Has this behavior been verified on both Linux and Windows?

@jethrogb
Copy link
Contributor Author

I did look at the documentation of SetFileInformationByHandle but it isn't clear about how setting FileEndOfFileInfo affects the file position.

@shepmaster
Copy link
Member

Ping from triage, @bluss!

@retep998
Copy link
Member

retep998 commented Mar 3, 2018

Confirmed with local testing on Windows that changing the length of the file does not update the cursor, even when it causes the cursor to be past the end.

@pietroalbini
Copy link
Member

Ping from triage! This PR has yet to be reviewed, can someone from @rust-lang/libs do it?

@alexcrichton
Copy link
Member

@bors: r+

@bors
Copy link
Contributor

bors commented Mar 12, 2018

📌 Commit cfad25e has been approved by alexcrichton

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 12, 2018
@bors
Copy link
Contributor

bors commented Mar 12, 2018

⌛ Testing commit cfad25e with merge 327f43edf82d38752a076ea97c7930471e7cfa1f...

@kennytm
Copy link
Member

kennytm commented Mar 12, 2018

@bors rollup

@bors
Copy link
Contributor

bors commented Mar 12, 2018

💔 Test failed - status-appveyor

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Mar 12, 2018
@kennytm
Copy link
Member

kennytm commented Mar 12, 2018

@bors retry #46903.

52 minutes to compile stage1-rustc, which is ridiculous.

Timing breakdown
make-prepare                	  76.97
stage0-tidy                 	  91.38
bootstrap                   	  20.30
stage0-rustc                	1783.10
llvm                        	 986.29
stage0-trans-llvm           	 212.96
stage1-std                  	 183.77
stage1-test                 	  46.29
stage1-rustc                	3124.49
stage1-trans-llvm           	 272.56
stage0-compiletest          	 207.94
test/ui                     	 234.20
test/parse-fail             	  11.71
test/run-fail               	  48.28
test/run-pass-valgrind      	   7.56
test/mir-opt                	  48.77
test/codegen                	   7.99
test/codegen-units          	   6.70
test/incremental            	  43.56
test/ui-fulldeps            	 100.09
test/run-pass-fulldeps      	 667.10
test/run-fail-fulldeps      	  10.65
test/compile-fail-fulldeps  	 198.52
test/incremental-fulldeps   	   5.77
stage2-rustdoc              	 392.27
test/rustdoc                	 236.26
test/run-make               	 140.30
stage1-test-term            	  11.54
test/libtest                	  16.37
stage1-test-test            	  21.34
test/libtest                	  25.23
stage1-test-alloc           	 126.45
test/libstd                 	 288.66
/proc/cpuinfo of this build (Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz)
[00:17:58] processor	: 0
[00:17:58] vendor_id	: GenuineIntel
[00:17:58] cpu family	: 6
[00:17:58] model		: 63
[00:17:58] model name	: Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz
[00:17:58] stepping	: 2
[00:17:58] cpu MHz		: 2397.000
[00:17:58] cache size	: 256 KB
[00:17:58] physical id	: 0
[00:17:58] siblings	: 2
[00:17:58] core id		: 0
[00:17:58] cpu cores	: 2
[00:17:58] apicid		: 0
[00:17:58] initial apicid	: 0
[00:17:58] fpu		: yes
[00:17:58] fpu_exception	: yes
[00:17:58] cpuid level	: 15
[00:17:58] wp		: yes
[00:17:58] flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht pni ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave osxsave avx f16c rdrand hypervisor lahf_lm xsaveopt fsgsbase bmi1 avx2 smep bmi2 erms invpcid
[00:17:58] clflush size	: 64
[00:17:58] cache_alignment	: 64
[00:17:58] address sizes	: 44 bits physical, 48 bits virtual
[00:17:58] power management:
[00:17:58] 
[00:17:58] processor	: 1
[00:17:58] vendor_id	: GenuineIntel
[00:17:58] cpu family	: 6
[00:17:58] model		: 63
[00:17:58] model name	: Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz
[00:17:58] stepping	: 2
[00:17:58] cpu MHz		: 2397.000
[00:17:58] cache size	: 256 KB
[00:17:58] physical id	: 0
[00:17:58] siblings	: 2
[00:17:58] core id		: 1
[00:17:58] cpu cores	: 2
[00:17:58] apicid		: 1
[00:17:58] initial apicid	: 1
[00:17:58] fpu		: yes
[00:17:58] fpu_exception	: yes
[00:17:58] cpuid level	: 15
[00:17:58] wp		: yes
[00:17:58] flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht pni ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave osxsave avx f16c rdrand hypervisor lahf_lm xsaveopt fsgsbase bmi1 avx2 smep bmi2 erms invpcid
[00:17:58] clflush size	: 64
[00:17:58] cache_alignment	: 64
[00:17:58] address sizes	: 44 bits physical, 48 bits virtual
[00:17:58] power management:
/proc/cpuinfo of the previous build (Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz)
[00:13:24] processor	: 0
[00:13:24] vendor_id	: GenuineIntel
[00:13:24] cpu family	: 6
[00:13:24] model		: 63
[00:13:24] model name	: Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz
[00:13:24] stepping	: 2
[00:13:24] cpu MHz		: 2497.000
[00:13:24] cache size	: 256 KB
[00:13:24] physical id	: 0
[00:13:24] siblings	: 2
[00:13:24] core id		: 0
[00:13:24] cpu cores	: 2
[00:13:24] apicid		: 0
[00:13:24] initial apicid	: 0
[00:13:24] fpu		: yes
[00:13:24] fpu_exception	: yes
[00:13:24] cpuid level	: 15
[00:13:24] wp		: yes
[00:13:24] flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht pni ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave osxsave avx f16c rdrand hypervisor lahf_lm xsaveopt fsgsbase bmi1 avx2 smep bmi2 erms invpcid
[00:13:24] clflush size	: 64
[00:13:24] cache_alignment	: 64
[00:13:24] address sizes	: 44 bits physical, 48 bits virtual
[00:13:24] power management:
[00:13:24] 
[00:13:24] processor	: 1
[00:13:24] vendor_id	: GenuineIntel
[00:13:24] cpu family	: 6
[00:13:24] model		: 63
[00:13:24] model name	: Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz
[00:13:24] stepping	: 2
[00:13:24] cpu MHz		: 2497.000
[00:13:24] cache size	: 256 KB
[00:13:24] physical id	: 0
[00:13:24] siblings	: 2
[00:13:24] core id		: 1
[00:13:24] cpu cores	: 2
[00:13:24] apicid		: 1
[00:13:24] initial apicid	: 1
[00:13:24] fpu		: yes
[00:13:24] fpu_exception	: yes
[00:13:24] cpuid level	: 15
[00:13:24] wp		: yes
[00:13:24] flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht pni ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave osxsave avx f16c rdrand hypervisor lahf_lm xsaveopt fsgsbase bmi1 avx2 smep bmi2 erms invpcid
[00:13:24] clflush size	: 64
[00:13:24] cache_alignment	: 64
[00:13:24] address sizes	: 44 bits physical, 48 bits virtual
[00:13:24] power management:
/proc/meminfo of this build (1.8 GiB total)
[00:17:58] MemTotal:        1901592 kB
[00:17:58] MemFree:          848456 kB
[00:17:58] HighTotal:             0 kB
[00:17:58] HighFree:              0 kB
[00:17:58] LowTotal:        1901592 kB
[00:17:58] LowFree:          848456 kB
[00:17:58] SwapTotal:        458752 kB
[00:17:58] SwapFree:         413320 kB
/proc/meminfo of previous build (1.7 GiB total)
[00:13:24] MemTotal:        1764376 kB
[00:13:24] MemFree:          627900 kB
[00:13:24] HighTotal:             0 kB
[00:13:24] HighFree:              0 kB
[00:13:24] LowTotal:        1764376 kB
[00:13:24] LowFree:          627900 kB
[00:13:24] SwapTotal:        458752 kB
[00:13:24] SwapFree:         396692 kB

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 12, 2018
kennytm added a commit to kennytm/rust that referenced this pull request Mar 12, 2018
Clarify interfaction between File::set_len and file cursor
bors added a commit that referenced this pull request Mar 12, 2018
Rollup of 13 pull requests

- Successful merges: #48201, #48705, #48725, #48824, #48877, #48880, #48887, #48928, #48934, #48480, #48631, #48898, #48954
- Failed merges:
@bors bors merged commit cfad25e into rust-lang:master Mar 13, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants