- Avoid atomics in more places.
- Remove the per-descriptor mutex, and just use filedesc_t::fd_lock.
It was only being used to synchronize close, and in any case we needed
to take fd_lock to free the descriptor slot.
- Optimize certain paths for the <NDFDFILE case.
- Sprinkle more comments and assertions.
- Cache more stuff in filedesc_t.
- Fix numerous minor bugs spotted along the way.
- Restructure how the open files array is maintained, for clarity and so
that we can eliminate the membar_consumer() call in fd_getfile(). This is
mostly syntactic sugar; the main functional change is that fd_nfiles now
lives alongside the open file array.
Some measurements with libmicro:
- simple file syscalls are like close() are between 1 to 10% faster.
- some nice improvements, e.g. poll(1000) which is ~50% faster.
characters and we allocated only 1024.
While here:
- use snprintf to prevent this from happening in the future.
- don't close fd twice on error.
- pass unsigned char to ctype.h functions.
we don't have. Replace ".Dd $Mdocdate" with ".Dd Month Day Year" so
that the date comes out right when man pages get built. This will
doubtless need hand conflict resolution whenever these pages are
re-imported.
Note that it would be interesting to have some similar facility for
NetBSD, but I don't think a custom rcs keyword is the right thing --
maybe we can teach groff to parse $Date$
file, we conditionally define MIN and MAX.)
Including sys/param.h unconditionally like this seems unportable (in
view of the fact that file is built as a host tool), but other parts of
the file sources already include sys/param.h, so this change doesn't
make it worse.
This might fix PR 40539 from Brad Parker.
due to a "-u" option.
(There is a bug report to the subcect in ntp's bugzilla, listed
as "closed", almost two years old. Don't know what happed. My patch
is not derived from that one because the code changed.)
PR# 39364: wpa_cli scan_results shows '0' signal level
Use rssi for level (instead of qual) in scan results, following examples
set by the wpa_supplicant ndis and iphone drivers.
nvi-1.81 restrict wchar_t as 24bit, so under some locale(eg. zh_CN.GB18030)
search/regex doesn't work and sometimes dumps core(because of negative wchar_t value).
expandtab, et [off]
Prevent the use of <tab> characters in leading whitespace when
shifting text, autoindenting, indenting with <control-T>, or
outdenting with <control-D>.
- netbsd specific support
- header files
- our ioctls to get/set bssid and ssid
- use __FUNCTION__ instead of __func__
- correct handling of interfaces appearing and dissappearing, fixing
unreached code!
- debugging messages for event changes
- keep a local copy of the interface status so that we can tell if we
have notified wpa_supplicant yet about the interface change or not.
XXX: There was a byte swapping line that I commented out and I am not
sure if it is correct.
garbled. When vi creates a new EXF structure it did not set all the fd related
fields to -1, so if the fd field was never initialized, it was 0 because of
the calloc() call, so closing the file, ended up closing 0, so the terminal
fd was closed and that prevented the ioctl to restore the term settings from
succeeding.
Adjust a definition of MKDIR_P to invoke $ac_install_sh script
via $(SHELL) so that it will work even if executable bits are not
preserved in the source archives.
No objection on tech-toolchain.
(It was used in wrong context so wasn't replaced.)
I reported this upstream and provided fix to lwresd.docbook.
I didn't commit fix here for docbook file, because
NetBSD doesn't regenerate the manual page.
first two chars directly.
Don't fail if FS is longer than 9 characters, but allocate a copy
dynamically and fail if that can't be done. Make inputFS static.
OK martin, bjs
a copy of its string and deal with DONTFREE properly, so that we don't try
to free the OCELL pointer later which points to a literal string in the text
segment.
- bsdtar is using the hardlink resolver code from libarchive now,
making it generate correct links for newc format
- fix a number of non-exploitable integer and buffer overflows
- SIGINFO/SIGUSR1 support for bsdtar
- bsdtar -s support
- better mtree support, it should now be able to handle the full syntax
of NetBSD's mtree
- handle extraction of archives where hardlink and linked to entry don't
agree on the permission (base.tgz has such entries for systat)
dhcpcd is a small DHCP client, supporting most, if not all, features of
dhclient. It is much smaller (1/6 of the size on amd64), but still
supports many of the more advanced modern RFCs like IPv4LL (RFC 3927),
Classless Static Routes (RFC 3442) and Node-specific Client Identifiers
(RFC 4361). It was written by Roy Marpled, partly in reply to the
discussion of the DHCP client Sommer of Code project.
Adds the following:
. tries to be "space safe" in the file names (untested)
. handle a couple more RCS ids being used by nvi
. handle properly several RCS ids on one line (happens in nvi)
... and of course adapt everything to nvi
- fix bugs in link resolver, mostly affecting bsdcpio [from NetBSD]
- fix bsdcpio -p for hardlinks
- correctness improvements for directory name handling with ustar format
- handle empty filenames correctly
- allow bsdtar -r and -T to be used together as well as --format with -r
and -u.
Changes in this release:
* Clauses 3 and 4 of the BSD license used by the project were dropped.
All the code is now under a 2-clause BSD license compatible with the
GNU General Public License (GPL).
* Added a C-only binding so that binary test programs do not need to be
tied to C++ at all. This binding is now known as the atf-c library.
* Renamed the C++ binding to atf-c++ for consistency with the new atf-c.
* Renamed the POSIX shell binding to atf-sh for consistency with the new
atf-c and atf-c++.
* Added a -w flag to test programs through which it is possible to specify
the work directory to be used. This was possible in prior releases by
defining the workdir configuration variable (-v workdir=...), but was a
conceptually incorrect mechanism.
* Test programs now preserve the execution order of test cases when they
are given in the command line. Even those mentioned more than once are
executed multiple times to comply with the user's requests.
in which "/wherever/src.2/../tools" was incorrectly changed to
"/wherever/src./tools" instead of the desired "/wherever/tools".
It's not clear to me that this script has any business trying to do this
sort of rewriting (and there's no guarantee that "/wherever/foo/.." and
"/wherever" both refer to the same place), but at least the new code
tries to be more careful than the old code.
- bsdpcio and bsdtar support more of the nbpax options
- linkify interface can handle all the known hardlink resolution
strategies
- mtree support extended, now it can almost process METALOG directly
- compress(1)-like write support
- fix gname/uname mixup
Major new features:
- work-in-progress cpio frontend
- much less data copying when handling uncompressed archives
- fix bugs for handling very large archives
- support for more zip archives and some of the self-extracting ones
Changes in this release:
* Added two new manual pages, atf-c++-api and atf-sh-api, describing the
C++ and POSIX shell interfaces used to write test programs.
* Added a pkg-config file, useful to get the flags to build against the
C++ library or to easily detect the presence of ATF.
* Added a way for test cases to require a specific architecture and/or
machine type through the new 'require.arch' and 'require.machine'
meta-data properties, respectively.
* Added the 'timeout' property to test cases, useful to set an upper-bound
limit for the test's run time and thus prevent global test program stalls
due to the test case's misbehavior.
* Added the atf-exec(1) internal utility, used to execute a command after
changing the process group it belongs to.
* Added the atf-killpg(1) internal utility, used to kill process groups.
* Multiple portability fixes. Of special interest, full support for SunOS
(Solaris Express Developer Edition 2007/09) using the Sun Studio 12 C++
compiler.
* Fixed a serious bug that prevented atf-run(1) from working at all under
Fedora 8 x86_64. Due to the nature of the bug, other platforms were
likely affected too.
the interoperation between the NetBSD iSCSI target and the Linux
open-iscsi initiator.
Add details about inter-operation with the NetBSD iSCSI initiator.
Add dates to all entries.
Add last updated date to the COMPATIBILITY file.
of the physical size of the regular file. This is useful for presenting
ISO images to initiators, as in the following:
In /etc/iscsi/targets:
# present an ISO image
extent2 /usr/sets/20071214/release/iso/i386cd.iso 0 size
target2 ro extent2 any
% priv /etc/rc.d/iscsi_target restart
Stopping iscsi_target.
Starting iscsi_target.
Reading configuration from `/etc/iscsi/targets'
target0:rw:any
extent0:/tmp/iscsi-target0:0:104857600
target1:rw:any
extent1:/tmp/iscsi-target1:0:52428800
target2:ro:any
extent2:/usr/sets/20071214/release/iso/i386cd.iso:0:354906112
DISK: 1 logical unit (204800 blocks, 512 bytes/block), type iscsi fs
DISK: LUN 0: 100 MB disk storage for "target0"
DISK: 1 logical unit (102400 blocks, 512 bytes/block), type iscsi fs
DISK: LUN 0: 50 MB disk storage for "target1"
DISK: 1 logical unit (693176 blocks, 512 bytes/block), type iscsi fs
DISK: LUN 0: 338 MB readonly disk storage for "target2"
TARGET: TargetName is iqn.1994-04.org.netbsd.iscsi-target
%
Please note that the NetBSD initiator can mount (via vnd) an iSCSI target
presented in this manner. The Microsoft iSCSI initiator sees the read-only
target as a normal SCSI disk, and fails (not surprisingly) to initialize
the disk. It's now possible to make ISO images available via iSCSI, and
NetBSD will DTRT.
In read-only targets, don't attempt to seek to the last block and rewrite
it, it may not work.
Don't assign 8 MB of unused space for use in each iSCSI disk - just use
1MB, which will be enough for the scatter gather iovecs.
Get rid of some dead code.