[xulrunner] Updated rhbz-911314.patch for xulrunner 20

Martin Stransky stransky at fedoraproject.org
Fri Apr 5 06:56:30 UTC 2013


commit 689d99011f7cf31063e8d2fdb9c427d735750dbe
Author: Martin Stransky <stransky at anakreon.cz>
Date:   Fri Apr 5 08:56:24 2013 +0200

    Updated rhbz-911314.patch for xulrunner 20

 rhbz-911314.patch |  142 ++++++++++++++++++++++++++--------------------------
 xulrunner.spec    |    5 ++-
 2 files changed, 75 insertions(+), 72 deletions(-)
---
diff --git a/rhbz-911314.patch b/rhbz-911314.patch
index 4f1cfa0..82f245a 100644
--- a/rhbz-911314.patch
+++ b/rhbz-911314.patch
@@ -24,14 +24,14 @@ Index: mozilla-release/js/src/gc/Memory.cpp
 @@ -8,6 +8,7 @@
  #include "mozilla/Assertions.h"
  
- #include "jstypes.h"
+ #include "jsapi.h"
 +#include "jscntxt.h"
  
+ #include "js/HeapAPI.h"
  #include "js/Utility.h"
- #include "gc/Memory.h"
-@@ -19,39 +20,34 @@ namespace gc {
- extern const size_t PageSize;
- extern const size_t ArenaSize;
+@@ -18,39 +19,34 @@ using namespace js::gc;
+ 
+ /* Unused memory decommiting requires the arena size match the page size. */
  static bool
 -DecommitEnabled()
 +DecommitEnabled(JSRuntime *rt)
@@ -47,8 +47,8 @@ Index: mozilla-release/js/src/gc/Memory.cpp
 -static size_t AllocationGranularity = 0;
 -
  void
--InitMemorySubsystem()
-+InitMemorySubsystem(JSRuntime *rt)
+-gc::InitMemorySubsystem()
++gc::InitMemorySubsystem(JSRuntime *rt)
  {
      SYSTEM_INFO sysinfo;
      GetSystemInfo(&sysinfo);
@@ -62,8 +62,8 @@ Index: mozilla-release/js/src/gc/Memory.cpp
  }
  
  void *
--MapAlignedPages(size_t size, size_t alignment)
-+MapAlignedPages(JSRuntime *rt, size_t size, size_t alignment)
+-gc::MapAlignedPages(size_t size, size_t alignment)
++gc::MapAlignedPages(JSRuntime *rt, size_t size, size_t alignment)
  {
      JS_ASSERT(size >= alignment);
      JS_ASSERT(size % alignment == 0);
@@ -78,7 +78,7 @@ Index: mozilla-release/js/src/gc/Memory.cpp
          return VirtualAlloc(NULL, size, MEM_COMMIT | MEM_RESERVE, PAGE_READWRITE);
      }
  
-@@ -75,7 +71,7 @@ MapAlignedPages(size_t size, size_t alig
+@@ -74,7 +70,7 @@ gc::MapAlignedPages(size_t size, size_t
          if (!p)
              return NULL;
          void *chunkStart = (void *)(uintptr_t(p) + (alignment - (uintptr_t(p) % alignment)));
@@ -87,19 +87,19 @@ Index: mozilla-release/js/src/gc/Memory.cpp
          p = VirtualAlloc(chunkStart, size, MEM_COMMIT | MEM_RESERVE, PAGE_READWRITE);
  
          /* Failure here indicates a race with another thread, so try again. */
-@@ -86,26 +82,26 @@ MapAlignedPages(size_t size, size_t alig
+@@ -85,26 +81,26 @@ gc::MapAlignedPages(size_t size, size_t
  }
  
  void
--UnmapPages(void *p, size_t size)
-+UnmapPages(JSRuntime *rt, void *p, size_t size)
+-gc::UnmapPages(void *p, size_t size)
++gc::UnmapPages(JSRuntime *rt, void *p, size_t size)
  {
      JS_ALWAYS_TRUE(VirtualFree(p, 0, MEM_RELEASE));
  }
  
  bool
--MarkPagesUnused(void *p, size_t size)
-+MarkPagesUnused(JSRuntime *rt, void *p, size_t size)
+-gc::MarkPagesUnused(void *p, size_t size)
++gc::MarkPagesUnused(JSRuntime *rt, void *p, size_t size)
  {
 -    if (!DecommitEnabled())
 -        return false;
@@ -113,40 +113,40 @@ Index: mozilla-release/js/src/gc/Memory.cpp
  }
  
  bool
--MarkPagesInUse(void *p, size_t size)
-+MarkPagesInUse(JSRuntime *rt, void *p, size_t size)
+-gc::MarkPagesInUse(void *p, size_t size)
++gc::MarkPagesInUse(JSRuntime *rt, void *p, size_t size)
  {
 -    JS_ASSERT(uintptr_t(p) % PageSize == 0);
 +    JS_ASSERT(uintptr_t(p) % rt->gcSystemPageSize == 0);
      return true;
  }
  
-@@ -127,12 +123,13 @@ GetPageFaultCount()
+@@ -126,12 +122,13 @@ gc::GetPageFaultCount()
  #define OS2_MAX_RECURSIONS  16
  
  void
--InitMemorySubsystem()
-+InitMemorySubsystem(JSRuntime *rt)
+-gc::InitMemorySubsystem()
++gc::InitMemorySubsystem(JSRuntime *rt)
  {
 +    rt->gcSystemPageSize = rt->gcSystemAllocGranularity = ArenaSize;
  }
  
  void
--UnmapPages(void *addr, size_t size)
-+UnmapPages(JSRuntime *rt, void *addr, size_t size)
+-gc::UnmapPages(void *addr, size_t size)
++gc::UnmapPages(JSRuntime *rt, void *addr, size_t size)
  {
      if (!DosFreeMem(addr))
          return;
-@@ -153,7 +150,7 @@ UnmapPages(void *addr, size_t size)
+@@ -152,7 +149,7 @@ gc::UnmapPages(void *addr, size_t size)
  }
  
  static void *
--MapAlignedPagesRecursively(size_t size, size_t alignment, int& recursions)
-+MapAlignedPagesRecursively(JSRuntime *rt, size_t size, size_t alignment, int& recursions)
+-gc::MapAlignedPagesRecursively(size_t size, size_t alignment, int& recursions)
++gc::MapAlignedPagesRecursively(JSRuntime *rt, size_t size, size_t alignment, int& recursions)
  {
      if (++recursions >= OS2_MAX_RECURSIONS)
          return NULL;
-@@ -179,7 +176,7 @@ MapAlignedPagesRecursively(size_t size,
+@@ -178,7 +175,7 @@ gc::MapAlignedPagesRecursively(size_t si
      unsigned long rc = DosQueryMem(&(static_cast<char*>(tmp))[size],
                                     &cb, &flags);
      if (!rc && (flags & PAG_FREE) && cb >= filler) {
@@ -155,7 +155,7 @@ Index: mozilla-release/js/src/gc/Memory.cpp
          if (DosAllocMem(&tmp, filler,
                          OBJ_ANY | PAG_COMMIT | PAG_READ | PAG_WRITE)) {
              JS_ALWAYS_TRUE(DosAllocMem(&tmp, filler,
-@@ -187,19 +184,19 @@ MapAlignedPagesRecursively(size_t size,
+@@ -186,19 +183,19 @@ gc::MapAlignedPagesRecursively(size_t si
          }
      }
  
@@ -168,8 +168,8 @@ Index: mozilla-release/js/src/gc/Memory.cpp
  }
  
  void *
--MapAlignedPages(size_t size, size_t alignment)
-+MapAlignedPages(JSRuntime *rt, size_t size, size_t alignment)
+-gc::MapAlignedPages(size_t size, size_t alignment)
++gc::MapAlignedPages(JSRuntime *rt, size_t size, size_t alignment)
  {
      JS_ASSERT(size >= alignment);
      JS_ASSERT(size % alignment == 0);
@@ -180,7 +180,7 @@ Index: mozilla-release/js/src/gc/Memory.cpp
  
      int recursions = -1;
  
-@@ -208,7 +205,7 @@ MapAlignedPages(size_t size, size_t alig
+@@ -207,7 +204,7 @@ gc::MapAlignedPages(size_t size, size_t
       * of the right size by recursively allocating blocks of unaligned
       * free memory until only an aligned allocation is possible.
       */
@@ -189,11 +189,11 @@ Index: mozilla-release/js/src/gc/Memory.cpp
      if (p)
          return p;
  
-@@ -230,16 +227,15 @@ MapAlignedPages(size_t size, size_t alig
+@@ -229,16 +226,15 @@ gc::MapAlignedPages(size_t size, size_t
  }
  
  bool
--MarkPagesUnused(void *p, size_t size)
+-gc::MarkPagesUnused(void *p, size_t size)
 -{
 -    JS_ASSERT(uintptr_t(p) % PageSize == 0);
 +MarkPagesUnused(JSRuntime *rt, void *p, size_t size) {
@@ -202,27 +202,27 @@ Index: mozilla-release/js/src/gc/Memory.cpp
  }
  
  bool
--MarkPagesInUse(void *p, size_t size)
-+MarkPagesInUse(JSRuntime *rt, void *p, size_t size)
+-gc::MarkPagesInUse(void *p, size_t size)
++gc::MarkPagesInUse(JSRuntime *rt, void *p, size_t size)
  {
 -    JS_ASSERT(uintptr_t(p) % PageSize == 0);
 +    JS_ASSERT(uintptr_t(p) % rt->gcSystemPageSize == 0);
      return true;
  }
  
-@@ -259,17 +255,18 @@ GetPageFaultCount()
+@@ -258,17 +254,18 @@ gc::GetPageFaultCount()
  #endif
  
  void
--InitMemorySubsystem()
-+InitMemorySubsystem(JSRuntime *rt)
+-gc::InitMemorySubsystem()
++gc::InitMemorySubsystem(JSRuntime *rt)
  {
 +    rt->gcSystemPageSize = rt->gcSystemAllocGranularity = size_t(sysconf(_SC_PAGESIZE));
  }
  
  void *
--MapAlignedPages(size_t size, size_t alignment)
-+MapAlignedPages(JSRuntime *rt, size_t size, size_t alignment)
+-gc::MapAlignedPages(size_t size, size_t alignment)
++gc::MapAlignedPages(JSRuntime *rt, size_t size, size_t alignment)
  {
      JS_ASSERT(size >= alignment);
      JS_ASSERT(size % alignment == 0);
@@ -233,19 +233,19 @@ Index: mozilla-release/js/src/gc/Memory.cpp
  
      int prot = PROT_READ | PROT_WRITE;
      int flags = MAP_PRIVATE | MAP_ANON | MAP_ALIGN | MAP_NOSYNC;
-@@ -281,22 +278,22 @@ MapAlignedPages(size_t size, size_t alig
+@@ -280,22 +277,22 @@ gc::MapAlignedPages(size_t size, size_t
  }
  
  void
--UnmapPages(void *p, size_t size)
-+UnmapPages(JSRuntime *rt, void *p, size_t size)
+-gc::UnmapPages(void *p, size_t size)
++gc::UnmapPages(JSRuntime *rt, void *p, size_t size)
  {
      JS_ALWAYS_TRUE(0 == munmap((caddr_t)p, size));
  }
  
  bool
--MarkPagesUnused(void *p, size_t size)
-+MarkPagesUnused(JSRuntime *rt, void *p, size_t size)
+-gc::MarkPagesUnused(void *p, size_t size)
++gc::MarkPagesUnused(JSRuntime *rt, void *p, size_t size)
  {
 -    JS_ASSERT(uintptr_t(p) % PageSize == 0);
 +    JS_ASSERT(uintptr_t(p) % rt->gcSystemPageSize == 0);
@@ -253,20 +253,20 @@ Index: mozilla-release/js/src/gc/Memory.cpp
  }
  
  bool
--MarkPagesInUse(void *p, size_t size)
-+MarkPagesInUse(JSRuntime *rt, void *p, size_t size)
+-gc::MarkPagesInUse(void *p, size_t size)
++gc::MarkPagesInUse(JSRuntime *rt, void *p, size_t size)
  {
 -    JS_ASSERT(uintptr_t(p) % PageSize == 0);
 +    JS_ASSERT(uintptr_t(p) % rt->gcSystemPageSize == 0);
      return true;
  }
  
-@@ -314,27 +311,24 @@ GetPageFaultCount()
+@@ -313,27 +310,24 @@ gc::GetPageFaultCount()
  #include <unistd.h>
  
  void
--InitMemorySubsystem()
-+InitMemorySubsystem(JSRuntime *rt)
+-gc::InitMemorySubsystem()
++gc::InitMemorySubsystem(JSRuntime *rt)
  {
 -    if (size_t(sysconf(_SC_PAGESIZE)) != PageSize) {
 -        fprintf(stderr,"SpiderMonkey compiled with incorrect page size; please update js/public/HeapAPI.h.\n");
@@ -276,8 +276,8 @@ Index: mozilla-release/js/src/gc/Memory.cpp
  }
  
  void *
--MapAlignedPages(size_t size, size_t alignment)
-+MapAlignedPages(JSRuntime *rt, size_t size, size_t alignment)
+-gc::MapAlignedPages(size_t size, size_t alignment)
++gc::MapAlignedPages(JSRuntime *rt, size_t size, size_t alignment)
  {
      JS_ASSERT(size >= alignment);
      JS_ASSERT(size % alignment == 0);
@@ -295,19 +295,19 @@ Index: mozilla-release/js/src/gc/Memory.cpp
          return mmap(NULL, size, prot, flags, -1, 0);
      }
  
-@@ -360,26 +354,26 @@ MapAlignedPages(size_t size, size_t alig
+@@ -359,26 +353,26 @@ gc::MapAlignedPages(size_t size, size_t
  }
  
  void
--UnmapPages(void *p, size_t size)
-+UnmapPages(JSRuntime *rt, void *p, size_t size)
+-gc::UnmapPages(void *p, size_t size)
++gc::UnmapPages(JSRuntime *rt, void *p, size_t size)
  {
      JS_ALWAYS_TRUE(0 == munmap(p, size));
  }
  
  bool
--MarkPagesUnused(void *p, size_t size)
-+MarkPagesUnused(JSRuntime *rt, void *p, size_t size)
+-gc::MarkPagesUnused(void *p, size_t size)
++gc::MarkPagesUnused(JSRuntime *rt, void *p, size_t size)
  {
 -    if (!DecommitEnabled())
 -        return false;
@@ -321,8 +321,8 @@ Index: mozilla-release/js/src/gc/Memory.cpp
  }
  
  bool
--MarkPagesInUse(void *p, size_t size)
-+MarkPagesInUse(JSRuntime *rt, void *p, size_t size)
+-gc::MarkPagesInUse(void *p, size_t size)
++gc::MarkPagesInUse(JSRuntime *rt, void *p, size_t size)
  {
 -    JS_ASSERT(uintptr_t(p) % PageSize == 0);
 +    JS_ASSERT(uintptr_t(p) % rt->gcSystemPageSize == 0);
@@ -363,7 +363,7 @@ Index: mozilla-release/js/src/jsapi.cpp
 ===================================================================
 --- mozilla-release.orig/js/src/jsapi.cpp
 +++ mozilla-release/js/src/jsapi.cpp
-@@ -1105,8 +1105,6 @@ JS_NewRuntime(uint32_t maxbytes, JSUseHe
+@@ -1113,8 +1113,6 @@ JS_NewRuntime(uint32_t maxbytes, JSUseHe
  #undef MSG_DEF
  #endif /* DEBUG */
  
@@ -376,7 +376,7 @@ Index: mozilla-release/js/src/jscntxt.h
 ===================================================================
 --- mozilla-release.orig/js/src/jscntxt.h
 +++ mozilla-release/js/src/jscntxt.h
-@@ -847,6 +847,15 @@ struct JSRuntime : js::RuntimeFriendFiel
+@@ -873,6 +873,15 @@ struct JSRuntime : js::RuntimeFriendFiel
      /* Stack of thread-stack-allocated GC roots. */
      js::AutoGCRooter   *autoGCRooters;
  
@@ -396,7 +396,7 @@ Index: mozilla-release/js/src/jsgc.cpp
 ===================================================================
 --- mozilla-release.orig/js/src/jsgc.cpp
 +++ mozilla-release/js/src/jsgc.cpp
-@@ -486,13 +486,13 @@ FinalizeArenas(FreeOp *fop,
+@@ -477,13 +477,13 @@ FinalizeArenas(FreeOp *fop,
  }
  
  static inline Chunk *
@@ -414,7 +414,7 @@ Index: mozilla-release/js/src/jsgc.cpp
  }
  
  inline bool
-@@ -582,25 +582,25 @@ ChunkPool::expire(JSRuntime *rt, bool re
+@@ -573,25 +573,25 @@ ChunkPool::expire(JSRuntime *rt, bool re
  }
  
  static void
@@ -444,7 +444,7 @@ Index: mozilla-release/js/src/jsgc.cpp
  
  #ifdef JSGC_ROOT_ANALYSIS
      // Our poison pointers are not guaranteed to be invalid on 64-bit
-@@ -613,7 +613,7 @@ Chunk::allocate(JSRuntime *rt)
+@@ -604,7 +604,7 @@ Chunk::allocate(JSRuntime *rt)
      // were marked as uncommitted, but it's a little complicated to avoid
      // clobbering pre-existing unrelated mappings.
      while (IsPoisonedPtr(chunk))
@@ -453,7 +453,7 @@ Index: mozilla-release/js/src/jsgc.cpp
  #endif
  
      if (!chunk)
-@@ -629,7 +629,7 @@ Chunk::release(JSRuntime *rt, Chunk *chu
+@@ -620,7 +620,7 @@ Chunk::release(JSRuntime *rt, Chunk *chu
  {
      JS_ASSERT(chunk);
      chunk->prepareToBeFreed(rt);
@@ -462,7 +462,7 @@ Index: mozilla-release/js/src/jsgc.cpp
  }
  
  inline void
-@@ -745,7 +745,7 @@ Chunk::findDecommittedArenaOffset()
+@@ -736,7 +736,7 @@ Chunk::findDecommittedArenaOffset()
  }
  
  ArenaHeader *
@@ -471,7 +471,7 @@ Index: mozilla-release/js/src/jsgc.cpp
  {
      JS_ASSERT(info.numArenasFreeCommitted == 0);
      JS_ASSERT(info.numArenasFree > 0);
-@@ -756,7 +756,7 @@ Chunk::fetchNextDecommittedArena()
+@@ -747,7 +747,7 @@ Chunk::fetchNextDecommittedArena()
      decommittedArenas.unset(offset);
  
      Arena *arena = &arenas[offset];
@@ -480,7 +480,7 @@ Index: mozilla-release/js/src/jsgc.cpp
      arena->aheader.setAsNotAllocated();
  
      return &arena->aheader;
-@@ -790,7 +790,7 @@ Chunk::allocateArena(JSCompartment *comp
+@@ -781,7 +781,7 @@ Chunk::allocateArena(JSCompartment *comp
  
      ArenaHeader *aheader = JS_LIKELY(info.numArenasFreeCommitted > 0)
                             ? fetchNextFreeArena(rt)
@@ -489,7 +489,7 @@ Index: mozilla-release/js/src/jsgc.cpp
      aheader->init(comp, thingKind);
      if (JS_UNLIKELY(!hasAvailableArenas()))
          removeFromAvailableList();
-@@ -893,6 +893,8 @@ static const int64_t JIT_SCRIPT_RELEASE_
+@@ -881,6 +881,8 @@ static const int64_t JIT_SCRIPT_RELEASE_
  JSBool
  js_InitGC(JSRuntime *rt, uint32_t maxbytes)
  {
@@ -498,7 +498,7 @@ Index: mozilla-release/js/src/jsgc.cpp
      if (!rt->gcChunkSet.init(INITIAL_CHUNK_CAPACITY))
          return false;
  
-@@ -2745,7 +2747,7 @@ DecommitArenasFromAvailableList(JSRuntim
+@@ -1969,7 +1971,7 @@ DecommitArenasFromAvailableList(JSRuntim
                  Maybe<AutoUnlockGC> maybeUnlock;
                  if (!rt->isHeapBusy())
                      maybeUnlock.construct(rt);
@@ -507,7 +507,7 @@ Index: mozilla-release/js/src/jsgc.cpp
              }
  
              if (ok) {
-@@ -2813,7 +2815,7 @@ ExpireChunksAndArenas(JSRuntime *rt, boo
+@@ -2037,7 +2039,7 @@ ExpireChunksAndArenas(JSRuntime *rt, boo
  {
      if (Chunk *toFree = rt->gcChunkPool.expire(rt, shouldShrink)) {
          AutoUnlockGC unlock(rt);
@@ -520,7 +520,7 @@ Index: mozilla-release/js/public/HeapAPI.h
 ===================================================================
 --- mozilla-release.orig/js/public/HeapAPI.h
 +++ mozilla-release/js/public/HeapAPI.h
-@@ -11,24 +11,7 @@
+@@ -13,24 +13,7 @@
  namespace js {
  namespace gc {
  
diff --git a/xulrunner.spec b/xulrunner.spec
index 24831d1..91c5e9d 100644
--- a/xulrunner.spec
+++ b/xulrunner.spec
@@ -76,7 +76,7 @@
 Summary:        XUL Runtime for Gecko Applications
 Name:           xulrunner
 Version:        20.0
-Release:        3%{?pre_tag}%{?dist}
+Release:        4%{?pre_tag}%{?dist}
 URL:            http://developer.mozilla.org/En/XULRunner
 License:        MPLv1.1 or GPLv2+ or LGPLv2+
 Group:          Applications/Internet
@@ -528,6 +528,9 @@ fi
 #---------------------------------------------------------------------
 
 %changelog
+* Fri Apr 5 2013 Martin Stransky <stransky at redhat.com> - 20.0-4
+- Updated rhbz-911314.patch for xulrunner 20
+
 * Wed Apr 3 2013 Martin Stransky <stransky at redhat.com> - 20.0-3
 - A workaround for Bug 928353 - firefox i686 crashes
   for a number of web pages


More information about the scm-commits mailing list