| Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
statements.
|
|
most DPISTRLEN (32) characters so there is no need for fancy dynamic
growing strings. Use a DPISTRLEN long buffer and bail if it fills up.
Rename get_string() to get_dpistr() and get_string_argument() to
get_dpstr_argument() to emphasize they will return strings that fit
in DPISTRLEN.
Rework & simplify a pair of their consumers - do_rename_partition() and
do_change_type() - to be more obviously identitical to each other bar
the displayed verbiage.
|
|
OK krw@
|
|
OK mpi@
|
|
strlcpy() to fill them.
They are also supposed to be NUL-padded so zap previous contents
before copying in possibly shorter new values.
|
|
ok tb@
|
|
|
|
bits in the form:
for (i = 1; i; i <<= 1)
This avoids undefined operations when shifting into and out of the
highest-order bit.
ok millert@
|
|
with emacs' behaviour.
from Harald Dunkel via Han Boetes
ok lum@
|
|
ok nicm@
|
|
|
|
statements. 0 -> NULL for pointer checks.
|
|
Xen doesn't provide transmit fragment chains so initially they were
emulated but amount of grant table entries wasted in the process was
astronomical (9 times more than after this change). So while code
readability was sacrificed a bit, the change comes with a very nice
transmit performance improvement and taxes grant table references
much less than before.
|
|
Setting rxr_ and/or txr_cons_event value allows domU to delay completion
notification for receive and/or transmit ring to specified values of
consumer index. rxr_ and txr_prod_event values are updated by dom0 and
don't seem to hold any significance for us.
|
|
|
|
Grant table API is constructed in a way that once allocated grant table
entries are marked as used and cannot be given away again to some other
user. At the same time xen_grant_table_enter and _remove do not operate
on the same grant reference at the same time, so there's no need for a
lock here. Guard flag operations with memory fences to ensure correct
store/load order. This provides some decent performance improvement as
well.
|
|
David CARLIER
|
|
This debugging check has been helpful in identifying and fixing
a few issues already. Subject to removal in the future however.
|
|
|
|
When executed under the hypervisor we need to make sure that CAS
and other atomic operations are executed while locking the bus.
Problem reported by Imre Oolberg <imre at auul ! pri ! ee>, thanks!
|
|
by POSIX and as FreeBSD, SunOS 10/11, and glibc also do it. Note
that an enquiry to the Austin Group led to the conclusion that this
change probably violates the C standard: C and POSIX unintentionally
conflict. But the POSIX behaviour makes more sense (easier to write
correct error handling code for it, and a lower risk that programs
miss errors) and is much more widespread, and the Austin Group
intends to approach the C committee in order to adjust the C standard.
See: http://austingroupbugs.net/view.php?id=1022
While here, do not set errno a second time, wcrtomb(3) already did that,
and it is required to do it by the standard.
OK millert@ and tedu@, and jca@ no longer objects
|
|
the generation bit to pass the tx descriptor and mbuf to the "hardware".
This way bpf is not called if vmxnet3_load_mbuf dropped the mbuf.
Tested by me
OK mikeb@
|
|
call. Note that using ftruncate() to extend a file is not portable
(POSIX allows either zero-filling until the given size is reached, or
alternatively erroring out), but that shouldn't be a proble as vmm(4)
isn't cross-platform either. unlink() the image file when extending
it fails for consistency with the other error case (the file can't be
created).
From Martin Natano
OK mlarkin@
|
|
evaluated first, resulting in res->size /= 1. Remove the division and
the following check, as it can never fail; it is a left-over from
previous code that didn't check the size in the caller.
From Martin Natano
OK mlarkin@
|
|
of logical block. Rely on read_dpme() to do the correct thing.
|
|
from richard proctor on bugs@
|
|
diff from richard proctor on bugs@
|
|
int-to-str conversions and just use constants instead. The only binary
change is caused by using an unnecessarily large buffer for an int. This
is a consequence of simplifying some code that will be gone soon.
ok nicm@
|
|
|
|
feedback and OK halex@
OK krw@
|
|
endian or alignment issues forcefully. Removes need for convert_*
functions so unhook convert.c from build. read/write_block become
static functions inside file_media.c.
Tweak struct block0 to stop trying to handle alignment issues by clever
declaration. Rely on the new functions to accurately translate between
on-disk and in-memory layouts.
Enables pdisk to work on amd64 and likely other architectures if
it's ever desirable. Does bring back DEV_BSIZE to pdisk.c since the
in-memory structure will *not* be 512 bytes on other archs.
|
|
|
|
|
|
Better comments, make all reserved fields uint8_t arrays, don't
claim uint32_t fields are actually pointers.
|
|
tested and OK sthen@
OK with minor tweak schwarze@
|
|
suggested by & OK claudio@
OK daniel@
|
|
suggested by & OK claudio@
OK daniel@ jsg@
initial review millert@ and tb@ thanks.
|
|
|
|
OK mpi@ dlg@ sthen@
|
|
|
|
|
|
ok millert@
|
|
ok mpi@ millert@
|
|
|
|
|
|
|
|
|