public inbox for systemtap@sourceware.org
 help / color / mirror / Atom feed
* [Bug runtime/19940] New: page_cache_release() missing from the latest rawhide kernel
@ 2016-04-11 18:02 dsmith at redhat dot com
  2016-04-11 18:09 ` [Bug runtime/19940] " dsmith at redhat dot com
  2016-04-11 19:08 ` dsmith at redhat dot com
  0 siblings, 2 replies; 3+ messages in thread
From: dsmith at redhat dot com @ 2016-04-11 18:02 UTC (permalink / raw)
  To: systemtap

https://sourceware.org/bugzilla/show_bug.cgi?id=19940

            Bug ID: 19940
           Summary: page_cache_release() missing from the latest rawhide
                    kernel
           Product: systemtap
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: runtime
          Assignee: systemtap at sourceware dot org
          Reporter: dsmith at redhat dot com
  Target Milestone: ---

On the latest rawhide kernel (4.6.0-0.rc2.git4.1.fc25.x86_64), I'm getting a
compile error:

====
# stap -v ./nd_sys.stp -c ./preadv
Pass 1: parsed user script and 113 library scripts using
238916virt/37424res/7652shr/29832data kb, in 200usr/70sys/279real ms.
Pass 2: analyzed script: 1114 probes, 195 functions, 104 embeds, 104 globals
using 252860virt/52528res/8880shr/43776data kb, in 52630usr/8080sys/60396real
ms.
Pass 3: translated to C into
"/tmp/stap7MMLS4/stap_f8b9110f991039a05cd3289bcbc92d31_1435804_src.c" using
254160virt/53824res/9008shr/45076data kb, in 6280usr/50sys/6339real ms.
In file included from /usr/local/share/systemtap/runtime/linux/runtime.h:209:0,
                 from /usr/local/share/systemtap/runtime/runtime.h:24,
                 from
/tmp/stap7MMLS4/stap_f8b9110f991039a05cd3289bcbc92d31_1435804_src.c:25:
/usr/local/share/systemtap/runtime/linux/access_process_vm.h: In function
‘__access_process_vm_’:
/usr/local/share/systemtap/runtime/linux/access_process_vm.h:55:7: error:
implicit declaration of function ‘page_cache_release’
[-Werror=implicit-function-declaration]
       page_cache_release (page);
       ^~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
scripts/Makefile.build:291: recipe for target
'/tmp/stap7MMLS4/stap_f8b9110f991039a05cd3289bcbc92d31_1435804_src.o' failed
make[1]: ***
[/tmp/stap7MMLS4/stap_f8b9110f991039a05cd3289bcbc92d31_1435804_src.o] Error 1
Makefile:1431: recipe for target '_module_/tmp/stap7MMLS4' failed
make: *** [_module_/tmp/stap7MMLS4] Error 2
WARNING: kbuild exited with status: 2
Pass 4: compiled C into "stap_f8b9110f991039a05cd3289bcbc92d31_1435804.ko" in
138660usr/14140sys/152267real ms.
Pass 4: compilation failed.  [man error::pass4]
====

The runtime should be updated to avoid this error.

-- 
You are receiving this mail because:
You are the assignee for the bug.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug runtime/19940] page_cache_release() missing from the latest rawhide kernel
  2016-04-11 18:02 [Bug runtime/19940] New: page_cache_release() missing from the latest rawhide kernel dsmith at redhat dot com
@ 2016-04-11 18:09 ` dsmith at redhat dot com
  2016-04-11 19:08 ` dsmith at redhat dot com
  1 sibling, 0 replies; 3+ messages in thread
From: dsmith at redhat dot com @ 2016-04-11 18:09 UTC (permalink / raw)
  To: systemtap

https://sourceware.org/bugzilla/show_bug.cgi?id=19940

--- Comment #1 from David Smith <dsmith at redhat dot com> ---
Looks like this was caused by the following kernel changes:

====
commit 1fa64f198b9f8d6ec0f7aec7c18dc94684391140                                 
Author: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>                    
Date:   Fri Apr 1 15:29:49 2016 +0300                                           

    mm: drop PAGE_CACHE_* and page_cache_{get,release} definition               

    All users gone.  We can remove these macros.                                
====

====
commit 09cbfeaf1a5a67bfb3201e0c83c810cecb2efa5a                                 
Author: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>                    
Date:   Fri Apr 1 15:29:47 2016 +0300                                           

    mm, fs: get rid of PAGE_CACHE_* and page_cache_{get,release} macros         

    PAGE_CACHE_{SIZE,SHIFT,MASK,ALIGN} macros were introduced *long* time       
    ago with promise that one day it will be possible to implement page         
    cache with bigger chunks than PAGE_SIZE.                                    

    This promise never materialized.  And unlikely will.                        

    We have many places where PAGE_CACHE_SIZE assumed to be equal to            
    PAGE_SIZE.  And it's constant source of confusion on whether                
    PAGE_CACHE_* or PAGE_* constant should be used in a particular case,        
    especially on the border between fs and mm.                                 

    Global switching to PAGE_CACHE_SIZE != PAGE_SIZE would cause to much        
    breakage to be doable.                                                      

    Let's stop pretending that pages in page cache are special.  They are       
    not.                                                                        

    The changes are pretty straight-forward:                                    

     - <foo> << (PAGE_CACHE_SHIFT - PAGE_SHIFT) -> <foo>;                       

     - <foo> >> (PAGE_CACHE_SHIFT - PAGE_SHIFT) -> <foo>;                       

     - PAGE_CACHE_{SIZE,SHIFT,MASK,ALIGN} -> PAGE_{SIZE,SHIFT,MASK,ALIGN};      

     - page_cache_get() -> get_page();                                          

     - page_cache_release() -> put_page();                                      

    This patch contains automated changes generated with coccinelle using       
    script below.  For some reason, coccinelle doesn't patch header files.      
    I've called spatch for them manually.                                       

    The only adjustment after coccinelle is revert of changes to                
    PAGE_CAHCE_ALIGN definition: we are going to drop it later.                 

    There are few places in the code where coccinelle didn't reach.  I'll       
    fix them manually in a separate patch.  Comments and documentation also     
    will be addressed with the separate patch.                                  
====

-- 
You are receiving this mail because:
You are the assignee for the bug.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug runtime/19940] page_cache_release() missing from the latest rawhide kernel
  2016-04-11 18:02 [Bug runtime/19940] New: page_cache_release() missing from the latest rawhide kernel dsmith at redhat dot com
  2016-04-11 18:09 ` [Bug runtime/19940] " dsmith at redhat dot com
@ 2016-04-11 19:08 ` dsmith at redhat dot com
  1 sibling, 0 replies; 3+ messages in thread
From: dsmith at redhat dot com @ 2016-04-11 19:08 UTC (permalink / raw)
  To: systemtap

https://sourceware.org/bugzilla/show_bug.cgi?id=19940

David Smith <dsmith at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #2 from David Smith <dsmith at redhat dot com> ---
Fixed in commit 8acda2c.

-- 
You are receiving this mail because:
You are the assignee for the bug.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-04-11 19:08 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-04-11 18:02 [Bug runtime/19940] New: page_cache_release() missing from the latest rawhide kernel dsmith at redhat dot com
2016-04-11 18:09 ` [Bug runtime/19940] " dsmith at redhat dot com
2016-04-11 19:08 ` dsmith at redhat dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).