All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg KH <gregkh@suse.de>
To: linux-kernel@vger.kernel.org, stable@kernel.org,
	"David S. Miller" <davem@davemloft.net>
Cc: Justin Forbes <jmforbes@linuxtx.org>,
	Zwane Mwaikambo <zwane@arm.linux.org.uk>,
	"Theodore Ts'o" <tytso@mit.edu>,
	Randy Dunlap <rdunlap@xenotime.net>,
	Dave Jones <davej@redhat.com>,
	Chuck Wolber <chuckw@quantumlinux.com>,
	Chris Wedgwood <reviews@ml.cw.f00f.org>,
	torvalds@osdl.org, akpm@osdl.org, alan@lxorguk.ukuu.org.uk,
	Netfilter Development Mailinglist
	<netfilter-devel@lists.netfilter.org>,
	Michael Rash <mbr@cipherdyne.org>,
	Patrick McHardy <kaber@trash.net>,
	Greg Kroah-Hartman <gregkh@suse.de>
Subject: [patch 01/37] TEXTSEARCH: Fix Boyer Moore initialization bug
Date: Wed, 6 Sep 2006 15:54:58 -0700	[thread overview]
Message-ID: <20060906225458.GB15922@kroah.com> (raw)
In-Reply-To: <20060906225444.GA15922@kroah.com>

[-- Attachment #1: textsearch-fix-boyer-moore-initialization-bug.patch --]
[-- Type: text/plain, Size: 1678 bytes --]


-stable review patch.  If anyone has any objections, please let us know.

------------------

From: Michael Rash <mbr@cipherdyne.org>

[TEXTSEARCH]: Fix Boyer Moore initialization bug

The pattern is set after trying to compute the prefix table, which tries
to use it. Initialize it before calling compute_prefix_tbl, make
compute_prefix_tbl consistently use only the data from struct ts_bm
and remove the now unnecessary arguments.

Signed-off-by: Michael Rash <mbr@cipherdyne.org>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Acked-by: David Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

---
 lib/ts_bm.c |   11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

--- linux-2.6.17.11.orig/lib/ts_bm.c
+++ linux-2.6.17.11/lib/ts_bm.c
@@ -112,15 +112,14 @@ static int subpattern(u8 *pattern, int i
 	return ret;
 }
 
-static void compute_prefix_tbl(struct ts_bm *bm, const u8 *pattern,
-			       unsigned int len)
+static void compute_prefix_tbl(struct ts_bm *bm)
 {
 	int i, j, g;
 
 	for (i = 0; i < ASIZE; i++)
-		bm->bad_shift[i] = len;
-	for (i = 0; i < len - 1; i++)
-		bm->bad_shift[pattern[i]] = len - 1 - i;
+		bm->bad_shift[i] = bm->patlen;
+	for (i = 0; i < bm->patlen - 1; i++)
+		bm->bad_shift[bm->pattern[i]] = bm->patlen - 1 - i;
 
 	/* Compute the good shift array, used to match reocurrences 
 	 * of a subpattern */
@@ -151,8 +150,8 @@ static struct ts_config *bm_init(const v
 	bm = ts_config_priv(conf);
 	bm->patlen = len;
 	bm->pattern = (u8 *) bm->good_shift + prefix_tbl_len;
-	compute_prefix_tbl(bm, pattern, len);
 	memcpy(bm->pattern, pattern, len);
+	compute_prefix_tbl(bm);
 
 	return conf;
 }

--

  reply	other threads:[~2006-09-06 22:54 UTC|newest]

Thread overview: 60+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20060906224631.999046890@quad.kroah.org>
2006-09-06 22:54 ` [patch 00/37] -stable review Greg KH
2006-09-06 22:54   ` Greg KH [this message]
2006-09-06 22:55   ` [patch 02/37] spectrum_cs: Fix firmware uploading errors Greg KH
2006-09-06 22:55   ` [patch 03/37] Fix output framentation of paged-skbs Greg KH
2006-09-06 22:55   ` [patch 04/37] fix compilation error on IA64 Greg KH
2006-09-06 22:55     ` Greg KH
2006-09-07  8:45     ` Kirill Korotaev
2006-09-07  8:45       ` Kirill Korotaev
2006-09-06 22:55   ` [patch 05/37] bridge-netfilter: dont overwrite memory outside of skb Greg KH
2006-09-06 22:55   ` [patch 06/37] Allow per-route window scale limiting Greg KH
2006-09-06 22:55   ` [patch 07/37] Have ext2 reject file handles with bad inode numbers early Greg KH
2006-09-06 22:55   ` [patch 08/37] dm snapshot: unify chunk_size Greg KH
2006-09-06 22:55   ` [patch 09/37] dm: fix idr minor allocation Greg KH
2006-09-06 22:55   ` [patch 10/37] dm: move idr_pre_get Greg KH
2006-09-06 22:55   ` [patch 11/37] dm: change minor_lock to spinlock Greg KH
2006-09-06 22:55   ` [patch 12/37] dm: add DMF_FREEING Greg KH
2006-09-06 22:56   ` [patch 13/37] dm: fix mapped device ref counting Greg KH
2006-09-06 22:56   ` [patch 14/37] dm: add module " Greg KH
2006-09-06 22:56   ` [patch 15/37] dm: fix block device initialisation Greg KH
2006-09-06 22:56   ` [patch 16/37] dm: mirror sector offset fix Greg KH
2006-09-06 22:56   ` [patch 17/37] TG3: Disable TSO by default Greg KH
2006-09-06 22:56   ` [patch 18/37] SPARC64: Fix X server crashes on sparc64 Greg KH
2006-09-06 22:56   ` [patch 19/37] SCTP: Fix sctp_primitive_ABORT() call in sctp_close() Greg KH
2006-09-06 22:56   ` [patch 20/37] IPV6 OOPSer triggerable by any user Greg KH
2006-09-06 22:56   ` [patch 21/37] fcntl(F_SETSIG) fix Greg KH
2006-09-06 22:57   ` [patch 22/37] bug in futex unqueue_me Greg KH
2006-09-06 22:57   ` [patch 23/37] binfmt_elf: fix checks for bad address Greg KH
2006-09-06 22:57   ` [patch 24/37] uhci-hcd: fix list access bug Greg KH
2006-09-06 22:57   ` [patch 25/37] Silent data corruption caused by XPC Greg KH
2006-09-06 22:57   ` [patch 26/37] PKTGEN: Make sure skb->{nh,h} are initialized in fill_packet_ipv6() too Greg KH
2006-09-06 22:57   ` [patch 27/37] PKTGEN: Fix oops when used with balance-tlb bonding Greg KH
2006-09-06 22:57   ` [patch 28/37] Missing PCI id update for VIA IDE Greg KH
2006-09-06 23:33     ` [-stable patch] pci_ids.h: add some VIA IDE identifiers Adrian Bunk
2006-09-06 22:57   ` [patch 29/37] dvb-core: Proper handling ULE SNDU length of 0 Greg KH
2006-09-07 12:57     ` Marcel Holtmann
2006-09-07 15:39       ` [stable] " Greg KH
2006-09-08 11:31         ` Marcel Holtmann
2006-09-08 12:58     ` Michael Krufky
2006-09-08 13:11       ` Ang Way Chuang
2006-09-08 17:29       ` Greg KH
2006-09-15 16:11         ` Michael Krufky
2006-09-15 16:15           ` Marcel Siegert
2006-09-15 16:36           ` Marcel Holtmann
2006-09-15 18:07             ` Michael Krufky
2006-09-15 18:18               ` Marcel Holtmann
2006-09-20  9:38                 ` Ang Way Chuang
2006-09-06 22:57   ` [patch 30/37] Remove redundant up() in stop_machine() Greg KH
2006-09-06 22:57   ` [patch 31/37] dm: Fix deadlock under high i/o load in raid1 setup Greg KH
2006-09-06 22:57   ` [patch 32/37] sky2: accept flow control Greg KH
2006-09-06 22:57   ` [patch 33/37] sky2: clear status IRQ after empty Greg KH
2006-09-06 22:57   ` [patch 34/37] sky2: use dev_alloc_skb for receive buffers Greg KH
2006-09-06 22:58   ` [patch 35/37] sky2: MSI test timing Greg KH
2006-09-06 22:58   ` [patch 36/37] sky2: fix fiber support Greg KH
2006-09-06 22:58   ` [patch 37/37] sky2: version 1.6.1 Greg KH
2006-09-07 19:25     ` Pavel Machek
2006-09-07 20:34       ` Greg KH
2006-09-07 21:03         ` Pavel Machek
2006-09-07 21:50           ` Stephen Hemminger
2006-09-06 23:33   ` [patch 00/37] -stable review Adrian Bunk
2006-09-07  2:08     ` Greg KH

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20060906225458.GB15922@kroah.com \
    --to=gregkh@suse.de \
    --cc=akpm@osdl.org \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=chuckw@quantumlinux.com \
    --cc=davej@redhat.com \
    --cc=davem@davemloft.net \
    --cc=jmforbes@linuxtx.org \
    --cc=kaber@trash.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mbr@cipherdyne.org \
    --cc=netfilter-devel@lists.netfilter.org \
    --cc=rdunlap@xenotime.net \
    --cc=reviews@ml.cw.f00f.org \
    --cc=stable@kernel.org \
    --cc=torvalds@osdl.org \
    --cc=tytso@mit.edu \
    --cc=zwane@arm.linux.org.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.