+ * elfparser.c (elf_parser_get_crc32): madvise()
authorSoren Sandmann <sandmann@daimi.au.dk>
Sat, 24 Mar 2007 17:56:20 +0000 (17:56 +0000)
committerSøren Sandmann Pedersen <ssp@src.gnome.org>
Sat, 24 Mar 2007 17:56:20 +0000 (17:56 +0000)
 2007-03-24  Soren Sandmann <sandmann@daimi.au.dk>

+       * elfparser.c (elf_parser_get_crc32): madvise()

svn path=/trunk/; revision=363

ChangeLog
elfparser.c

index c46b768..788e92c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2007-03-24  Soren Sandmann <sandmann@daimi.au.dk>
 
+       * elfparser.c (elf_parser_get_crc32): madvise()
+
+2007-03-24  Soren Sandmann <sandmann@daimi.au.dk>
+
        * sysprof.c (update_screenshot_window): Update screenshot window
        in an idle handler to deal with the case where someone presses
        "Shift Right Arrow" 
index b2e4dbb..86a3f34 100644 (file)
@@ -220,7 +220,7 @@ elf_parser_new (const char *filename,
     const guchar *data;
     gsize length;
     ElfParser *parser;
-    
+
     GMappedFile *file = g_mapped_file_new (filename, FALSE, NULL);
     
     if (!file)
@@ -319,6 +319,8 @@ elf_parser_get_crc32 (ElfParser *parser)
     length = bin_parser_get_length (parser->parser);
     
     crc = 0xffffffff;
+
+    madvise ((char *)data, length, MADV_SEQUENTIAL);
     
     for (i = 0; i < length; ++i)
        crc = crc32_table[(crc ^ data[i]) & 0xff] ^ (crc >> 8);