From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp1.linux-foundation.org ([140.211.169.13]:37906 "EHLO smtp1.linux-foundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753963Ab1HVVvC (ORCPT ); Mon, 22 Aug 2011 17:51:02 -0400 Date: Mon, 22 Aug 2011 14:50:50 -0700 From: Andrew Morton Subject: Re: [PATCH 3/4] string: introduce memchr_inv Message-Id: <20110822145050.e3471fa0.akpm@linux-foundation.org> In-Reply-To: <20110822135218.f2d9f462.akpm@linux-foundation.org> References: <1314030548-21082-1-git-send-email-akinobu.mita@gmail.com> <1314030548-21082-4-git-send-email-akinobu.mita@gmail.com> <20110822135218.f2d9f462.akpm@linux-foundation.org> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-arch-owner@vger.kernel.org List-ID: To: Akinobu Mita , linux-kernel@vger.kernel.org, linux-mm@kvack.org, Christoph Lameter , Pekka Enberg , Matt Mackall , Joern Engel , logfs@logfs.org, Marcin Slusarz , Eric Dumazet , linux-arch@vger.kernel.org On Mon, 22 Aug 2011 13:52:18 -0700 Andrew Morton wrote: > > + value64 = value | value << 8 | value << 16 | value << 24; > > + value64 = (value64 & 0xffffffff) | value64 << 32; > > + prefix = 8 - ((unsigned long)start) % 8; > > + > > + if (prefix) { > > + u8 *r = check_bytes8(start, value, prefix); > > + if (r) > > + return r; > > + start += prefix; > > + bytes -= prefix; > > + } > > + > > + words = bytes / 8; > > + > > + while (words) { > > + if (*(u64 *)start != value64) > > OK, problem. This will explode if passed a misaligned address on > certain (non-x86) architectures. pls ignore. As Marcin points out, I can't read.