pmf_private { ... } pmf_private_t' into a struct definition and a
typedef definition.
Surely it is better to fix ctags
David
--
David Laight: da...@l8s.co.uk
], and that the
count of processes is correct.
[1] consider what happens if the proc table has to be extended,
or when a process is in a fork/exit loop.
David
--
David Laight: da...@l8s.co.uk
, and the
program was a network daemon.)
David
--
David Laight: da...@l8s.co.uk
that modern c++ with
-Wold-style-casts does not bitch.
Do we really have to do that, it starts making files completely unreadable.
David
--
David Laight: da...@l8s.co.uk
is plain stupid.
Besides, there should be no casts in system headers ;-}
What happens if these casts are put into inline functions inside the
'exterrn C' block. The compiler really has no excuse to warn
then, if it does it is a compler bug.
David
--
David Laight: da...@l8s.co.uk
On Thu, Aug 13, 2009 at 08:41:36PM +0200, Alan Barrett wrote:
What is an undescribed, direct ioctl, and where is it documented?
Probably one that doesn't abuse the cmd field to include the length etc!
David
--
David Laight: da...@l8s.co.uk
a symbol lookup...)
There are probably other places where it is difficult to call an
explicit initialiser.
It is all rather similar to the proliferation of memory pools - for
things where 'malloc' would be fine.
David
--
David Laight: da...@l8s.co.uk
for strings with whitespace.
Sometimes I empty IFS
David
--
David Laight: da...@l8s.co.uk
On Sun, Sep 20, 2009 at 05:32:17PM -0400, Christos Zoulas wrote:
| Although posix defines strict rules for expressions with small
| numbers of arguments, netbsd'd parser doesn't obey them!
Really? Can you give me an example.
See PR/34646
$ test ! = foo
David
--
David Laight: da
On Thu, Oct 15, 2009 at 12:01:01AM +0200, Alan Barrett wrote:
On Wed, 14 Oct 2009, David Laight wrote:
Module Name:src
Committed By: dsl
Date: Wed Oct 14 21:25:52 UTC 2009
Modified Files:
src/lib/libc/stdio: fgets.c vfprintf.c
Log Message
I've been caught out once too often by an
unexpected cast converting beteen pointers and integers.
Some of these lint checks really should have been killed once
ANSI function prototypes were invernted.
David
--
David Laight: da...@l8s.co.uk
fail because another lwp owns it ...
I hope it is only the checkin comment that is inverted!
David
--
David Laight: da...@l8s.co.uk
want to assume that the kernel is always compiled
using %ebp as a frame pointer - x86 has few enough registers that
freeing %ebp is probably a performance gain!
David
--
David Laight: da...@l8s.co.uk
On Sat, Nov 07, 2009 at 12:48:16AM -0700, M. Warner Losh wrote:
which ones have the same name, but different behavior on OS X? A quick read
of the man pages suggests they are identical...
Check about whether they need a \n at the end of the format.
David
--
David Laight: da
On Sun, Nov 15, 2009 at 08:10:20PM +, David Holland wrote:
On Sun, Nov 15, 2009 at 01:39:00PM +, David Laight wrote:
Avoids problems with awk processing floating point numbers when LC_NUMERIC
give a decimal point of ','.
Isn't it a bug in awk for the input language to be broken
for defining a symbol is MI.
David
--
David Laight: da...@l8s.co.uk
that referes to the middle of
a struct, not setting a memory location to the address of the it.
David
--
David Laight: da...@l8s.co.uk
On Sat, Nov 28, 2009 at 11:21:30PM +0100, Joerg Sonnenberger wrote:
Are you sure about the PR?
should have been 31368 :-(
David
--
David Laight: da...@l8s.co.uk
.
Tested by running build.sh distribution.
Some versions of make error ${V} when V is undefined.
Safer is ${V:U}
David
--
David Laight: da...@l8s.co.uk
--
David Laight: da...@l8s.co.uk
$(case x in x) echo hello;; esac)
David
--
David Laight: da...@l8s.co.uk
On Mon, Dec 14, 2009 at 06:21:55AM +, David Holland wrote:
On Sun, Dec 13, 2009 at 08:02:24PM +, David Laight wrote:
Log Message:
Another, better, fix for PR/26567.
Only sleep once within each pipe_read/pipe_write call.
If there is no data/space available after we wakeup
io on that fd.)
David
--
David Laight: da...@l8s.co.uk
On Wed, Dec 16, 2009 at 06:24:04AM +, David Holland wrote:
On Tue, Dec 15, 2009 at 06:35:18PM +, David Laight wrote:
Modified Files:
src/sys/kern: sys_pipe.c
Log Message:
Don't ERESTART write() calls for now.
I suspect some programs don't allow for the partial
Module Name:src
Committed By: dsl
Date: Sat Jan 2 16:08:20 UTC 2010
Modified Files:
src/usr.bin/msgc: msg_sys.def
Log Message:
Remove some sign compare warnings.
To generate a diff of this commit:
cvs rdiff -u -r1.37 -r1.38 src/usr.bin/msgc/msg_sys.def
Please note
Module Name:src
Committed By: dsl
Date: Sat Jan 2 17:15:07 UTC 2010
Modified Files:
src/distrib/utils/sysinst/arch/mac68k: menus.md.de menus.md.en
menus.md.es menus.md.pl
Log Message:
Sanitise whitespace to minimise the differences between these files.
To
Module Name:src
Committed By: dsl
Date: Sat Jan 2 20:54:46 UTC 2010
Modified Files:
src/distrib/utils/sysinst/arch/mvme68k: md.c
src/distrib/utils/sysinst/arch/x68k: md.c
Log Message:
Fix another couple of signed v unsigned comparisons of disk block numbers.
To
Module Name:src
Committed By: dsl
Date: Sun Jan 10 15:21:36 UTC 2010
Modified Files:
src/sys/arch/i386/i386: trap.c vector.S
Log Message:
If we fault on the 'iret' during return to userpace (eg if %eip is outside
the bounds of %cs) then hack the stack to contain a normal
Module Name:src
Committed By: dsl
Date: Sun Jan 10 15:37:36 UTC 2010
Modified Files:
src/sys/arch/i386/i386: trap.c
Log Message:
If we fault on the iret during return to userspace, see if we need to
do a lazy update of %cs to make the stack executable.
If a change is
Module Name:src
Committed By: dsl
Date: Sun Jan 17 22:21:18 UTC 2010
Modified Files:
src/sys/arch/i386/i386: trap.c vector.S
Log Message:
Fix 'fault on load of %gs during retirn to userspace' to look for the
correct instruction bytes.
Take the 'fault on load segment
to the stack! But no, the 'status function'
(which just copies info into a big buffer with a few local actions)
managed to generate temporaries all of its own! In this case marking
the target buffer 'volatile' helped no end!
David
--
David Laight: da...@l8s.co.uk
Module Name:src
Committed By: dsl
Date: Sat Feb 6 10:50:52 UTC 2010
Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: packet-parse.c validate.c
Log Message:
Fix printf formats on amd64 (and probably other 64bit systems).
To generate a diff of this commit:
.if ${HAVE_GCC} == 4
as HAVE_GCC may be undefined
That construct may not help size make needs to parse the entire line.
Shorter and safer is:
.if ${HAVE_GCC:U0} == 4
David
--
David Laight: da...@l8s.co.uk
().
__predict_false() yes, but separating things into their own cache lines
is probably a pessimalisation - mainly because it increases the working
set (of cache lines) of the code.
David
--
David Laight: da...@l8s.co.uk
Module Name:src
Committed By: dsl
Date: Mon Feb 22 08:19:38 UTC 2010
Modified Files:
src/gnu/dist/gdb6/gdb: amd64nbsd-tdep.c
Log Message:
Fix check for old trap frame layout.
To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5
??
David
--
David Laight: da...@l8s.co.uk
:
(*bar_baz)();
since the indirect jump is (IIRC) always unpredicted.
the 'if' version stands a chance of correctly predicting the jump.
David
--
David Laight: da...@l8s.co.uk
) to generate a 'netbsd.o' and then do a
final link to include a desired set of modules into a kernel image.
David
--
David Laight: da...@l8s.co.uk
then they get auto built
as part of libc (or whatever the kernel version is called).
David
--
David Laight: da...@l8s.co.uk
it ...
David
--
David Laight: da...@l8s.co.uk
the first PCI bus.
The usual time this causes grief is when the write is a request to remove
an IRQ, and is executed immediately before the ISR returns.
David
--
David Laight: da...@l8s.co.uk
include -1, but maybe the smallest factor should be negative.
David
--
David Laight: da...@l8s.co.uk
On Sun, May 16, 2010 at 11:37:43AM +0200, Martin Husemann wrote:
On Sun, May 16, 2010 at 09:54:49AM +0100, David Laight wrote:
The notion of 'primes' is valid in Z - the definition of a prime is a
number that has no non-unit factors.
Well, I only took the forced (for CS students) math
considered
together for the purpose of .WAIT processing.
The sources on the earlier line precede the .WAIT
Given that dependencies may get added in .for loops, .WAIT does need
to work this way.
In any case, as you know, the .WAIT processing is painfull enough as it is!
David
--
David
be put into the symbol table.
It would solve all the quoting issues.
David
--
David Laight: da...@l8s.co.uk
3
%
Not sure if this is correct or expected but it strikes me as
useful and changes to this behavior would break things...
That is the expected/correct behaviour.
David
--
David Laight: da...@l8s.co.uk
to $(OBJS)
instead of relying on the suffix rules.
If no commands are defined I think make will still use those from the
relevant suffix rule (as happens when the 'stupid rule' is added above).
David
--
David Laight: da...@l8s.co.uk
)
drivers slept in the kernel threads.
David
--
David Laight: da...@l8s.co.uk
the integer type in a struct/union also makes any places
where it is used incorrectly rather more obvious.)
David
--
David Laight: da...@l8s.co.uk
are copied in libc...
When libc starts, all the env strings will be adjacent, and at one end
of the stack area (placed by the kernel during exec).
So presumably the addess of the string can be compared against that
range to determine whether the string was malloc'ed or not.
David
--
David
)
c = *q;
That won't really help - the pages could easily be discarded almost
immediately - eg in order to fault in a later page.
David
--
David Laight: da...@l8s.co.uk
, and that's going
to deny stat() until it's done.
A stat request during a write can safely return the old size.
David
--
David Laight: da...@l8s.co.uk
--
David Laight: da...@l8s.co.uk
be kept elsewhere.
One start would be to add a sys/proc_internal.h so that sys/proc
can be reduced to only stuff that userspace and some kernel parts
are really expected to use.
David
--
David Laight: da...@l8s.co.uk
the emulation root.
But maybe just mount the real filesystem within the rump kernel?
Making something work well enough to copy files is probably not that hard!
David
--
David Laight: da...@l8s.co.uk
implied
from the command.
To my mind this is a horrid hack :-)
David
--
David Laight: da...@l8s.co.uk
general description.
David
--
David Laight: da...@l8s.co.uk
' using all 32-bits.
Allows the case of %ss being less than %cs to work.
Also, completely save and restore the general-purpose registers we use.
It ought to be possible to initialise the gdt (etc) as compile time.
The addresses are always fixed.
David
--
David Laight: da...@l8s.co.uk
in the
kernel text ?
David
--
David Laight: da...@l8s.co.uk
((aligned(n))) for
some fields?
This doesn't make much difference on i386, but will on archs that
don't support misaligned accesses.
David
--
David Laight: da...@l8s.co.uk
(or any division code!).
(Similarly you can avoid the double-word shifts for %x.)
David
--
David Laight: da...@l8s.co.uk
.
David
--
David Laight: da...@l8s.co.uk
framework that sends raw nfs packets.
Hmm, no, maybe I misunderstood. Anyway, the mountd permissions issue
is PR 3019, the longest-lived-without-attention bug in the whole bug
database.
Hm, yes the client side is expected to check for -ro mounts.
David
--
David Laight: da...@l8s.co.uk
for active (vp-v_usecount 1) vnodes gets it right.
Randomly changing v_usecount sounds bogus to me?
Probably hiding some other bug somewhere else.
David
--
David Laight: da...@l8s.co.uk
reference of
the layer vnode - then you need to add 'n - 1' to the ref count
of the lower vnode, not set it to 'n'.
David
--
David Laight: da...@l8s.co.uk
.
David
--
David Laight: da...@l8s.co.uk
.
David
--
David Laight: da...@l8s.co.uk
*_copyout takes an object as second parameter, not a pointer to object.
I hope an 'object' is actually a pointer?
Or is the code passing structures by value ?
David
--
David Laight: da...@l8s.co.uk
crossover is used to
directly connect 2 MAC units on the same PCB.
David
--
David Laight: da...@l8s.co.uk
strange - what type are the actual items being printed?
If they aren't already vaddr_t then PRIxVADDR probably shouldn't be
bing used.
David
--
David Laight: da...@l8s.co.uk
] Otherwise we wouldn't need support for byteswapped fs.
--
David Laight: da...@l8s.co.uk
On Sun, Feb 06, 2011 at 07:46:23PM +, David Holland wrote:
Making .PARSEDIR always absolute should fix this problem, but in the
general case requires realpath().
It will also give problems to anyone using bmake under cygwin to
run windows binaries.
David
--
David Laight: da
On Wed, Feb 09, 2011 at 02:29:58PM +, Antti Kantee wrote:
Hence, prevent rumpclient from using the special fd's 0-2 for its
purposes.
Probably worth dup'ing onto quite high numbers (if possible).
Well, above 20 anyway.
David
--
David Laight: da...@l8s.co.uk
having FFS and ELF support as modules
in GENERIC.
It may be nice that they CAN be modules, but I suspect 99.99% of systems
will need them.
Anyone who wants them as modules can build a kernel without them.
David
--
David Laight: da...@l8s.co.uk
into which module.o can be
linked so build a custom kernel with a list of builtin module.
I might look into this when I get by systems accessible again
(should be soon).
David
--
David Laight: da...@l8s.co.uk
-systems can be critical for mountroot; as kernel cannot have access
to module(7)s without having / mounted first... yes, you see the point.
Does this cause grief with existing installations where the bootloader
also loads these as modules?
David
--
David Laight: da...@l8s.co.uk
isn't a valid transform.
(I presume something else translated the original '\foo.*bar\' ...)
I've known grep where searches for '\word\' were a lot faster than
using -w. Presumably because -w locates the words (start and end)
rather than just the start!
David
--
David Laight: da...@l8s.co.uk
!
At least not unless the structure ends with a series of 'optional'
sub-stuctures that are found by access functions (which may be
#defines for things built into the kernel itself).
David
--
David Laight: da...@l8s.co.uk
, kernel stuff
should be compiled without that section.
David
--
David Laight: da...@l8s.co.uk
of the cases where we already print a (64-bit) daddr_t.
I'm surprised that doesn't explode the sizes of the boot code.
David
--
David Laight: da...@l8s.co.uk
a different tool.
(Possibly just a shell script)
David
--
David Laight: da...@l8s.co.uk
On Thu, Mar 03, 2011 at 12:27:19AM +, David Holland wrote:
On Tue, Mar 01, 2011 at 08:02:40AM +, David Laight wrote:
autogen requires ed(1), which is not provided by our toolchain.
(In other words, this causes a odd build failure on some Linux build
hosts.)
I've
' is an unsigned type, if 'size_t' is
larger than 'int' isn't the convertion 'value preserving' rather
than 'sign preserving'?
So you need ~(size_t)0 if you want to generate the all 1's bit pattern?
David
--
David Laight: da...@l8s.co.uk
this reverted and done properly.
IIRC scanf() and the number processing sort are also required to parse
numbers with the locale's 1000 separator.
This is all fubar when the thousand sep is ' ' or '.'.
David
--
David Laight: da...@l8s.co.uk
be done with the 'initrd' image - either as an image file
or something in the tar archive (IIRC it is likely to be one these days)?
David
--
David Laight: da...@l8s.co.uk
the library code to open /dev/fd/n
David
--
David Laight: da...@l8s.co.uk
certainly faster than the table lookup versions (even when the
table is in the cache).
IIRC it is 3 clocks slower on non-superscaler with zero wait state memory.
David
--
David Laight: da...@l8s.co.uk
On Wed, May 18, 2011 at 02:43:03AM +, David Holland wrote:
On Tue, May 17, 2011 at 09:56:52PM +, David Laight wrote:
cvs rdiff -u -r1.51 -r1.52 src/usr.bin/make/Makefile
uh, did you mean to commit that?
No - I've changed it back.
David
--
David Laight: da...@l8s.co.uk
instead
of having to edit all of the modified makefiles?
David
--
David Laight: da...@l8s.co.uk
the timeout(s) should be settable units that default
to 1 second.
Them the timeouts can be scaled for very slow (or fast) systems.
David
--
David Laight: da...@l8s.co.uk
into a file within the image?
Then the postprocessing phase would have the required data.
Or even in a separate file !
David
--
David Laight: da...@l8s.co.uk
Then the bcsp.h could contain:
CFDRIVER(bcsp);
which gives (effectively) the same guarantee as including ioconf.h.
I think something like that would help building drivers as kernel modules.
David
--
David Laight: da...@l8s.co.uk
or:
#define userconf_bootinfo()
(or maybe both!)
David
--
David Laight: da...@l8s.co.uk
{ \
type _v1 = (v1), _v2 = (v2); \
if (!((_v1) op (_v2))) \
check_error(#v1, #op, #v2, __LINE__, fmt, _v1, _v2); \
} while (0);
#define CHECK_I(v1, op, v1) CHECK(int, %d, v1, op, v2)
So check_error() can print the both values of the erronous test.
David
--
David
On Thu, Jun 02, 2011 at 06:54:44PM +, David Laight wrote:
Module Name: src
Committed By: dsl
Date: Thu Jun 2 18:54:44 UTC 2011
Modified Files:
src/sys/kern: vfs_syscalls.c
Log Message:
Fix type in comment
(before I replace the 'l' with 'curlwp')
Actually I've
On Sat, Jun 04, 2011 at 10:52:47AM +1000, Simon Burge wrote:
On Thu, Jun 02, 2011 at 09:21:11PM +0100, David Laight wrote:
Passing 'l' is a register rename (or copy) so is almost zero cost.
Recovering curlwp may involve a function call, and is, at best, a real
memory access
On Thu, Jun 02, 2011 at 09:21:11PM +0100, David Laight wrote:
On Thu, Jun 02, 2011 at 06:54:44PM +, David Laight wrote:
Module Name:src
Committed By: dsl
Date: Thu Jun 2 18:54:44 UTC 2011
Modified Files:
src/sys/kern: vfs_syscalls.c
Log
:~dsl/protoz
David
--
David Laight: da...@l8s.co.uk
generation of AMD CPUs. So essentially,
IIRC it is something to do with branch prediction?
But my memory keeps thinking of a constraint about the number
of branches/labels in a cache line - and I'm sure the non-use of
1 byte return instructions was all related.
David
--
David Laight: da
On Mon, Jul 25, 2011 at 08:38:13PM +0200, Joerg Sonnenberger wrote:
On Mon, Jul 25, 2011 at 07:24:57PM +0100, David Laight wrote:
On Mon, Jul 25, 2011 at 11:52:52AM +0200, Joerg Sonnenberger wrote:
Much better. One thing remains. It would be nice to replace
.byte 0xf3,0xc3
1 - 100 of 291 matches
Mail list logo