-
Notifications
You must be signed in to change notification settings - Fork 17.8k
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
syscall: remove AIX implementation of Flock #29084
Comments
...or did |
AIX has a |
However, I do understand that using a fake |
That page says:
The existence of a C compatibility shim is not, to my mind, a good reason to have the same compatibility shim in Go, given that portable Go programs already need to distinguish between a proper BSD And Go 1 compatibility makes it much easier to add functions in the future than to remove them: I think we should remove it for now, and we can always consider adding it back in the future if there is a compelling need. (This sort of shim might be better suited to |
Yes, I do agree, AIX isn't perfect on BSD syscalls... Flock isn't needed anywhere inside the stdlib expect for |
Removing |
@Helflym is planning to send a CL to move |
Great, thanks. Let's wait for that CL to land. |
Change https://golang.org/cl/152397 mentions this issue: |
There seems to be no GCC release with this gccgo change yet. Should we remove /cc @ianlancetaylor |
Sorry, please disregard - I checked in an outdated GCC copy. GCC 8.1 and GCC 8.2 already contain the change, so I guess we cannot remove it. |
By the way, since Solaris, AIX or Windows can't use Flock, a user will have to create a |
I think (Probably best to give it a release or two to work out the rough edges before we expose it to the world — and to Go 1 compatibility.) |
It's OK to remove from gccgo. In practice programs expect the gc toolchain's syscall package, so it's OK to remove names from gccgo's syscall package if they aren't in gc's package. |
Change https://golang.org/cl/152557 mentions this issue: |
CL 152397 removed it from gc's syscall package. Updates golang/go#29084 Change-Id: Iac26d912851cdf34c208b9b7eb02b522c085c5ef Reviewed-on: https://go-review.googlesource.com/c/152557 Reviewed-by: Ian Lance Taylor <[email protected]>
CL 152397 removed it from gc's syscall package. Updates golang/go#29084 Reviewed-on: https://go-review.googlesource.com/c/152557 git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@266812 138bc75d-0d04-0410-961f-82ee72b054a4
https://golang.org/cl/138720 added an AIX implementation of
syscall.Flock
using thefcntl
system call.We rejected a similar implementation for Solaris in #24684 on the grounds that
fcntl
andflock
are semantically different APIs (see #24684 (comment)).(Note that per #21410 (comment), some versions of Illumos — a Solaris variant — also support a proper
flock
implementation: https://www.illumos.org/issues/3252.)We should remove the AIX
Flock
implementation before the 1.12 release. If we decide to add it later, we should ensure a consistent approach between Solaris and AIX.(CC @Helflym @ianlancetaylor @rsc @tklauser)
The text was updated successfully, but these errors were encountered: