2012-07-11 09:51:56

by Artem Bityutskiy

[permalink] [raw]
Subject: Some warnings

Hi Ted,

just out of curiosity I've checked the patches you have in the 'dev'
branch with aiaiai - it did not fine anything very bad (but sometimes it
does!), but detected that few warnings.

--------------------------------------------------------------------------------

Successfully built configuration "x86_64_defconfig,x86_64,", results:

--- before_patching.log
+++ after_patching.log
@@ @@
+fs/ext4/ext4.h:1670:47: error: bad constant expression [sparse]
+fs/ext4/ext4.h:1670:47: error: bad constant expression [sparse]
@@ @@
+fs/ext4/resize.c: In function ‘ext4_update_super’:
+fs/ext4/resize.c:1200:9: warning: unused variable ‘ret’ [-Wunused-variable]
@@ @@
+fs/ext4/super.c: In function ‘ext4_statfs’:
+fs/ext4/super.c:4779:15: warning: variable ‘overhead’ set but not used [-Wunused-but-set-variable]

--------------------------------------------------------------------------------

The first one is sparse complaining about using dynamic array as a local
variable which has a potential to blow the stack, generally speaking.

The other ones are just gcc warnings.

In short, aiaia is a script which builds the kernel before patching (and
uses sparse/smatch/coccinelle/cppplus while building) and after patching
and compares to build logs in a smart way, and then tells you about new
warnings/complaints from gcc/sparse/smatch/coccinelle. It also checks
bisectability and reports about failures. I find it very useful for
verifying incoming patches.

--
Best Regards,
Artem Bityutskiy


Attachments:
signature.asc (836.00 B)
This is a digitally signed message part

2012-07-11 09:54:22

by Artem Bityutskiy

[permalink] [raw]
Subject: Re: Some warnings

On Wed, 2012-07-11 at 12:56 +0300, Artem Bityutskiy wrote:
> In short, aiaia is a script which builds the kernel before patching (and
> uses sparse/smatch/coccinelle/cppplus while building) and after patching
> and compares to build logs in a smart way, and then tells you about new
> warnings/complaints from gcc/sparse/smatch/coccinelle. It also checks
> bisectability and reports about failures. I find it very useful for
> verifying incoming patches.

Oh, and the important point is that you may use parallel build, so if
you have a relatively fast machine, you do not have to wait too long. I
use -j18, for example.

--
Best Regards,
Artem Bityutskiy


Attachments:
signature.asc (836.00 B)
This is a digitally signed message part