Move test for -w flag outside of the code dealing with -D (defaults).
This should cause -w's argument not to be ignored in the usermod case,
so it will affect modification of the user's password instead of using
the pw.conf (or internal default=no '*') password method.
PR: bin/11168
Allow -g with an empty argument in the -D case. This allows -g "" to set
no default group (and thus fall back to user-based groups instead).
PR: bin/5717
- Don't use quotes for the MD_ROOT_SIZE option when generating the BOOTMFS
kernel config file.
- Add WORLD_FLAGS and KERNEL_FLAGS so you can build world and kernel with
extra make options such as -jX to speed up release builds.
- When building kernels, allow their hints to tag along, and use this to
install hints onto the boot floppy. Since the boot floppy doesn't load
loader.4th, we have to change device.hints to strip comments and change
each line to an explicit set command.
Fix another missed case where usermod would not set the "modified" flag:
-h - to set no password. But only mark modified if the account is not
already locked (i.e. first char of crypt password field is '*').
PR: bin/19999
des [Wed, 19 Jul 2000 23:56:45 +0000 (23:56 +0000)]
Fix two bugs related to resumed transfers:
- if the dates didn't match, fetch would append the received file to the
existing file instead of replacing it.
- if the local file was complete and up-to-date, fetch would miscalculate
the expected size and report a failure instead of a success, because it
had no way of knowing that the server was actually resending the entire
file since the requested offset was invalid.
des [Wed, 19 Jul 2000 23:43:49 +0000 (23:43 +0000)]
Don't try to skip to the requested offset if the server returns more data
than requested. Instead, inform the caller of the real offset by modifying
the offset field in the original struct url, and let him decide how to handle
the situation.
Remove node's name reference when the interface is detached;
otherwise, the ng_ether.ko KLD will never be unloadable after
all Ethernet interfaces are detached, as it should be, because
of the lingering extra reference.
Submitted by: "Yevmenkin, Maksim N, CSCIO" <myevmenkin@att.com>
Default the pcic to polling. Some laptops need to have polling mode
due to a paucity of IRQs. I have some reservations about this, so I'm
not going to MFC this just yet. I'm doing this to see how many
problems it causes so we can do this in 4.2. I've been seeing hangs
on my laptop from time to time, but sometimes it was not in polling
mode, other tmies it was. Don't know if this is one problem or more
than one.
Fix an alpha-only race which causes the transmit side of the chip to
lock up under moderate to heavy load.
The status & command fields share a 32-bit longword. The programming
API of the eepro apparently requires that you update the command field
of a transmit slot that you've already given to the card. This means
the card could be updating the status field of the same longword at
the same time. Since alphas can only operate on 32-bit chunks of
memory, both the status & command fields are loaded from memory &
operated on in registers when the following line of C is executed:
sc->cbl_last->cb_command &= ~FXP_CB_COMMAND_S;
The race is caused by the card DMA'ing up the status at just the wrong
time -- after it has been loaded into a register & before it has been
written back. The old value of the status is written back, clobbering
the status the card just DMA'ed up. The fact that the card has sent
this frame is missed & the transmit engine appears to hang.
Luckily, as numerous people on the freebsd-alpha list pointed out, the
load-locked/store-conditional instructions used by the atomic
functions work with respect changes in memory due to I/O devices. We
now use them to safely update the command field.
Remove mention of SYNCER_MAXDELAY and "thirty seconds", using more
general terms instead. This follows a discussion with alfred,
in which it became clear that I had misunderstood sched_sync().
Clean up this new manual page. This delta includes content and
whitespace changes, which should not be a problem because this
is only the second revision of the file and translators are
unlikely to have gotten started yet.
Studied the tech docs for the Voodoo3 and Banshee, and hopefully fixed the
errors that plagued those cards with XFree86 4.0. They have two memory
ranges as well as an IO port range to them. Also cleaned up the three
warning messages that I got, from inb(), outb() and linuxulator. Also, I
noticed that the DRI and Glide support for the Voodoo4 and 5 has been
placed upon linux.3dfx.com, too bad they haven't released the tech docs
yet. Apparently, they are still pushing glide for all of us, so I will try
and add support once those tech docs are up.
Save any binaries we use by installworld, so that we won't use the
binaries we just installed. This allows a future upgrade target to
install a new system without intermediate reboots and also
prevents conflicts for parallel make runs where we might exec a
binary that's being installed at the same time.
o Convert to <inttypes.h> style fixed sized types to facilitate porting to
other systems.
o Normalize copyright text.
o Clean up probe code function interfaces by passing around a single
structure of common arguments instead of passing "too many" args
in each function call.
o Add support for the AAA-131 as a SCSI adapter.
o Add support for the AHA-4944 courtesy of "Matthew N. Dodd" <winter@jurai.net
o Correct manual termination support for PCI cards. The bit definitions
for manual termination control in the SEEPROM were incorrect.
o Add support for extracting NVRAM information from SCB 2 for BIOSen
that use this mechanism to pass this data to OS drivers.
o Properly set the STPWLEVEL bit in PCI config space based on the
setting in an SEEPROM.
o Go back to useing 32byte SCBs for all controllers. The current
firmware allows us to embed 12byte cdbs on all controllers in
a 32byte SCB, and larger cdbs are rarely used, so it is a
better use of this space to offer more SCBs (32).
o Add support for U160 transfers.
o Add an idle loop executed during data transfers that prefetches
S/G segments on controllers that have a secondary DMA engine
(aic789X).
o Improve the performance of reselections by avoiding an extra
one byte DMA in the case of an SCB lookup miss for the reselecting
target. We now keep a 16byte "untagged target" array on the card
for dealing with untagged reselections. If the controller has
external SCB ram and can support 64byte SCBs, then we use an
"untagged target/lun" array to maximize concurrency. Without
external SCB ram, the controller is limited to one untagged
transaction per target, auto-request sense operations excluded.
o Correct the setup of the STPWEN bit in SXFRCTL1. This control
line is tri-stated until set to one, so set it to one and then
set it to the desired value.
o Add tagged queuing support to our target role implementation.
o Handle the common cases of the ignore wide residue message
in firmware.
o Add preliminary support for 39bit addressing.
o Add support for assembling on big-endian machines. Big-endian
support is not complete in the driver.
o Correctly remove SCBs in the waiting for selection queue when
freezing a device queue.
o Now that we understand more about the autoflush bug on the
aic7890, only use the workaround on devices that need it.
o Add a workaround for the "aic7890 hangs the system when you
attempt to pause it" problem. We can now pause the aic7890
safely regardless of what instruction it is executing.
cam_ccb.h:
Bring back the CAM_NEGOTIATE ccb flag. This flag indicates
that SPI transfer negotiation should occur concurrently with the
execution of this CCB. The flag is not yet used by the XPT but
is required for proper support of multi-initiator configurations
where topology scans cannot rely on a bus reset to invalidate
prior negotiations.
cam_xpt.c:
Don't allow DT transmission rates to be specified for devices
that don't have the DT feature listed in their inquiry data.
Add an empty crunch.inc with instructions that you can use it to adjust
the building of the crunched binary.
I'll add examples when I add the post-include mechanism, since the
crunch.mk environment stomps on the pre-included crunch.inc's variables
at the moment.
Make a separate build directory in which to put all the generated
objects, to simplify working with PicoBSD.
Add the ability to put make instructions in crunch.inc to pass to the
build process.
Now explicitly make the objects in our own object tree, since we want to
build the objects with our own defines, and allow this to occur in a
common object tree for all PicoBSD builds, if required. This is
controlled by the COMM_OBJ variable, for those who don't want this -
setting it to /usr/obj again will just pick up the objects from your
last make buildworld, as before.
Fix the one 'obj'-related breakage, and quieten the build. Also change
symlinks from '/sbin' to 'sbin', so following the links make sense when
not on the disk itself.
First part of PicoBSD makeover, adding basic 'obj' facilities, allowing
for read-only src tree.
While I'm there:
1) Use kgzip, not kzip, since kzip certainly doesn't make bootable
kernels anymore. loader still isn't built separately, let alone without
forth support. This needs to be fixed.
2) Expand the mount/vnconfig examples to be the defacto way of making
sure the filesystems are mounted, unmounted, or not configured. This
needs more work.
3) quieten the build substantially, so errors are more prominent
4) Start of '-j' ability. Current style isn't quite in the correct
dependency format for this, but obvious mistakes (changing directories
in main shell) are fixed.
Approved by: grog, dwhite, luigi (no objections to me doing a makeover)
Allow logger to send messages directly to a remote syslog. (This
only does IPv4 as our syslogd only does IPv4. I dunno if the KAME
people have any plans for syslogd).
PR: 19821
Submitted by: Nick Hilliard <nick@iol.ie>
Reviewed by: sheldonh