Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758621Ab3DXWtF (ORCPT ); Wed, 24 Apr 2013 18:49:05 -0400 Received: from mail-la0-f43.google.com ([209.85.215.43]:64109 "EHLO mail-la0-f43.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758597Ab3DXWtB (ORCPT ); Wed, 24 Apr 2013 18:49:01 -0400 MIME-Version: 1.0 In-Reply-To: <20130424170702.GA1867@redhat.com> References: <20130424072630.GB1780@gmail.com> <20130424170702.GA1867@redhat.com> Date: Thu, 25 Apr 2013 00:48:57 +0200 Message-ID: Subject: Re: [PATCH] x86: make DR*_RESERVED unsigned long From: Frederic Weisbecker To: Oleg Nesterov Cc: Ingo Molnar , Linus Torvalds , Cyrill Gorcunov , Peter Zijlstra , "H. Peter Anvin" , Thomas Gleixner , David Miller , "Theodore Ts'o" , Linux Kernel Mailing List , "the arch/x86 maintainers" , Network Development , "linux-ext4@vger.kernel.org" Content-Type: text/plain; charset=ISO-8859-1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1538 Lines: 41 2013/4/24 Oleg Nesterov : > DR6_RESERVED and DR_CONTROL_RESERVED are used to clear the set > bits in the "unsigned long" data, make them long to ensure that > "&~" doesn't clear the upper bits. > > do_debug() and ptrace_write_dr7() which use DR*_RESERVED look > safe, but probably it makes sense to cleanup anyway. Agreed. The code looks safe, but the pattern is error prone. I'm all for that cleanup. Just something below: > > Reported-by: Linus Torvalds > Signed-off-by: Oleg Nesterov > --- > arch/x86/include/uapi/asm/debugreg.h | 4 ++-- > 1 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/x86/include/uapi/asm/debugreg.h b/arch/x86/include/uapi/asm/debugreg.h > index 3c0874d..75d07dd 100644 > --- a/arch/x86/include/uapi/asm/debugreg.h > +++ b/arch/x86/include/uapi/asm/debugreg.h > @@ -15,7 +15,7 @@ > are either reserved or not of interest to us. */ > > /* Define reserved bits in DR6 which are always set to 1 */ > -#define DR6_RESERVED (0xFFFF0FF0) > +#define DR6_RESERVED (0xFFFF0FF0ul) You told in an earlier email that intel manual says upper 32 bits of dr6 are reserved. In this case don't we need to expand the mask in 64 bits like is done for DR_CONTROL_RESERVED? Thanks. -- 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/