components/python/python26/patches/Python26-07-dtrace.patch
changeset 1246 164605dfef4e
parent 841 1a62cefa636d
equal deleted inserted replaced
1245:b95e96615c0c 1246:164605dfef4e
       
     1 This patch adds Python dtrace support.  Note it is necessary to modify 
       
     2 test_sys.py to add an integer to the frameobject structure size since this 
       
     3 patch adds "int f_calllineno" to the structure, so this test does not fail.
       
     4 
     1 diff --git Python-2.6.4/Include/frameobject.h Python-2.6.4/Include/frameobject.h
     5 diff --git Python-2.6.4/Include/frameobject.h Python-2.6.4/Include/frameobject.h
     2 --- Python-2.6.4/Include/frameobject.h
     6 --- Python-2.6.4/Include/frameobject.h
     3 +++ Python-2.6.4/Include/frameobject.h
     7 +++ Python-2.6.4/Include/frameobject.h
     4 @@ -41,6 +41,7 @@
     8 @@ -41,6 +41,7 @@
     5      /* As of 2.3 f_lineno is only valid when tracing is active (i.e. when
     9      /* As of 2.3 f_lineno is only valid when tracing is active (i.e. when
   412 +#pragma D attributes Evolving/Evolving/Common provider python provider
   416 +#pragma D attributes Evolving/Evolving/Common provider python provider
   413 +#pragma D attributes Private/Private/Common provider python module
   417 +#pragma D attributes Private/Private/Common provider python module
   414 +#pragma D attributes Private/Private/Common provider python function
   418 +#pragma D attributes Private/Private/Common provider python function
   415 +#pragma D attributes Evolving/Evolving/Common provider python name
   419 +#pragma D attributes Evolving/Evolving/Common provider python name
   416 +#pragma D attributes Evolving/Evolving/Common provider python args
   420 +#pragma D attributes Evolving/Evolving/Common provider python args
       
   421 --- Python-2.6.8/Lib/test/test_sys.py-orig	2012-12-13 06:54:26.954676255 -0800
       
   422 +++ Python-2.6.8/Lib/test/test_sys.py	2012-12-13 06:54:37.809978034 -0800
       
   423 @@ -587,7 +587,7 @@ class SizeofTest(unittest.TestCase):
       
   424          nfrees = len(x.f_code.co_freevars)
       
   425          extras = x.f_code.co_stacksize + x.f_code.co_nlocals +\
       
   426                   ncells + nfrees - 1
       
   427 -        check(x, size(vh + '12P3i' + CO_MAXBLOCKS*'3i' + 'P' + extras*'P'))
       
   428 +        check(x, size(vh + '12P4i' + CO_MAXBLOCKS*'3i' + 'P' + extras*'P'))
       
   429          # function
       
   430          def func(): pass
       
   431          check(func, size(h + '9P'))