Messages in this thread | | | Date | Wed, 14 Oct 2009 09:06:25 +0200 | Subject | Re: [PATCH 2.6.31.1] include/linux/kmemcheck.h: fix a sparse warning | From | Bart Van Assche <> |
| |
On Fri, Oct 2, 2009 at 9:51 AM, Vegard Nossum <vegard.nossum@gmail.com> wrote: > > 2009/10/2 Bart Van Assche <bart.vanassche@gmail.com>: > > On Sat, Sep 26, 2009 at 2:28 PM, Bart Van Assche > > <bart.vanassche@gmail.com> wrote: > >> > >> Checking a 2.6.31.1 kernel configured with allyesconfig/allmodconfig > >> with sparse (make C=2) triggers a sparse warning on code that uses the > >> kmemcheck_annotate_bitfield() macro. An example of such a warning: > >> > >> include/net/inet_sock.h:208:17: warning: do-while statement is not a compound statement > >> > >> Signed-off-by: Bart Van Assche <bart.vanassche@gmail.com> > >> Cc: Vegard Nossum <vegardno@ifi.uio.no> > >> Cc: Andrew Morton <akpm@linux-foundation.org> > >> > >> --- linux-2.6.31.1/include/linux/kmemcheck-orig.h 2009-09-26 13:53:44.000000000 +0200 > >> +++ linux-2.6.31.1/include/linux/kmemcheck.h 2009-09-26 13:53:56.000000000 +0200 > >> @@ -137,13 +137,13 @@ static inline void kmemcheck_mark_initia > >> int name##_end[0]; > >> > >> #define kmemcheck_annotate_bitfield(ptr, name) \ > >> - do if (ptr) { \ > >> + do { if (ptr) { \ > >> int _n = (long) &((ptr)->name##_end) \ > >> - (long) &((ptr)->name##_begin); \ > >> BUILD_BUG_ON(_n < 0); \ > >> \ > >> kmemcheck_mark_initialized(&((ptr)->name##_begin), _n); \ > >> - } while (0) > >> + } } while (0) > >> > >> #define kmemcheck_annotate_variable(var) \ > >> do { \ > > > > (ping) > > > > Did anyone already have the time to review the patch above ? > > A patch for this problem has already been applied in latest mainline.
Unfortunately this issue is still present in 2.6.31.4, which has been released on October 12 (yesterday). Is the patch that has been applied in the mainline kernel suitable for backporting ?
Bart. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |