#
3df7ebc4 |
| 05-Jun-2017 |
Konstantin Belousov <kib@FreeBSD.org> |
Add sysctl vfs.ino64_trunc_error controlling action on truncating inode number or link count for the ABI compat binaries.
Right now, and by default after the change, too large 64bit values are silen
Add sysctl vfs.ino64_trunc_error controlling action on truncating inode number or link count for the ABI compat binaries.
Right now, and by default after the change, too large 64bit values are silently truncated to 32 bits. Enabling the knob causes the system to return EOVERFLOW for stat(2) family of compat syscalls when some values cannot be completely represented by the old structures. For getdirentries(2), knob skips the dirents which would cause non-trivial truncation of d_ino.
EOVERFLOW error is specified by the X/Open 1996 LFS document ('Adding Support for Arbitrary File Sizes to the Single UNIX Specification').
Based on the discussion with: bde Sponsored by: The FreeBSD Foundation
show more ...
|
#
d02c951f |
| 26-May-2017 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r318658 through r318963.
|
#
69921123 |
| 23-May-2017 |
Konstantin Belousov <kib@FreeBSD.org> |
Commit the 64-bit inode project.
Extend the ino_t, dev_t, nlink_t types to 64-bit ints. Modify struct dirent layout to add d_off, increase the size of d_fileno to 64-bits, increase the size of d_na
Commit the 64-bit inode project.
Extend the ino_t, dev_t, nlink_t types to 64-bit ints. Modify struct dirent layout to add d_off, increase the size of d_fileno to 64-bits, increase the size of d_namlen to 16-bits, and change the required alignment. Increase struct statfs f_mntfromname[] and f_mntonname[] array length MNAMELEN to 1024.
ABI breakage is mitigated by providing compatibility using versioned symbols, ingenious use of the existing padding in structures, and by employing other tricks. Unfortunately, not everything can be fixed, especially outside the base system. For instance, third-party APIs which pass struct stat around are broken in backward and forward incompatible ways.
Kinfo sysctl MIBs ABI is changed in backward-compatible way, but there is no general mechanism to handle other sysctl MIBS which return structures where the layout has changed. It was considered that the breakage is either in the management interfaces, where we usually allow ABI slip, or is not important.
Struct xvnode changed layout, no compat shims are provided.
For struct xtty, dev_t tty device member was reduced to uint32_t. It was decided that keeping ABI compat in this case is more useful than reporting 64-bit dev_t, for the sake of pstat.
Update note: strictly follow the instructions in UPDATING. Build and install the new kernel with COMPAT_FREEBSD11 option enabled, then reboot, and only then install new world.
Credits: The 64-bit inode project, also known as ino64, started life many years ago as a project by Gleb Kurtsou (gleb). Kirk McKusick (mckusick) then picked up and updated the patch, and acted as a flag-waver. Feedback, suggestions, and discussions were carried by Ed Maste (emaste), John Baldwin (jhb), Jilles Tjoelker (jilles), and Rick Macklem (rmacklem). Kris Moore (kris) performed an initial ports investigation followed by an exp-run by Antoine Brodin (antoine). Essential and all-embracing testing was done by Peter Holm (pho). The heavy lifting of coordinating all these efforts and bringing the project to completion were done by Konstantin Belousov (kib).
Sponsored by: The FreeBSD Foundation (emaste, kib) Differential revision: https://reviews.freebsd.org/D10439
show more ...
|
#
69cfbe88 |
| 07-Apr-2017 |
Conrad Meyer <cem@FreeBSD.org> |
kern_descrip: Move kinfo_ofile size assert under COMPAT_FREEBSD7
The size and structure are not used outside of FreeBSD 7 compatibility ABIs.
Sponsored by: Dell EMC Isilon
|
#
f9edb084 |
| 05-Feb-2017 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r313055 through r313300.
|
#
c8c521a1 |
| 05-Feb-2017 |
Enji Cooper <ngie@FreeBSD.org> |
MFhead@r313266
|
#
3a2f2825 |
| 05-Feb-2017 |
Mateusz Guzik <mjg@FreeBSD.org> |
fd: switch fget_unlocked to atomic_fcmpset
|
#
9b3ece1c |
| 04-Feb-2017 |
Enji Cooper <ngie@FreeBSD.org> |
MFhead@r313243
|
#
71fe94fd |
| 01-Feb-2017 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r312968 through r313054.
|
#
3071469d |
| 30-Jan-2017 |
Mateusz Guzik <mjg@FreeBSD.org> |
fd: sprinkle __read_mostly and __exclusive_cache_line
|
#
b4b4b530 |
| 28-Jan-2017 |
Baptiste Daroussin <bapt@FreeBSD.org> |
Revert crap accidentally committed
|
#
814aaaa7 |
| 28-Jan-2017 |
Baptiste Daroussin <bapt@FreeBSD.org> |
Revert r312923 a better approach will be taken later
|
#
d370fd1c |
| 14-Jan-2017 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r311940 through r312200.
|
#
4fce19da |
| 13-Jan-2017 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Remove deprecated fgetsock() and fputsock().
|
#
d4db49c4 |
| 01-Jan-2017 |
Mateusz Guzik <mjg@FreeBSD.org> |
fd: access openfiles once in falloc_noinstall
This is similar to what's done with nprocs.
Note this is only a band aid.
|
#
0b3b55a0 |
| 30-Dec-2016 |
Mateusz Guzik <mjg@FreeBSD.org> |
Remove cpu_spinwait after seq_consistent.
It does not add any benefit as the read routine will do it as necessary.
|
#
3ffd3530 |
| 16-Dec-2016 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r309817 through r310168.
|
#
5afb134c |
| 12-Dec-2016 |
Mateusz Guzik <mjg@FreeBSD.org> |
vfs: add vrefact, to be used when the vnode has to be already active
This allows blind increment of relevant counters which under contention is cheaper than inc-not-zero loops at least on amd64.
Us
vfs: add vrefact, to be used when the vnode has to be already active
This allows blind increment of relevant counters which under contention is cheaper than inc-not-zero loops at least on amd64.
Use it in some of the places which are guaranteed to see already active vnodes.
Reviewed by: kib (previous version)
show more ...
|
#
0ed76ec8 |
| 24-Nov-2016 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r308870 through r309105.
|
#
1279fdaf |
| 22-Nov-2016 |
Robert Watson <rwatson@FreeBSD.org> |
Audit 'fd' and 'cmd' arguments to fcntl(2), and when generating BSM, always audit the file-descriptor number and vnode information for all fnctl(2) commands, not just locking-related ones. This was
Audit 'fd' and 'cmd' arguments to fcntl(2), and when generating BSM, always audit the file-descriptor number and vnode information for all fnctl(2) commands, not just locking-related ones. This was likely an oversight in the original adaptation of this code from XNU.
MFC after: 3 days Sponsored by: DARPA, AFRL
show more ...
|
Revision tags: release/11.0.1 |
|
#
335bcabe |
| 28-Sep-2016 |
Ed Maste <emaste@FreeBSD.org> |
Merge ^/head r306303 through 306411.
|
#
1c8260b6 |
| 25-Sep-2016 |
Julian Elischer <julian@FreeBSD.org> |
Give the user a clue as to which process hit maxfiles.
MFC after: 1 week Sponsored by: Panzura
|
#
8c4282b3 |
| 24-Sep-2016 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r305892 through r306302.
|
#
ad5e83dd |
| 23-Sep-2016 |
Mariusz Zaborski <oshogbo@FreeBSD.org> |
fd: fix up fget_cap
If the kernel is not compiled with the CAPABILITIES kernel options fget_unlocked doesn't return the sequence number so fd_modify will always report modification, in that case we
fd: fix up fget_cap
If the kernel is not compiled with the CAPABILITIES kernel options fget_unlocked doesn't return the sequence number so fd_modify will always report modification, in that case we got infinity loop.
Reported by: br Reviewed by: mjg Tested by: br, def
show more ...
|
#
deffc4a0 |
| 23-Sep-2016 |
Mateusz Guzik <mjg@FreeBSD.org> |
fd: fix up fgetvp_rights after r306184
fget_cap_locked returns a referenced file, but the fgetvp_rights does not need it. Instead, due to the filedesc lock being held, it can ref the vnode after the
fd: fix up fgetvp_rights after r306184
fget_cap_locked returns a referenced file, but the fgetvp_rights does not need it. Instead, due to the filedesc lock being held, it can ref the vnode after the file was looked up.
Fix up fget_cap_locked to be consistent with other _locked helpers and not ref the file.
This plugs a leak introduced in r306184.
Pointy hat to: mjg, oshogbo
show more ...
|