7686729069
Extract protocol-agnostic FenceTimeline from Intel to shared src/drivers/fence.rs — atomic-based fence tracking suitable for Intel, VIRGL, and AMD drivers. Extract protocol-agnostic SyncobjManager from Intel to shared src/drivers/syncobj.rs — syncobj create/destroy/signal/reset/ wait/query and sync_file fd export/import. Wire both into VirtioDriver: - Add FenceTimeline + SyncobjManager fields - Implement all 5 GpuDriver syncobj trait methods (create, destroy, wait, export_fd, import_fd) - Track fence seqnos in virgl_submit_3d (allocate before submit, signal after completion) Intel fence.rs and syncobj.rs converted to thin re-export modules pointing at shared sources — no behavioral change for Intel driver. This gives Mesa VIRGL userspace the standard DRM syncobj API for GPU/compositor synchronization.
56 lines
1.9 KiB
Plaintext
56 lines
1.9 KiB
Plaintext
|
|
#------------------------------------------------------------------------------
|
|
# $File: ruby,v 1.10 2019/07/21 09:40:17 christos Exp $
|
|
# ruby: file(1) magic for Ruby scripting language
|
|
# URL: https://www.ruby-lang.org/
|
|
# From: Reuben Thomas <rrt@sc3d.org>
|
|
|
|
# Ruby scripts
|
|
0 search/1/w #!\ /usr/bin/ruby Ruby script text executable
|
|
!:strength + 15
|
|
!:mime text/x-ruby
|
|
0 search/1/w #!\ /usr/local/bin/ruby Ruby script text executable
|
|
!:strength + 15
|
|
!:mime text/x-ruby
|
|
0 search/1 #!/usr/bin/env\ ruby Ruby script text executable
|
|
!:strength + 15
|
|
!:mime text/x-ruby
|
|
0 search/1 #!\ /usr/bin/env\ ruby Ruby script text executable
|
|
!:strength + 15
|
|
!:mime text/x-ruby
|
|
|
|
# What looks like ruby, but does not have a shebang
|
|
# (modules and such)
|
|
# From: Lubomir Rintel <lkundrak@v3.sk>
|
|
0 search/8192 require
|
|
>0 regex \^[[:space:]]*require[[:space:]]'[A-Za-z_/.]+'
|
|
>>0 regex def\ [a-z]|\ do$
|
|
>>>&0 regex \^[[:space:]]*end([[:space:]]+[;#].*)?$ Ruby script text
|
|
!:strength + 30
|
|
!:mime text/x-ruby
|
|
0 regex \^[[:space:]]*(class|module)[[:space:]][A-Z]
|
|
>0 regex (modul|includ)e\ [A-Z]|def\ [a-z]
|
|
>>&0 regex \^[[:space:]]*end([[:space:]]+[;#].*)?$ Ruby script text
|
|
!:strength + 30
|
|
!:mime text/x-ruby
|
|
# Classes with no modules or defs, beats simple ASCII
|
|
0 regex \^[[:space:]]*(class|module)[[:space:]][A-Z]
|
|
>&0 regex \^[[:space:]]*end([[:space:]]+[;#if].*)?$ Ruby script text
|
|
!:strength + 10
|
|
!:mime text/x-ruby
|
|
# Looks for function definition to balance python magic
|
|
# def name (args)
|
|
# end
|
|
0 search/8192 def\
|
|
>0 regex \^[[:space:]]*def\ [a-z]|def\ [[:alpha:]]+::[a-z]
|
|
>>&0 regex \^[[:space:]]*end([[:space:]]+[;#].*)?$ Ruby script text
|
|
!:strength + 10
|
|
!:mime text/x-ruby
|
|
|
|
0 search/8192 require
|
|
>0 regex \^[[:space:]]*require[[:space:]]'[A-Za-z_/.]+' Ruby script text
|
|
!:mime text/x-ruby
|
|
0 search/8192 include
|
|
>0 regex \^[[:space:]]*include\ ([A-Z]+[a-z]*(::))+ Ruby script text
|
|
!:mime text/x-ruby
|