ViewVC Help
View Directory | Revision Log | View Changeset | Root Listing
root/src/trunk/sys/tools
Revision 10408 - Directory Listing - [select for diffs]
Modified Mon Jun 4 17:43:24 2018 UTC (5 years, 11 months ago) by laffer1
Diff to previous 9900
remove advertising clause

Revision 9900 - Directory Listing - [select for diffs]
Modified Thu May 24 22:37:43 2018 UTC (5 years, 11 months ago) by laffer1
Diff to previous 9899
update scripts

Revision 9899 - Directory Listing - [select for diffs]
Modified Thu May 24 22:36:18 2018 UTC (5 years, 11 months ago) by laffer1
Diff to previous 9898
sync sound scripts with freebsd 10-stable

Revision 9898 - Directory Listing - [select for diffs]
Modified Thu May 24 22:33:14 2018 UTC (5 years, 11 months ago) by laffer1
Diff to previous 9457
update scripts

Revision 9457 - Directory Listing - [select for diffs]
Modified Sun Mar 5 19:36:04 2017 UTC (7 years, 2 months ago) by laffer1
Diff to previous 7912
Rework the handling of stop signals in the NFS client.  The changes in
195702, 195703, and 195821 prevented a thread from suspending while holding
locks inside of NFS by forcing the thread to fail sleeps with EINTR or
ERESTART but defer the thread suspension to the user boundary.  However,
this had the effect that stopping a process during an NFS request could
abort the request and trigger EINTR errors that were visible to userland
processes (previously the thread would have suspended and completed the
request once it was resumed).

This change instead effectively masks stop signals while in the NFS client.
It uses the existing TDF_SBDRY flag to effect this since SIGSTOP cannot
be masked directly.  Instead of setting PBDRY on individual sleeps, change
the VFS_*() and VOP_*() methods to defer stop signals for filesystems which
request this behavior via a new VFCF_SBDRY flag.  Note that this has to be
a VFC flag rather than a MNTK flag so that it works properly with
VFS_MOUNT() when the mount is not yet fully constructed.  For now, only the
NFS clients set this new flag in VFS_SET().

A few other related changes:
- Add an assertion to ensure that TDF_SBDRY doesn't leak to userland.
- When a lookup request uses VOP_READLINK() to follow a symlink, mark
  the request as being on behalf of the thread performing the lookup
  (cnp_thread) rather than using a NULL thread pointer.  This causes
  NFS to properly handle signals during this VOP on an interruptible
  mount.
- Ignore thread suspend requests due to SIGSTOP if stop signals are
  currently deferred.  This can occur if a process is stopped via
  SIGSTOP while a thread is running or runnable but before it has set
  TDF_SBDRY.

Obtained from: FreeBSD

Revision 7912 - Directory Listing - [select for diffs]
Modified Wed Sep 14 19:36:54 2016 UTC (7 years, 8 months ago) by laffer1
Diff to previous 5234
remove cvs2svn prop

Revision 5234 - Directory Listing - [select for diffs]
Modified Tue Oct 9 04:08:21 2012 UTC (11 years, 7 months ago) by laffer1
Diff to previous 5201
sync with freebsd 9 stable.

Revision 5201 - Directory Listing - [select for diffs]
Modified Sat Sep 15 17:58:22 2012 UTC (11 years, 8 months ago) by laffer1
Diff to previous 5200
tag

Revision 5200 - Directory Listing - [select for diffs]
Modified Sat Sep 15 17:57:20 2012 UTC (11 years, 8 months ago) by laffer1
Diff to previous 5076
sync build tools with freebsd 9 stable

Revision 5076 - Directory Listing - [select for diffs]
Modified Sat Jul 21 15:17:36 2012 UTC (11 years, 9 months ago) by laffer1
Diff to previous 4766
This commit was generated by cvs2svn to compensate for changes in r5075,
which included commits to RCS files with non-trunk default branches.
Revision 4766 - Directory Listing - [select for diffs]
Modified Wed Mar 28 23:22:17 2012 UTC (12 years, 1 month ago) by laffer1
Diff to previous 4548
tag

Revision 4548 - Directory Listing - [select for diffs]
Modified Wed Jan 11 04:11:27 2012 UTC (12 years, 4 months ago) by laffer1
Diff to previous 1822
update stub generator

Revision 1822 - Directory Listing - [select for diffs]
Modified Fri Sep 12 19:41:13 2008 UTC (15 years, 8 months ago) by laffer1
Diff to previous 6
Bring in new tools

Revision 6 - Directory Listing - [select for diffs]
Modified Sat Feb 25 02:38:42 2006 UTC (18 years, 2 months ago) by laffer1
Diff to previous 3
This commit was generated by cvs2svn to compensate for changes in r5, which
included commits to RCS files with non-trunk default branches.
Revision 3 - Directory Listing - [select for diffs]
Added Sat Feb 25 02:29:52 2006 UTC (18 years, 2 months ago) by laffer1
This commit was generated by cvs2svn to compensate for changes in r2, which
included commits to RCS files with non-trunk default branches.

Convenience Links