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-prev] [day] [month] [year] [list]
Message-ID: <7E82351C108FA840AB1866AC776AEC463796A2BF@orsmsx505.amr.corp.intel.com>
Date:	Mon, 13 Oct 2008 11:49:21 -0700
From:	"Pallipadi, Venkatesh" <venkatesh.pallipadi@...el.com>
To:	bibo mao <bibo.mao@...il.com>,
	"akpm@...ux-foundation.org" <akpm@...ux-foundation.org>
CC:	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
	Ingo Molnar <mingo@...e.hu>
Subject: RE: [patch 0/1]pat: remove redundant condition check



>-----Original Message-----
>From: linux-kernel-owner@...r.kernel.org
>[mailto:linux-kernel-owner@...r.kernel.org] On Behalf Of bibo mao
>Sent: Sunday, October 12, 2008 6:45 AM
>To: akpm@...ux-foundation.org
>Cc: linux-kernel@...r.kernel.org
>Subject: [patch 0/1]pat: remove redundant condition check
>
>On file pat.c, if (start <= entry->start), it also means (start <
>entry->end). This patch removes
>redundant condition check.
>

No No.

start <= entry->start does mean start < entry->end
but
start <= entry->end does NOT mean start < entry->start

This 'else if' is to catch the cases where start < entry->end
and start > entry->start. Removing it will break the whole
logic of this function.

Thanks,
Venki

>Signed-off-by: bibo.mao@...il.com
>thanks
>bibo,mao
>
>------------------------------------------------------
>diff --git a/arch/x86/mm/pat.c b/arch/x86/mm/pat.c
>index 2a50e0f..12cac5e 100644
>--- a/arch/x86/mm/pat.c
>+++ b/arch/x86/mm/pat.c
>@@ -305,27 +305,6 @@ int reserve_memtype(u64 start, u64 end, unsigned
>long req_type,
>                                                        struct
>memtype, nd);
>                        }
>                        break;
>-               } else if (start < entry->end) { /* start >
>entry->start */
>-                       err = chk_conflict(new, entry, new_type);
>-                       if (!err) {
>-                               dprintk("Overlap at 0x%Lx-0x%Lx\n",
>-                                       entry->start, entry->end);
>-                               cached_entry =
>list_entry(entry->nd.prev,
>-                                                       struct
>memtype, nd);
>-
>-                               /*
>-                                * Move to right position in the linked
>-                                * list to add this new entry
>-                                */
>-                               list_for_each_entry_continue(entry,
>-
>&memtype_list, nd) {
>-                                       if (start <= entry->start) {
>-                                               where = entry->nd.prev;
>-                                               break;
>-                                       }
>-                               }
>-                       }
>-                       break;
>                }
>        }
>--
>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/
>
--
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