[PATCH] Replaced bz2 decompression code with libbz2

2014-01-05 Thread Ignazio Sgalmuzzo
configure.ac: added check for libbz2 libstore/Makefile: linked libbz2 ext2fs/Makefile: linked libbz2 do-bunzip2.c: rewritten do_bunzip2 using libbz2 calls. Removed no longer needed functions. --- configure.ac |2 + ext2fs/Makefile |2 +- libstore/Makefile |2 +- lib

Re: Valgrind porting

2014-01-05 Thread Subhashish Pradhan
Okay! I read the ideas page, and it says as a starter, valgrind could be taught some linux ioctls. ioctl() is a system call for controlling certain operations of hardware of the system. So teaching valgrind the syscall means directing memcache tool to intercept the read/write operations of the sy

Re: Valgrind porting

2014-01-05 Thread Samuel Thibault
Subhashish Pradhan, le Mon 06 Jan 2014 01:27:08 +0530, a écrit : > Has anyone started working on porting valgrind to hurd? Not that I know of. > If not, I'd like to take up the task (and for GSOC). Cool :) > What would be the essential skills that would be required for this task? > > Shell scr

Re: [PATCH 4/4] kern: optimize the layout of struct kmem_cache

2014-01-05 Thread Samuel Thibault
Justus Winter, le Mon 06 Jan 2014 00:34:55 +0100, a écrit : > * kern/slab.h (struct kmem_cache): Reorder the fields so that all hot > fields are within the first cache line. Did you try to benchmark this a bit? I'm unsure about all movements: nr_free_slabs, for instance, should probably really go

Re: [PATCH 3/4] kern: explain the significance of the chosen length

2014-01-05 Thread Samuel Thibault
Justus Winter, le Mon 06 Jan 2014 00:34:54 +0100, a écrit : > * kern/slab.h (KMEM_CACHE_NAME_SIZE): Explain the significance of the > chosen length. Ack. > --- > kern/slab.h | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/kern/slab.h b/kern/slab.h > index a4219c4..fd

Re: [PATCH 1/4] linux: fix bit tests

2014-01-05 Thread Samuel Thibault
Justus Winter, le Mon 06 Jan 2014 00:34:52 +0100, a écrit : > The pattern is !x&y. An expression of this form is almost always > meaningless, because it combines a boolean operator with a bit > operator. In particular, if the rightmost bit of y is 0, the result > will always be 0. > > Fixed using

Re: [PATCH 2/4] linux: fix bit tests

2014-01-05 Thread Samuel Thibault
Justus Winter, le Mon 06 Jan 2014 00:34:53 +0100, a écrit : > The pattern is !x&y. An expression of this form is almost always > meaningless, because it combines a boolean operator with a bit > operator. In particular, if the rightmost bit of y is 0, the result > will always be 0. > > Fixed using

Valgrind porting

2014-01-05 Thread Subhashish Pradhan
Has anyone started working on porting valgrind to hurd? If not, I'd like to take up the task (and for GSOC). What would be the essential skills that would be required for this task? Shell scripting, understanding of C, and anything else? Regards, Subhashish

[PATCH 2/4] linux: fix bit tests

2014-01-05 Thread Justus Winter
The pattern is !x&y. An expression of this form is almost always meaningless, because it combines a boolean operator with a bit operator. In particular, if the rightmost bit of y is 0, the result will always be 0. Fixed using coccinelle. // !x&y combines boolean negation with bitwise and // // Co

[PATCH 4/4] kern: optimize the layout of struct kmem_cache

2014-01-05 Thread Justus Winter
* kern/slab.h (struct kmem_cache): Reorder the fields so that all hot fields are within the first cache line. --- kern/slab.h | 18 -- 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/kern/slab.h b/kern/slab.h index fd65893..457dee4 100644 --- a/kern/slab.h +++ b/kern

[PATCH 3/4] kern: explain the significance of the chosen length

2014-01-05 Thread Justus Winter
* kern/slab.h (KMEM_CACHE_NAME_SIZE): Explain the significance of the chosen length. --- kern/slab.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/kern/slab.h b/kern/slab.h index a4219c4..fd65893 100644 --- a/kern/slab.h +++ b/kern/slab.h @@ -147,7 +147,9 @@ typedef vm_off

[PATCH 1/4] linux: fix bit tests

2014-01-05 Thread Justus Winter
The pattern is !x&y. An expression of this form is almost always meaningless, because it combines a boolean operator with a bit operator. In particular, if the rightmost bit of y is 0, the result will always be 0. Fixed using coccinelle. // !x&y combines boolean negation with bitwise and // // Co

[RFC] kern: simple futex for gnumach (version 10)

2014-01-05 Thread Marin Ramesa
This time with a sync circle and a simple mutex (based on Event and Mutex Take 3 chapters from "Futexes Are Tricky"). --- Makefrag.am|2 + kern/futex.c | 320 kern/futex.h | 104 ++ kern/startup.c |3 + 4 f