Skip to content

Commit

Permalink
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…
Browse files Browse the repository at this point in the history
…/git/vegard/kmemcheck

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vegard/kmemcheck:
  kmemcheck: add missing braces to do-while in kmemcheck_annotate_bitfield
  kmemcheck: update documentation
  kmemcheck: depend on HAVE_ARCH_KMEMCHECK
  kmemcheck: remove useless check
  kmemcheck: remove duplicated #include
  • Loading branch information
torvalds committed Sep 22, 2009
2 parents a87e84b + 181f7c5 commit 991d79b
Show file tree
Hide file tree
Showing 4 changed files with 8 additions and 24 deletions.
21 changes: 1 addition & 20 deletions Documentation/kmemcheck.txt
Original file line number Diff line number Diff line change
Expand Up @@ -43,26 +43,7 @@ feature.
1. Downloading
==============

kmemcheck can only be downloaded using git. If you want to write patches
against the current code, you should use the kmemcheck development branch of
the tip tree. It is also possible to use the linux-next tree, which also
includes the latest version of kmemcheck.

Assuming that you've already cloned the linux-2.6.git repository, all you
have to do is add the -tip tree as a remote, like this:

$ git remote add tip git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip.git

To actually download the tree, fetch the remote:

$ git fetch tip

And to check out a new local branch with the kmemcheck code:

$ git checkout -b kmemcheck tip/kmemcheck

General instructions for the -tip tree can be found here:
http://people.redhat.com/mingo/tip.git/readme.txt
As of version 2.6.31-rc1, kmemcheck is included in the mainline kernel.


2. Configuring and compiling
Expand Down
3 changes: 0 additions & 3 deletions arch/x86/mm/kmemcheck/kmemcheck.c
Original file line number Diff line number Diff line change
Expand Up @@ -225,9 +225,6 @@ void kmemcheck_hide(struct pt_regs *regs)

BUG_ON(!irqs_disabled());

if (data->balance == 0)
return;

if (unlikely(data->balance != 1)) {
kmemcheck_show_all();
kmemcheck_error_save_bug(regs);
Expand Down
5 changes: 4 additions & 1 deletion include/linux/kmemcheck.h
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,10 @@ static inline bool kmemcheck_is_obj_initialized(unsigned long addr, size_t size)
int name##_end[0];

#define kmemcheck_annotate_bitfield(ptr, name) \
do if (ptr) { \
do { \
if (!ptr) \
break; \
\
int _n = (long) &((ptr)->name##_end) \
- (long) &((ptr)->name##_begin); \
BUILD_BUG_ON(_n < 0); \
Expand Down
3 changes: 3 additions & 0 deletions lib/Kconfig.kmemcheck
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
config HAVE_ARCH_KMEMCHECK
bool

if HAVE_ARCH_KMEMCHECK

menuconfig KMEMCHECK
bool "kmemcheck: trap use of uninitialized memory"
depends on DEBUG_KERNEL
Expand Down Expand Up @@ -89,3 +91,4 @@ config KMEMCHECK_BITOPS_OK
accesses where not all the bits are initialized at the same time.
This may also hide some real bugs.

endif

0 comments on commit 991d79b

Please sign in to comment.