lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 23 Nov 2011 15:46:55 -0800
From:	David Daney <ddaney.cavm@...il.com>
To:	Andrew Morton <akpm@...ux-foundation.org>
Cc:	ralf@...ux-mips.org, linux-kernel@...r.kernel.org,
	linux-arch@...r.kernel.org,
	Linus Torvalds <torvalds@...ux-foundation.org>,
	David Rientjes <rientjes@...gle.com>, DM <dm.n9107@...il.com>,
	David Howells <dhowells@...hat.com>,
	David Daney <david.daney@...ium.com>
Subject: [PATCH v3 0/2] Stop some of the abuse of BUG() where compile time checks should be used.

From: David Daney <david.daney@...ium.com>


For v3:

No code changes.

Fix comment text in kernel.h to correctly reflect the name
BUILD_BUG().  Updated patch chanegelogs with slightly better
descriptions and some Acked-by: headers.

Andrew, since you have version 2 in you tree currently, can you
replace those patches with this version instead?

Thanks,
David Daney

>From v2:

   As suggested by 'DM', call the macro BUILD_BUG() instead of
   BUILD_BUG_ON_USED().  Linus seemed satisfied with this, so if it
   still looks good, can we put it in some linux-next tree (Perhaps
   Andrew Morton's) to cook for a while?

   The second patch now covers linux/huge_mm.h too.

>From v1:

   After some, perhaps justified, reluctance to merge dummy
   symbol definitions containing BUG() into header files, I propose
   these patches instead.

   We define a new compile time assertion BUILD_BUG_ON_USED() that can
   be used in places were we expect the compiler's dead code
   elimination to get rid of code.  This happens mostly in code
   dealing with huge pages, but in other places as well.

   The first patch adds BUILD_BUG_ON_USED(), the second gets rid of
   one of the main abusers of BUG().

David Daney (2):
  kernel.h: Add BUILD_BUG() macro.
  hugetlb: Replace BUG() with BUILD_BUG() for dummy definitions.

 include/linux/compiler-gcc4.h |    1 +
 include/linux/compiler.h      |    4 +++-
 include/linux/huge_mm.h       |    8 ++++----
 include/linux/hugetlb.h       |   14 +++++++-------
 include/linux/kernel.h        |   16 ++++++++++++++++
 5 files changed, 31 insertions(+), 12 deletions(-)

-- 
1.7.2.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ