Since my current code is already pretty stable, I am now releasing the patches 
that I had to apply to the original sources (relevant to OpenSolaris).

The current "linux.patch" file weights at about 63KB, this would reduce it to 
roughly 50% its size (the rest is mostly just commenting code for 
unimplemented features or some minor Linux-specific changes).

So, here are the patches:

-----------------------------------------------------------------------
http://www.wizy.org/files/zfs-patches/01-printf-casts.patch

gcc warns about printf() argument type mismatches. I had 2 choices - either 
use a -W.. flag to disable warnings or typecast the arguments. I opted for 
typecasting the arguments. I think its safer since I can't guarantee that 
there aren't size mismatches between some Linux and Solaris types (what would 
happen if there was a "%llu" format string and it was provided a 32-bit 
variable?).

-----------------------------------------------------------------------
http://www.wizy.org/files/zfs-patches/02-no-trigraph.patch

Remove 1 trigraph. Standard C99 has trigraphs and AFAIK there's no way to 
disable it in gcc when the -std=c99 flag is given. -Wno-trigraphs only 
disables the warning, if I'm not mistaken.

-----------------------------------------------------------------------
http://www.wizy.org/files/zfs-patches/03-char-ambiguity.patch

gcc complained about signed/unsigned char ambiguity.

-----------------------------------------------------------------------
http://www.wizy.org/files/zfs-patches/04-unused-code.patch

Unused/dead code.

-----------------------------------------------------------------------
http://www.wizy.org/files/zfs-patches/05-boolean-argument.patch

Better pointer convertion (removes gcc warning/error).

-----------------------------------------------------------------------
http://www.wizy.org/files/zfs-patches/06-zpool-no-memory.patch

The no_memory() function in zpool was conflicting with the no_memory() 
function in libzfs (currently I'm still statically compiling it).

-----------------------------------------------------------------------
http://www.wizy.org/files/zfs-patches/07-ztest-child.patch

POSIX waitpid() doesn't have the WEXITED flag.

-----------------------------------------------------------------------
http://www.wizy.org/files/zfs-patches/08-int-pointers.patch

Integer/pointer NULL mismatches...

-----------------------------------------------------------------------
http://www.wizy.org/files/zfs-patches/09-missing-enums.patch

You should have a good look at this one. I think this gcc warning is very 
helpful, so if some enums aren't really necessary, please add the "default: 
break" case.

-----------------------------------------------------------------------
http://www.wizy.org/files/zfs-patches/10-macro-expansion.patch

The first hunk was giving a warning in gcc. The second one was giving an 
error.

-----------------------------------------------------------------------
http://www.wizy.org/files/zfs-patches/11-arc-userland-bug.patch

This solves bug #6453172.

-----------------------------------------------------------------------
http://www.wizy.org/files/zfs-patches/12-catch-timer-overflow.patch

An assert that was helpful in debugging timer overflows.

-----------------------------------------------------------------------
http://www.wizy.org/files/zfs-patches/13-check-error.patch

Checks for errors in mutexes/condvars.

-----------------------------------------------------------------------
http://www.wizy.org/files/zfs-patches/14-brace-syntax.patch

Use the correct C99 syntax for nested structs.


That's it :)

Reply via email to