| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
| |
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
| |
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
| |
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
|
|
| |
local and inet are identical, but for inet6 values differ.
PR: 155040
Reported by: Simon Walton
MFC after: 2 week
|
|
|
|
|
|
|
|
| |
- Revert the change for seed(0) in r300384. I misunderstood the standard
and while our random() implementation in libkern may be improved, it
handles the seed(0) case fine.
Pointed out by: bde, ache
|
|
|
|
|
|
| |
PR: 135458
Reported by: Stefan Schmidt @ stadtbuch.de
MFC after: 1 week
|
|
|
|
|
|
| |
switch to the high resolution sbintime_t.
MFC after: 1 week
|
|
|
|
|
|
| |
commit NPTL tests are ends in 1 minute faster.
MFC after: 1 week
|
|
|
|
|
|
| |
while here.
MFC after: 1 week
|
|
|
|
| |
MFC after: 1 week
|
|
|
|
|
|
|
|
|
| |
- Revert r300377: The implementation claims to return a value
within the range. [1]
- Adjust the value for the case of a zero seed, whihc according
to standards should be equivalent to a seed of value 1.
Pointed out by: cem
|
|
|
|
|
|
|
|
| |
This is a long standing problem: our random() function returns an
unsigned integer but the rand provided by ndis(4) returns an int.
Scale it down.
MFC after: 2 weeks
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In ndis(4) we expose a rand() function that was constantly reseeding
with a time depending function every time it was called. This
essentially broke the reasoning behind seeding, and rendered srand()
a no-op.
Keep it simple, just use random() and srandom() as it's meant to work.
It would have been tempting to just go for arc4random() but we
want to mimic Microsoft, and we don't need crypto-grade randomness
here.
PR: 209616
MFC after: 2 weeks
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
intention of the POSIX IEEE Std 1003.1TM-2008/Cor 1-2013.
A robust mutex is guaranteed to be cleared by the system upon either
thread or process owner termination while the mutex is held. The next
mutex locker is then notified about inconsistent mutex state and can
execute (or abandon) corrective actions.
The patch mostly consists of small changes here and there, adding
neccessary checks for the inconsistent and abandoned conditions into
existing paths. Additionally, the thread exit handler was extended to
iterate over the userspace-maintained list of owned robust mutexes,
unlocking and marking as terminated each of them.
The list of owned robust mutexes cannot be maintained atomically
synchronous with the mutex lock state (it is possible in kernel, but
is too expensive). Instead, for the duration of lock or unlock
operation, the current mutex is remembered in a special slot that is
also checked by the kernel at thread termination.
Kernel must be aware about the per-thread location of the heads of
robust mutex lists and the current active mutex slot. When a thread
touches a robust mutex for the first time, a new umtx op syscall is
issued which informs about location of lists heads.
The umtx sleep queues for PP and PI mutexes are split between
non-robust and robust.
Somewhat unrelated changes in the patch:
1. Style.
2. The fix for proper tdfind() call use in umtxq_sleep_pi() for shared
pi mutexes.
3. Removal of the userspace struct pthread_mutex m_owner field.
4. The sysctl kern.ipc.umtx_vnode_persistent is added, which controls
the lifetime of the shared mutex associated with a vnode' page.
Reviewed by: jilles (previous version, supposedly the objection was fixed)
Discussed with: brooks, Martin Simmons <martin@lispworks.com> (some aspects)
Tested by: pho
Sponsored by: The FreeBSD Foundation
|
|
|
|
|
|
| |
Suggested by: ngie @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
|
|
|
|
|
| |
at it use NULL for some pointer checks.
Bump the FreeBSD version to force recompilation of all kernel modules
due to a structure size change.
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
| |
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
| |
Suggested by: kib, jhb
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
|
|
| |
device_register() in the LinuxKPI.
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
|
|
| |
"pgprot_t" to "linux/page.h" similar to what Linux does.
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
| |
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
| |
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
| |
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
|
|
|
|
|
|
| |
streamline the rest of the xxx_to_jiffies() functions to have a
constant 64-bit argument and use identical range checks for the
result.
Specifically preserve msecs_to_jiffies(0) returning 0. See r282743 for
further details.
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
| |
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
|
|
|
| |
error code checks might fail. ERESTART is in the BSD world defined as
-1. While at it add more Linux error codes.
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Linux requires that all IOCTL data resides in userspace. FreeBSD
always moves the main IOCTL structure into a kernel buffer before
invoking the IOCTL handler and then copies it back into userspace,
before returning. Hide this difference in the "linux_copyin()" and
"linux_copyout()" functions by remapping userspace addresses in the
range from 0x10000 to 0x20000, to the kernel IOCTL data buffer.
It is assumed that the userspace code, data and stack segments starts
no lower than memory address 0x400000, which is also stated by "man 1
ld", which means any valid userspace pointer can be passed to regular
LinuxKPI handled IOCTLs.
Bump the FreeBSD version to force recompilation of all kernel modules.
Discussed with: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
|
| |
This is done by the "linux_kthread_fn()".
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
|
|
|
|
| |
"current" inside all LinuxKPI file operation callbacks. The "current"
is frequently used for various debug prints, printing the thread name
and thread ID for example.
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
|
| |
responsible the IDR tree stays unmodified while iterating.
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
|
| |
having the wrong number of entries is detected.
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
| |
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
|
|
| |
bitmap test for free entry in "idr_replace()".
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
| |
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
| |
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
|
|
|
| |
and amd64.
Suggested by: cem @
Discussed with: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
| |
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
| |
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
| |
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
|
|
| |
point to a constant.
Obtained from: kmacy @
MFC after: 1 week
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
|
|
| |
Ensure the actual poll result is returned by the "linux_file_poll()"
function instead of zero which means no data is available.
MFC after: 3 days
Sponsored by: Mellanox Technologies
|
|
|
|
|
|
| |
Mostly on comments but there are some user-visible messages as well.
MFC after: 2 weeks
|
|
|
|
| |
No functional change.
|
|
|
|
| |
No functional change.
|
|
|
|
|
|
|
| |
The value can't even be signed so we can avoid the signed vs. unsigned
comparison.
Reviewed by: jkim
|
|
|
|
| |
int was actually OK, and u_int is more than enough.
|
|
|
|
|
|
|
|
|
|
| |
The "len" parameter is uint32_t, indexing it with an int may
end up in a signed integer overflow.
strlen(3) returns an integer of size_t so the corresponding index should
have that size.
MFC after: 1 week
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a minor follow-up to r297422, prompted by a Coverity warning. (It's
not a real defect, just a code smell.) OSD slot array reservations are an
array of pointers (void **) but were cast to void* and back unnecessarily.
Keep the correct type from reservation to use.
osd.9 is updated to match, along with a few trivial igor fixes.
Reported by: Coverity
CID: 1353811
Sponsored by: EMC / Isilon Storage Division
|
|
|
|
|
| |
We have a howmany() macro in the <sys/param.h> header that is
convenient to re-use as it makes things easier to read.
|