Code Monkey home page Code Monkey logo

Comments (13)

Machiry avatar Machiry commented on July 27, 2024

Can you share your kernel?

from difuze.

srikanth007m avatar srikanth007m commented on July 27, 2024

Here it is https://source.codeaurora.org/quic/la/kernel/msm-4.14/

from difuze.

srikanth007m avatar srikanth007m commented on July 27, 2024

Entire log uploaded to https://gist.github.com/srikanth007m/6aa9eab8ad4177ae3f111ecefe8e5316

from difuze.

srikanth007m avatar srikanth007m commented on July 27, 2024

@Machiry Did you got chance to look into it?

from difuze.

Machiry avatar Machiry commented on July 27, 2024

@srikanth007m Looking into it now.

from difuze.

Machiry avatar Machiry commented on July 27, 2024

As the error suggests, clang doesn't support that ABI.
This commit ignores the flag: 91a6cb3e9b7e19d145789af860831b08eebcd9a4\

But for the sake for interface recovery, I suggest you to pull the latest commit and use the following workaround:

Before running run_all.py, do following changed to the include/linux/compiler-gcc.h file in the kernel sources (line 305):

+ //#define asm_volatile_goto(x...)       do { asm goto(x); asm (""); } while (0)
+ #define asm_volatile_goto(x...)       do { } while (0)

NOTE: DONT MAKE THESE CHANGES WHILE BUILDING THE KERNEL.

from difuze.

srikanth007m avatar srikanth007m commented on July 27, 2024

Thank you for your response .. i will try as you suggested.

from difuze.

srikanth007m avatar srikanth007m commented on July 27, 2024

@Machiry i tried which you suggestion. I see still it is unable to fine the ParseV4L2Headers

[*] Trying to Run Component: BuildLLVM [+] Setup for component: BuildLLVM complete [*] Running LLVM Commands in multiprocessing mode. [*] Finished Building LLVM Bitcode files [+] [+] Script containing all LLVM Build Commands:/local/mnt2/workspace/kdev_4.14/kernel/kernel_out/llvm_bitcode_out/llvm_build.sh [+] Component: BuildLLVM ran successfully. [+] Component: BuildLLVM passed successfully. [*] Trying to Run Component: DrLinker [+] Setup for component: DrLinker complete [*] Running dr_linker. This might take time. Please wait. [+] Found:0 Interesting bitcode files [*] Processing bitcode files [+] Processed all bitcode files. [*] Trying to find dependency bc files [*] dr_linker finished execution. [*] Running llvm-link to generate the final linked bitcode file. [+] Component: DrLinker ran successfully. [+] Component: DrLinker passed successfully. [*] Trying to Run Component: GenerateIncludes [+] Setup for component: GenerateIncludes complete [+] Component: GenerateIncludes ran successfully. [+] Component: GenerateIncludes passed successfully. [*] Trying to Run Component: GeneratePreprocessed [+] Setup for component: GeneratePreprocessed complete [*] Running LLVM Commands in multiprocessing mode. [*] Finished Building LLVM Preprocessed files [+] [+] Script containing all LLVM Preprocess Commands:/local/mnt2/workspace/kdev_4.14/kernel/kernel_out/llvm_bitcode_out/llvm_generate_preprocessed.sh [+] Component: GeneratePreprocessed ran successfully. [+] Component: GeneratePreprocessed passed successfully. [*] Trying to Run Component: ParseHeaders [+] Setup for component: ParseHeaders complete [*] Running grep to find ops and operations structure. [+] Grep ran successfully to find ops and operations structures. [*] Running c2xml to find entry point configurations. [+] Component: ParseHeaders ran successfully. [+] Component: ParseHeaders passed successfully. [*] Trying to Run Component: ParseV4L2Headers [+] Setup for component: ParseV4L2Headers complete [+] Grep ran successfully to find ops and operations structures. [*] Running c2xml to find entry point configurations. [!] Unable to find v4l2 base bitcode file:/local/mnt2/workspace/kdev_4.14/kernel/kernel_out/llvm_bitcode_out/drivers/media/v4l2-core/v4l2-ioctl.llvm.bc [?] Component: ParseV4L2Headers failed. [+] Component: ParseV4L2Headers passed successfully. [*] Trying to Run Component: EntryPointIdentifier [+] Setup for component: EntryPointIdentifier complete [*] Running EntryPointIdentifier.. [+] Entry point file present:/local/mnt2/workspace/kdev_4.14/kernel/kernel_out/llvm_bitcode_out/hdr_file_config.txt [+] Successfully generated all the possible entry points into file: /local/mnt2/workspace/kdev_4.14/kernel/kernel_out/llvm_bitcode_out/entry_point_out.txt [+] Component: EntryPointIdentifier ran successfully. [+] Component: EntryPointIdentifier passed successfully. [*] Trying to Run Component: DevNameFinder [+] Setup for component: DevNameFinder complete [*] Invoking Dev Name finder [*] Found: 0 ioctl functions to process. [*] Processing in multiprocessing mode [*] Finished processing: 0 ioctl functions. [*] Dev name finder failed for: 0 out of: 0 Ioctl functions. [+] Component: DevNameFinder ran successfully. [+] Component: DevNameFinder passed successfully. [*] Trying to Run Component: IoctlCmdFinder [+] Setup for component: IoctlCmdFinder complete [*] Invoking Ioctl cmd finder [*] Found: 0 ioctl functions to process. [*] Processing in multiprocessing mode [*] Finished processing: 0 ioctl functions. [*] Ioctl Cmd finder failed for: 0 out of: 0 Ioctl functions. [+] Component: IoctlCmdFinder ran successfully. [+] Component: IoctlCmdFinder passed successfully. [*] Trying to Run Component: V4L2CmdFinder [!] Setup failed for component: V4L2CmdFinder , with Error: No file specified for v4l2 id -> cmdid list. [!] Component: V4L2CmdFinder failed. Exiting. [*] Component Runtime information: [*] GeneratePreprocessed:0.044095993042 seconds. [*] EntryPointIdentifier:8.79764556885e-05 seconds. [*] IoctlCmdFinder:0.0045919418335 seconds. [*] ParseV4L2Headers:4.81605529785e-05 seconds. [*] BuildLLVM:0.0548439025879 seconds. [*] DevNameFinder:0.00578618049622 seconds. [*] ParseHeaders:0.36589884758 seconds. [*] GenerateIncludes:0.037024974823 seconds. [*] DrLinker:0.00234293937683 seconds.

from difuze.

srikanth007m avatar srikanth007m commented on July 27, 2024

@Machiry - I have 2 issues here.

#1 Has said above. This is one one version of kernel snapshot. Interface recovery is immediately failing.
#2 Showing different errors on one kernel snapshot , where https://gist.github.com/srikanth007m/c67db0bba5fc3223e95b475ba3fc9f37 full log uploaded.

from difuze.

Machiry avatar Machiry commented on July 27, 2024

@srikanth007m Looks like you missed the changes to the file: include/linux/compiler-gcc.h. What I meant was, do not make the changes while building i.e., while generating makeout.txt.

Once it is generated, then make the changes to include/linux/compiler-gcc.h, as suggested in https://github.com/ucsb-seclab/difuze/issues#issuecomment-449777064, then run run_all.py

from difuze.

Machiry avatar Machiry commented on July 27, 2024

btw, I tested with the difuze docker container.

from difuze.

srikanth007m avatar srikanth007m commented on July 27, 2024

@Machiry I did the same. I made the changes to file: include/linux/compiler-gcc.h only after compilation. Does normal and docker makes any difference?

from difuze.

Securee avatar Securee commented on July 27, 2024

@Machiry I did the same. I made the changes to file: include/linux/compiler-gcc.h only after compilation. Does normal and docker makes any difference?

hi, has your problem resolved ? I met the same issue.

from difuze.

Related Issues (18)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.