-
Notifications
You must be signed in to change notification settings - Fork 13.7k
minimal dirfd implementation (1/4) #146341
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
base: master
Are you sure you want to change the base?
Conversation
c3278f6
to
6982a46
Compare
This comment has been minimized.
This comment has been minimized.
6982a46
to
313c731
Compare
This comment has been minimized.
This comment has been minimized.
313c731
to
1b3d7d6
Compare
This comment has been minimized.
This comment has been minimized.
1b3d7d6
to
be0d761
Compare
@ChrisDenton I'll need your help for the Windows review |
be0d761
to
3083d58
Compare
@rustbot ready |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks pretty good to me, just a few mechanical things here. There are a couple left over from the previous review, #146341 (comment), #146341 (comment), and (newly) #146341 (comment).
let mut handle = ptr::null_mut(); | ||
let mut io_status = c::IO_STATUS_BLOCK::PENDING; | ||
let access = opts.get_access_mode()? | c::SYNCHRONIZE; | ||
let options = create_options | c::FILE_SYNCHRONOUS_IO_NONALERT; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you add a note about why this flag is set?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I no longer remember why I chose this one, and looking at it now, I'm not sure whether we should set this one, FILE_SYNCHRONOUS_IO_ALERT
, or neither. Maybe @ChrisDenton has thoughts?
From the top post:
I think it would be fine to include the
That is quite alright, there is no hurry :) For reference, the |
This comment was marked as outdated.
This comment was marked as outdated.
minimal dirfd implementation (1/4) try-job: aarch64-apple try-job: dist-various* try-job: test-various* try-job: x86_64-msvc* try-job: x86_64-mingw
This comment has been minimized.
This comment has been minimized.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
minimal dirfd implementation (1/4) try-job: aarch64-apple try-job: dist-various* try-job: test-various* try-job: x86_64-msvc* try-job: x86_64-mingw*
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment was marked as outdated.
This comment was marked as outdated.
3083d58
to
7b0f5ce
Compare
This comment has been minimized.
This comment has been minimized.
7b0f5ce
to
20bd04e
Compare
@bors2 try |
This comment has been minimized.
This comment has been minimized.
minimal dirfd implementation (1/4) try-job: aarch64-apple try-job: dist-various* try-job: test-various* try-job: x86_64-msvc* try-job: x86_64-mingw*
This comment has been minimized.
This comment has been minimized.
💔 Test for ba4037e failed: CI. Failed jobs:
|
@@ -1,5 +1,6 @@ | |||
use rand::RngCore; | |||
|
|||
use super::Dir; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This needs a gate on miri
to not be unused
20bd04e
to
73435f8
Compare
@bors2 try |
minimal dirfd implementation (1/4) try-job: aarch64-apple try-job: dist-various* try-job: test-various* try-job: x86_64-msvc* try-job: x86_64-mingw*
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
💔 Test for 26d8112 failed: CI. Failed jobs:
|
73435f8
to
1f8f886
Compare
1f8f886
to
109188b
Compare
@bors2 try |
This comment has been minimized.
This comment has been minimized.
minimal dirfd implementation (1/4) try-job: aarch64-apple try-job: dist-various* try-job: test-various* try-job: x86_64-msvc* try-job: x86_64-mingw*
The job Click to see the possible cause of the failure (guessed by this bot)
|
💔 Test for d36ef83 failed: CI. Failed jobs:
|
This is the first of four smaller PRs that will eventually be equivalent to #139514.
A few notes:
new
toopen
becauseopen_dir
takes&self
and opens a subdirectory.open
toopen_file
.impl AsRawFd
and friends because thecommon
implementation usesPathBuf
s. How should I proceed here?The other PRs will be based on this one, so I'll make drafts and mark them ready as their predecessors get merged. They might take a bit though; I've never done this particular thing with git before.
Tracking issue: #120426
r? @tgross35
try-job: aarch64-apple
try-job: dist-various*
try-job: test-various*
try-job: x86_64-msvc-1
try-job: x86_64-mingw*