Clone Tools
  • last updated a few seconds ago
Constraints: committers
Constraints: files
Constraints: dates
boot: file_loadraw should strdup name argument

zfs boot: print only an attribute name in fzap_list

Allow idle threads to steal second threads from other cores on systems with 8 or more cores to improve utilization. None of my tests on 2xXeon (2x6x2) system shown any slowdown from mentioned "excess thrashing". Same time in pbzip2 test with number of threads more then number of CPUs I see up to 10% speedup with SMT disabled and up 5% with SMT enabled. Thinking about trashing I was trying to limit that stealing within same last level cache, but got only worse results. Present code any way prefers to steal threads from topologically closer cores.

Some minor tunings/cleanups inspired by bde@ after previous commits: - remove extra dynamic variable initializations; - restore (4BSD) and implement (ULE) hogticks variable setting; - make sched_rr_interval() more tolerant to options; - restore (4BSD) and implement (ULE) kern.sched.quantum sysctl, a more user-friendly wrapper for sched_slice; - tune some sysctl descriptions; - make some style fixes.

Obtained from: FreeBSD

Rework r220198 change (by fabient). I believe it solves the problem from the wrong direction. Before it, if preemption and end of time slice happen same time, thread was put to the head of the queue as for only preemption. It could cause single thread to run for indefinitely long time. r220198 handles it by not clearing TDF_NEEDRESCHED in case of preemption. But that causes delayed context switch every time preemption happens, even when not needed.

Solve problem by introducing scheduler-specifoc thread flag TDF_SLICEEND,

set when thread's time slice is over and it should be put to the tail of

queue. Using SW_PREEMPT flag for that purpose as it was before just not

enough informative to work correctly.

On my tests this by 2-3 times reduces run time deviation (improves fairness)

in cases when several threads share one CPU.

Obtained from FreeBSD

4bsd scheduler quantum mechanism has been broken for awhile.

do not pass fd to save current directory to child processes.

sigaction(2),sigwait(2),sigwaitinfo(2): Remove [EFAULT] error condition.

Passing an invalid pointer results in undefined behaviour.

The wrappers in libthr access some of the data pointed to by the arguments

in userland, so that an invalid pointer will cause a signal and not an

[EFAULT] error return.

Furthermore, if the [EFAULT] error occurs when the kernel is writing, it is

not a proper error in the sense that the call still commits (changing the

signal disposition or accepting the signal).

Obtained from: FreeBSD

check the return value of sbuf_finish

handle null terminating character.

dont abstract rcvar_manpage

add more quotes

modify nfsv4 client so that it can handle owner and owner_group strings that consist entirely of digits

partial revert of last commit

fix pseudo checksum calculation. this fixes ipfilter with network controllers that mplement partial rx csum offload

note via change

mention acl copy with cp

Fix an error in setfacl(1) that manifested like this:

# setfacl -m u:trasz:rwx x

# setfacl -m u:root:rwx x

# getfacl x

# file: x

# owner: root

# group: wheel







# setfacl -m u:root:rwx x

setfacl: x: acl_calc_mask() failed: Invalid argument

setfacl: x: failed to set ACL mask

For NFSv4 ACLs, this sort of situation would result in duplicated


Obtained from: FreeBSD

add a pointer

more fixes

make setfacl -kd work

remove all cvsup examples. we no longer offer this service

    • -65
    • +0
    • -67
    • +0
    • -65
    • +0
make more clear

document security

- Use pid_t type instead of just int.

- Put arguments for print_syscall_ret() function in proper order.

Bug was introduced in r192025.

- Remove unused variables.

- Fix warnings about comparing signed and unsigned ints.

- Style(9) cleanup.

- Remove unused variables.

- Remove redundant return after err(3) call.

- Fix detaching under some circumstances.

When truss is detaching from very active process it is possible to

hang on waitpid(2) in restore_proc() forever, because

ptrace(PT_SYSCALL) must be called before detaching, to allow the

debugging process to continue execution. Also when truss called with

'-c' argument, it does not print anything after detach, because it

immediately exits from restore_proc().

To fix these two problems make detaching deferred, but then it is

impossible to detach from a process which does not do any system call.

To fix this issue use sigaction(2) instead of signal(3) to disable

SA_RESTART flag for waitpid(2) that makes it non-restartable. Remove

global variable child_pid, because now detaching is handled in context

where child's pid is known.

- Make truss thread-aware.

    • -205
    • +213
    • -207
    • +213
    • -191
    • +205
    • -199
    • +208
    • -190
    • +203
    • -177
    • +190
    • -214
    • +235
    • -215
    • +223
    • -199
    • +207
    • -213
    • +230
add dsiz and ssiz keywords to show data and stack size

shorten name so it fits

make conditional on lpr enabled

imrpove static dma buffer handling

fix typos