diff --git a/doc/load_xdma_driver.md b/doc/load_xdma_driver.md index 2dc795b..f797392 100644 --- a/doc/load_xdma_driver.md +++ b/doc/load_xdma_driver.md @@ -22,7 +22,7 @@ $ lspci 然后 cd 到以下目录中,并运行 `make` 编译 Xilinx 提供的 XDMA 驱动 (注意这里需要用管理员权限) 。 ```bash -$ cd host_software/driver/xdma +$ cd host_software/driver/XDMA/linux-kernel/xdma/ $ sudo make ``` @@ -36,15 +36,24 @@ $ sudo rm *.ko $ sudo make ``` -  +## 编译测试工具 + +本项目采用 Xilinx 官方提供的 [XDMA Linux 驱动](https://github.com/Xilinx/dma_ip_drivers) ,官方为其配套了一些测试工具,需要用户自行编译。借助这些工具,用户可以检查自己的驱动是否安装正确 + +切换到 `tools` 目录,并运行 `make` 对工具进行编译 + +```bash +$ cd ../tools/ +$ sudo make +``` ## 加载 XDMA 驱动 -编译成功后,cd 到 上级目录,运行 `load_driver.sh` 脚本来加载驱动 。 +编译成功后,cd 到 `tests` 目录,运行 `load_driver.sh` 脚本来加载驱动 。需要注意 ,这里的 `load_driver.sh` 脚本 ,默认使用中断方式调用设备 ,因为我们前期配置中没有使用到XDMA的中断功能 ,因此需要使用一个参数来使用轮询方式加载驱动 ```bash -$ cd .. # cd 到上级目录 host_software/driver 中 -$ sudo ./load_driver +$ cd ../tests/ # cd 到上级目录 linux-kernel/tests 中 +$ sudo ./load_driver.sh 4 ``` 如果驱动加载成功,则显示 `"DONE"` 。 @@ -61,5 +70,22 @@ $ ls /dev/xdma* 其中我们要用到的设备是 `/dev/xdma0_c2h_0` 和 `/dev/xdma0_h2c_0` ,前者用来从 FPGA 中读取数据 (device_to_host) ,后者用来向 FPGA 中传送数据 (host_to_device) -  +## 检验驱动是否正确启用 + +完成加载后,可以通过调用 Xilinx 提供的测试工具来检测驱动正确性。在 `test` 目录中调用 `run_test.sh` 脚本,等待测试完毕即可 + +```bash +$ sudo sh ./run_test.sh +``` + +如果测试正常 ,程序将快速返回 ,给出 `Info: All PCIe DMA memory mapped tests passed.` 和 `Info: All tests in run_tests.sh passed.` 的结果 + +如果卡死 ,可以卸载之前的 XDMA 驱动并检查之前步骤中是否以轮询方式加载 ,卸载使用下面的命令 + +```bash +$ sudo rmmod xdma +``` + +更多使用信息可以参考 `driver/XDMA/linux-kernel/readme.txt` 或前往 官方repo 进行查询 + diff --git a/host_software/driver/XDMA/linux-kernel/COPYING b/host_software/driver/XDMA/linux-kernel/COPYING new file mode 100644 index 0000000..3912109 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/COPYING @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/host_software/driver/XDMA/linux-kernel/LICENSE b/host_software/driver/XDMA/linux-kernel/LICENSE new file mode 100644 index 0000000..703e647 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/LICENSE @@ -0,0 +1,30 @@ +BSD License + +For Xilinx DMA IP software + +Copyright (c) 2016-present, Xilinx, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + * Neither the name Xilinx nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/host_software/driver/XDMA/linux-kernel/RELEASE b/host_software/driver/XDMA/linux-kernel/RELEASE new file mode 100644 index 0000000..2f6a92e --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/RELEASE @@ -0,0 +1,39 @@ +v2020.2.0 +========= +- renamed module parameter "enable_credit_mp" to "enable_st_c2h_credit" to + accurately describe its usage. +- turn off the ST C2H credit as default (i.e., enable_st_c2h_credit = 0) +- fixed c2h streaming credit issue when data buffers uses >= 1K descriptors. + +v2020.1.08 +=============== +- replaced module parameter "sgdma_timeout" to "h2c_timeout" and "c2h_timeout" + for H2C and C2H channels. + value of 0 means no timeout: wait forever for the dma completion. +- added new "-e" option to dma_from_device + this is for streaming mode only, when -e is set, the driver will end the dma + and return the data when an EOP (end-of-packet) is received or the + specified bytes of data is received. + without "-e" option, the driver will end the dma when the specified bytes of + data is received. +- added gen4 device ids +- fixed next adjacent descriptors when dma_alloc_coherent doesn't return a + page-aligned address + +v2020.1.06 +=============== +- added memory aperture support (-k) option in dma_from_device and dma_to_device. +- fixed holding spinlock while doing wait_event_interruptible_xxx +- kernel 5.0 support +- fixed next adjacent descriptors crossing the 4K boundary + +Release: 2019.2 +=============== + +Change list: +- Updated data rate for performance run. Now it will print data rate based on the size. +- remove BUG_ON, return proper error code instead +- Streaming mode: enable credit mechanism by default +- Streaming mode: Do not read more than user supplied buffer size on C2H +- Streaming mode: Added support for Async-IO for both streaming and MM transfers +- fixed performance appliaction crash diff --git a/host_software/driver/xdma/libxdma_api.h b/host_software/driver/XDMA/linux-kernel/include/libxdma_api.h similarity index 79% rename from host_software/driver/xdma/libxdma_api.h rename to host_software/driver/XDMA/linux-kernel/include/libxdma_api.h index 00d4355..640a158 100644 --- a/host_software/driver/xdma/libxdma_api.h +++ b/host_software/driver/XDMA/linux-kernel/include/libxdma_api.h @@ -4,10 +4,17 @@ * Copyright (c) 2016-present, Xilinx, Inc. * All rights reserved. * - * This source code is licensed under both the BSD-style license (found in the - * LICENSE file in the root directory of this source tree) and the GPLv2 (found - * in the COPYING file in the root directory of this source tree). - * You may select, at your option, one of the above-listed licenses. + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". */ #ifndef __XDMA_BASE_API_H__ @@ -125,6 +132,19 @@ int xdma_user_isr_disable(void *dev_hndl, unsigned int mask); */ ssize_t xdma_xfer_submit(void *dev_hndl, int channel, bool write, u64 ep_addr, struct sg_table *sgt, bool dma_mapped, int timeout_ms); + +ssize_t xdma_xfer_submit_nowait(void *cb_hndl, void *dev_hndl, int channel, bool write, u64 ep_addr, + struct sg_table *sgt, bool dma_mapped, int timeout_ms); + + +ssize_t xdma_xfer_completion(void *cb_hndl, void *dev_hndl, int channel, bool write, u64 ep_addr, + struct sg_table *sgt, bool dma_mapped, int timeout_ms); + +/////////////////////missing API//////////////////// + +//xdma_get_channle_state - if no interrupt on DMA hang is available +//xdma_channle_restart + #endif diff --git a/host_software/driver/XDMA/linux-kernel/readme.txt b/host_software/driver/XDMA/linux-kernel/readme.txt new file mode 100644 index 0000000..05ee9c2 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/readme.txt @@ -0,0 +1,177 @@ +The files in this directory provide Xilinx PCIe DMA drivers, example software, +and example test scripts that can be used to exercise the Xilinx PCIe DMA IP. + +This software can be used directly or referenced to create drivers and software +for your Xilinx FPGA hardware design. + +Operating System Support: +========================= +Operating System Architecture: x86_64 +Linux kernel: 3.10+ +RHEL/CentOS: 7.6, 7.7, 7.8, 7.9, + 8.1, 8.2 +Ubuntu: 16.04.5 LTS, 16.04.6 LTS + 18.04.1 LTS, 18.04.2 LTS, 18.04.4 LTS3, 18.04.5 LTS + 20.04 LTS, 20.04.1 LT + +HW Requirement: +=============== +The PCIe DMA supports UltraScale+, UltraScale, Virtex-7 XT and 7 Series Gen2 +devices. + +Please refer to the Xilinx documentation "PG195 DMA/Bridge Subsystem for PCI +Express" for details of the IP. + + +Directory and file description: +=============================== + - xdma/: This directory contains the Xilinx PCIe DMA kernel module + driver files. + + - include/: This directory contains all include files that are needed for + compiling driver. + + - tests/: This directory contains example application software to exercise the + provided kernel module driver and Xilinx PCIe DMA IP. This directory + also contains the following scripts and directories. + + - load_driver.sh: + This script loads the kernel module and creates the necissary + kernel nodes used by the provided software. + The The kernel device nodes will be created under /dev/xdma*. + Additional device nodes are created under /dev/xdma/card* to + more easily differentiate between multiple PCIe DMA enabled + cards. Root permissions will be required to run this script. + + - run_test.sh: + - dma_memory_mapped_test.sh, dma_streaming_test.sh: + - data/: + run_test.sh runs sample tests on a Xilinx PCIe DMA target and + returns a pass (0) or fail (1) result. + This script calls 2 other scripts in the same directory: + - dma_memory_mapped_test.sh for memory-mapped dma mode + - dma_streaming_test.sh for streaming dma mode + The data/ directory contains binary data files that are used + for DMA data transfers to the Xilinx FPGA PCIe endpoint device + with the run_test.sh. + !NOTE!: + ======= + These scripts are intended for use with the PCIe DMA EXAMPLE + DESIGN ONLY. + + - perform_hwcount.sh: + This script runs hardware performance for XDMA for both Host to + Card (H2C) and Card to Host (C2H). The result are copied to + 'hw_log_h2c.txt' and hw_log_c2h.txt' text files. + For each direction the performance script loops from 64 bytes + to 4MBytes and generate performance numbers (byte size doubles + for each loop count). + You can grep for 'data rate' on those two files to see data + rate values. + Data rate values are in percentage of maximum throughput. + Maximum data rate for x8 Gen3 is 8Gbytes/s, so for a x8Gen3 + design value of 0.81 data rate is 0.81*8 = 6.48Gbytes/s. + Maximum data rate for x16 Gen3 is 16Gbytes/s, so for a x16Gen3 + design value of 0.78 data rate is 0.78*16 = 12.48Gbytes/s. + This program can be run on AXI-MM example design. + AXI-ST example design is a loopback design, both H2C and C2H + are connected. Running on AXI-ST example design will not + generate proper numbers. + If a AXI-ST design is independent of H2C and C2H, performance + number can be generated. + + - scripts_mm/ + This directory contains a set of scripts to check basic driver + loading/unloading and perform dma operations in memory-mapped + mode. + Compare with dma_memory_mapped_test.sh, the test is more + extensive with more dma size and it also utilizes fio tool in + addition to dma_from/to_device tools. + + - xdma_mm.sh + top level script. + + - io_sweep.sh, io.sh, unaligned + dma test via dma_from/to_device + + - fio_test.sh fio_parse_result.sh + dma test via fio tool + + - scripts_mm/ dependency + Some test in script_mm/ requires fio tool and python extension + + Install fio: + - Centos/RHEL: yum install fio + - Ubuntu: apt install fio + + Install python extension openpyxl, xlrd(version 1.2.0) + python --version + pip2 install openpyxl + pip2 install xlrd=1.2.0 + +Usage: + - Change directory to the driver directory. + cd xdma + - Compile and install the kernel module driver. + make install + - Change directory to the tools directory. + cd tools + - Compile the provided example test tools. + make + - Load the kernel module driver: + a. modprobe xdma + b. using the provided script. + cd tests + ./load_driver.sh + - Run the provided test script to generate basic DMA traffic. + ./run_test.sh + + For more extensive memory mapped test: + assume the XDMA FGPA is at pci slot 0000:01:00.0 + cd scripts_mm + ./xdma_mm.sh 0000:01:00.0 | tee /tmp/xdma_mm.log + + - Check driver Version number + modinfo xdma (or) + modinfo ../xdma/xdma.ko + +Updates and Backward Compaitiblity: + - The following features were added to the PCIe DMA IP and driver in Vivado + 2016.1. These features cannot be used with PCIe DMA IP if the IP was + generated using a Vivado build earlier than 2016.1. + - Poll Mode: Earlier versions of Vivado only support interrupt mode which + is the default behavior of the driver. + - Source/Destination Address: Earlier versions of Vivado PCIe DMA IP + required the low-order bits of the Source and Destination address to be + the same. + As of 2016.1 this restriction has been removed and the Source and + Destination addresses can be any arbitrary address that is valid for + your system. + +Frequently asked questions: + Q: How do I uninstall the kernel module driver? + A: Use the following commands to uninstall the driver. + - Uninstall the kernel module. + rmmod -s xdma + + Q: How do I modify the PCIe Device IDs recognized by the kernel module driver? + A: The xdma/xdma_mod.c file constains the pci_device_id struct that identifies + the PCIe Device IDs that are recognized by the driver in the following + format: + { PCI_DEVICE(0x10ee, 0x8038), }, + Add, remove, or modify the PCIe Device IDs in this struct as desired. Then + uninstall the existing xdma kernel module, compile the driver again, and + re-install the driver using the load_driver.sh script. + + Q: By default the driver uses interupts to signal when DMA transfers are + completed. How do I modify the driver to use polling rather than + interrupts to determine when DMA transactions are completed? + A: The driver can be changed from being interrupt driven (default) to being + polling driven (poll mode) when the kernel module is inserted. To do this + modify the load_driver.sh file as follows: + Change: insmod xdma/xdma.ko + To: insmod xdma/xdma.ko poll_mode=1 + Note: Interrupt vs Poll mode will apply to all DMA channels. If desired the + driver can be modified such that some channels are interrupt driven while + others are polling driven. Refer to the poll mode section of PG195 for + additional information on using the PCIe DMA IP in poll mode. diff --git a/host_software/driver/XDMA/linux-kernel/tests/data/datafile0_4K.bin b/host_software/driver/XDMA/linux-kernel/tests/data/datafile0_4K.bin new file mode 100644 index 0000000..753f535 Binary files /dev/null and b/host_software/driver/XDMA/linux-kernel/tests/data/datafile0_4K.bin differ diff --git a/host_software/driver/XDMA/linux-kernel/tests/data/datafile1_4K.bin b/host_software/driver/XDMA/linux-kernel/tests/data/datafile1_4K.bin new file mode 100644 index 0000000..2080c25 Binary files /dev/null and b/host_software/driver/XDMA/linux-kernel/tests/data/datafile1_4K.bin differ diff --git a/host_software/driver/XDMA/linux-kernel/tests/data/datafile2_4K.bin b/host_software/driver/XDMA/linux-kernel/tests/data/datafile2_4K.bin new file mode 100644 index 0000000..9e91efc Binary files /dev/null and b/host_software/driver/XDMA/linux-kernel/tests/data/datafile2_4K.bin differ diff --git a/host_software/driver/XDMA/linux-kernel/tests/data/datafile3_4K.bin b/host_software/driver/XDMA/linux-kernel/tests/data/datafile3_4K.bin new file mode 100644 index 0000000..df437f4 Binary files /dev/null and b/host_software/driver/XDMA/linux-kernel/tests/data/datafile3_4K.bin differ diff --git a/host_software/driver/XDMA/linux-kernel/tests/data/datafile_256K.bin b/host_software/driver/XDMA/linux-kernel/tests/data/datafile_256K.bin new file mode 100644 index 0000000..dd68b67 Binary files /dev/null and b/host_software/driver/XDMA/linux-kernel/tests/data/datafile_256K.bin differ diff --git a/host_software/driver/XDMA/linux-kernel/tests/data/datafile_32M.bin b/host_software/driver/XDMA/linux-kernel/tests/data/datafile_32M.bin new file mode 100644 index 0000000..31ba1fe Binary files /dev/null and b/host_software/driver/XDMA/linux-kernel/tests/data/datafile_32M.bin differ diff --git a/host_software/driver/XDMA/linux-kernel/tests/data/datafile_8K.bin b/host_software/driver/XDMA/linux-kernel/tests/data/datafile_8K.bin new file mode 100644 index 0000000..2790a82 Binary files /dev/null and b/host_software/driver/XDMA/linux-kernel/tests/data/datafile_8K.bin differ diff --git a/host_software/driver/XDMA/linux-kernel/tests/data/output_datafile0_4K.bin b/host_software/driver/XDMA/linux-kernel/tests/data/output_datafile0_4K.bin new file mode 100644 index 0000000..2802596 Binary files /dev/null and b/host_software/driver/XDMA/linux-kernel/tests/data/output_datafile0_4K.bin differ diff --git a/host_software/driver/XDMA/linux-kernel/tests/data/output_datafile1_4K.bin b/host_software/driver/XDMA/linux-kernel/tests/data/output_datafile1_4K.bin new file mode 100644 index 0000000..c458a23 Binary files /dev/null and b/host_software/driver/XDMA/linux-kernel/tests/data/output_datafile1_4K.bin differ diff --git a/host_software/driver/XDMA/linux-kernel/tests/data/output_datafile2_4K.bin b/host_software/driver/XDMA/linux-kernel/tests/data/output_datafile2_4K.bin new file mode 100644 index 0000000..50f43df Binary files /dev/null and b/host_software/driver/XDMA/linux-kernel/tests/data/output_datafile2_4K.bin differ diff --git a/host_software/driver/XDMA/linux-kernel/tests/data/output_datafile3_4K.bin b/host_software/driver/XDMA/linux-kernel/tests/data/output_datafile3_4K.bin new file mode 100644 index 0000000..c8b49c8 Binary files /dev/null and b/host_software/driver/XDMA/linux-kernel/tests/data/output_datafile3_4K.bin differ diff --git a/host_software/driver/XDMA/linux-kernel/tests/dma_memory_mapped_test.sh b/host_software/driver/XDMA/linux-kernel/tests/dma_memory_mapped_test.sh new file mode 100755 index 0000000..a833eca --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tests/dma_memory_mapped_test.sh @@ -0,0 +1,115 @@ +#!/bin/bash +display_help() { + echo "$0 " + echo -e "xdma id:\txdma[N] " + echo -e "io size:\tdma transfer size in byte" + echo -e "io count:\tdma transfer count" + echo -e "h2c #:\tnumber of h2c channels" + echo -e "c2h #:\tnumber of c2h channels" + echo + + exit 1 +} + +if [ $# -eq 0 ]; then + display_help +fi + +xid=$1 +transferSz=$2 +transferCount=$3 +h2cChannels=$4 +c2hChannels=$5 + +tool_path=../tools + +testError=0 +# Run the PCIe DMA memory mapped write read test +echo "Info: Running PCIe DMA memory mapped write read test" +echo -e "\ttransfer size: $transferSz, count: $transferCount" + +# Write to all enabled h2cChannels in parallel +if [ $h2cChannels -gt 0 ]; then + # Loop over four blocks of size $transferSz and write to them + for ((i=0; i<=3; i++)); do + addrOffset=$(($transferSz * $i)) + curChannel=$(($i % $h2cChannels)) + echo "Info: Writing to h2c channel $curChannel at address" \ + "offset $addrOffset." + $tool_path/dma_to_device -d /dev/${xid}_h2c_${curChannel} \ + -f data/datafile${i}_4K.bin -s $transferSz \ + -a $addrOffset -c $transferCount & + # If all channels have active transactions we must wait for + # them to complete + if [ $(($curChannel+1)) -eq $h2cChannels ]; then + echo "Info: Wait for current transactions to complete." + wait + fi + done +fi + +# Wait for the last transaction to complete. +wait + +# Read from all enabled c2hChannels in parallel +if [ $c2hChannels -gt 0 ]; then + # Loop over four blocks of size $transferSz and read from them + for ((i=0; i<=3; i++)); do + addrOffset=$(($transferSz * $i)) + curChannel=$(($i % $c2hChannels)) + + rm -f data/output_datafile${i}_4K.bin + echo "Info: Reading from c2h channel $curChannel at " \ + "address offset $addrOffset." + $tool_path/dma_from_device -d /dev/${xid}_c2h_${curChannel} \ + -f data/output_datafile${i}_4K.bin -s $transferSz \ + -a $addrOffset -c $transferCount & + # If all channels have active transactions we must wait for + # them to complete + if [ $(($curChannel+1)) -eq $c2hChannels ]; then + echo "Info: Wait for current transactions to complete." + wait + fi + done +fi + +# Wait for the last transaction to complete. +wait + +# Verify that the written data matches the read data if possible. +if [ $h2cChannels -eq 0 ]; then + echo "Info: No data verification was performed because no h2c " \ + "channels are enabled." +elif [ $c2hChannels -eq 0 ]; then + echo "Info: No data verification was performed because no c2h " \ + "channels are enabled." +else + echo "Info: Checking data integrity." + for ((i=0; i<=3; i++)); do + cmp data/output_datafile${i}_4K.bin data/datafile${i}_4K.bin \ + -n $transferSz + returnVal=$? + if [ ! $returnVal == 0 ]; then + echo "Error: The data written did not match the data" \ + " that was read." + echo -e "\taddress range: " \ + "$(($i*$transferSz)) - $((($i+1)*$transferSz))" + echo -e "\twrite data file: data/datafile${i}_4K.bin" + echo -e "\tread data file: data/output_datafile${i}_4K.bin" + testError=1 + else + echo "Info: Data check passed for address range " \ + "$(($i*$transferSz)) - $((($i+1)*$transferSz))" + fi + done +fi + +# Exit with an error code if an error was found during testing +if [ $testError -eq 1 ]; then + echo "Error: Test completed with Errors." + exit 1 +fi + +# Report all tests passed and exit +echo "Info: All PCIe DMA memory mapped tests passed." +exit 0 diff --git a/host_software/driver/XDMA/linux-kernel/tests/dma_streaming_test.sh b/host_software/driver/XDMA/linux-kernel/tests/dma_streaming_test.sh new file mode 100755 index 0000000..9f62c48 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tests/dma_streaming_test.sh @@ -0,0 +1,65 @@ +#!/bin/bash + +transferSize=$1 +transferCount=$2 +channelPairs=$3 + +tool_path=../tools + +testError=0 + +# Run the PCIe DMA streaming test +echo "Info: Running PCIe DMA streaming test" +echo " transfer size: $transferSize" +echo " transfer count: $transferCount" +echo "Info: Only channels that have both h2c and c2h will be tested as the other" +echo " interfaces are left unconnected in the PCIe DMA example design. " + +# Setup the DMA c2h channels to wait for incomming data from the h2c channels. +for ((i=0; i<$channelPairs; i++)) +do + rm -f data/output_datafile${i}_4K.bin + echo "Info: DMA setup to read from c2h channel $i. Waiting on write data to channel $i." + $tool_path/dma_from_device -d /dev/xdma0_c2h_${i} -f data/output_datafile${i}_4K.bin -s $transferSize -c $transferCount & +done + +# Wait to make sure the DMA is ready to receive data. +sleep 1s + +# Setup the DMA to write to the h2c channels. Data will be push out the h2c channel +# and then read back through the c2h channel and written to the output data file. +for ((i=0; i<$channelPairs; i++)) +do + echo "Info: Writing to h2c channel $i. This will also start reading data on c2h channel $i." + $tool_path/dma_to_device -d /dev/xdma0_h2c_${i} -f data/datafile${i}_4K.bin -s $transferSize -c $transferCount & +done + +# Wait for the current transactions to complete +echo "Info: Wait the for current transactions to complete." +wait + +# Verify that the written data matches the read data. +for ((i=0; i<$channelPairs; i++)) +do + echo "Info: Checking data integrity." + cmp data/output_datafile${i}_4K.bin data/datafile${i}_4K.bin -n $transferSize + returnVal=$? + if [ ! $returnVal == 0 ]; then + echo "Error: The data written did not match the data that was read." + echo " write data file: data/datafile${i}_4K.bin" + echo " read data file: data/output_datafile${i}_4K.bin" + testError=1 + else + echo "Info: Data check passed for c2h and h2c channel $i." + fi +done + +# Exit with an error code if an error was found during testing +if [ $testError -eq 1 ]; then + echo "Error: Test completed with Errors." + exit 1 +fi + +# Report all tests passed and exit +echo "Info: All PCIe DMA streaming tests passed." +exit 0 diff --git a/host_software/driver/XDMA/linux-kernel/tests/load_driver.sh b/host_software/driver/XDMA/linux-kernel/tests/load_driver.sh new file mode 100755 index 0000000..a669481 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tests/load_driver.sh @@ -0,0 +1,100 @@ +#!/bin/bash +# set -x + +display_help() { + echo "$0 [interrupt mode]" + echo "interrupt mode: optional" + echo "0: auto" + echo "1: MSI" + echo "2: Legacy" + echo "3: MSIx" + echo "4: do not use interrupt, poll mode only" + exit; +} + +if [ "$1" == "help" ]; then + display_help +fi; + +interrupt_selection=$1 +echo "interrupt_selection $interrupt_selection." +device_id=903f + +# Make sure only root can run our script +if [[ $EUID -ne 0 ]]; then + echo "This script must be run as root" 1>&2 + exit 1 +fi + +# Remove the existing xdma kernel module +lsmod | grep xdma +if [ $? -eq 0 ]; then + rmmod xdma + if [ $? -ne 0 ]; then + echo "rmmod xdma failed: $?" + exit 1 + fi +fi + +# Use the following command to Load the driver in the default +# or interrupt drive mode. This will allow the driver to use +# interrupts to signal when DMA transfers are completed. +echo -n "Loading driver..." +case $interrupt_selection in + "0") + echo "insmod xdma.ko interrupt_mode=1 ..." + ret=`insmod ../xdma/xdma.ko interrupt_mode=0` + ;; + "1") + echo "insmod xdma.ko interrupt_mode=2 ..." + ret=`insmod ../xdma/xdma.ko interrupt_mode=1` + ;; + "2") + echo "insmod xdma.ko interrupt_mode=3 ..." + ret=`insmod ../xdma/xdma.ko interrupt_mode=2` + ;; + "3") + echo "insmod xdma.ko interrupt_mode=4 ..." + ret=`insmod ../xdma/xdma.ko interrupt_mode=3` + ;; + "4") + echo "insmod xdma.ko poll_mode=1 ..." + ret=`insmod ../xdma/xdma.ko poll_mode=1` + ;; + *) + intp=`sudo lspci -d :${device_id} -v | grep -o -E "MSI-X"` + intp1=`sudo lspci -d :${device_id} -v | grep -o -E "MSI:"` + if [[ ( -n $intp ) && ( $intp == "MSI-X" ) ]]; then + echo "insmod xdma.ko interrupt_mode=0 ..." + ret=`insmod ../xdma/xdma.ko interrupt_mode=0` + elif [[ ( -n $intp1 ) && ( $intp1 == "MSI:" ) ]]; then + echo "insmod xdma.ko interrupt_mode=1 ..." + ret=`insmod ../xdma/xdma.ko interrupt_mode=1` + else + echo "insmod xdma.ko interrupt_mode=2 ..." + ret=`insmod ../xdma/xdma.ko interrupt_mode=2` + fi + ;; +esac + +if [ ! $ret == 0 ]; then + echo "Error: xdma driver did not load properly" + echo " FAILED" + exit 1 +fi + +# Check to see if the xdma devices were recognized +echo "" +cat /proc/devices | grep xdma > /dev/null +returnVal=$? +if [ $returnVal == 0 ]; then + # Installed devices were recognized. + echo "The Kernel module installed correctly and the xmda devices were recognized." +else + # No devices were installed. + echo "Error: The Kernel module installed correctly, but no devices were recognized." + echo " FAILED" + exit 1 +fi + +echo "DONE" diff --git a/host_software/driver/XDMA/linux-kernel/tests/perform_hwcount.sh b/host_software/driver/XDMA/linux-kernel/tests/perform_hwcount.sh new file mode 100755 index 0000000..457bcfd --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tests/perform_hwcount.sh @@ -0,0 +1,38 @@ +#!/bin/bash +tool_path=../tools + +h2cchannels=$1 +c2hchannels=$2 +if [ "$#" -ne 2 ];then + echo "usage $0 " + exit -1 +fi +rm hw_log_h2c.txt +rm hw_log_c2h.txt +echo "h2cchannels $h2cchannels" +echo "c2hchannels $c2hchannels" +h2c=/dev/xdma0_h2c_0 +c2h=/dev/xdma0_c2h_0 +iter=1 + +out_h2c=hw_log_h2c.txt +out_c2h=hw_log_c2h.txt +for ((i=0;i /dev/null + statusRegVal=`$tool_path/reg_rw /dev/xdma0_control 0x1${i}00 w | grep "Read.*:" | sed 's/Read.*: 0x\([a-z0-9]*\)/\1/'` + channelId=${statusRegVal:0:3} + + # there will NOT be a mix of MM & ST channels, so no need to check + # for streaming enabled + if [ $channelId == "1fc" ]; then + c2hChannels=$((c2hChannels + 1)) + fi +done +echo "Info: Number of enabled c2h channels = $c2hChannels" + +# Report if the PCIe DMA core is memory mapped or streaming +if [ $isStreaming -eq 0 ]; then + echo "Info: The PCIe DMA core is memory mapped." +else + echo "Info: The PCIe DMA core is streaming." +fi + +# Check to make sure atleast one channel was identified +if [ $h2cChannels -eq 0 -a $c2hChannels -eq 0 ]; then + echo "Error: No PCIe DMA channels were identified." + exit 1 +fi + +# Perform testing on the PCIe DMA core. +testError=0 +if [ $isStreaming -eq 0 ]; then + + # Run the PCIe DMA memory mapped write read test + ./dma_memory_mapped_test.sh xdma0 $transferSize $transferCount $h2cChannels $c2hChannels + returnVal=$? + if [ $returnVal -eq 1 ]; then + testError=1 + fi + +else + + # Run the PCIe DMA streaming test + channelPairs=$(($h2cChannels < $c2hChannels ? $h2cChannels : $c2hChannels)) + if [ $channelPairs -gt 0 ]; then + ./dma_streaming_test.sh $transferSize $transferCount $channelPairs + returnVal=$? + if [ $returnVal -eq 1 ]; then + testError=1 + fi + else + echo "Info: No PCIe DMA stream channels were tested because no h2c/c2h pairs were found." + fi + +fi + +# Exit with an error code if an error was found during testing +if [ $testError -eq 1 ]; then + echo "Error: Test completed with Errors." + exit 1 +fi + +# Report all tests passed and exit +echo "Info: All tests in run_tests.sh passed." +exit 0 diff --git a/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/fio_parse_result.sh b/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/fio_parse_result.sh new file mode 100755 index 0000000..d1589b2 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/fio_parse_result.sh @@ -0,0 +1,180 @@ +#!/bin/bash + +############################################################## +# +# parse the fio result directory generated by the fio_test.sh +# +############################################################## +function parse_iops() { + eval str="$1" + + value=$(echo $str | awk -F "," '{print $1}' | awk -F "=" '{print $2}') + unit=$(echo $value | awk -F '[0-9,.]*' '{print $2}') + value=$(echo $value | sed 's/[^0-9,.]*//g') +# echo -n " iops: ${value}${unit}" + + if [ -z "$unit" ];then + value=$(echo "scale=4; $value/1000" | bc -l) + elif [[ "$unit" == "k" ]];then + value=$(echo "scale=4; $value" | bc -l) + elif [[ "$unit" == "m" ]];then + value=$(echo "scale=4; $value*1000" | bc -l) + else + echo "iops: $value$unit, unknown unit $unit." + fi +} + +function parse_bw() { + eval str="$1" + + value=$(echo $str | awk -F "," '{print $2}') + value=$(echo $value | awk -F "[(,)]" '{print $2}') + unit=$(echo $value | awk -F '[0-9,.]*' '{print $2}') + value=$(echo $value | sed 's/[^0-9,.]*//g') +# echo -n " bw: ${value}${unit}" + + if [[ "$unit" == "kB/s" ]];then + value=$(echo "scale=4; $value" | bc -l) + elif [[ "$unit" == "MB/s" ]];then + value=$(echo "scale=4; $value*1024" | bc -l) + elif [[ "$unit" == "gB/s" ]];then + value=$(echo "scale=4; $value*1024*1024" | bc -l) + else + echo "bw: $value$unit, unknown unit $unit." + fi +} + +function parse_latency() { + eval str="$1" + + value=$(echo $str | awk -F "," '{print $3}' | awk -F "=" '{print $2}') + unit=$(echo $str | awk -F "[(,)]" '{print $2}') +# echo -n " latency: ${value}${unit}" + + if [[ "$unit" == "usec" ]];then + value=$(echo "scale=4; $value" | bc -l) + elif [[ "$unit" == "sec" ]];then + value=$(echo "scale=6; $value*1000000" | bc -l) + elif [[ "$unit" == "msec" ]];then + value=$(echo "scale=6; $value*1000" | bc -l) + elif [[ "$unit" == "nsec" ]];then + value=$(echo "scale=4; $value/1000" | bc -l) + else + echo "latency: $value$unit, unknown unit $unit." + fi +} + +############## +# Main body +############## + +if [ $# -lt 1 ];then + echo "$0 " + exit 1 +fi +dir=$1 + +if [[ ! -d $dir ]];then + echo "$dir does NOT exist." + exit 1 +fi + +declare -a lat_array +resfname=result.csv + +rm -f $dir/$resfname +channel_list=`ls $dir` +for channels in $channel_list; do + cd $dir/$channels + rm -f $dir/$channels/$resfname + + iodir_list=`ls` + for iodir in $iodir_list; do + cd $dir/$channels/$iodir + + rm -f $resfname + echo > $resfname + + fio_list=`ls fio*.log` + for fname in $fio_list; do + # fio result file format fio__t<# threads>.log + sz=$(echo $fname | cut -d. -f1 | cut -d_ -f2) + thread=$(echo $fname | cut -d. -f1 | cut -d_ -f3) + thread=$(echo $thread | sed 's/[^0-9]*//') + + #echo "$dir/$channels/$iodir/$fname:" + + value=0; + unit=0 + if [ "$iodir" == "h2c" ]; then + #echo -n "$channels h2c:io $sz thread $thread " + + ln=$(grep "write:" $fname) + parse_iops "\${ln}" + echo -n $sz,$thread,$value, >> $resfname + parse_bw "\${ln}" + echo -n $value, >> $resfname + ln=$(grep clat $fname | grep avg) + parse_latency "\${ln}" + echo "$value,,,," >> $resfname + + elif [ "$iodir" == "c2h" ]; then + #echo -n "$channels c2h:io $sz thread $thread " + + ln=$(grep "read:" $fname) + parse_iops "\${ln}" + echo -n $sz,$thread,,,,$value, >> $resfname + parse_bw "\${ln}" + echo -n $value, >> $resfname + ln=$(grep clat $fname | grep avg) + parse_latency "\${ln}" + echo "$value," >> $resfname + + elif [ "$iodir" == "bi" ]; then + #echo -n "$channels bidir:io $sz thread $thread " + + readarray lat_array < <(grep clat $fname | \ + grep avg) + + # h2c + #echo -n "h2c " + + ln=$(grep "write:" $fname) + parse_iops "\${ln}" + echo -n $sz,$thread,$value, >> $resfname + parse_bw "\${ln}" + echo -n $value, >> $resfname + parse_latency "\${lat_array[1]}" + echo -n $value, >> $resfname + + #c2h + #echo -n " c2h " + + ln=$(grep "read:" $fname) + parse_iops "\${ln}" + echo -n $value, >> $resfname + parse_bw "\${ln}" + echo -n $value, >> $resfname + parse_latency "\${lat_array[0]}" + echo $value >> $resfname + + fi + done + done +done + +echo +cd $dir +for channels in $channel_list; do + cd $dir/$channels + + echo -n "iosize(B)","Thread #", > $resfname + echo -n "H2C IOPS(K)","H2C BW(KB/s)","H2C Latency(usec)," >> $resfname + echo "C2H IOPS(K)","C2H BW(KB/s)","C2H Latency(usec)," >> $resfname + + for iodir in $iodir_list; do + cat $iodir/$resfname | sort -t, -k1,1n >> $resfname + done + + echo "$channels channel results: $dir/$channels/$resfname" +done diff --git a/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/fio_test.sh b/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/fio_test.sh new file mode 100755 index 0000000..79b3e4c --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/fio_test.sh @@ -0,0 +1,70 @@ +#!/bin/bash + +display_help() { + echo -n "$0 <# ch> < runtime> " + echo "" + echo -e "\t: xdmaN" + echo -e "\t: io direction " + echo -e "\t<# ch>: fio --num_ch" + echo -e "\t: fio --io_size" + echo -e "\t: fio --runtime" + echo -e "\t: fio --threads" + echo -e "\t: log directory" + exit; +} + +#################### +# +# main body +# +#################### + +if [ $# -ne 7 ]; then + display_help +fi + +xid=$1 +iodir=$2 +num_ch=$3 +io_size=$4 +runtime=$5 +threads=$6 +logdir=$7 + +outfile="${logdir}/fio_${io_size}_t${threads}.log" + +exec_cmd= +op_cmd= +engine=sync +cmd_common="fio --allow_file_create=0 --ioengine=${engine} --zero_buffers" +cmd_common="$cmd_common --mem=mmap --runtime=${runtime} --time_based" +for ((i = 0; i < num_ch; i++)); do + if [ ${iodir} == bi ]; then + op_cmd="${op_cmd} --name=write${i} --bs=${io_size}" + op_cmd="${op_cmd} --size=${io_size} --offset=0 --rw=write" + op_cmd="${op_cmd} --filename=/dev/xdma0_h2c_${i}" + op_cmd="${op_cmd} --numjobs=${threads} --group_reporting" + op_cmd="${op_cmd} --name=read${i} --bs=${io_size}" + op_cmd="${op_cmd} --size=${io_size} --offset=0 --rw=read " + op_cmd="${op_cmd} --filename=/dev/xdma0_c2h_${i}" + op_cmd="${op_cmd} --numjobs=${threads} --group_reporting" + elif [ ${iodir} == h2c ]; then + op_cmd="${op_cmd} --name=write${i} --bs=${io_size}" + op_cmd="${op_cmd} --size=${io_size} --offset=0 --rw=write" + op_cmd="${op_cmd} --filename=/dev/xdma0_${iodir}_${i}" + op_cmd="${op_cmd} --numjobs=${threads} --group_reporting" + else + op_cmd="${op_cmd} --name=read${i} --bs=${io_size}" + op_cmd="${op_cmd} --size=${io_size} --offset=0 --rw=read" + op_cmd="${op_cmd} --filename=/dev/xdma0_${iodir}_${i}" + op_cmd="${op_cmd} --numjobs=${threads} --group_reporting" + fi +done + + +exec_cmd="${cmd_common}${op_cmd}" +echo -e "${exec_cmd}\n\n" > ${outfile} + +${exec_cmd} >> ${outfile} & +pid=$! +wait $pid diff --git a/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/io.sh b/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/io.sh new file mode 100755 index 0000000..2436da5 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/io.sh @@ -0,0 +1,130 @@ +#!/bin/sh + +tool_path=../../tools +logdir=/tmp + +if [ $# -lt 9 ]; then + echo -ne "$0
" + echo " [data file]" + echo -e "\t: log test into dmesg" + echo -e "\t: read data back and compare" + echo -e "\t: dma transfer size" + echo -e "\t
: " + echo -e "\t: " + echo -e "\t: xdma" + echo -e "\t: dma h2c channel #, 0-based" + echo -e "\t\tif >= 4, no traffic will be ran" + echo -e "\t: dma c2h channel #, 0-based" + echo -e "\t if channel # >= 4 NO dma will be performed" + echo -e "\t\tif >= 4, no traffic will be ran" + echo -e "\t: temp. log directory" + echo -e "\t[data file]: data file, size >= io size, " + echo -e "\t optional if =0" + exit +fi + +dmesg=$1 +data_check=$2 +sz=$3 +address=$4 +offset=$5 +xid=$6 +h2cno=$7 +c2hno=$8 +logdir=$9 +if [ $# -gt 9 ]; then + datafile=${10} +fi + +if [ ! -d "$logdir" ]; then + mkdir -p $logdir +fi + +echo -en "\n===>$0 $xid, channel $h2cno:$c2hno, io $sz, addr $address, " +echo "off $offset, data: $datafile, integrity $data_check, dmesg $dmesg." + +if [ "$h2cno" -ge 4 ] && [ "$c2hno" -ge 4 ]; then + echo "$0: NO valid dma channel $h2cno:$c2hno" + exit 1 +fi + +h2c_cmd="$tool_path/dma_to_device -d /dev/${xid}_h2c_${h2cno}" +c2h_cmd="$tool_path/dma_from_device -d /dev/${xid}_c2h_${c2hno}" +if [ "$address" -ne "0" ]; then + h2c_cmd="$h2c_cmd -a $address" + c2h_cmd="$c2h_cmd -a $address" +fi + +if [ "$offset" -ne "0" ]; then + h2c_cmd="$h2c_cmd -o $offset" + c2h_cmd="$c2h_cmd -o $offset" +fi + +if [ "$data_check" -ne 0 ]; then + if [ -z "$datafile" ]; then + echo "no datafile specified" + exit 2 + fi + if [ ! -s "$datafile" ]; then + echo "missing datafile: $datafile ..." + exit 3 + fi + + h2c_fname="$logdir/$xid-h2c${h2cno}-io$sz-o$offset-a$address.bin" + rm -f $h2c_fname + h2c_cmd="$h2c_cmd -f $datafile -w $h2c_fname" + + c2h_fname="$logdir/$xid-c2h${c2hno}-io$sz-o$offset-a$address.bin" + rm -f $c2h_fname + c2h_cmd="$c2h_cmd -f $c2h_fname" +fi + +if [ "$h2cno" -lt 4 ]; then + if [ "$dmesg" -ne "0" ]; then + echo "$h2c_cmd -s $sz -c 1" > /dev/kmsg + fi + + echo "$h2c_cmd -s $sz -c 1 ..." > \ + ${logdir}/h2c-io${sz}-o${offset}-a${address}.log + out=`$h2c_cmd -s $sz -c 1` + + echo $out >> ${logdir}/h2c-io${sz}-o${offset}-a${address}.log + if [ "$?" -ne "0" ]; then + echo -e "\tH2C${h2cno}: io $sz, ERROR $?." + exit 4 + fi +fi + +if [ "$c2hno" -lt 4 ]; then + if [ "$dmesg" -ne "0" ]; then + echo "$c2h_cmd -s $sz -c 1 ..." > /dev/kmsg + fi + + echo "$c2h_cmd -s $sz -c 1 ..." > \ + ${logdir}/c2h-io${sz}-o${offset}-a${address}.log + out=`./$c2h_cmd -s $sz -c 1` + + echo $out >> ${logdir}/c2h-io${sz}-o${offset}-a${address}.log + if [ "$?" -ne "0" ]; then + echo -e "\tC2H$channel: io $sz, ERROR $?." + exit 5 + fi +fi + +if [ "$data_check" -eq 0 ]; then + # no data integrity check needs to be done + exit 0 +fi + +#md5sum $c2h_fname +#md5sum $h2c_fname +diff -q $c2h_fname $h2c_fname > /dev/null +if [ "$?" -eq "1" ]; then + echo -e "\t$xid $h2cno:$c2hno: io $sz, addr $address, off $offset," \ + "data integrity FAILED!." + exit 6 +fi +echo -e "\t$xid $h2cno:$c2hno: io $sz, addr $address, off $offset, data match." +rm -f $c2h_fname $h2c_fname + +exit 0 diff --git a/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/io_sweep.sh b/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/io_sweep.sh new file mode 100755 index 0000000..fffd8ec --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/io_sweep.sh @@ -0,0 +1,87 @@ +#!/bin/sh + +delay=5 + +if [ $# -lt 9 ]; then + echo -ne "$0:
" + echo " [log dir]" + echo -e "\t: xdma" + echo -e "\th2c channel: H2C channel #, 0-based" + echo -e "\tc2h channel: C2H channel #, 0-based" + echo -e "\t
: " + echo -e "\t: " + echo -e "\t,: dma size in byte, io size start from" + echo -e "\t\tio_min, double each time until reaches io_max" + echo -e "\t: read back the data and compare, 0|1" + echo -e "\t: log test info. into dmesg, 0|1" + exit 1 +fi + +xid=$1 +h2cno=$2 +c2hno=$3 +addr=$4 +off=$5 +io_min=$6 +io_max=$7 +data_check=$8 +dmesg=$9 + +tmpdir="/tmp/${xid}_h2c${h2cno}c2h${c2hno}" + +echo "====>$0 $xid $h2cno:$c2hno, $io_min~$io_max @$addr $off, $data_check, $tmpdir" +if [ "$dmesg" -ne 0 ]; then + echo "$0 $xid $h2cno:$c2hno, $io_min~$io_max @$addr $off, $tmpdir..." \ + >> /dev/kmsg +fi + +if [ ! -d "$tmpdir" ]; then + mkdir -p $tmpdir +fi +rm -rf ${tmpdir}/* + +if [ "$data_check" -ne 0 ]; then + cnt=$(($io_max / 1024)) + if [ "$cnt" -eq 0 ]; then + cnt=1 + fi + datafile="$tmpdir/datafile-$cnt-K" + cnt=$(($cnt / 65536)) + if [ "$cnt" -eq "0" ]; then + cnt=1 + fi + if [ ! -f "$datafile" ]; then + echo "creating datafile: $datafile ..." + let cnt=cnt+1 + dd if=/dev/urandom of=$datafile bs=64M count=$cnt \ + iflag=fullblock + fi +fi + +date + +sz=$io_min +while [ "$sz" -le "$io_max" ]; do + ./io.sh $dmesg $data_check $sz $addr $off $xid $h2cno $c2hno $tmpdir \ + $datafile + if [ "$?" -ne "0" ]; then + #echo -e "\t$xid $h2cno:$c2hno, $sz FAILED" + exit 2 + fi + + if [ "$sz" -eq "$io_max" ]; then + break + fi + + sz=$(($sz * 2)) + if [ "$sz" -gt "$io_max" ]; then + sz=$io_max + fi + + if [ "$delay" -ne "0" ]; then + sleep $delay + fi +done + +echo "====>$0 $xid $h2cno:$c2hno, $io_min~$io_max @$addr $off COMPLETED!" +exit 0 diff --git a/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/libtest.sh b/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/libtest.sh new file mode 100644 index 0000000..6b04fb7 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/libtest.sh @@ -0,0 +1,187 @@ +tool_path=../../tools +ERR=255 + +############################ +# +# utility functions +# +############################ + +# Make sure only root can run the script +function check_if_root() { + if [[ $EUID -ne 0 ]]; then + echo "This script must be run as root" 1>&2 + exit $ERR + fi +} + +function check_cmd_exist() { + which $1 > /dev/null 2>&1 + if [[ $? -ne 0 ]]; then + echo "$1 NOT found on the system" + return $ERR + fi + return 0 +} + +# check_rc +function check_rc() { + local rc=$1 + + if [ $rc -ne 0 ]; then + echo "ERR! $2 failed $rc." + if [ $3 -gt 0 ]; then + exit $rc + fi + fi +} + +# check_dma_dir +function check_dma_dir() { + if [ "$1" != h2c ] && [ "$1" != c2h ] && [ "$1" != bi ]; then + echo "bad dma direction: $1." + exit $ERR + fi +} + +# check_driver_loaded +function check_driver_loaded() { + local bdf=$1 + lspci -s $bdf -v | grep driver | grep xdma | wc -l +} + +# bdf_to_xdmaid +function bdf_to_xdmaid() { + cd /sys/bus/pci/devices/$1/ + if [ -d "xdma" ]; then + cd xdma/ + ls | grep control | cut -d'_' -f1 + fi +} + +# cfg_reg_read +function cfg_reg_read() { + local v=`$tool_path/reg_rw /dev/$1_control $2 w | grep "Read.*:" | sed 's/Read.*: 0x\([a-z0-9]*\)/\1/'` + if [ -z "$v" ]; then + return $ERR + else + echo $v + return 0 + fi +} + +# cfg_reg_write +function cfg_reg_write() { + local v=`$tool_path/reg_rw /dev/$1_control $2 w $3` + return $? +} + +# get_streaming_enabled +function get_streaming_enabled() { + local v=`cfg_reg_read $1 0` + local rc=$? + if [ $rc -ne 0 ]; then + return $rc + fi + + local id=${v:0:3} + local stream=${v:4:1} + + local st=0 + if [ "$id" == "1fc" ]; then + if [ "$stream" == "8" ]; then + st=1 + fi + else + echo "$1 reg 0, $v, bad id $id, $stream." + return $ERR + fi + echo $st + return 0 +} + +# get_h2c_channel_count +function get_h2c_channel_count() { + local cnt=0 + + for ((i=0; i<=3; i++)); do + local regval=`cfg_reg_read $1 0x0${i}00` + if [ $? -ne 0 ]; then + break + fi + + local id=${regval:0:3} + if [ "$id" == "1fc" ]; then + cnt=$((cnt + 1)) + fi + done + echo $cnt + return 0 +} + +# get_c2h_channel_count +function get_c2h_channel_count() { + local cnt=0 + + for ((i=0; i<=3; i++)); do + local regval=`cfg_reg_read $1 0x1${i}00` + if [ $? -ne 0 ]; then + break + fi + + local id=${regval:0:3} + if [ "$id" == "1fc" ]; then + cnt=$((cnt + 1)) + fi + done + echo $cnt + return 0 +} + +############################################################################# +# +# test cases +# +############################################################################# + +# xdma config bar access +# TC_cfg_reg_rw +function TC_cfg_reg_rw() { + local reg=0x301c + local val=0 + + cfg_reg_write $reg $val + local v=$(cfg_reg_read $reg) + let "v = $v + 0" + + if [ $v -eq $val ]; then + echo "ERR ${FUNCNAME[0]} reg value mismatch $v, exp $val" + exit $ERR + fi + + cfg_reg_write $reg 1 +} + +# TC_dma_chrdev_open_close +function TC_dma_chrdev_open_close() { + local xid=$1 + local h2c_count=$2 + local c2h_count=$3 + local err=0 + + for ((i=0; i<$h2c_count; i++)); do + $tool_path/test_chrdev /dev/${xid}_h2c_$i > /dev/null 2>&1 + if [ $? -ne 0 ];then + echo "${FUNCNAME[0]} ${xid}_h2c_$i FAILED" + exit 1 + fi + done + + for ((i=0; i<$c2h_count; i++)); do + $tool_path/test_chrdev /dev/${xid}_c2h_$i > /dev/null 2>&1 + if [ $? -ne 0 ];then + echo "${FUNCNAME[0]} ${xid}_c2h_$i FAILED" + exit 2 + fi + done +} diff --git a/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/unaligned.sh b/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/unaligned.sh new file mode 100755 index 0000000..f9160fb --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/unaligned.sh @@ -0,0 +1,93 @@ +#!/bin/sh + +########################## +# +# preset test parameters: +# +########################## +# dma io size +io_list="1 10 127 128 1021 1022 1023 1024 4095 4096 4097 4098 4099 8189 8190 8191 8192" +io_max=8192 + +# offset +offset_list="1 2 3 4 2045 2046 2047 2048 2049 4091 4092 4093 4094 4095" + +# starting address +address=0 + +# delay(sleep) before moving on to the next channel, if applicable +delay=2 + +########################## +# +# main +# +########################## +if [ $# -lt 5 ]; then + echo "$0: " + echo -e "\t: xdma" + echo -e "\t: H2C channel #, 0-based" + echo -e "\t: C2H channel #, 0-based" + echo -e "\t: read back the data and compare, 0|1" + echo -e "\t: log test info. into dmesg, 0|1" + exit +fi + +xid=$1 +h2cno=$2 +c2hno=$3 +data_check=$4 +dmesg=$5 + +tmpdir="/tmp/${xid}_h2c${h2cno}_c2h${c2hno}_unaligned" + +echo "====>$0 $xid $h2cno:$c2hno, $data_check,$dmesg, $tmpdir" +if [ "$dmesg" -ne 0 ]; then + echo "$0 $xid $h2cno:$c2hno, $tmpdir..." >> /dev/kmsg +fi + +if [ ! -d "$tmpdir" ]; then + mkdir -p $tmpdir +fi +rm -rf $tmpdir/* + +# generate data file, minimum 64MB +cnt=$(($io_max / 1024)) +if [ "$cnt" -eq "0" ]; then + cnt=1 +fi +datafile="$tmpdir/datafile-$cnt-K" +cnt=$(($cnt / 65536)) +if [ "$cnt" -eq "0" ]; then + cnt=1 +fi +if [ ! -f "$datafile" ]; then + echo "creating datafile: $datafile ..." + let cnt=cnt+1 + dd if=/dev/urandom of=$datafile bs=64M count=$cnt iflag=fullblock +fi + +echo +date + +echo "====>$0: $xid $h2cno:$c2hno, addr $address ..." > /dev/kmsg +echo "$0: $xid $h2cno:$c2hno, addr $address ..." > /dev/kmsg + +for io in $io_list; do + for offset in $offset_list; do + ./io.sh $dmesg $data_check $io $address $offset $xid \ + $h2cno $c2hno $tmpdir $datafile + if [ "$?" -ne "0" ]; then + echo -e "\t$xid $h2cno:$c2hno, $io, off $offset FAILED!" + exit 2 + fi + done + + if [ "$delay" -ne "0" ]; then + sleep $delay + fi +done + +date +echo "====>$0: $xid $h2cno:$c2hno, addr $address COMPLETED!" +exit 0 diff --git a/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/xdma_mm.sh b/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/xdma_mm.sh new file mode 100755 index 0000000..a480dd7 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tests/scripts_mm/xdma_mm.sh @@ -0,0 +1,164 @@ +#!/bin/bash + +#################### +# +# test settings +# +#################### +outdir="/tmp" +driver_modes="0 4" ;# driver mode +address=0 +offset=0 +io_min=64 +io_max=$((1 << 30)) ;# 1GB +delay=5 ;# delay between each test + +fio_time=30 +fio_thread_list="4 8" +fio_iodir_list="h2c c2h bi" + +#################### +# +# main body +# +#################### + +display_help() { + echo "$0 [log dir]" + echo -e "xdma BDF:\tfpga pci device specified in the format of " + echo -e "\t\t\t::." + echo -e "log dir:\toptional, default to /tmp" + echo + exit; +} + +if [ $# -eq 0 ]; then + display_help +fi + +bdf=$1 +if [ $# -gt 1 ]; then + outdir=$2 +fi + +echo "xdma bdf:$bdf, outdir: $outdir" + +source ./libtest.sh + +check_if_root + +curdir=$PWD + +for dm in $driver_modes; do + + echo -e "\n\n====> xdma mode $dm ...\n" + + cd ../../tests + + ./load_driver.sh $dm + if [ $? -ne 0 ]; then + echo "load_driver.sh failed: $?" + exit 1 + fi + + cd $curdir + xid=$(bdf_to_xdmaid $bdf) + if [ ! -n "$xid" ]; then + echo "$bdf, no correponding xdma found, driver mode $dm." + exit 1 + fi + echo "xdma id: $xid." + + h2c_channels=$(get_h2c_channel_count $xid) + check_rc $? get_h2c_channel_count 1 + + c2h_channels=$(get_c2h_channel_count $xid) + check_rc $? get_c2h_channel_count 1 + + channel_pairs=$(($h2c_channels < $c2h_channels ? \ + $h2c_channels : $c2h_channels)) + echo "channels: $h2c_channels,$c2h_channels, pair $channel_pairs" + + if [ "$channel_pairs" -eq 0 ]; then + echo "Error: 0 DMA channel pair: $h2c_channels,$c2h_channels." + exit 1 + fi + + # test cdev + TC_dma_chrdev_open_close $xid $h2c_channels $c2h_channels + + # + # run 1 channel at a time + # + + for i in {1..80}; do echo -n =; done + echo -e "\nSingle H2C Channel $h2c_channels io test ...\n" + for ((i=0; i<$h2c_channels; i++)); do + # aligned: no data integrity check + ./io_sweep.sh $xid $i 4 $address $offset \ + $io_min $io_max 0 1 + check_rc $? "h2c-$i" 1 + ./unaligned.sh $xid $i 4 0 1 + check_rc $? "h2c-$i-unaligned" 1 + done + + for i in {1..80}; do echo -n =; done + echo -e "\nSingle C2H Channel $c2h_channels io test ...\n" + for ((i=0; i<$c2h_channels; i++)); do + ./io_sweep.sh $xid 4 $i $address $offset \ + $io_min $io_max 0 1 + check_rc $? "c2h-$i" 1 + ./unaligned.sh $xid 4 $i 0 1 + check_rc $? "c2h-$i-unaligned" 1 + done + + for i in {1..80}; do echo -n =; done + echo -e "\nh2c/c2h pair $channel_pairs io test with data check ...\n" + for ((i=0; i<$channel_pairs; i++)); do + ./io_sweep.sh $xid $i $i $address $offset $io_min $io_max 1 1 + check_rc $? "pair-$i" 1 + ./unaligned.sh $xid $i $i 1 1 + check_rc $? "pair-$i-unaligned" 1 + done + + # + # fio test + # + + check_cmd_exist fio + if [ "$?" -ne 0 ]; then + echo "fio test skipped" + continue + fi + + for i in {1..80}; do echo -n =; done + echo -e "\nfio test ...\n" + + # + # result directory structure: + # - + # - + # - + # + for ((i=1; i<=$channel_pairs; i++)); do + for iodir in $fio_iodir_list; do + out=${outdir}/fio_d${dm}/${i}/${iodir} + mkdir -p ${out} + rm -rf ${out}/* + + for (( sz=$io_min; sz<=$io_max; sz=$(($sz*2)) )); do + for thread in $fio_thread_list; do + name=${sz}_t${thread} + echo "$iodir $i: $name ..." + ./fio_test.sh $xid $iodir $i ${sz} \ + ${fio_time} ${thread} ${out} + done + done + done + done + ./fio_parse_result.sh ${outdir}/fio_d${dm} + + echo -e "\n\n====> xdma mode $dm COMPLETED.\n" +done + +echo "$0: COMPLETED." diff --git a/host_software/driver/XDMA/linux-kernel/tools/Makefile b/host_software/driver/XDMA/linux-kernel/tools/Makefile new file mode 100644 index 0000000..80f6366 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tools/Makefile @@ -0,0 +1,24 @@ +CC ?= gcc + +all: reg_rw dma_to_device dma_from_device performance test_chrdev + +dma_to_device: dma_to_device.o + $(CC) -lrt -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE + +dma_from_device: dma_from_device.o + $(CC) -lrt -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE + +performance: performance.o + $(CC) -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE + +reg_rw: reg_rw.o + $(CC) -o $@ $< + +test_chrdev: test_chrdev.o + $(CC) -o $@ $< + +%.o: %.c + $(CC) -c -std=c99 -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE + +clean: + rm -rf reg_rw *.o *.bin dma_to_device dma_from_device performance test_chrdev diff --git a/host_software/driver/XDMA/linux-kernel/tools/dma_from_device.c b/host_software/driver/XDMA/linux-kernel/tools/dma_from_device.c new file mode 100644 index 0000000..ba4515d --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tools/dma_from_device.c @@ -0,0 +1,304 @@ +/* + * This file is part of the Xilinx DMA IP Core driver tool for Linux + * + * Copyright (c) 2016-present, Xilinx, Inc. + * All rights reserved. + * + * This source code is licensed under BSD-style license (found in the + * LICENSE file in the root directory of this source tree) + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +#include "../xdma/cdev_sgdma.h" + +#include "dma_utils.c" + +#define DEVICE_NAME_DEFAULT "/dev/xdma0_c2h_0" +#define SIZE_DEFAULT (32) +#define COUNT_DEFAULT (1) + +static struct option const long_opts[] = { + {"device", required_argument, NULL, 'd'}, + {"address", required_argument, NULL, 'a'}, + {"aperture", required_argument, NULL, 'k'}, + {"size", required_argument, NULL, 's'}, + {"offset", required_argument, NULL, 'o'}, + {"count", required_argument, NULL, 'c'}, + {"file", required_argument, NULL, 'f'}, + {"eop_flush", no_argument, NULL, 'e'}, + {"help", no_argument, NULL, 'h'}, + {"verbose", no_argument, NULL, 'v'}, + {0, 0, 0, 0} +}; + +static int test_dma(char *devname, uint64_t addr, uint64_t aperture, + uint64_t size, uint64_t offset, uint64_t count, + char *ofname); +static int eop_flush = 0; + +static void usage(const char *name) +{ + int i = 0; + fprintf(stdout, "%s\n\n", name); + fprintf(stdout, "usage: %s [OPTIONS]\n\n", name); + fprintf(stdout, "Read via SGDMA, optionally save output to a file\n\n"); + + fprintf(stdout, " -%c (--%s) device (defaults to %s)\n", + long_opts[i].val, long_opts[i].name, DEVICE_NAME_DEFAULT); + i++; + fprintf(stdout, " -%c (--%s) the start address on the AXI bus\n", + long_opts[i].val, long_opts[i].name); + i++; + fprintf(stdout, " -%c (--%s) memory address aperture\n", + long_opts[i].val, long_opts[i].name); + i++; + fprintf(stdout, + " -%c (--%s) size of a single transfer in bytes, default %d.\n", + long_opts[i].val, long_opts[i].name, SIZE_DEFAULT); + i++; + fprintf(stdout, " -%c (--%s) page offset of transfer\n", + long_opts[i].val, long_opts[i].name); + i++; + fprintf(stdout, " -%c (--%s) number of transfers, default is %d.\n", + long_opts[i].val, long_opts[i].name, COUNT_DEFAULT); + i++; + fprintf(stdout, + " -%c (--%s) file to write the data of the transfers\n", + long_opts[i].val, long_opts[i].name); + i++; + fprintf(stdout, + " -%c (--%s) end dma when ST end-of-packet(eop) is rcved\n", + long_opts[i].val, long_opts[i].name); + fprintf(stdout, + "\t\t* streaming only, ignored for memory-mapped channels\n"); + fprintf(stdout, + "\t\t* acutal # of bytes dma'ed could be smaller than specified\n"); + i++; + fprintf(stdout, " -%c (--%s) print usage help and exit\n", + long_opts[i].val, long_opts[i].name); + i++; + fprintf(stdout, " -%c (--%s) verbose output\n", + long_opts[i].val, long_opts[i].name); + i++; + + fprintf(stdout, "\nReturn code:\n"); + fprintf(stdout, " 0: all bytes were dma'ed successfully\n"); + fprintf(stdout, " * with -e set, the bytes dma'ed could be smaller\n"); + fprintf(stdout, " < 0: error\n\n"); +} + +int main(int argc, char *argv[]) +{ + int cmd_opt; + char *device = DEVICE_NAME_DEFAULT; + uint64_t address = 0; + uint64_t aperture = 0; + uint64_t size = SIZE_DEFAULT; + uint64_t offset = 0; + uint64_t count = COUNT_DEFAULT; + char *ofname = NULL; + + while ((cmd_opt = getopt_long(argc, argv, "vhec:f:d:a:k:s:o:", long_opts, + NULL)) != -1) { + switch (cmd_opt) { + case 0: + /* long option */ + break; + case 'd': + /* device node name */ + device = strdup(optarg); + break; + case 'a': + /* RAM address on the AXI bus in bytes */ + address = getopt_integer(optarg); + break; + case 'k': + /* memory aperture windows size */ + aperture = getopt_integer(optarg); + break; + case 's': + /* RAM size in bytes */ + size = getopt_integer(optarg); + break; + case 'o': + offset = getopt_integer(optarg) & 4095; + break; + /* count */ + case 'c': + count = getopt_integer(optarg); + break; + /* count */ + case 'f': + ofname = strdup(optarg); + break; + /* print usage help and exit */ + case 'v': + verbose = 1; + break; + case 'e': + eop_flush = 1; + break; + case 'h': + default: + usage(argv[0]); + exit(0); + break; + } + } + if (verbose) + fprintf(stdout, + "dev %s, addr 0x%lx, aperture 0x%lx, size 0x%lx, offset 0x%lx, " + "count %lu\n", + device, address, aperture, size, offset, count); + + return test_dma(device, address, aperture, size, offset, count, ofname); +} + +static int test_dma(char *devname, uint64_t addr, uint64_t aperture, + uint64_t size, uint64_t offset, uint64_t count, + char *ofname) +{ + ssize_t rc = 0; + size_t out_offset = 0; + size_t bytes_done = 0; + uint64_t i; + char *buffer = NULL; + char *allocated = NULL; + struct timespec ts_start, ts_end; + int out_fd = -1; + int fpga_fd; + long total_time = 0; + float result; + float avg_time = 0; + int underflow = 0; + + /* + * use O_TRUNC to indicate to the driver to flush the data up based on + * EOP (end-of-packet), streaming mode only + */ + if (eop_flush) + fpga_fd = open(devname, O_RDWR | O_TRUNC); + else + fpga_fd = open(devname, O_RDWR); + + if (fpga_fd < 0) { + fprintf(stderr, "unable to open device %s, %d.\n", + devname, fpga_fd); + perror("open device"); + return -EINVAL; + } + + /* create file to write data to */ + if (ofname) { + out_fd = open(ofname, O_RDWR | O_CREAT | O_TRUNC | O_SYNC, + 0666); + if (out_fd < 0) { + fprintf(stderr, "unable to open output file %s, %d.\n", + ofname, out_fd); + perror("open output file"); + rc = -EINVAL; + goto out; + } + } + + posix_memalign((void **)&allocated, 4096 /*alignment */ , size + 4096); + if (!allocated) { + fprintf(stderr, "OOM %lu.\n", size + 4096); + rc = -ENOMEM; + goto out; + } + + buffer = allocated + offset; + if (verbose) + fprintf(stdout, "host buffer 0x%lx, %p.\n", size + 4096, buffer); + + for (i = 0; i < count; i++) { + rc = clock_gettime(CLOCK_MONOTONIC, &ts_start); + if (aperture) { + struct xdma_aperture_ioctl io; + + io.buffer = (unsigned long)buffer; + io.len = size; + io.ep_addr = addr; + io.aperture = aperture; + io.done = 0UL; + + rc = ioctl(fpga_fd, IOCTL_XDMA_APERTURE_R, &io); + if (rc < 0 || io.error) { + fprintf(stderr, + "#%d: aperture R failed %d,%d.\n", + i, rc, io.error); + goto out; + } + + bytes_done = io.done; + } else { + rc = read_to_buffer(devname, fpga_fd, buffer, size, addr); + if (rc < 0) + goto out; + bytes_done = rc; + + } + clock_gettime(CLOCK_MONOTONIC, &ts_end); + + if (bytes_done < size) { + fprintf(stderr, "#%d: underflow %ld/%ld.\n", + i, bytes_done, size); + underflow = 1; + } + + /* subtract the start time from the end time */ + timespec_sub(&ts_end, &ts_start); + total_time += ts_end.tv_nsec; + /* a bit less accurate but side-effects are accounted for */ + if (verbose) + fprintf(stdout, + "#%lu: CLOCK_MONOTONIC %ld.%09ld sec. read %ld/%ld bytes\n", + i, ts_end.tv_sec, ts_end.tv_nsec, bytes_done, size); + + /* file argument given? */ + if (out_fd >= 0) { + rc = write_from_buffer(ofname, out_fd, buffer, + bytes_done, out_offset); + if (rc < 0 || rc < bytes_done) + goto out; + out_offset += bytes_done; + } + } + + if (!underflow) { + avg_time = (float)total_time/(float)count; + result = ((float)size)*1000/avg_time; + if (verbose) + printf("** Avg time device %s, total time %ld nsec, avg_time = %f, size = %lu, BW = %f \n", + devname, total_time, avg_time, size, result); + printf("%s ** Average BW = %lu, %f\n", devname, size, result); + rc = 0; + } else if (eop_flush) { + /* allow underflow with -e option */ + rc = 0; + } else + rc = -EIO; + +out: + close(fpga_fd); + if (out_fd >= 0) + close(out_fd); + free(allocated); + + return rc; +} diff --git a/host_software/driver/XDMA/linux-kernel/tools/dma_to_device.c b/host_software/driver/XDMA/linux-kernel/tools/dma_to_device.c new file mode 100644 index 0000000..6d8eada --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tools/dma_to_device.c @@ -0,0 +1,318 @@ +/* + * This file is part of the Xilinx DMA IP Core driver tools for Linux + * + * Copyright (c) 2016-present, Xilinx, Inc. + * All rights reserved. + * + * This source code is licensed under BSD-style license (found in the + * LICENSE file in the root directory of this source tree) + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +#include "../xdma/cdev_sgdma.h" + +#include "dma_utils.c" + +static struct option const long_opts[] = { + {"device", required_argument, NULL, 'd'}, + {"address", required_argument, NULL, 'a'}, + {"aperture", required_argument, NULL, 'k'}, + {"size", required_argument, NULL, 's'}, + {"offset", required_argument, NULL, 'o'}, + {"count", required_argument, NULL, 'c'}, + {"data infile", required_argument, NULL, 'f'}, + {"data outfile", required_argument, NULL, 'w'}, + {"help", no_argument, NULL, 'h'}, + {"verbose", no_argument, NULL, 'v'}, + {0, 0, 0, 0} +}; + +#define DEVICE_NAME_DEFAULT "/dev/xdma0_h2c_0" +#define SIZE_DEFAULT (32) +#define COUNT_DEFAULT (1) + + +static int test_dma(char *devname, uint64_t addr, uint64_t aperture, + uint64_t size, uint64_t offset, uint64_t count, + char *filename, char *); + +static void usage(const char *name) +{ + int i = 0; + + fprintf(stdout, "%s\n\n", name); + fprintf(stdout, "usage: %s [OPTIONS]\n\n", name); + fprintf(stdout, + "Write via SGDMA, optionally read input from a file.\n\n"); + + fprintf(stdout, " -%c (--%s) device (defaults to %s)\n", + long_opts[i].val, long_opts[i].name, DEVICE_NAME_DEFAULT); + i++; + fprintf(stdout, " -%c (--%s) the start address on the AXI bus\n", + long_opts[i].val, long_opts[i].name); + i++; + fprintf(stdout, " -%c (--%s) memory address aperture\n", + long_opts[i].val, long_opts[i].name); + i++; + fprintf(stdout, + " -%c (--%s) size of a single transfer in bytes, default %d,\n", + long_opts[i].val, long_opts[i].name, SIZE_DEFAULT); + i++; + fprintf(stdout, " -%c (--%s) page offset of transfer\n", + long_opts[i].val, long_opts[i].name); + i++; + fprintf(stdout, " -%c (--%s) number of transfers, default %d\n", + long_opts[i].val, long_opts[i].name, COUNT_DEFAULT); + i++; + fprintf(stdout, " -%c (--%s) filename to read the data from.\n", + long_opts[i].val, long_opts[i].name); + i++; + fprintf(stdout, + " -%c (--%s) filename to write the data of the transfers\n", + long_opts[i].val, long_opts[i].name); + i++; + fprintf(stdout, " -%c (--%s) print usage help and exit\n", + long_opts[i].val, long_opts[i].name); + i++; + fprintf(stdout, " -%c (--%s) verbose output\n", + long_opts[i].val, long_opts[i].name); + i++; + + fprintf(stdout, "\nReturn code:\n"); + fprintf(stdout, " 0: all bytes were dma'ed successfully\n"); + fprintf(stdout, " < 0: error\n\n"); +} + +int main(int argc, char *argv[]) +{ + int cmd_opt; + char *device = DEVICE_NAME_DEFAULT; + uint64_t address = 0; + uint64_t aperture = 0; + uint64_t size = SIZE_DEFAULT; + uint64_t offset = 0; + uint64_t count = COUNT_DEFAULT; + char *infname = NULL; + char *ofname = NULL; + + while ((cmd_opt = + getopt_long(argc, argv, "vhc:f:d:a:k:s:o:w:", long_opts, + NULL)) != -1) { + switch (cmd_opt) { + case 0: + /* long option */ + break; + case 'd': + /* device node name */ + //fprintf(stdout, "'%s'\n", optarg); + device = strdup(optarg); + break; + case 'a': + /* RAM address on the AXI bus in bytes */ + address = getopt_integer(optarg); + break; + case 'k': + /* memory aperture windows size */ + aperture = getopt_integer(optarg); + break; + case 's': + /* size in bytes */ + size = getopt_integer(optarg); + break; + case 'o': + offset = getopt_integer(optarg) & 4095; + break; + /* count */ + case 'c': + count = getopt_integer(optarg); + break; + /* count */ + case 'f': + infname = strdup(optarg); + break; + case 'w': + ofname = strdup(optarg); + break; + /* print usage help and exit */ + case 'v': + verbose = 1; + break; + case 'h': + default: + usage(argv[0]); + exit(0); + break; + } + } + + if (verbose) + fprintf(stdout, + "dev %s, addr 0x%lx, aperture 0x%lx, size 0x%lx, offset 0x%lx, " + "count %lu\n", + device, address, aperture, size, offset, count); + + return test_dma(device, address, aperture, size, offset, count, + infname, ofname); +} + +static int test_dma(char *devname, uint64_t addr, uint64_t aperture, + uint64_t size, uint64_t offset, uint64_t count, + char *infname, char *ofname) +{ + uint64_t i; + ssize_t rc; + size_t bytes_done = 0; + size_t out_offset = 0; + char *buffer = NULL; + char *allocated = NULL; + struct timespec ts_start, ts_end; + int infile_fd = -1; + int outfile_fd = -1; + int fpga_fd = open(devname, O_RDWR); + long total_time = 0; + float result; + float avg_time = 0; + int underflow = 0; + + if (fpga_fd < 0) { + fprintf(stderr, "unable to open device %s, %d.\n", + devname, fpga_fd); + perror("open device"); + return -EINVAL; + } + + if (infname) { + infile_fd = open(infname, O_RDONLY); + if (infile_fd < 0) { + fprintf(stderr, "unable to open input file %s, %d.\n", + infname, infile_fd); + perror("open input file"); + rc = -EINVAL; + goto out; + } + } + + if (ofname) { + outfile_fd = + open(ofname, O_RDWR | O_CREAT | O_TRUNC | O_SYNC, + 0666); + if (outfile_fd < 0) { + fprintf(stderr, "unable to open output file %s, %d.\n", + ofname, outfile_fd); + perror("open output file"); + rc = -EINVAL; + goto out; + } + } + + posix_memalign((void **)&allocated, 4096 /*alignment */ , size + 4096); + if (!allocated) { + fprintf(stderr, "OOM %lu.\n", size + 4096); + rc = -ENOMEM; + goto out; + } + buffer = allocated + offset; + if (verbose) + fprintf(stdout, "host buffer 0x%lx = %p\n", + size + 4096, buffer); + + if (infile_fd >= 0) { + rc = read_to_buffer(infname, infile_fd, buffer, size, 0); + if (rc < 0 || rc < size) + goto out; + } + + for (i = 0; i < count; i++) { + /* write buffer to AXI MM address using SGDMA */ + rc = clock_gettime(CLOCK_MONOTONIC, &ts_start); + + if (aperture) { + struct xdma_aperture_ioctl io; + + io.buffer = (unsigned long)buffer; + io.len = size; + io.ep_addr = addr; + io.aperture = aperture; + io.done = 0UL; + + rc = ioctl(fpga_fd, IOCTL_XDMA_APERTURE_W, &io); + if (rc < 0 || io.error) { + fprintf(stdout, + "#%d: aperture W ioctl failed %d,%d.\n", + i, rc, io.error); + goto out; + } + + bytes_done = io.done; + } else { + rc = write_from_buffer(devname, fpga_fd, buffer, size, + addr); + if (rc < 0) + goto out; + + bytes_done = rc; + } + + rc = clock_gettime(CLOCK_MONOTONIC, &ts_end); + + if (bytes_done < size) { + printf("#%d: underflow %ld/%ld.\n", + i, bytes_done, size); + underflow = 1; + } + + /* subtract the start time from the end time */ + timespec_sub(&ts_end, &ts_start); + total_time += ts_end.tv_nsec; + /* a bit less accurate but side-effects are accounted for */ + if (verbose) + fprintf(stdout, + "#%lu: CLOCK_MONOTONIC %ld.%09ld sec. write %ld bytes\n", + i, ts_end.tv_sec, ts_end.tv_nsec, size); + + if (outfile_fd >= 0) { + rc = write_from_buffer(ofname, outfile_fd, buffer, + bytes_done, out_offset); + if (rc < 0 || rc < bytes_done) + goto out; + out_offset += bytes_done; + } + } + + if (!underflow) { + avg_time = (float)total_time/(float)count; + result = ((float)size)*1000/avg_time; + if (verbose) + printf("** Avg time device %s, total time %ld nsec, avg_time = %f, size = %lu, BW = %f \n", + devname, total_time, avg_time, size, result); + printf("%s ** Average BW = %lu, %f\n", devname, size, result); + } + +out: + close(fpga_fd); + if (infile_fd >= 0) + close(infile_fd); + if (outfile_fd >= 0) + close(outfile_fd); + free(allocated); + + if (rc < 0) + return rc; + /* treat underflow as error */ + return underflow ? -EIO : 0; +} diff --git a/host_software/driver/XDMA/linux-kernel/tools/dma_utils.c b/host_software/driver/XDMA/linux-kernel/tools/dma_utils.c new file mode 100644 index 0000000..9812279 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tools/dma_utils.c @@ -0,0 +1,183 @@ +/* + * This file is part of the Xilinx DMA IP Core driver tools for Linux + * + * Copyright (c) 2016-present, Xilinx, Inc. + * All rights reserved. + * + * This source code is licensed under BSD-style license (found in the + * LICENSE file in the root directory of this source tree) + */ + +#include +#include +#include +#include +#include +#include + +/* + * man 2 write: + * On Linux, write() (and similar system calls) will transfer at most + * 0x7ffff000 (2,147,479,552) bytes, returning the number of bytes + * actually transferred. (This is true on both 32-bit and 64-bit + * systems.) + */ + +#define RW_MAX_SIZE 0x7ffff000 + +int verbose = 0; + +uint64_t getopt_integer(char *optarg) +{ + int rc; + uint64_t value; + + rc = sscanf(optarg, "0x%lx", &value); + if (rc <= 0) + rc = sscanf(optarg, "%lu", &value); + //printf("sscanf() = %d, value = 0x%lx\n", rc, value); + + return value; +} + +ssize_t read_to_buffer(char *fname, int fd, char *buffer, uint64_t size, + uint64_t base) +{ + ssize_t rc; + uint64_t count = 0; + char *buf = buffer; + off_t offset = base; + int loop = 0; + + while (count < size) { + uint64_t bytes = size - count; + + if (bytes > RW_MAX_SIZE) + bytes = RW_MAX_SIZE; + + if (offset) { + rc = lseek(fd, offset, SEEK_SET); + if (rc != offset) { + fprintf(stderr, "%s, seek off 0x%lx != 0x%lx.\n", + fname, rc, offset); + perror("seek file"); + return -EIO; + } + } + + /* read data from file into memory buffer */ + rc = read(fd, buf, bytes); + if (rc < 0) { + fprintf(stderr, "%s, read 0x%lx @ 0x%lx failed %ld.\n", + fname, bytes, offset, rc); + perror("read file"); + return -EIO; + } + + count += rc; + if (rc != bytes) { + fprintf(stderr, "%s, read underflow 0x%lx/0x%lx @ 0x%lx.\n", + fname, rc, bytes, offset); + break; + } + + buf += bytes; + offset += bytes; + loop++; + } + + if (count != size && loop) + fprintf(stderr, "%s, read underflow 0x%lx/0x%lx.\n", + fname, count, size); + return count; +} + +ssize_t write_from_buffer(char *fname, int fd, char *buffer, uint64_t size, + uint64_t base) +{ + ssize_t rc; + uint64_t count = 0; + char *buf = buffer; + off_t offset = base; + int loop = 0; + + while (count < size) { + uint64_t bytes = size - count; + + if (bytes > RW_MAX_SIZE) + bytes = RW_MAX_SIZE; + + if (offset) { + rc = lseek(fd, offset, SEEK_SET); + if (rc != offset) { + fprintf(stderr, "%s, seek off 0x%lx != 0x%lx.\n", + fname, rc, offset); + perror("seek file"); + return -EIO; + } + } + + /* write data to file from memory buffer */ + rc = write(fd, buf, bytes); + if (rc < 0) { + fprintf(stderr, "%s, write 0x%lx @ 0x%lx failed %ld.\n", + fname, bytes, offset, rc); + perror("write file"); + return -EIO; + } + + count += rc; + if (rc != bytes) { + fprintf(stderr, "%s, write underflow 0x%lx/0x%lx @ 0x%lx.\n", + fname, rc, bytes, offset); + break; + } + buf += bytes; + offset += bytes; + + loop++; + } + + if (count != size && loop) + fprintf(stderr, "%s, write underflow 0x%lx/0x%lx.\n", + fname, count, size); + + return count; +} + + +/* Subtract timespec t2 from t1 + * + * Both t1 and t2 must already be normalized + * i.e. 0 <= nsec < 1000000000 + */ +static int timespec_check(struct timespec *t) +{ + if ((t->tv_nsec < 0) || (t->tv_nsec >= 1000000000)) + return -1; + return 0; + +} + +void timespec_sub(struct timespec *t1, struct timespec *t2) +{ + if (timespec_check(t1) < 0) { + fprintf(stderr, "invalid time #1: %lld.%.9ld.\n", + (long long)t1->tv_sec, t1->tv_nsec); + return; + } + if (timespec_check(t2) < 0) { + fprintf(stderr, "invalid time #2: %lld.%.9ld.\n", + (long long)t2->tv_sec, t2->tv_nsec); + return; + } + t1->tv_sec -= t2->tv_sec; + t1->tv_nsec -= t2->tv_nsec; + if (t1->tv_nsec >= 1000000000) { + t1->tv_sec++; + t1->tv_nsec -= 1000000000; + } else if (t1->tv_nsec < 0) { + t1->tv_sec--; + t1->tv_nsec += 1000000000; + } +} diff --git a/host_software/driver/XDMA/linux-kernel/tools/performance.c b/host_software/driver/XDMA/linux-kernel/tools/performance.c new file mode 100644 index 0000000..f5536e5 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tools/performance.c @@ -0,0 +1,174 @@ +/* + * This file is part of the Xilinx DMA IP Core driver tools for Linux + * + * Copyright (c) 2016-present, Xilinx, Inc. + * All rights reserved. + * + * This source code is licensed under BSD-style license (found in the + * LICENSE file in the root directory of this source tree) + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#include "../xdma/cdev_sgdma.h" + +struct xdma_performance_ioctl perf; + +static struct option const long_opts[] = +{ + {"device", required_argument, NULL, 'd'}, + {"count", required_argument, NULL, 'c'}, + {"size", required_argument, NULL, 's'}, + {"incremental", no_argument, NULL, 'i'}, + {"non-incremental", no_argument, NULL, 'n'}, + {"verbose", no_argument, NULL, 'v'}, + {"help", no_argument, NULL, 'h'}, + {0, 0, 0, 0} +}; + +static void usage(const char* name) +{ + int i = 0; + printf("%s\n\n", name); + printf("usage: %s [OPTIONS]\n\n", name); + printf("Performance test for XDMA SGDMA engine.\n\n"); + + printf(" -%c (--%s) device\n", long_opts[i].val, long_opts[i].name); i++; + printf(" -%c (--%s) incremental\n", long_opts[i].val, long_opts[i].name); i++; + printf(" -%c (--%s) non-incremental\n", long_opts[i].val, long_opts[i].name); i++; + printf(" -%c (--%s) be more verbose during test\n", long_opts[i].val, long_opts[i].name); i++; + printf(" -%c (--%s) print usage help and exit\n", long_opts[i].val, long_opts[i].name); i++; +} + +static uint32_t getopt_integer(char *optarg) +{ + int rc; + uint32_t value; + rc = sscanf(optarg, "0x%x", &value); + if (rc <= 0) + rc = sscanf(optarg, "%ul", &value); + //printf("sscanf() = %d, value = 0x%08x\n", rc, (unsigned int)value); + return value; +} + +int test_dma(char *device_name, int size, int count); + +static int verbosity = 0; + +int main(int argc, char *argv[]) +{ + int cmd_opt; + char *device = "/dev/xdma/card0/h2c0"; + uint32_t size = 32768; + uint32_t count = 1; + char *filename = NULL; + + while ((cmd_opt = getopt_long(argc, argv, "vhic:d:s:", long_opts, NULL)) != -1) + { + switch (cmd_opt) + { + case 0: + /* long option */ + break; + case 'v': + verbosity++; + break; + /* device node name */ + case 'd': + printf("'%s'\n", optarg); + device = strdup(optarg); + break; + /* transfer size in bytes */ + case 's': + size = getopt_integer(optarg); + break; + /* count */ + case 'c': + count = getopt_integer(optarg); + printf(" count = %d\n", count); + break; + /* print usage help and exit */ + case 'h': + default: + usage(argv[0]); + exit(0); + break; + } + } + printf("device = %s, size = 0x%08x, count = %u\n", device, size, count); + test_dma(device, size, count); + +} + +int test_dma(char *device_name, int size, int count) +{ + int rc = 0; + int fd = open(device_name, O_RDWR); + if (fd < 0) { + printf("FAILURE: Could not open %s. Make sure xdma device driver is loaded and you have access rights (maybe use sudo?).\n", device_name); + exit(1); + } + + unsigned char status = 1; + + perf.version = IOCTL_XDMA_PERF_V1; + perf.transfer_size = size; + rc = ioctl(fd, IOCTL_XDMA_PERF_START, &perf); + if (rc == 0) { + printf("IOCTL_XDMA_PERF_START succesful.\n"); + } else { + printf("ioctl(..., IOCTL_XDMA_PERF_START) = %d\n", rc); + } +#if 1 + while (count--) { + + sleep(2); + rc = ioctl(fd, IOCTL_XDMA_PERF_GET, &perf); + if (rc == 0) { + printf("IOCTL_XDMA_PERF_GET succesful.\n"); + } else { + printf("ioctl(..., IOCTL_XDMA_PERF_GET) = %d\n", rc); + } + printf("perf.transfer_size = %d\n", perf.transfer_size); + printf("perf.iterations = %d\n", perf.iterations); + printf("(data transferred = %lld bytes)\n", (long long)perf.transfer_size * (long long)perf.iterations); + printf("perf.clock_cycle_count = %lld\n", (long long)perf.clock_cycle_count); + printf("perf.data_cycle_count = %lld\n", (long long)perf.data_cycle_count); + if (perf.clock_cycle_count && perf.data_cycle_count) { + printf("(data duty cycle = %lld%%)\n", (long long)perf.data_cycle_count * 100 / (long long)perf.clock_cycle_count); + } + } +#endif + rc = ioctl(fd, IOCTL_XDMA_PERF_STOP, &perf); + if (rc == 0) { + printf("IOCTL_XDMA_PERF_STOP succesful.\n"); + } else { + printf("ioctl(..., IOCTL_XDMA_PERF_STOP) = %d\n", rc); + } + printf("perf.transfer_size = %d bytes\n", perf.transfer_size); + printf("perf.iterations = %d\n", perf.iterations); + printf("(data transferred = %lld bytes)\n", (long long)perf.transfer_size * (long long)perf.iterations); + printf("perf.clock_cycle_count = %lld\n", (long long)perf.clock_cycle_count); + printf("perf.data_cycle_count = %lld\n", (long long)perf.data_cycle_count); + if (perf.clock_cycle_count && perf.data_cycle_count) { + printf("(data duty cycle = %lld%%)\n", (long long)perf.data_cycle_count * 100 / (long long)perf.clock_cycle_count); + printf (" data rate ***** bytes length = %d, rate = %f \n", perf.transfer_size, (double)(long long)perf.data_cycle_count/(long long)perf.clock_cycle_count); + } + printf("perf.pending_count = %lld\n", (long long)perf.pending_count); + + close(fd); +} diff --git a/host_software/driver/XDMA/linux-kernel/tools/reg_rw.c b/host_software/driver/XDMA/linux-kernel/tools/reg_rw.c new file mode 100644 index 0000000..9965a16 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tools/reg_rw.c @@ -0,0 +1,179 @@ +/* + * This file is part of the Xilinx DMA IP Core driver tools for Linux + * + * Copyright (c) 2016-present, Xilinx, Inc. + * All rights reserved. + * + * This source code is licensed under BSD-style license (found in the + * LICENSE file in the root directory of this source tree) + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +/* ltoh: little endian to host */ +/* htol: host to little endian */ +#if __BYTE_ORDER == __LITTLE_ENDIAN +#define ltohl(x) (x) +#define ltohs(x) (x) +#define htoll(x) (x) +#define htols(x) (x) +#elif __BYTE_ORDER == __BIG_ENDIAN +#define ltohl(x) __bswap_32(x) +#define ltohs(x) __bswap_16(x) +#define htoll(x) __bswap_32(x) +#define htols(x) __bswap_16(x) +#endif + +int main(int argc, char **argv) +{ + int fd; + int err = 0; + void *map; + uint32_t read_result, writeval; + off_t target; + off_t pgsz, target_aligned, offset; + /* access width */ + char access_width = 'w'; + char *device; + + /* not enough arguments given? */ + if (argc < 3) { + fprintf(stderr, + "\nUsage:\t%s
[[type] data]\n" + "\tdevice : character device to access\n" + "\taddress : memory address to access\n" + "\ttype : access operation type : [b]yte, [h]alfword, [w]ord\n" + "\tdata : data to be written for a write\n\n", + argv[0]); + exit(1); + } + + device = strdup(argv[1]); + target = strtoul(argv[2], 0, 0); + /* check for target page alignment */ + pgsz = sysconf(_SC_PAGESIZE); + offset = target & (pgsz - 1); + target_aligned = target & (~(pgsz - 1)); + + printf("device: %s, address: 0x%lx (0x%lx+0x%lx), access %s.\n", + device, target, target_aligned, offset, + argc >= 4 ? "write" : "read"); + + /* data given? */ + if (argc >= 4) + access_width = tolower(argv[3][0]); + printf("access width: "); + if (access_width == 'b') + printf("byte (8-bits)\n"); + else if (access_width == 'h') + printf("half word (16-bits)\n"); + else if (access_width == 'w') + printf("word (32-bits)\n"); + else { + printf("default to word (32-bits)\n"); + access_width = 'w'; + } + + if ((fd = open(argv[1], O_RDWR | O_SYNC)) == -1) { + printf("character device %s opened failed: %s.\n", + argv[1], strerror(errno)); + return -errno; + } + printf("character device %s opened.\n", argv[1]); + + map = mmap(NULL, offset + 4, PROT_READ | PROT_WRITE, MAP_SHARED, fd, + target_aligned); + if (map == (void *)-1) { + printf("Memory 0x%lx mapped failed: %s.\n", + target, strerror(errno)); + err = 1; + goto close; + } + printf("Memory 0x%lx mapped at address %p.\n", target_aligned, map); + + map += offset; + /* read only */ + if (argc <= 4) { + switch (access_width) { + case 'b': + read_result = *((uint8_t *) map); + printf + ("Read 8-bits value at address 0x%lx (%p): 0x%02x\n", + target, map, (unsigned int)read_result); + break; + case 'h': + read_result = *((uint16_t *) map); + /* swap 16-bit endianess if host is not little-endian */ + read_result = ltohs(read_result); + printf + ("Read 16-bit value at address 0x%lx (%p): 0x%04x\n", + target, map, (unsigned int)read_result); + break; + case 'w': + read_result = *((uint32_t *) map); + /* swap 32-bit endianess if host is not little-endian */ + read_result = ltohl(read_result); + printf + ("Read 32-bit value at address 0x%lx (%p): 0x%08x\n", + target, map, (unsigned int)read_result); + break; + default: + fprintf(stderr, "Illegal data type '%c'.\n", + access_width); + err = 1; + goto unmap; + } + } + + /* data value given, i.e. writing? */ + if (argc >= 5) { + writeval = strtoul(argv[4], 0, 0); + switch (access_width) { + case 'b': + printf("Write 8-bits value 0x%02x to 0x%lx (0x%p)\n", + (unsigned int)writeval, target, map); + *((uint8_t *) map) = writeval; + break; + case 'h': + printf("Write 16-bits value 0x%04x to 0x%lx (0x%p)\n", + (unsigned int)writeval, target, map); + /* swap 16-bit endianess if host is not little-endian */ + writeval = htols(writeval); + *((uint16_t *) map) = writeval; + break; + case 'w': + printf("Write 32-bits value 0x%08x to 0x%lx (0x%p)\n", + (unsigned int)writeval, target, map); + /* swap 32-bit endianess if host is not little-endian */ + writeval = htoll(writeval); + *((uint32_t *) map) = writeval; + break; + default: + fprintf(stderr, "Illegal data type '%c'.\n", + access_width); + err = 1; + goto unmap; + } + } +unmap: + map -= offset; + if (munmap(map, offset + 4) == -1) { + printf("Memory 0x%lx mapped failed: %s.\n", + target, strerror(errno)); + } +close: + close(fd); + + return err; +} diff --git a/host_software/driver/XDMA/linux-kernel/tools/test_chrdev.c b/host_software/driver/XDMA/linux-kernel/tools/test_chrdev.c new file mode 100644 index 0000000..3d48634 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/tools/test_chrdev.c @@ -0,0 +1,46 @@ +/* + * This file is part of the Xilinx DMA IP Core driver tools for Linux + * + * Copyright (c) 2016-present, Xilinx, Inc. + * All rights reserved. + * + * This source code is licensed under BSD-style license (found in the + * LICENSE file in the root directory of this source tree) + */ + +#include +#include +#include +#include +#include +#include + +int main(int argc, char *argv[]) +{ + + int fd; + char *filename; + + if ( (argc < 2) || (argc >= 3)) + { + printf("usage %s \n",argv[0]); + return -1; + } + filename = argv[1]; + fd = open(filename,O_RDWR); + if (fd < 0) + { + perror("Device open Failed"); + return fd; + } + printf("%s Device open successfull\n",argv[1]); + + if ( close(fd) ) + { + perror("Device Close Failed"); + return -1; + } + printf("%s Device close successfull\n",argv[1]); + + return 0; +} diff --git a/host_software/driver/XDMA/linux-kernel/xdma/.Module.symvers.cmd b/host_software/driver/XDMA/linux-kernel/xdma/.Module.symvers.cmd new file mode 100644 index 0000000..b650dea --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/.Module.symvers.cmd @@ -0,0 +1 @@ +cmd_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/Module.symvers := sed 's/\.ko$$/\.o/' /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/modules.order | scripts/mod/modpost -m -a -o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/Module.symvers -e -i Module.symvers -T - diff --git a/host_software/driver/XDMA/linux-kernel/xdma/.cdev_bypass.o.cmd b/host_software/driver/XDMA/linux-kernel/xdma/.cdev_bypass.o.cmd new file mode 100644 index 0000000..f923080 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/.cdev_bypass.o.cmd @@ -0,0 +1,1427 @@ +cmd_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_bypass.o := gcc -Wp,-MMD,/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/.cdev_bypass.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/9/include -I./arch/x86/include -I./arch/x86/include/generated -I./include -I./arch/x86/include/uapi -I./arch/x86/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -I./ubuntu/include -include ./include/linux/compiler_types.h -D__KERNEL__ -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu89 -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fcf-protection=none -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -DCONFIG_X86_X32_ABI -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mfunction-return=thunk-extern -fno-jump-tables -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fstack-protector-strong -Wimplicit-fallthrough=5 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-stack-clash-protection -g -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wno-stringop-truncation -Wno-array-bounds -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -I/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/include -fsanitize=bounds -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"cdev_bypass"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_bypass.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_bypass.c + +source_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_bypass.o := /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_bypass.c + +deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_bypass.o := \ + include/linux/compiler-version.h \ + $(wildcard include/config/CC_VERSION_TEXT) \ + include/linux/kconfig.h \ + $(wildcard include/config/CPU_BIG_ENDIAN) \ + $(wildcard include/config/BOOGER) \ + $(wildcard include/config/FOO) \ + include/linux/compiler_types.h \ + $(wildcard include/config/HAVE_ARCH_COMPILER_H) \ + $(wildcard include/config/CC_HAS_ASM_INLINE) \ + include/linux/compiler_attributes.h \ + include/linux/compiler-gcc.h \ + $(wildcard include/config/RETPOLINE) \ + $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ + $(wildcard include/config/KCOV) \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/include/libxdma_api.h \ + include/linux/types.h \ + $(wildcard include/config/HAVE_UID16) \ + $(wildcard include/config/UID16) \ + $(wildcard include/config/ARCH_DMA_ADDR_T_64BIT) \ + $(wildcard include/config/PHYS_ADDR_T_64BIT) \ + $(wildcard include/config/64BIT) \ + $(wildcard include/config/ARCH_32BIT_USTAT_F_TINODE) \ + include/uapi/linux/types.h \ + arch/x86/include/generated/uapi/asm/types.h \ + include/uapi/asm-generic/types.h \ + include/asm-generic/int-ll64.h \ + include/uapi/asm-generic/int-ll64.h \ + arch/x86/include/uapi/asm/bitsperlong.h \ + include/asm-generic/bitsperlong.h \ + include/uapi/asm-generic/bitsperlong.h \ + include/uapi/linux/posix_types.h \ + include/linux/stddef.h \ + include/uapi/linux/stddef.h \ + include/linux/compiler_types.h \ + arch/x86/include/asm/posix_types.h \ + $(wildcard include/config/X86_32) \ + arch/x86/include/uapi/asm/posix_types_64.h \ + include/uapi/asm-generic/posix_types.h \ + include/linux/scatterlist.h \ + $(wildcard include/config/NEED_SG_DMA_LENGTH) \ + $(wildcard include/config/DEBUG_SG) \ + $(wildcard include/config/SGL_ALLOC) \ + $(wildcard include/config/ARCH_NO_SG_CHAIN) \ + $(wildcard include/config/SG_POOL) \ + include/linux/string.h \ + $(wildcard include/config/BINARY_PRINTF) \ + $(wildcard include/config/FORTIFY_SOURCE) \ + include/linux/compiler.h \ + $(wildcard include/config/TRACE_BRANCH_PROFILING) \ + $(wildcard include/config/PROFILE_ALL_BRANCHES) \ + $(wildcard include/config/STACK_VALIDATION) \ + $(wildcard include/config/CFI_CLANG) \ + arch/x86/include/generated/asm/rwonce.h \ + include/asm-generic/rwonce.h \ + include/linux/kasan-checks.h \ + $(wildcard include/config/KASAN_GENERIC) \ + $(wildcard include/config/KASAN_SW_TAGS) \ + include/linux/kcsan-checks.h \ + $(wildcard include/config/KCSAN) \ + $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ + include/linux/errno.h \ + include/uapi/linux/errno.h \ + arch/x86/include/generated/uapi/asm/errno.h \ + include/uapi/asm-generic/errno.h \ + include/uapi/asm-generic/errno-base.h \ + include/linux/stdarg.h \ + include/uapi/linux/string.h \ + arch/x86/include/asm/string.h \ + arch/x86/include/asm/string_64.h \ + $(wildcard include/config/KASAN) \ + $(wildcard include/config/ARCH_HAS_UACCESS_FLUSHCACHE) \ + include/linux/jump_label.h \ + $(wildcard include/config/JUMP_LABEL) \ + $(wildcard include/config/HAVE_ARCH_JUMP_LABEL_RELATIVE) \ + arch/x86/include/asm/jump_label.h \ + arch/x86/include/asm/asm.h \ + $(wildcard include/config/KPROBES) \ + include/linux/stringify.h \ + arch/x86/include/asm/extable_fixup_types.h \ + arch/x86/include/asm/nops.h \ + include/linux/fortify-string.h \ + include/linux/bug.h \ + $(wildcard include/config/GENERIC_BUG) \ + $(wildcard include/config/BUG_ON_DATA_CORRUPTION) \ + arch/x86/include/asm/bug.h \ + $(wildcard include/config/DEBUG_BUGVERBOSE) \ + include/linux/instrumentation.h \ + $(wildcard include/config/DEBUG_ENTRY) \ + include/asm-generic/bug.h \ + $(wildcard include/config/BUG) \ + $(wildcard include/config/GENERIC_BUG_RELATIVE_POINTERS) \ + $(wildcard include/config/SMP) \ + $(wildcard include/config/MODULES) \ + include/linux/once_lite.h \ + include/linux/panic.h \ + $(wildcard include/config/PANIC_TIMEOUT) \ + include/linux/printk.h \ + $(wildcard include/config/MESSAGE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_QUIET) \ + $(wildcard include/config/EARLY_PRINTK) \ + $(wildcard include/config/PRINTK) \ + $(wildcard include/config/PRINTK_INDEX) \ + $(wildcard include/config/DYNAMIC_DEBUG) \ + $(wildcard include/config/DYNAMIC_DEBUG_CORE) \ + include/linux/init.h \ + $(wildcard include/config/HAVE_ARCH_PREL32_RELOCATIONS) \ + $(wildcard include/config/STRICT_KERNEL_RWX) \ + $(wildcard include/config/STRICT_MODULE_RWX) \ + $(wildcard include/config/LTO_CLANG) \ + include/linux/kern_levels.h \ + include/linux/linkage.h \ + $(wildcard include/config/ARCH_USE_SYM_ANNOTATIONS) \ + include/linux/export.h \ + $(wildcard include/config/MODVERSIONS) \ + $(wildcard include/config/MODULE_REL_CRCS) \ + $(wildcard include/config/TRIM_UNUSED_KSYMS) \ + arch/x86/include/asm/linkage.h \ + $(wildcard include/config/X86_64) \ + $(wildcard include/config/X86_ALIGNMENT_16) \ + $(wildcard include/config/RETHUNK) \ + $(wildcard include/config/SLS) \ + include/linux/cache.h \ + $(wildcard include/config/ARCH_HAS_CACHE_LINE_SIZE) \ + include/uapi/linux/kernel.h \ + include/uapi/linux/sysinfo.h \ + include/linux/const.h \ + include/vdso/const.h \ + include/uapi/linux/const.h \ + arch/x86/include/asm/cache.h \ + $(wildcard include/config/X86_L1_CACHE_SHIFT) \ + $(wildcard include/config/X86_INTERNODE_CACHE_SHIFT) \ + $(wildcard include/config/X86_VSMP) \ + include/linux/ratelimit_types.h \ + include/linux/bits.h \ + include/vdso/bits.h \ + include/linux/build_bug.h \ + include/uapi/linux/param.h \ + arch/x86/include/generated/uapi/asm/param.h \ + include/asm-generic/param.h \ + $(wildcard include/config/HZ) \ + include/uapi/asm-generic/param.h \ + include/linux/spinlock_types.h \ + $(wildcard include/config/PREEMPT_RT) \ + $(wildcard include/config/DEBUG_LOCK_ALLOC) \ + include/linux/spinlock_types_raw.h \ + $(wildcard include/config/DEBUG_SPINLOCK) \ + arch/x86/include/asm/spinlock_types.h \ + include/asm-generic/qspinlock_types.h \ + $(wildcard include/config/NR_CPUS) \ + include/asm-generic/qrwlock_types.h \ + arch/x86/include/uapi/asm/byteorder.h \ + include/linux/byteorder/little_endian.h \ + include/uapi/linux/byteorder/little_endian.h \ + include/linux/swab.h \ + include/uapi/linux/swab.h \ + arch/x86/include/uapi/asm/swab.h \ + include/linux/byteorder/generic.h \ + include/linux/lockdep_types.h \ + $(wildcard include/config/PROVE_RAW_LOCK_NESTING) \ + $(wildcard include/config/PREEMPT_LOCK) \ + $(wildcard include/config/LOCKDEP) \ + $(wildcard include/config/LOCK_STAT) \ + include/linux/rwlock_types.h \ + include/linux/dynamic_debug.h \ + include/linux/mm.h \ + $(wildcard include/config/NUMA) \ + $(wildcard include/config/SYSCTL) \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_BITS) \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_COMPAT_BITS) \ + $(wildcard include/config/DEBUG_INFO_BTF) \ + $(wildcard include/config/SPARSEMEM) \ + $(wildcard include/config/SPARSEMEM_VMEMMAP) \ + $(wildcard include/config/MMU) \ + $(wildcard include/config/MEM_SOFT_DIRTY) \ + $(wildcard include/config/ARCH_USES_HIGH_VMA_FLAGS) \ + $(wildcard include/config/ARCH_HAS_PKEYS) \ + $(wildcard include/config/PPC) \ + $(wildcard include/config/X86) \ + $(wildcard include/config/PARISC) \ + $(wildcard include/config/IA64) \ + $(wildcard include/config/SPARC64) \ + $(wildcard include/config/ARM64) \ + $(wildcard include/config/ARM64_MTE) \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ + $(wildcard include/config/STACK_GROWSUP) \ + $(wildcard include/config/SHMEM) \ + $(wildcard include/config/TRANSPARENT_HUGEPAGE) \ + $(wildcard include/config/HUGETLB_PAGE) \ + $(wildcard include/config/ZONE_DEVICE) \ + $(wildcard include/config/DEV_PAGEMAP_OPS) \ + $(wildcard include/config/DEVICE_PRIVATE) \ + $(wildcard include/config/PCI_P2PDMA) \ + $(wildcard include/config/NUMA_BALANCING) \ + $(wildcard include/config/KASAN_HW_TAGS) \ + $(wildcard include/config/MIGRATION) \ + $(wildcard include/config/HIGHMEM) \ + $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ + $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ + $(wildcard include/config/DEBUG_VM_RB) \ + $(wildcard include/config/PAGE_POISONING) \ + $(wildcard include/config/INIT_ON_ALLOC_DEFAULT_ON) \ + $(wildcard include/config/INIT_ON_FREE_DEFAULT_ON) \ + $(wildcard include/config/DEBUG_PAGEALLOC) \ + $(wildcard include/config/MEMORY_HOTPLUG) \ + $(wildcard include/config/MEMORY_FAILURE) \ + $(wildcard include/config/HUGETLBFS) \ + $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ + include/linux/mmdebug.h \ + $(wildcard include/config/DEBUG_VM) \ + $(wildcard include/config/DEBUG_VIRTUAL) \ + $(wildcard include/config/DEBUG_VM_PGFLAGS) \ + include/linux/gfp.h \ + $(wildcard include/config/ZONE_DMA) \ + $(wildcard include/config/ZONE_DMA32) \ + $(wildcard include/config/PM_SLEEP) \ + $(wildcard include/config/CONTIG_ALLOC) \ + $(wildcard include/config/CMA) \ + include/linux/mmzone.h \ + $(wildcard include/config/FORCE_MAX_ZONEORDER) \ + $(wildcard include/config/MEMORY_ISOLATION) \ + $(wildcard include/config/ZSMALLOC) \ + $(wildcard include/config/SHADOW_CALL_STACK) \ + $(wildcard include/config/SWAP) \ + $(wildcard include/config/MEMCG) \ + $(wildcard include/config/COMPACTION) \ + $(wildcard include/config/FLATMEM) \ + $(wildcard include/config/PAGE_EXTENSION) \ + $(wildcard include/config/DEFERRED_STRUCT_PAGE_INIT) \ + $(wildcard include/config/HAVE_MEMORYLESS_NODES) \ + $(wildcard include/config/SPARSEMEM_EXTREME) \ + $(wildcard include/config/HAVE_ARCH_PFN_VALID) \ + include/linux/spinlock.h \ + $(wildcard include/config/PREEMPTION) \ + include/linux/typecheck.h \ + include/linux/preempt.h \ + $(wildcard include/config/PREEMPT_COUNT) \ + $(wildcard include/config/DEBUG_PREEMPT) \ + $(wildcard include/config/TRACE_PREEMPT_TOGGLE) \ + $(wildcard include/config/PREEMPT_NOTIFIERS) \ + include/linux/list.h \ + $(wildcard include/config/DEBUG_LIST) \ + include/linux/poison.h \ + $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ + include/linux/kernel.h \ + $(wildcard include/config/PREEMPT_VOLUNTARY) \ + $(wildcard include/config/PREEMPT_DYNAMIC) \ + $(wildcard include/config/PREEMPT_) \ + $(wildcard include/config/DEBUG_ATOMIC_SLEEP) \ + $(wildcard include/config/PROVE_LOCKING) \ + $(wildcard include/config/TRACING) \ + $(wildcard include/config/FTRACE_MCOUNT_RECORD) \ + include/linux/align.h \ + include/linux/limits.h \ + include/uapi/linux/limits.h \ + include/vdso/limits.h \ + include/linux/bitops.h \ + arch/x86/include/asm/bitops.h \ + $(wildcard include/config/X86_CMOV) \ + arch/x86/include/asm/alternative.h \ + arch/x86/include/asm/rmwcc.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO) \ + arch/x86/include/asm/barrier.h \ + include/asm-generic/barrier.h \ + include/asm-generic/bitops/find.h \ + $(wildcard include/config/GENERIC_FIND_FIRST_BIT) \ + include/asm-generic/bitops/sched.h \ + arch/x86/include/asm/arch_hweight.h \ + arch/x86/include/asm/cpufeatures.h \ + arch/x86/include/asm/required-features.h \ + $(wildcard include/config/X86_MINIMUM_CPU_FAMILY) \ + $(wildcard include/config/MATH_EMULATION) \ + $(wildcard include/config/X86_PAE) \ + $(wildcard include/config/X86_CMPXCHG64) \ + $(wildcard include/config/X86_USE_3DNOW) \ + $(wildcard include/config/X86_P6_NOP) \ + $(wildcard include/config/MATOM) \ + $(wildcard include/config/PARAVIRT_XXL) \ + arch/x86/include/asm/disabled-features.h \ + $(wildcard include/config/X86_SMAP) \ + $(wildcard include/config/X86_UMIP) \ + $(wildcard include/config/X86_INTEL_MEMORY_PROTECTION_KEYS) \ + $(wildcard include/config/X86_5LEVEL) \ + $(wildcard include/config/PAGE_TABLE_ISOLATION) \ + $(wildcard include/config/CPU_UNRET_ENTRY) \ + $(wildcard include/config/X86_SGX) \ + include/asm-generic/bitops/const_hweight.h \ + include/asm-generic/bitops/instrumented-atomic.h \ + include/linux/instrumented.h \ + include/asm-generic/bitops/instrumented-non-atomic.h \ + $(wildcard include/config/KCSAN_ASSUME_PLAIN_WRITES_ATOMIC) \ + include/asm-generic/bitops/instrumented-lock.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic-setbit.h \ + include/linux/kstrtox.h \ + include/linux/log2.h \ + $(wildcard include/config/ARCH_HAS_ILOG2_U32) \ + $(wildcard include/config/ARCH_HAS_ILOG2_U64) \ + include/linux/math.h \ + arch/x86/include/asm/div64.h \ + include/asm-generic/div64.h \ + include/linux/minmax.h \ + include/linux/static_call_types.h \ + $(wildcard include/config/HAVE_STATIC_CALL) \ + $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ + arch/x86/include/asm/preempt.h \ + arch/x86/include/asm/percpu.h \ + $(wildcard include/config/X86_64_SMP) \ + include/asm-generic/percpu.h \ + $(wildcard include/config/HAVE_SETUP_PER_CPU_AREA) \ + include/linux/threads.h \ + $(wildcard include/config/BASE_SMALL) \ + include/linux/percpu-defs.h \ + $(wildcard include/config/DEBUG_FORCE_WEAK_PER_CPU) \ + $(wildcard include/config/AMD_MEM_ENCRYPT) \ + include/linux/thread_info.h \ + $(wildcard include/config/THREAD_INFO_IN_TASK) \ + $(wildcard include/config/GENERIC_ENTRY) \ + $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ + $(wildcard include/config/HARDENED_USERCOPY) \ + include/linux/restart_block.h \ + include/linux/time64.h \ + include/linux/math64.h \ + $(wildcard include/config/ARCH_SUPPORTS_INT128) \ + include/vdso/math64.h \ + include/vdso/time64.h \ + include/uapi/linux/time.h \ + include/uapi/linux/time_types.h \ + arch/x86/include/asm/current.h \ + arch/x86/include/asm/thread_info.h \ + $(wildcard include/config/VM86) \ + $(wildcard include/config/X86_IOPL_IOPERM) \ + $(wildcard include/config/FRAME_POINTER) \ + $(wildcard include/config/COMPAT) \ + $(wildcard include/config/IA32_EMULATION) \ + arch/x86/include/asm/page.h \ + arch/x86/include/asm/page_types.h \ + $(wildcard include/config/PHYSICAL_START) \ + $(wildcard include/config/PHYSICAL_ALIGN) \ + $(wildcard include/config/DYNAMIC_PHYSICAL_MASK) \ + include/linux/mem_encrypt.h \ + $(wildcard include/config/ARCH_HAS_MEM_ENCRYPT) \ + arch/x86/include/asm/mem_encrypt.h \ + include/linux/cc_platform.h \ + $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ + arch/x86/include/uapi/asm/bootparam.h \ + include/linux/screen_info.h \ + include/uapi/linux/screen_info.h \ + include/linux/apm_bios.h \ + include/uapi/linux/apm_bios.h \ + include/uapi/linux/ioctl.h \ + arch/x86/include/generated/uapi/asm/ioctl.h \ + include/asm-generic/ioctl.h \ + include/uapi/asm-generic/ioctl.h \ + include/linux/edd.h \ + include/uapi/linux/edd.h \ + arch/x86/include/asm/ist.h \ + arch/x86/include/uapi/asm/ist.h \ + include/video/edid.h \ + include/uapi/video/edid.h \ + arch/x86/include/asm/page_64_types.h \ + $(wildcard include/config/DYNAMIC_MEMORY_LAYOUT) \ + $(wildcard include/config/RANDOMIZE_BASE) \ + arch/x86/include/asm/kaslr.h \ + $(wildcard include/config/RANDOMIZE_MEMORY) \ + arch/x86/include/asm/page_64.h \ + $(wildcard include/config/X86_VSYSCALL_EMULATION) \ + include/linux/range.h \ + include/asm-generic/memory_model.h \ + include/linux/pfn.h \ + include/asm-generic/getorder.h \ + arch/x86/include/asm/cpufeature.h \ + $(wildcard include/config/X86_FEATURE_NAMES) \ + arch/x86/include/asm/processor.h \ + $(wildcard include/config/X86_VMX_FEATURE_NAMES) \ + $(wildcard include/config/STACKPROTECTOR) \ + $(wildcard include/config/X86_DEBUGCTLMSR) \ + $(wildcard include/config/CPU_SUP_AMD) \ + $(wildcard include/config/XEN) \ + arch/x86/include/asm/processor-flags.h \ + arch/x86/include/uapi/asm/processor-flags.h \ + arch/x86/include/asm/math_emu.h \ + arch/x86/include/asm/ptrace.h \ + $(wildcard include/config/PARAVIRT) \ + arch/x86/include/asm/segment.h \ + $(wildcard include/config/XEN_PV) \ + arch/x86/include/uapi/asm/ptrace.h \ + arch/x86/include/uapi/asm/ptrace-abi.h \ + arch/x86/include/asm/paravirt_types.h \ + $(wildcard include/config/PGTABLE_LEVELS) \ + $(wildcard include/config/PARAVIRT_DEBUG) \ + arch/x86/include/asm/desc_defs.h \ + arch/x86/include/asm/pgtable_types.h \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_WP) \ + $(wildcard include/config/PROC_FS) \ + arch/x86/include/asm/pgtable_64_types.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL_FORCE_MAP) \ + arch/x86/include/asm/sparsemem.h \ + $(wildcard include/config/NUMA_KEEP_MEMINFO) \ + arch/x86/include/asm/nospec-branch.h \ + $(wildcard include/config/CPU_IBPB_ENTRY) \ + include/linux/static_key.h \ + include/linux/objtool.h \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/unwind_hints.h \ + arch/x86/include/asm/orc_types.h \ + arch/x86/include/asm/GEN-for-each-reg.h \ + arch/x86/include/asm/proto.h \ + arch/x86/include/uapi/asm/ldt.h \ + arch/x86/include/uapi/asm/sigcontext.h \ + arch/x86/include/asm/msr.h \ + $(wildcard include/config/TRACEPOINTS) \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/cpumask.h \ + include/linux/cpumask.h \ + $(wildcard include/config/CPUMASK_OFFSTACK) \ + $(wildcard include/config/HOTPLUG_CPU) \ + $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ + include/linux/bitmap.h \ + include/linux/atomic.h \ + arch/x86/include/asm/atomic.h \ + arch/x86/include/asm/cmpxchg.h \ + arch/x86/include/asm/cmpxchg_64.h \ + arch/x86/include/asm/atomic64_64.h \ + include/linux/atomic/atomic-arch-fallback.h \ + $(wildcard include/config/GENERIC_ATOMIC64) \ + include/linux/atomic/atomic-long.h \ + include/linux/atomic/atomic-instrumented.h \ + arch/x86/include/uapi/asm/msr.h \ + include/linux/tracepoint-defs.h \ + arch/x86/include/asm/paravirt.h \ + $(wildcard include/config/PARAVIRT_SPINLOCKS) \ + arch/x86/include/asm/frame.h \ + arch/x86/include/asm/special_insns.h \ + include/linux/irqflags.h \ + $(wildcard include/config/TRACE_IRQFLAGS) \ + $(wildcard include/config/IRQSOFF_TRACER) \ + $(wildcard include/config/PREEMPT_TRACER) \ + $(wildcard include/config/DEBUG_IRQFLAGS) \ + $(wildcard include/config/TRACE_IRQFLAGS_SUPPORT) \ + arch/x86/include/asm/irqflags.h \ + arch/x86/include/asm/fpu/types.h \ + arch/x86/include/asm/vmxfeatures.h \ + arch/x86/include/asm/vdso/processor.h \ + include/linux/personality.h \ + include/uapi/linux/personality.h \ + include/linux/err.h \ + include/linux/bottom_half.h \ + include/linux/lockdep.h \ + $(wildcard include/config/DEBUG_LOCKING_API_SELFTESTS) \ + include/linux/smp.h \ + $(wildcard include/config/UP_LATE_INIT) \ + include/linux/smp_types.h \ + include/linux/llist.h \ + $(wildcard include/config/ARCH_HAVE_NMI_SAFE_CMPXCHG) \ + arch/x86/include/asm/smp.h \ + $(wildcard include/config/X86_LOCAL_APIC) \ + $(wildcard include/config/DEBUG_NMI_SELFTEST) \ + arch/x86/include/generated/asm/mmiowb.h \ + include/asm-generic/mmiowb.h \ + $(wildcard include/config/MMIOWB) \ + arch/x86/include/asm/spinlock.h \ + arch/x86/include/asm/qspinlock.h \ + include/asm-generic/qspinlock.h \ + arch/x86/include/asm/qrwlock.h \ + include/asm-generic/qrwlock.h \ + include/linux/rwlock.h \ + $(wildcard include/config/PREEMPT) \ + include/linux/spinlock_api_smp.h \ + $(wildcard include/config/INLINE_SPIN_LOCK) \ + $(wildcard include/config/INLINE_SPIN_LOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK_BH) \ + $(wildcard include/config/UNINLINE_SPIN_UNLOCK) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/GENERIC_LOCKBREAK) \ + include/linux/rwlock_api_smp.h \ + $(wildcard include/config/INLINE_READ_LOCK) \ + $(wildcard include/config/INLINE_WRITE_LOCK) \ + $(wildcard include/config/INLINE_READ_LOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_LOCK_BH) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_READ_TRYLOCK) \ + $(wildcard include/config/INLINE_WRITE_TRYLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_BH) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQRESTORE) \ + include/linux/wait.h \ + include/uapi/linux/wait.h \ + include/linux/numa.h \ + $(wildcard include/config/NODES_SHIFT) \ + include/linux/seqlock.h \ + include/linux/mutex.h \ + $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ + $(wildcard include/config/DEBUG_MUTEXES) \ + include/linux/osq_lock.h \ + include/linux/debug_locks.h \ + include/linux/ww_mutex.h \ + $(wildcard include/config/DEBUG_RT_MUTEXES) \ + $(wildcard include/config/DEBUG_WW_MUTEX_SLOWPATH) \ + include/linux/rtmutex.h \ + include/linux/rbtree_types.h \ + include/linux/nodemask.h \ + include/linux/pageblock-flags.h \ + $(wildcard include/config/HUGETLB_PAGE_SIZE_VARIABLE) \ + include/linux/page-flags-layout.h \ + include/generated/bounds.h \ + include/linux/mm_types.h \ + $(wildcard include/config/HAVE_ALIGNED_STRUCT_PAGE) \ + $(wildcard include/config/USERFAULTFD) \ + $(wildcard include/config/HAVE_ARCH_COMPAT_MMAP_BASES) \ + $(wildcard include/config/MEMBARRIER) \ + $(wildcard include/config/AIO) \ + $(wildcard include/config/MMU_NOTIFIER) \ + $(wildcard include/config/ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH) \ + $(wildcard include/config/IOMMU_SUPPORT) \ + include/linux/mm_types_task.h \ + $(wildcard include/config/SPLIT_PTLOCK_CPUS) \ + $(wildcard include/config/ARCH_ENABLE_SPLIT_PMD_PTLOCK) \ + arch/x86/include/asm/tlbbatch.h \ + include/linux/auxvec.h \ + include/uapi/linux/auxvec.h \ + arch/x86/include/uapi/asm/auxvec.h \ + include/linux/rbtree.h \ + include/linux/rcupdate.h \ + $(wildcard include/config/PREEMPT_RCU) \ + $(wildcard include/config/TINY_RCU) \ + $(wildcard include/config/TASKS_RCU_GENERIC) \ + $(wildcard include/config/RCU_STALL_COMMON) \ + $(wildcard include/config/NO_HZ_FULL) \ + $(wildcard include/config/RCU_NOCB_CPU) \ + $(wildcard include/config/TASKS_RCU) \ + $(wildcard include/config/TASKS_TRACE_RCU) \ + $(wildcard include/config/TASKS_RUDE_RCU) \ + $(wildcard include/config/TREE_RCU) \ + $(wildcard include/config/DEBUG_OBJECTS_RCU_HEAD) \ + $(wildcard include/config/PROVE_RCU) \ + $(wildcard include/config/ARCH_WEAK_RELEASE_ACQUIRE) \ + include/linux/rcutree.h \ + include/linux/rwsem.h \ + $(wildcard include/config/RWSEM_SPIN_ON_OWNER) \ + $(wildcard include/config/DEBUG_RWSEMS) \ + include/linux/completion.h \ + include/linux/swait.h \ + include/linux/uprobes.h \ + $(wildcard include/config/UPROBES) \ + arch/x86/include/asm/uprobes.h \ + include/linux/notifier.h \ + $(wildcard include/config/TREE_SRCU) \ + include/linux/srcu.h \ + $(wildcard include/config/TINY_SRCU) \ + $(wildcard include/config/SRCU) \ + include/linux/workqueue.h \ + $(wildcard include/config/DEBUG_OBJECTS_WORK) \ + $(wildcard include/config/FREEZER) \ + $(wildcard include/config/SYSFS) \ + $(wildcard include/config/WQ_WATCHDOG) \ + include/linux/timer.h \ + $(wildcard include/config/DEBUG_OBJECTS_TIMERS) \ + $(wildcard include/config/NO_HZ_COMMON) \ + include/linux/ktime.h \ + include/linux/time.h \ + $(wildcard include/config/POSIX_TIMERS) \ + include/linux/time32.h \ + include/linux/timex.h \ + include/uapi/linux/timex.h \ + arch/x86/include/asm/timex.h \ + $(wildcard include/config/X86_TSC) \ + arch/x86/include/asm/tsc.h \ + include/vdso/time32.h \ + include/vdso/time.h \ + include/linux/jiffies.h \ + include/vdso/jiffies.h \ + include/generated/timeconst.h \ + include/vdso/ktime.h \ + include/linux/timekeeping.h \ + $(wildcard include/config/GENERIC_CMOS_UPDATE) \ + include/linux/clocksource_ids.h \ + include/linux/debugobjects.h \ + $(wildcard include/config/DEBUG_OBJECTS) \ + $(wildcard include/config/DEBUG_OBJECTS_FREE) \ + include/linux/rcu_segcblist.h \ + include/linux/srcutree.h \ + include/linux/rcu_node_tree.h \ + $(wildcard include/config/RCU_FANOUT) \ + $(wildcard include/config/RCU_FANOUT_LEAF) \ + arch/x86/include/asm/mmu.h \ + $(wildcard include/config/MODIFY_LDT_SYSCALL) \ + include/linux/page-flags.h \ + $(wildcard include/config/ARCH_USES_PG_UNCACHED) \ + $(wildcard include/config/PAGE_IDLE_FLAG) \ + $(wildcard include/config/THP_SWAP) \ + $(wildcard include/config/KSM) \ + include/linux/local_lock.h \ + include/linux/local_lock_internal.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ + $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ + $(wildcard include/config/MEMORY_HOTREMOVE) \ + arch/x86/include/asm/mmzone.h \ + arch/x86/include/asm/mmzone_64.h \ + include/linux/topology.h \ + $(wildcard include/config/USE_PERCPU_NUMA_NODE_ID) \ + $(wildcard include/config/SCHED_SMT) \ + include/linux/arch_topology.h \ + $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ + include/linux/percpu.h \ + $(wildcard include/config/NEED_PER_CPU_EMBED_FIRST_CHUNK) \ + $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ + arch/x86/include/asm/topology.h \ + $(wildcard include/config/SCHED_MC_PRIO) \ + $(wildcard include/config/ACPI_CPPC_LIB) \ + arch/x86/include/asm/mpspec.h \ + $(wildcard include/config/EISA) \ + $(wildcard include/config/X86_MPPARSE) \ + arch/x86/include/asm/mpspec_def.h \ + arch/x86/include/asm/x86_init.h \ + arch/x86/include/asm/apicdef.h \ + include/asm-generic/topology.h \ + include/linux/mmap_lock.h \ + include/linux/percpu-refcount.h \ + include/linux/bit_spinlock.h \ + include/linux/shrinker.h \ + include/linux/resource.h \ + include/uapi/linux/resource.h \ + arch/x86/include/generated/uapi/asm/resource.h \ + include/asm-generic/resource.h \ + include/uapi/asm-generic/resource.h \ + include/linux/page_ext.h \ + include/linux/stacktrace.h \ + $(wildcard include/config/STACKTRACE) \ + $(wildcard include/config/ARCH_STACKWALK) \ + $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ + include/linux/stackdepot.h \ + $(wildcard include/config/STACKDEPOT) \ + include/linux/page_ref.h \ + $(wildcard include/config/DEBUG_PAGE_REF) \ + include/linux/memremap.h \ + include/linux/ioport.h \ + include/linux/overflow.h \ + include/linux/sizes.h \ + include/linux/sched.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_NATIVE) \ + $(wildcard include/config/SCHED_INFO) \ + $(wildcard include/config/SCHEDSTATS) \ + $(wildcard include/config/FAIR_GROUP_SCHED) \ + $(wildcard include/config/RT_GROUP_SCHED) \ + $(wildcard include/config/RT_MUTEXES) \ + $(wildcard include/config/UCLAMP_TASK) \ + $(wildcard include/config/UCLAMP_BUCKETS_COUNT) \ + $(wildcard include/config/KMAP_LOCAL) \ + $(wildcard include/config/SCHED_CORE) \ + $(wildcard include/config/CGROUP_SCHED) \ + $(wildcard include/config/BLK_DEV_IO_TRACE) \ + $(wildcard include/config/PSI) \ + $(wildcard include/config/COMPAT_BRK) \ + $(wildcard include/config/CGROUPS) \ + $(wildcard include/config/BLK_CGROUP) \ + $(wildcard include/config/PAGE_OWNER) \ + $(wildcard include/config/EVENTFD) \ + $(wildcard include/config/ARCH_HAS_SCALED_CPUTIME) \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_GEN) \ + $(wildcard include/config/POSIX_CPUTIMERS) \ + $(wildcard include/config/POSIX_CPU_TIMERS_TASK_WORK) \ + $(wildcard include/config/KEYS) \ + $(wildcard include/config/SYSVIPC) \ + $(wildcard include/config/DETECT_HUNG_TASK) \ + $(wildcard include/config/IO_URING) \ + $(wildcard include/config/AUDIT) \ + $(wildcard include/config/AUDITSYSCALL) \ + $(wildcard include/config/UBSAN) \ + $(wildcard include/config/UBSAN_TRAP) \ + $(wildcard include/config/BLOCK) \ + $(wildcard include/config/TASK_XACCT) \ + $(wildcard include/config/CPUSETS) \ + $(wildcard include/config/X86_CPU_RESCTRL) \ + $(wildcard include/config/FUTEX) \ + $(wildcard include/config/PERF_EVENTS) \ + $(wildcard include/config/RSEQ) \ + $(wildcard include/config/TASK_DELAY_ACCT) \ + $(wildcard include/config/FAULT_INJECTION) \ + $(wildcard include/config/LATENCYTOP) \ + $(wildcard include/config/KUNIT) \ + $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ + $(wildcard include/config/BCACHE) \ + $(wildcard include/config/VMAP_STACK) \ + $(wildcard include/config/LIVEPATCH) \ + $(wildcard include/config/SECURITY) \ + $(wildcard include/config/BPF_SYSCALL) \ + $(wildcard include/config/GCC_PLUGIN_STACKLEAK) \ + $(wildcard include/config/X86_MCE) \ + $(wildcard include/config/KRETPROBES) \ + $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ + $(wildcard include/config/ARCH_TASK_STRUCT_ON_STACK) \ + $(wildcard include/config/DEBUG_RSEQ) \ + include/uapi/linux/sched.h \ + include/linux/pid.h \ + include/linux/rculist.h \ + $(wildcard include/config/PROVE_RCU_LIST) \ + include/linux/refcount.h \ + include/linux/sem.h \ + include/uapi/linux/sem.h \ + include/linux/ipc.h \ + include/linux/uidgid.h \ + $(wildcard include/config/MULTIUSER) \ + $(wildcard include/config/USER_NS) \ + include/linux/highuid.h \ + include/linux/rhashtable-types.h \ + include/uapi/linux/ipc.h \ + arch/x86/include/generated/uapi/asm/ipcbuf.h \ + include/uapi/asm-generic/ipcbuf.h \ + arch/x86/include/uapi/asm/sembuf.h \ + include/linux/shm.h \ + include/uapi/linux/shm.h \ + include/uapi/asm-generic/hugetlb_encode.h \ + arch/x86/include/uapi/asm/shmbuf.h \ + include/uapi/asm-generic/shmbuf.h \ + arch/x86/include/asm/shmparam.h \ + include/linux/plist.h \ + $(wildcard include/config/DEBUG_PLIST) \ + include/linux/hrtimer.h \ + $(wildcard include/config/HIGH_RES_TIMERS) \ + $(wildcard include/config/TIME_LOW_RES) \ + $(wildcard include/config/TIMERFD) \ + include/linux/hrtimer_defs.h \ + include/linux/timerqueue.h \ + include/linux/seccomp.h \ + $(wildcard include/config/SECCOMP) \ + $(wildcard include/config/HAVE_ARCH_SECCOMP_FILTER) \ + $(wildcard include/config/SECCOMP_FILTER) \ + $(wildcard include/config/CHECKPOINT_RESTORE) \ + $(wildcard include/config/SECCOMP_CACHE_DEBUG) \ + include/uapi/linux/seccomp.h \ + arch/x86/include/asm/seccomp.h \ + arch/x86/include/asm/unistd.h \ + arch/x86/include/uapi/asm/unistd.h \ + arch/x86/include/generated/uapi/asm/unistd_64.h \ + arch/x86/include/generated/asm/unistd_64_x32.h \ + arch/x86/include/generated/asm/unistd_32_ia32.h \ + arch/x86/include/asm/ia32_unistd.h \ + include/asm-generic/seccomp.h \ + include/uapi/linux/unistd.h \ + include/linux/latencytop.h \ + include/linux/sched/prio.h \ + include/linux/sched/types.h \ + include/linux/signal_types.h \ + $(wildcard include/config/OLD_SIGACTION) \ + include/uapi/linux/signal.h \ + arch/x86/include/asm/signal.h \ + arch/x86/include/uapi/asm/signal.h \ + include/uapi/asm-generic/signal-defs.h \ + arch/x86/include/uapi/asm/siginfo.h \ + include/uapi/asm-generic/siginfo.h \ + include/linux/syscall_user_dispatch.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/TASK_IO_ACCOUNTING) \ + include/linux/posix-timers.h \ + include/linux/alarmtimer.h \ + $(wildcard include/config/RTC_CLASS) \ + include/linux/task_work.h \ + include/uapi/linux/rseq.h \ + include/linux/kcsan.h \ + arch/x86/include/generated/asm/kmap_size.h \ + include/asm-generic/kmap_size.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL) \ + include/linux/pgtable.h \ + $(wildcard include/config/HIGHPTE) \ + $(wildcard include/config/GUP_GET_PTE_LOW_HIGH) \ + $(wildcard include/config/HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD) \ + $(wildcard include/config/HAVE_ARCH_SOFT_DIRTY) \ + $(wildcard include/config/ARCH_ENABLE_THP_MIGRATION) \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMAP) \ + $(wildcard include/config/X86_ESPFIX64) \ + arch/x86/include/asm/pgtable.h \ + $(wildcard include/config/DEBUG_WX) \ + arch/x86/include/asm/pkru.h \ + arch/x86/include/asm/fpu/api.h \ + $(wildcard include/config/X86_DEBUG_FPU) \ + include/asm-generic/pgtable_uffd.h \ + arch/x86/include/asm/pgtable_64.h \ + arch/x86/include/asm/fixmap.h \ + $(wildcard include/config/PROVIDE_OHCI1394_DMA_INIT) \ + $(wildcard include/config/X86_IO_APIC) \ + $(wildcard include/config/PCI_MMCONFIG) \ + $(wildcard include/config/ACPI_APEI_GHES) \ + $(wildcard include/config/INTEL_TXT) \ + arch/x86/include/uapi/asm/vsyscall.h \ + include/asm-generic/fixmap.h \ + arch/x86/include/asm/pgtable-invert.h \ + include/linux/kasan.h \ + $(wildcard include/config/KASAN_STACK) \ + $(wildcard include/config/KASAN_VMALLOC) \ + $(wildcard include/config/KASAN_INLINE) \ + include/linux/huge_mm.h \ + include/linux/sched/coredump.h \ + $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ + include/linux/fs.h \ + $(wildcard include/config/READ_ONLY_THP_FOR_FS) \ + $(wildcard include/config/FS_POSIX_ACL) \ + $(wildcard include/config/CGROUP_WRITEBACK) \ + $(wildcard include/config/IMA) \ + $(wildcard include/config/FILE_LOCKING) \ + $(wildcard include/config/FSNOTIFY) \ + $(wildcard include/config/FS_ENCRYPTION) \ + $(wildcard include/config/FS_VERITY) \ + $(wildcard include/config/EPOLL) \ + $(wildcard include/config/UNICODE) \ + $(wildcard include/config/QUOTA) \ + $(wildcard include/config/BLK_DEV_LOOP) \ + $(wildcard include/config/FS_DAX) \ + include/linux/wait_bit.h \ + include/linux/kdev_t.h \ + include/uapi/linux/kdev_t.h \ + include/linux/dcache.h \ + include/linux/rculist_bl.h \ + include/linux/list_bl.h \ + include/linux/lockref.h \ + $(wildcard include/config/ARCH_USE_CMPXCHG_LOCKREF) \ + include/linux/stringhash.h \ + $(wildcard include/config/DCACHE_WORD_ACCESS) \ + include/linux/hash.h \ + $(wildcard include/config/HAVE_ARCH_HASH) \ + include/linux/path.h \ + include/linux/stat.h \ + arch/x86/include/uapi/asm/stat.h \ + include/uapi/linux/stat.h \ + include/linux/list_lru.h \ + $(wildcard include/config/MEMCG_KMEM) \ + include/linux/radix-tree.h \ + include/linux/xarray.h \ + $(wildcard include/config/XARRAY_MULTI) \ + include/linux/kconfig.h \ + include/linux/capability.h \ + include/uapi/linux/capability.h \ + include/linux/semaphore.h \ + include/linux/fcntl.h \ + $(wildcard include/config/ARCH_32BIT_OFF_T) \ + include/uapi/linux/fcntl.h \ + arch/x86/include/generated/uapi/asm/fcntl.h \ + include/uapi/asm-generic/fcntl.h \ + include/uapi/linux/openat2.h \ + include/linux/migrate_mode.h \ + include/linux/percpu-rwsem.h \ + include/linux/rcuwait.h \ + include/linux/sched/signal.h \ + $(wildcard include/config/SCHED_AUTOGROUP) \ + $(wildcard include/config/BSD_PROCESS_ACCT) \ + $(wildcard include/config/TASKSTATS) \ + include/linux/signal.h \ + $(wildcard include/config/DYNAMIC_SIGFRAME) \ + include/linux/sched/jobctl.h \ + include/linux/sched/task.h \ + $(wildcard include/config/HAVE_EXIT_THREAD) \ + $(wildcard include/config/ARCH_WANTS_DYNAMIC_TASK_STRUCT) \ + $(wildcard include/config/HAVE_ARCH_THREAD_STRUCT_WHITELIST) \ + include/linux/uaccess.h \ + $(wildcard include/config/SET_FS) \ + include/linux/fault-inject-usercopy.h \ + $(wildcard include/config/FAULT_INJECTION_USERCOPY) \ + arch/x86/include/asm/uaccess.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_HAS_ASM_GOTO_TIED_OUTPUT) \ + $(wildcard include/config/ARCH_HAS_COPY_MC) \ + $(wildcard include/config/X86_INTEL_USERCOPY) \ + arch/x86/include/asm/smap.h \ + arch/x86/include/asm/extable.h \ + $(wildcard include/config/BPF_JIT) \ + arch/x86/include/asm/uaccess_64.h \ + include/linux/cred.h \ + $(wildcard include/config/DEBUG_CREDENTIALS) \ + include/linux/key.h \ + $(wildcard include/config/KEY_NOTIFICATIONS) \ + $(wildcard include/config/NET) \ + include/linux/sysctl.h \ + include/uapi/linux/sysctl.h \ + include/linux/assoc_array.h \ + $(wildcard include/config/ASSOCIATIVE_ARRAY) \ + include/linux/sched/user.h \ + $(wildcard include/config/WATCH_QUEUE) \ + include/linux/percpu_counter.h \ + include/linux/ratelimit.h \ + include/linux/rcu_sync.h \ + include/linux/delayed_call.h \ + include/linux/uuid.h \ + include/uapi/linux/uuid.h \ + include/linux/errseq.h \ + include/linux/ioprio.h \ + include/linux/sched/rt.h \ + include/linux/iocontext.h \ + include/uapi/linux/ioprio.h \ + include/linux/fs_types.h \ + include/linux/mount.h \ + include/linux/mnt_idmapping.h \ + include/uapi/linux/fs.h \ + include/linux/quota.h \ + $(wildcard include/config/QUOTA_NETLINK_INTERFACE) \ + include/uapi/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/dqblk_qtree.h \ + include/linux/projid.h \ + include/uapi/linux/quota.h \ + include/linux/nfs_fs_i.h \ + include/linux/vmstat.h \ + $(wildcard include/config/VM_EVENT_COUNTERS) \ + $(wildcard include/config/DEBUG_TLBFLUSH) \ + $(wildcard include/config/DEBUG_VM_VMACACHE) \ + include/linux/vm_event_item.h \ + $(wildcard include/config/MEMORY_BALLOON) \ + $(wildcard include/config/BALLOON_COMPACTION) \ + arch/x86/include/asm/io.h \ + $(wildcard include/config/MTRR) \ + $(wildcard include/config/X86_PAT) \ + arch/x86/include/generated/asm/early_ioremap.h \ + include/asm-generic/early_ioremap.h \ + $(wildcard include/config/GENERIC_EARLY_IOREMAP) \ + include/asm-generic/iomap.h \ + $(wildcard include/config/HAS_IOPORT_MAP) \ + include/asm-generic/pci_iomap.h \ + $(wildcard include/config/PCI) \ + $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ + $(wildcard include/config/GENERIC_PCI_IOMAP) \ + include/asm-generic/io.h \ + $(wildcard include/config/GENERIC_IOMAP) \ + $(wildcard include/config/GENERIC_IOREMAP) \ + $(wildcard include/config/VIRT_TO_BUS) \ + include/linux/logic_pio.h \ + $(wildcard include/config/INDIRECT_PIO) \ + include/linux/fwnode.h \ + include/linux/vmalloc.h \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMALLOC) \ + arch/x86/include/asm/vmalloc.h \ + arch/x86/include/asm/pgtable_areas.h \ + include/linux/interrupt.h \ + $(wildcard include/config/IRQ_FORCED_THREADING) \ + $(wildcard include/config/GENERIC_IRQ_PROBE) \ + $(wildcard include/config/IRQ_TIMINGS) \ + include/linux/irqreturn.h \ + include/linux/irqnr.h \ + include/uapi/linux/irqnr.h \ + include/linux/hardirq.h \ + include/linux/context_tracking_state.h \ + $(wildcard include/config/CONTEXT_TRACKING) \ + include/linux/ftrace_irq.h \ + $(wildcard include/config/HWLAT_TRACER) \ + $(wildcard include/config/OSNOISE_TRACER) \ + include/linux/vtime.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING) \ + $(wildcard include/config/IRQ_TIME_ACCOUNTING) \ + arch/x86/include/asm/hardirq.h \ + $(wildcard include/config/KVM_INTEL) \ + $(wildcard include/config/HAVE_KVM) \ + $(wildcard include/config/X86_THERMAL_VECTOR) \ + $(wildcard include/config/X86_MCE_THRESHOLD) \ + $(wildcard include/config/X86_MCE_AMD) \ + $(wildcard include/config/X86_HV_CALLBACK_VECTOR) \ + $(wildcard include/config/HYPERV) \ + include/linux/kref.h \ + arch/x86/include/asm/irq.h \ + arch/x86/include/asm/irq_vectors.h \ + $(wildcard include/config/PCI_MSI) \ + arch/x86/include/asm/sections.h \ + include/asm-generic/sections.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.h \ + include/linux/module.h \ + $(wildcard include/config/MODULES_TREE_LOOKUP) \ + $(wildcard include/config/STACKTRACE_BUILD_ID) \ + $(wildcard include/config/MODULE_SIG) \ + $(wildcard include/config/KALLSYMS) \ + $(wildcard include/config/BPF_EVENTS) \ + $(wildcard include/config/DEBUG_INFO_BTF_MODULES) \ + $(wildcard include/config/EVENT_TRACING) \ + $(wildcard include/config/MODULE_UNLOAD) \ + $(wildcard include/config/CONSTRUCTORS) \ + $(wildcard include/config/FUNCTION_ERROR_INJECTION) \ + include/linux/buildid.h \ + $(wildcard include/config/CRASH_CORE) \ + include/linux/kmod.h \ + include/linux/umh.h \ + include/linux/elf.h \ + $(wildcard include/config/ARCH_USE_GNU_PROPERTY) \ + $(wildcard include/config/ARCH_HAVE_ELF_PROT) \ + arch/x86/include/asm/elf.h \ + $(wildcard include/config/X86_X32_ABI) \ + arch/x86/include/asm/user.h \ + arch/x86/include/asm/user_64.h \ + arch/x86/include/asm/fsgsbase.h \ + arch/x86/include/asm/vdso.h \ + $(wildcard include/config/X86_X32) \ + include/uapi/linux/elf.h \ + include/uapi/linux/elf-em.h \ + include/linux/kobject.h \ + $(wildcard include/config/UEVENT_HELPER) \ + $(wildcard include/config/DEBUG_KOBJECT_RELEASE) \ + include/linux/sysfs.h \ + include/linux/kernfs.h \ + $(wildcard include/config/KERNFS) \ + include/linux/idr.h \ + include/linux/kobject_ns.h \ + include/linux/moduleparam.h \ + $(wildcard include/config/ALPHA) \ + $(wildcard include/config/PPC64) \ + include/linux/rbtree_latch.h \ + include/linux/error-injection.h \ + include/asm-generic/error-injection.h \ + include/linux/cfi.h \ + $(wildcard include/config/CFI_CLANG_SHADOW) \ + arch/x86/include/asm/module.h \ + $(wildcard include/config/UNWINDER_ORC) \ + include/asm-generic/module.h \ + $(wildcard include/config/HAVE_MOD_ARCH_SPECIFIC) \ + $(wildcard include/config/MODULES_USE_ELF_REL) \ + $(wildcard include/config/MODULES_USE_ELF_RELA) \ + arch/x86/include/asm/orc_types.h \ + include/linux/cdev.h \ + include/linux/device.h \ + $(wildcard include/config/ENERGY_MODEL) \ + $(wildcard include/config/GENERIC_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/PINCTRL) \ + $(wildcard include/config/GENERIC_MSI_IRQ) \ + $(wildcard include/config/DMA_OPS) \ + $(wildcard include/config/DMA_DECLARE_COHERENT) \ + $(wildcard include/config/DMA_CMA) \ + $(wildcard include/config/SWIOTLB) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_DEVICE) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU_ALL) \ + $(wildcard include/config/DMA_OPS_BYPASS) \ + $(wildcard include/config/OF) \ + $(wildcard include/config/DEVTMPFS) \ + $(wildcard include/config/SYSFS_DEPRECATED) \ + include/linux/dev_printk.h \ + include/linux/energy_model.h \ + include/linux/sched/cpufreq.h \ + $(wildcard include/config/CPU_FREQ) \ + include/linux/sched/topology.h \ + $(wildcard include/config/SCHED_DEBUG) \ + $(wildcard include/config/SCHED_MC) \ + $(wildcard include/config/CPU_FREQ_GOV_SCHEDUTIL) \ + include/linux/sched/idle.h \ + include/linux/sched/sd_flags.h \ + include/linux/klist.h \ + include/linux/pm.h \ + $(wildcard include/config/VT_CONSOLE_SLEEP) \ + $(wildcard include/config/PM) \ + $(wildcard include/config/PM_CLK) \ + $(wildcard include/config/PM_GENERIC_DOMAINS) \ + include/linux/device/bus.h \ + $(wildcard include/config/ACPI) \ + include/linux/device/class.h \ + include/linux/device/driver.h \ + arch/x86/include/asm/device.h \ + include/linux/pm_wakeup.h \ + include/linux/dma-mapping.h \ + $(wildcard include/config/DMA_API_DEBUG) \ + $(wildcard include/config/HAS_DMA) \ + $(wildcard include/config/NEED_DMA_MAP_STATE) \ + include/linux/dma-direction.h \ + include/linux/delay.h \ + arch/x86/include/asm/delay.h \ + include/asm-generic/delay.h \ + include/linux/fb.h \ + $(wildcard include/config/GUMSTIX_AM200EPD) \ + $(wildcard include/config/FB_NOTIFY) \ + $(wildcard include/config/FB_DEFERRED_IO) \ + $(wildcard include/config/FB_TILEBLITTING) \ + $(wildcard include/config/FB_BACKLIGHT) \ + $(wildcard include/config/FB_FOREIGN_ENDIAN) \ + $(wildcard include/config/FB_BOTH_ENDIAN) \ + $(wildcard include/config/FB_BIG_ENDIAN) \ + $(wildcard include/config/FB_LITTLE_ENDIAN) \ + include/linux/kgdb.h \ + $(wildcard include/config/HAVE_ARCH_KGDB) \ + $(wildcard include/config/KGDB) \ + $(wildcard include/config/SERIAL_KGDB_NMI) \ + $(wildcard include/config/KGDB_HONOUR_BLOCKLIST) \ + include/linux/kprobes.h \ + $(wildcard include/config/KPROBES_SANITY_TEST) \ + $(wildcard include/config/OPTPROBES) \ + $(wildcard include/config/KPROBES_ON_FTRACE) \ + include/linux/ftrace.h \ + $(wildcard include/config/FUNCTION_TRACER) \ + $(wildcard include/config/DYNAMIC_FTRACE) \ + $(wildcard include/config/HAVE_DYNAMIC_FTRACE_WITH_ARGS) \ + $(wildcard include/config/DYNAMIC_FTRACE_WITH_REGS) \ + $(wildcard include/config/DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ + $(wildcard include/config/HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ + $(wildcard include/config/STACK_TRACER) \ + $(wildcard include/config/FUNCTION_PROFILER) \ + $(wildcard include/config/FTRACE_SYSCALLS) \ + include/linux/trace_recursion.h \ + $(wildcard include/config/FTRACE_RECORD_RECURSION) \ + include/linux/trace_clock.h \ + arch/x86/include/asm/trace_clock.h \ + include/linux/kallsyms.h \ + $(wildcard include/config/KALLSYMS_ALL) \ + include/linux/ptrace.h \ + include/linux/pid_namespace.h \ + $(wildcard include/config/PID_NS) \ + include/linux/nsproxy.h \ + include/linux/ns_common.h \ + include/uapi/linux/ptrace.h \ + arch/x86/include/asm/ftrace.h \ + include/linux/compat.h \ + $(wildcard include/config/ARCH_HAS_SYSCALL_WRAPPER) \ + $(wildcard include/config/COMPAT_OLD_SIGACTION) \ + $(wildcard include/config/ODD_RT_SIGACTION) \ + include/linux/socket.h \ + arch/x86/include/generated/uapi/asm/socket.h \ + include/uapi/asm-generic/socket.h \ + arch/x86/include/generated/uapi/asm/sockios.h \ + include/uapi/asm-generic/sockios.h \ + include/uapi/linux/sockios.h \ + include/linux/uio.h \ + include/uapi/linux/uio.h \ + include/uapi/linux/socket.h \ + include/uapi/linux/if.h \ + include/uapi/linux/libc-compat.h \ + include/uapi/linux/hdlc/ioctl.h \ + include/uapi/linux/aio_abi.h \ + arch/x86/include/asm/compat.h \ + include/linux/sched/task_stack.h \ + $(wildcard include/config/DEBUG_STACK_USAGE) \ + include/uapi/linux/magic.h \ + arch/x86/include/asm/user32.h \ + include/asm-generic/compat.h \ + $(wildcard include/config/COMPAT_FOR_U64_ALIGNMENT) \ + arch/x86/include/asm/syscall_wrapper.h \ + include/linux/freelist.h \ + arch/x86/include/asm/kprobes.h \ + include/asm-generic/kprobes.h \ + arch/x86/include/asm/text-patching.h \ + $(wildcard include/config/UML_X86) \ + arch/x86/include/asm/insn.h \ + arch/x86/include/asm/inat.h \ + arch/x86/include/asm/inat_types.h \ + arch/x86/include/asm/kgdb.h \ + include/uapi/linux/fb.h \ + include/linux/i2c.h \ + $(wildcard include/config/I2C) \ + $(wildcard include/config/I2C_SLAVE) \ + $(wildcard include/config/I2C_BOARDINFO) \ + $(wildcard include/config/I2C_MUX) \ + include/linux/acpi.h \ + $(wildcard include/config/ACPI_DEBUGGER) \ + $(wildcard include/config/LOONGARCH) \ + $(wildcard include/config/ACPI_PROCESSOR_CSTATE) \ + $(wildcard include/config/ACPI_HOTPLUG_CPU) \ + $(wildcard include/config/ACPI_HOTPLUG_IOAPIC) \ + $(wildcard include/config/ACPI_WMI) \ + $(wildcard include/config/ACPI_NUMA) \ + $(wildcard include/config/HIBERNATION) \ + $(wildcard include/config/ACPI_HOTPLUG_MEMORY) \ + $(wildcard include/config/ACPI_CONTAINER) \ + $(wildcard include/config/ACPI_GTDT) \ + $(wildcard include/config/GPIOLIB) \ + $(wildcard include/config/ACPI_TABLE_UPGRADE) \ + $(wildcard include/config/ACPI_WATCHDOG) \ + $(wildcard include/config/ACPI_SPCR_TABLE) \ + $(wildcard include/config/ACPI_GENERIC_GSI) \ + $(wildcard include/config/ACPI_LPIT) \ + $(wildcard include/config/ACPI_PPTT) \ + include/linux/irqdomain.h \ + $(wildcard include/config/IRQ_DOMAIN_HIERARCHY) \ + $(wildcard include/config/GENERIC_IRQ_DEBUGFS) \ + $(wildcard include/config/IRQ_DOMAIN) \ + $(wildcard include/config/IRQ_DOMAIN_NOMAP) \ + include/linux/irqhandler.h \ + include/linux/of.h \ + $(wildcard include/config/OF_DYNAMIC) \ + $(wildcard include/config/SPARC) \ + $(wildcard include/config/OF_PROMTREE) \ + $(wildcard include/config/OF_KOBJ) \ + $(wildcard include/config/OF_NUMA) \ + $(wildcard include/config/OF_OVERLAY) \ + include/linux/mod_devicetable.h \ + include/linux/property.h \ + include/linux/resource_ext.h \ + include/linux/slab.h \ + $(wildcard include/config/DEBUG_SLAB) \ + $(wildcard include/config/FAILSLAB) \ + $(wildcard include/config/HAVE_HARDENED_USERCOPY_ALLOCATOR) \ + $(wildcard include/config/SLAB) \ + $(wildcard include/config/SLUB) \ + $(wildcard include/config/SLOB) \ + $(wildcard include/config/CC_IS_GCC) \ + $(wildcard include/config/CLANG_VERSION) \ + include/acpi/acpi.h \ + include/acpi/platform/acenv.h \ + include/acpi/platform/acgcc.h \ + include/acpi/platform/aclinux.h \ + $(wildcard include/config/ACPI_REDUCED_HARDWARE_ONLY) \ + $(wildcard include/config/ACPI_DEBUG) \ + include/linux/ctype.h \ + arch/x86/include/asm/acenv.h \ + include/acpi/acnames.h \ + include/acpi/actypes.h \ + include/acpi/acexcep.h \ + include/acpi/actbl.h \ + include/acpi/actbl1.h \ + include/acpi/actbl2.h \ + include/acpi/actbl3.h \ + include/acpi/acrestyp.h \ + include/acpi/platform/acenvex.h \ + include/acpi/platform/aclinuxex.h \ + include/acpi/platform/acgccex.h \ + include/acpi/acoutput.h \ + include/acpi/acpiosxf.h \ + include/acpi/acpixf.h \ + include/acpi/acconfig.h \ + include/acpi/acbuffer.h \ + include/acpi/acpi_bus.h \ + $(wildcard include/config/ACPI_SYSTEM_POWER_STATES_SUPPORT) \ + $(wildcard include/config/ACPI_SLEEP) \ + include/acpi/acpi_drivers.h \ + $(wildcard include/config/ACPI_DOCK) \ + include/acpi/acpi_numa.h \ + $(wildcard include/config/ACPI_HMAT) \ + include/acpi/acpi_io.h \ + include/linux/io.h \ + arch/x86/include/asm/acpi.h \ + $(wildcard include/config/ACPI_APEI) \ + include/acpi/pdc_intel.h \ + arch/x86/include/asm/numa.h \ + $(wildcard include/config/NUMA_EMU) \ + include/linux/regulator/consumer.h \ + $(wildcard include/config/REGULATOR) \ + include/linux/suspend.h \ + $(wildcard include/config/VT) \ + $(wildcard include/config/SUSPEND) \ + $(wildcard include/config/HIBERNATION_SNAPSHOT_DEV) \ + $(wildcard include/config/PM_SLEEP_DEBUG) \ + $(wildcard include/config/PM_AUTOSLEEP) \ + include/linux/swap.h \ + $(wildcard include/config/FRONTSWAP) \ + $(wildcard include/config/MEMCG_SWAP) \ + include/linux/memcontrol.h \ + include/linux/cgroup.h \ + $(wildcard include/config/CGROUP_CPUACCT) \ + $(wildcard include/config/SOCK_CGROUP_DATA) \ + $(wildcard include/config/CGROUP_DATA) \ + $(wildcard include/config/CGROUP_BPF) \ + include/uapi/linux/cgroupstats.h \ + include/uapi/linux/taskstats.h \ + include/linux/seq_file.h \ + include/linux/user_namespace.h \ + $(wildcard include/config/INOTIFY_USER) \ + $(wildcard include/config/FANOTIFY) \ + $(wildcard include/config/PERSISTENT_KEYRINGS) \ + include/linux/kernel_stat.h \ + include/linux/cgroup-defs.h \ + $(wildcard include/config/CGROUP_NET_CLASSID) \ + $(wildcard include/config/CGROUP_NET_PRIO) \ + include/linux/u64_stats_sync.h \ + arch/x86/include/generated/asm/local64.h \ + include/asm-generic/local64.h \ + arch/x86/include/asm/local.h \ + include/linux/bpf-cgroup.h \ + include/linux/bpf.h \ + $(wildcard include/config/BPF_JIT_ALWAYS_ON) \ + $(wildcard include/config/INET) \ + include/uapi/linux/bpf.h \ + $(wildcard include/config/BPF_LIRC_MODE2) \ + $(wildcard include/config/EFFICIENT_UNALIGNED_ACCESS) \ + $(wildcard include/config/IP_ROUTE_CLASSID) \ + $(wildcard include/config/BPF_KPROBE_OVERRIDE) \ + $(wildcard include/config/XFRM) \ + include/uapi/linux/bpf_common.h \ + include/linux/file.h \ + include/linux/sched/mm.h \ + $(wildcard include/config/ARCH_HAS_MEMBARRIER_CALLBACKS) \ + include/linux/sync_core.h \ + $(wildcard include/config/ARCH_HAS_SYNC_CORE_BEFORE_USERMODE) \ + arch/x86/include/asm/sync_core.h \ + include/linux/bpfptr.h \ + include/linux/sockptr.h \ + include/linux/bpf_types.h \ + $(wildcard include/config/BPF_LSM) \ + $(wildcard include/config/XDP_SOCKETS) \ + include/linux/psi_types.h \ + include/linux/kthread.h \ + include/linux/cgroup_subsys.h \ + $(wildcard include/config/CGROUP_DEVICE) \ + $(wildcard include/config/CGROUP_FREEZER) \ + $(wildcard include/config/CGROUP_PERF) \ + $(wildcard include/config/CGROUP_HUGETLB) \ + $(wildcard include/config/CGROUP_PIDS) \ + $(wildcard include/config/CGROUP_RDMA) \ + $(wildcard include/config/CGROUP_MISC) \ + $(wildcard include/config/CGROUP_DEBUG) \ + include/linux/page_counter.h \ + include/linux/vmpressure.h \ + include/linux/eventfd.h \ + include/linux/writeback.h \ + include/linux/flex_proportions.h \ + include/linux/backing-dev-defs.h \ + $(wildcard include/config/DEBUG_FS) \ + include/linux/blk_types.h \ + $(wildcard include/config/FAIL_MAKE_REQUEST) \ + $(wildcard include/config/BLK_CGROUP_IOCOST) \ + $(wildcard include/config/BLK_INLINE_ENCRYPTION) \ + $(wildcard include/config/BLK_DEV_INTEGRITY) \ + include/linux/bvec.h \ + include/linux/highmem.h \ + arch/x86/include/asm/cacheflush.h \ + include/asm-generic/cacheflush.h \ + include/linux/highmem-internal.h \ + include/linux/blk-cgroup.h \ + $(wildcard include/config/BLK_CGROUP_FC_APPID) \ + include/linux/blkdev.h \ + $(wildcard include/config/BLK_RQ_ALLOC_TIME) \ + $(wildcard include/config/BLK_WBT) \ + $(wildcard include/config/BLK_DEV_ZONED) \ + $(wildcard include/config/BLK_DEV_THROTTLING) \ + $(wildcard include/config/BLK_DEBUG_FS) \ + include/linux/sched/clock.h \ + $(wildcard include/config/HAVE_UNSTABLE_SCHED_CLOCK) \ + include/uapi/linux/major.h \ + include/linux/genhd.h \ + $(wildcard include/config/BLOCK_HOLDER_DEPRECATED) \ + $(wildcard include/config/CDROM) \ + include/linux/mempool.h \ + include/linux/bio.h \ + include/uapi/linux/blkzoned.h \ + include/linux/sbitmap.h \ + include/linux/elevator.h \ + include/linux/hashtable.h \ + include/linux/blk-mq.h \ + $(wildcard include/config/FAIL_IO_TIMEOUT) \ + include/linux/node.h \ + $(wildcard include/config/HMEM_REPORTING) \ + $(wildcard include/config/MEMORY_HOTPLUG_SPARSE) \ + include/linux/pagemap.h \ + include/linux/hugetlb_inline.h \ + include/uapi/linux/mempolicy.h \ + include/linux/freezer.h \ + include/uapi/linux/i2c.h \ + include/linux/backlight.h \ + $(wildcard include/config/BACKLIGHT_CLASS_DEVICE) \ + include/linux/poll.h \ + include/uapi/linux/poll.h \ + arch/x86/include/generated/uapi/asm/poll.h \ + include/uapi/asm-generic/poll.h \ + include/uapi/linux/eventpoll.h \ + include/linux/pci.h \ + $(wildcard include/config/PCI_IOV) \ + $(wildcard include/config/PCIEAER) \ + $(wildcard include/config/PCIEPORTBUS) \ + $(wildcard include/config/PCIEASPM) \ + $(wildcard include/config/HOTPLUG_PCI_PCIE) \ + $(wildcard include/config/PCIE_PTM) \ + $(wildcard include/config/PCIE_DPC) \ + $(wildcard include/config/PCI_ATS) \ + $(wildcard include/config/PCI_PRI) \ + $(wildcard include/config/PCI_PASID) \ + $(wildcard include/config/PCI_DOMAINS_GENERIC) \ + $(wildcard include/config/PCI_DOMAINS) \ + $(wildcard include/config/PCI_QUIRKS) \ + $(wildcard include/config/ACPI_MCFG) \ + $(wildcard include/config/HOTPLUG_PCI) \ + $(wildcard include/config/EEH) \ + include/uapi/linux/pci.h \ + include/uapi/linux/pci_regs.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + arch/x86/include/asm/pci.h \ + $(wildcard include/config/PCI_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/VMD) \ + arch/x86/include/asm/memtype.h \ + include/asm-generic/pci.h \ + include/linux/pci-dma-compat.h \ + include/linux/aio.h \ + include/linux/splice.h \ + include/linux/pipe_fs_i.h \ + include/generated/uapi/linux/version.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.h \ + $(wildcard include/config/BLOCK_ID) \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.h \ + include/linux/cpuset.h \ + include/linux/mmu_context.h \ + arch/x86/include/asm/mmu_context.h \ + arch/x86/include/asm/desc.h \ + arch/x86/include/asm/cpu_entry_area.h \ + arch/x86/include/asm/intel_ds.h \ + include/linux/pkeys.h \ + arch/x86/include/asm/pkeys.h \ + include/trace/events/tlb.h \ + include/linux/tracepoint.h \ + $(wildcard include/config/HAVE_SYSCALL_TRACEPOINTS) \ + $(wildcard include/config/TRACEPOINT) \ + include/linux/static_call.h \ + include/linux/cpu.h \ + $(wildcard include/config/PM_SLEEP_SMP) \ + $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ + $(wildcard include/config/HOTPLUG_SMT) \ + include/linux/cpuhotplug.h \ + arch/x86/include/asm/static_call.h \ + include/trace/define_trace.h \ + arch/x86/include/asm/tlbflush.h \ + arch/x86/include/asm/invpcid.h \ + arch/x86/include/asm/pti.h \ + arch/x86/include/asm/debugreg.h \ + arch/x86/include/uapi/asm/debugreg.h \ + include/asm-generic/mmu_context.h \ + +/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_bypass.o: $(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_bypass.o) + +$(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_bypass.o): diff --git a/host_software/driver/XDMA/linux-kernel/xdma/.cdev_ctrl.o.cmd b/host_software/driver/XDMA/linux-kernel/xdma/.cdev_ctrl.o.cmd new file mode 100644 index 0000000..80a561e --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/.cdev_ctrl.o.cmd @@ -0,0 +1,1428 @@ +cmd_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.o := gcc -Wp,-MMD,/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/.cdev_ctrl.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/9/include -I./arch/x86/include -I./arch/x86/include/generated -I./include -I./arch/x86/include/uapi -I./arch/x86/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -I./ubuntu/include -include ./include/linux/compiler_types.h -D__KERNEL__ -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu89 -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fcf-protection=none -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -DCONFIG_X86_X32_ABI -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mfunction-return=thunk-extern -fno-jump-tables -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fstack-protector-strong -Wimplicit-fallthrough=5 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-stack-clash-protection -g -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wno-stringop-truncation -Wno-array-bounds -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -I/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/include -fsanitize=bounds -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"cdev_ctrl"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.c + +source_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.o := /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.c + +deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.o := \ + include/linux/compiler-version.h \ + $(wildcard include/config/CC_VERSION_TEXT) \ + include/linux/kconfig.h \ + $(wildcard include/config/CPU_BIG_ENDIAN) \ + $(wildcard include/config/BOOGER) \ + $(wildcard include/config/FOO) \ + include/linux/compiler_types.h \ + $(wildcard include/config/HAVE_ARCH_COMPILER_H) \ + $(wildcard include/config/CC_HAS_ASM_INLINE) \ + include/linux/compiler_attributes.h \ + include/linux/compiler-gcc.h \ + $(wildcard include/config/RETPOLINE) \ + $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ + $(wildcard include/config/KCOV) \ + include/uapi/linux/ioctl.h \ + arch/x86/include/generated/uapi/asm/ioctl.h \ + include/asm-generic/ioctl.h \ + include/uapi/asm-generic/ioctl.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/version.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.h \ + include/linux/kernel.h \ + $(wildcard include/config/PREEMPT_VOLUNTARY) \ + $(wildcard include/config/PREEMPT_DYNAMIC) \ + $(wildcard include/config/PREEMPT_) \ + $(wildcard include/config/DEBUG_ATOMIC_SLEEP) \ + $(wildcard include/config/SMP) \ + $(wildcard include/config/MMU) \ + $(wildcard include/config/PROVE_LOCKING) \ + $(wildcard include/config/TRACING) \ + $(wildcard include/config/FTRACE_MCOUNT_RECORD) \ + include/linux/stdarg.h \ + include/linux/align.h \ + include/linux/const.h \ + include/vdso/const.h \ + include/uapi/linux/const.h \ + include/linux/limits.h \ + include/uapi/linux/limits.h \ + include/linux/types.h \ + $(wildcard include/config/HAVE_UID16) \ + $(wildcard include/config/UID16) \ + $(wildcard include/config/ARCH_DMA_ADDR_T_64BIT) \ + $(wildcard include/config/PHYS_ADDR_T_64BIT) \ + $(wildcard include/config/64BIT) \ + $(wildcard include/config/ARCH_32BIT_USTAT_F_TINODE) \ + include/uapi/linux/types.h \ + arch/x86/include/generated/uapi/asm/types.h \ + include/uapi/asm-generic/types.h \ + include/asm-generic/int-ll64.h \ + include/uapi/asm-generic/int-ll64.h \ + arch/x86/include/uapi/asm/bitsperlong.h \ + include/asm-generic/bitsperlong.h \ + include/uapi/asm-generic/bitsperlong.h \ + include/uapi/linux/posix_types.h \ + include/linux/stddef.h \ + include/uapi/linux/stddef.h \ + include/linux/compiler_types.h \ + arch/x86/include/asm/posix_types.h \ + $(wildcard include/config/X86_32) \ + arch/x86/include/uapi/asm/posix_types_64.h \ + include/uapi/asm-generic/posix_types.h \ + include/vdso/limits.h \ + include/linux/linkage.h \ + $(wildcard include/config/ARCH_USE_SYM_ANNOTATIONS) \ + include/linux/stringify.h \ + include/linux/export.h \ + $(wildcard include/config/MODVERSIONS) \ + $(wildcard include/config/MODULE_REL_CRCS) \ + $(wildcard include/config/HAVE_ARCH_PREL32_RELOCATIONS) \ + $(wildcard include/config/MODULES) \ + $(wildcard include/config/TRIM_UNUSED_KSYMS) \ + include/linux/compiler.h \ + $(wildcard include/config/TRACE_BRANCH_PROFILING) \ + $(wildcard include/config/PROFILE_ALL_BRANCHES) \ + $(wildcard include/config/STACK_VALIDATION) \ + $(wildcard include/config/CFI_CLANG) \ + arch/x86/include/generated/asm/rwonce.h \ + include/asm-generic/rwonce.h \ + include/linux/kasan-checks.h \ + $(wildcard include/config/KASAN_GENERIC) \ + $(wildcard include/config/KASAN_SW_TAGS) \ + include/linux/kcsan-checks.h \ + $(wildcard include/config/KCSAN) \ + $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ + arch/x86/include/asm/linkage.h \ + $(wildcard include/config/X86_64) \ + $(wildcard include/config/X86_ALIGNMENT_16) \ + $(wildcard include/config/RETHUNK) \ + $(wildcard include/config/SLS) \ + include/linux/bitops.h \ + include/linux/bits.h \ + include/vdso/bits.h \ + include/linux/build_bug.h \ + include/linux/typecheck.h \ + include/uapi/linux/kernel.h \ + include/uapi/linux/sysinfo.h \ + arch/x86/include/asm/bitops.h \ + $(wildcard include/config/X86_CMOV) \ + arch/x86/include/asm/alternative.h \ + arch/x86/include/asm/asm.h \ + $(wildcard include/config/KPROBES) \ + arch/x86/include/asm/extable_fixup_types.h \ + arch/x86/include/asm/rmwcc.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO) \ + arch/x86/include/asm/barrier.h \ + arch/x86/include/asm/nops.h \ + include/asm-generic/barrier.h \ + include/asm-generic/bitops/find.h \ + $(wildcard include/config/GENERIC_FIND_FIRST_BIT) \ + include/asm-generic/bitops/sched.h \ + arch/x86/include/asm/arch_hweight.h \ + arch/x86/include/asm/cpufeatures.h \ + arch/x86/include/asm/required-features.h \ + $(wildcard include/config/X86_MINIMUM_CPU_FAMILY) \ + $(wildcard include/config/MATH_EMULATION) \ + $(wildcard include/config/X86_PAE) \ + $(wildcard include/config/X86_CMPXCHG64) \ + $(wildcard include/config/X86_USE_3DNOW) \ + $(wildcard include/config/X86_P6_NOP) \ + $(wildcard include/config/MATOM) \ + $(wildcard include/config/PARAVIRT_XXL) \ + arch/x86/include/asm/disabled-features.h \ + $(wildcard include/config/X86_SMAP) \ + $(wildcard include/config/X86_UMIP) \ + $(wildcard include/config/X86_INTEL_MEMORY_PROTECTION_KEYS) \ + $(wildcard include/config/X86_5LEVEL) \ + $(wildcard include/config/PAGE_TABLE_ISOLATION) \ + $(wildcard include/config/CPU_UNRET_ENTRY) \ + $(wildcard include/config/X86_SGX) \ + include/asm-generic/bitops/const_hweight.h \ + include/asm-generic/bitops/instrumented-atomic.h \ + include/linux/instrumented.h \ + include/asm-generic/bitops/instrumented-non-atomic.h \ + $(wildcard include/config/KCSAN_ASSUME_PLAIN_WRITES_ATOMIC) \ + include/asm-generic/bitops/instrumented-lock.h \ + include/asm-generic/bitops/le.h \ + arch/x86/include/uapi/asm/byteorder.h \ + include/linux/byteorder/little_endian.h \ + include/uapi/linux/byteorder/little_endian.h \ + include/linux/swab.h \ + include/uapi/linux/swab.h \ + arch/x86/include/uapi/asm/swab.h \ + include/linux/byteorder/generic.h \ + include/asm-generic/bitops/ext2-atomic-setbit.h \ + include/linux/kstrtox.h \ + include/linux/log2.h \ + $(wildcard include/config/ARCH_HAS_ILOG2_U32) \ + $(wildcard include/config/ARCH_HAS_ILOG2_U64) \ + include/linux/math.h \ + arch/x86/include/asm/div64.h \ + include/asm-generic/div64.h \ + include/linux/minmax.h \ + include/linux/panic.h \ + $(wildcard include/config/PANIC_TIMEOUT) \ + include/linux/printk.h \ + $(wildcard include/config/MESSAGE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_QUIET) \ + $(wildcard include/config/EARLY_PRINTK) \ + $(wildcard include/config/PRINTK) \ + $(wildcard include/config/PRINTK_INDEX) \ + $(wildcard include/config/DYNAMIC_DEBUG) \ + $(wildcard include/config/DYNAMIC_DEBUG_CORE) \ + include/linux/init.h \ + $(wildcard include/config/STRICT_KERNEL_RWX) \ + $(wildcard include/config/STRICT_MODULE_RWX) \ + $(wildcard include/config/LTO_CLANG) \ + include/linux/kern_levels.h \ + include/linux/cache.h \ + $(wildcard include/config/ARCH_HAS_CACHE_LINE_SIZE) \ + arch/x86/include/asm/cache.h \ + $(wildcard include/config/X86_L1_CACHE_SHIFT) \ + $(wildcard include/config/X86_INTERNODE_CACHE_SHIFT) \ + $(wildcard include/config/X86_VSMP) \ + include/linux/ratelimit_types.h \ + include/uapi/linux/param.h \ + arch/x86/include/generated/uapi/asm/param.h \ + include/asm-generic/param.h \ + $(wildcard include/config/HZ) \ + include/uapi/asm-generic/param.h \ + include/linux/spinlock_types.h \ + $(wildcard include/config/PREEMPT_RT) \ + $(wildcard include/config/DEBUG_LOCK_ALLOC) \ + include/linux/spinlock_types_raw.h \ + $(wildcard include/config/DEBUG_SPINLOCK) \ + arch/x86/include/asm/spinlock_types.h \ + include/asm-generic/qspinlock_types.h \ + $(wildcard include/config/NR_CPUS) \ + include/asm-generic/qrwlock_types.h \ + include/linux/lockdep_types.h \ + $(wildcard include/config/PROVE_RAW_LOCK_NESTING) \ + $(wildcard include/config/PREEMPT_LOCK) \ + $(wildcard include/config/LOCKDEP) \ + $(wildcard include/config/LOCK_STAT) \ + include/linux/rwlock_types.h \ + include/linux/once_lite.h \ + include/linux/dynamic_debug.h \ + $(wildcard include/config/JUMP_LABEL) \ + include/linux/jump_label.h \ + $(wildcard include/config/HAVE_ARCH_JUMP_LABEL_RELATIVE) \ + arch/x86/include/asm/jump_label.h \ + include/linux/static_call_types.h \ + $(wildcard include/config/HAVE_STATIC_CALL) \ + $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ + include/linux/uaccess.h \ + $(wildcard include/config/SET_FS) \ + $(wildcard include/config/PREEMPT_COUNT) \ + $(wildcard include/config/HARDENED_USERCOPY) \ + include/linux/fault-inject-usercopy.h \ + $(wildcard include/config/FAULT_INJECTION_USERCOPY) \ + include/linux/sched.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_NATIVE) \ + $(wildcard include/config/SCHED_INFO) \ + $(wildcard include/config/SCHEDSTATS) \ + $(wildcard include/config/FAIR_GROUP_SCHED) \ + $(wildcard include/config/RT_GROUP_SCHED) \ + $(wildcard include/config/RT_MUTEXES) \ + $(wildcard include/config/UCLAMP_TASK) \ + $(wildcard include/config/UCLAMP_BUCKETS_COUNT) \ + $(wildcard include/config/KMAP_LOCAL) \ + $(wildcard include/config/THREAD_INFO_IN_TASK) \ + $(wildcard include/config/SCHED_CORE) \ + $(wildcard include/config/CGROUP_SCHED) \ + $(wildcard include/config/PREEMPT_NOTIFIERS) \ + $(wildcard include/config/BLK_DEV_IO_TRACE) \ + $(wildcard include/config/PREEMPT_RCU) \ + $(wildcard include/config/TASKS_RCU) \ + $(wildcard include/config/TASKS_TRACE_RCU) \ + $(wildcard include/config/PSI) \ + $(wildcard include/config/MEMCG) \ + $(wildcard include/config/COMPAT_BRK) \ + $(wildcard include/config/CGROUPS) \ + $(wildcard include/config/BLK_CGROUP) \ + $(wildcard include/config/PAGE_OWNER) \ + $(wildcard include/config/EVENTFD) \ + $(wildcard include/config/STACKPROTECTOR) \ + $(wildcard include/config/ARCH_HAS_SCALED_CPUTIME) \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_GEN) \ + $(wildcard include/config/NO_HZ_FULL) \ + $(wildcard include/config/POSIX_CPUTIMERS) \ + $(wildcard include/config/POSIX_CPU_TIMERS_TASK_WORK) \ + $(wildcard include/config/KEYS) \ + $(wildcard include/config/SYSVIPC) \ + $(wildcard include/config/DETECT_HUNG_TASK) \ + $(wildcard include/config/IO_URING) \ + $(wildcard include/config/AUDIT) \ + $(wildcard include/config/AUDITSYSCALL) \ + $(wildcard include/config/DEBUG_MUTEXES) \ + $(wildcard include/config/TRACE_IRQFLAGS) \ + $(wildcard include/config/UBSAN) \ + $(wildcard include/config/UBSAN_TRAP) \ + $(wildcard include/config/BLOCK) \ + $(wildcard include/config/COMPACTION) \ + $(wildcard include/config/TASK_XACCT) \ + $(wildcard include/config/CPUSETS) \ + $(wildcard include/config/X86_CPU_RESCTRL) \ + $(wildcard include/config/FUTEX) \ + $(wildcard include/config/COMPAT) \ + $(wildcard include/config/PERF_EVENTS) \ + $(wildcard include/config/DEBUG_PREEMPT) \ + $(wildcard include/config/NUMA) \ + $(wildcard include/config/NUMA_BALANCING) \ + $(wildcard include/config/RSEQ) \ + $(wildcard include/config/TASK_DELAY_ACCT) \ + $(wildcard include/config/FAULT_INJECTION) \ + $(wildcard include/config/LATENCYTOP) \ + $(wildcard include/config/KUNIT) \ + $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ + $(wildcard include/config/UPROBES) \ + $(wildcard include/config/BCACHE) \ + $(wildcard include/config/VMAP_STACK) \ + $(wildcard include/config/LIVEPATCH) \ + $(wildcard include/config/SECURITY) \ + $(wildcard include/config/BPF_SYSCALL) \ + $(wildcard include/config/GCC_PLUGIN_STACKLEAK) \ + $(wildcard include/config/X86_MCE) \ + $(wildcard include/config/KRETPROBES) \ + $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ + $(wildcard include/config/ARCH_TASK_STRUCT_ON_STACK) \ + $(wildcard include/config/PREEMPTION) \ + $(wildcard include/config/DEBUG_RSEQ) \ + include/uapi/linux/sched.h \ + arch/x86/include/asm/current.h \ + arch/x86/include/asm/percpu.h \ + $(wildcard include/config/X86_64_SMP) \ + include/asm-generic/percpu.h \ + $(wildcard include/config/HAVE_SETUP_PER_CPU_AREA) \ + include/linux/threads.h \ + $(wildcard include/config/BASE_SMALL) \ + include/linux/percpu-defs.h \ + $(wildcard include/config/DEBUG_FORCE_WEAK_PER_CPU) \ + $(wildcard include/config/AMD_MEM_ENCRYPT) \ + include/linux/pid.h \ + include/linux/rculist.h \ + $(wildcard include/config/PROVE_RCU_LIST) \ + include/linux/list.h \ + $(wildcard include/config/DEBUG_LIST) \ + include/linux/poison.h \ + $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ + include/linux/rcupdate.h \ + $(wildcard include/config/TINY_RCU) \ + $(wildcard include/config/TASKS_RCU_GENERIC) \ + $(wildcard include/config/RCU_STALL_COMMON) \ + $(wildcard include/config/RCU_NOCB_CPU) \ + $(wildcard include/config/TASKS_RUDE_RCU) \ + $(wildcard include/config/TREE_RCU) \ + $(wildcard include/config/DEBUG_OBJECTS_RCU_HEAD) \ + $(wildcard include/config/HOTPLUG_CPU) \ + $(wildcard include/config/PROVE_RCU) \ + $(wildcard include/config/ARCH_WEAK_RELEASE_ACQUIRE) \ + include/linux/atomic.h \ + arch/x86/include/asm/atomic.h \ + arch/x86/include/asm/cmpxchg.h \ + arch/x86/include/asm/cmpxchg_64.h \ + arch/x86/include/asm/atomic64_64.h \ + include/linux/atomic/atomic-arch-fallback.h \ + $(wildcard include/config/GENERIC_ATOMIC64) \ + include/linux/atomic/atomic-long.h \ + include/linux/atomic/atomic-instrumented.h \ + include/linux/irqflags.h \ + $(wildcard include/config/IRQSOFF_TRACER) \ + $(wildcard include/config/PREEMPT_TRACER) \ + $(wildcard include/config/DEBUG_IRQFLAGS) \ + $(wildcard include/config/TRACE_IRQFLAGS_SUPPORT) \ + arch/x86/include/asm/irqflags.h \ + $(wildcard include/config/DEBUG_ENTRY) \ + $(wildcard include/config/XEN_PV) \ + arch/x86/include/asm/processor-flags.h \ + $(wildcard include/config/VM86) \ + arch/x86/include/uapi/asm/processor-flags.h \ + include/linux/mem_encrypt.h \ + $(wildcard include/config/ARCH_HAS_MEM_ENCRYPT) \ + arch/x86/include/asm/mem_encrypt.h \ + include/linux/cc_platform.h \ + $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ + arch/x86/include/uapi/asm/bootparam.h \ + include/linux/screen_info.h \ + include/uapi/linux/screen_info.h \ + include/linux/apm_bios.h \ + include/uapi/linux/apm_bios.h \ + include/linux/edd.h \ + include/uapi/linux/edd.h \ + arch/x86/include/asm/ist.h \ + arch/x86/include/uapi/asm/ist.h \ + include/video/edid.h \ + $(wildcard include/config/X86) \ + include/uapi/video/edid.h \ + arch/x86/include/asm/nospec-branch.h \ + $(wildcard include/config/CPU_IBPB_ENTRY) \ + include/linux/static_key.h \ + include/linux/objtool.h \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/unwind_hints.h \ + arch/x86/include/asm/orc_types.h \ + arch/x86/include/asm/GEN-for-each-reg.h \ + arch/x86/include/asm/segment.h \ + arch/x86/include/asm/paravirt.h \ + $(wildcard include/config/PARAVIRT) \ + $(wildcard include/config/PARAVIRT_SPINLOCKS) \ + $(wildcard include/config/X86_IOPL_IOPERM) \ + $(wildcard include/config/PGTABLE_LEVELS) \ + arch/x86/include/asm/pgtable_types.h \ + $(wildcard include/config/MEM_SOFT_DIRTY) \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_WP) \ + $(wildcard include/config/PROC_FS) \ + arch/x86/include/asm/page_types.h \ + $(wildcard include/config/PHYSICAL_START) \ + $(wildcard include/config/PHYSICAL_ALIGN) \ + $(wildcard include/config/DYNAMIC_PHYSICAL_MASK) \ + arch/x86/include/asm/page_64_types.h \ + $(wildcard include/config/KASAN) \ + $(wildcard include/config/DYNAMIC_MEMORY_LAYOUT) \ + $(wildcard include/config/RANDOMIZE_BASE) \ + arch/x86/include/asm/kaslr.h \ + $(wildcard include/config/RANDOMIZE_MEMORY) \ + arch/x86/include/asm/pgtable_64_types.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL_FORCE_MAP) \ + arch/x86/include/asm/sparsemem.h \ + $(wildcard include/config/SPARSEMEM) \ + $(wildcard include/config/NUMA_KEEP_MEMINFO) \ + arch/x86/include/asm/paravirt_types.h \ + $(wildcard include/config/PARAVIRT_DEBUG) \ + arch/x86/include/asm/desc_defs.h \ + include/linux/bug.h \ + $(wildcard include/config/GENERIC_BUG) \ + $(wildcard include/config/BUG_ON_DATA_CORRUPTION) \ + arch/x86/include/asm/bug.h \ + $(wildcard include/config/DEBUG_BUGVERBOSE) \ + include/linux/instrumentation.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/BUG) \ + $(wildcard include/config/GENERIC_BUG_RELATIVE_POINTERS) \ + include/linux/cpumask.h \ + $(wildcard include/config/CPUMASK_OFFSTACK) \ + $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ + include/linux/bitmap.h \ + include/linux/string.h \ + $(wildcard include/config/BINARY_PRINTF) \ + $(wildcard include/config/FORTIFY_SOURCE) \ + include/linux/errno.h \ + include/uapi/linux/errno.h \ + arch/x86/include/generated/uapi/asm/errno.h \ + include/uapi/asm-generic/errno.h \ + include/uapi/asm-generic/errno-base.h \ + include/uapi/linux/string.h \ + arch/x86/include/asm/string.h \ + arch/x86/include/asm/string_64.h \ + $(wildcard include/config/ARCH_HAS_UACCESS_FLUSHCACHE) \ + include/linux/fortify-string.h \ + arch/x86/include/asm/frame.h \ + $(wildcard include/config/FRAME_POINTER) \ + include/linux/preempt.h \ + $(wildcard include/config/TRACE_PREEMPT_TOGGLE) \ + arch/x86/include/asm/preempt.h \ + include/linux/thread_info.h \ + $(wildcard include/config/GENERIC_ENTRY) \ + $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ + include/linux/restart_block.h \ + include/linux/time64.h \ + include/linux/math64.h \ + $(wildcard include/config/ARCH_SUPPORTS_INT128) \ + include/vdso/math64.h \ + include/vdso/time64.h \ + include/uapi/linux/time.h \ + include/uapi/linux/time_types.h \ + arch/x86/include/asm/thread_info.h \ + $(wildcard include/config/IA32_EMULATION) \ + arch/x86/include/asm/page.h \ + arch/x86/include/asm/page_64.h \ + $(wildcard include/config/DEBUG_VIRTUAL) \ + $(wildcard include/config/FLATMEM) \ + $(wildcard include/config/X86_VSYSCALL_EMULATION) \ + include/linux/range.h \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/SPARSEMEM_VMEMMAP) \ + include/linux/pfn.h \ + include/asm-generic/getorder.h \ + arch/x86/include/asm/cpufeature.h \ + $(wildcard include/config/X86_FEATURE_NAMES) \ + arch/x86/include/asm/processor.h \ + $(wildcard include/config/X86_VMX_FEATURE_NAMES) \ + $(wildcard include/config/X86_DEBUGCTLMSR) \ + $(wildcard include/config/CPU_SUP_AMD) \ + $(wildcard include/config/XEN) \ + arch/x86/include/asm/math_emu.h \ + arch/x86/include/asm/ptrace.h \ + arch/x86/include/uapi/asm/ptrace.h \ + arch/x86/include/uapi/asm/ptrace-abi.h \ + arch/x86/include/asm/proto.h \ + arch/x86/include/uapi/asm/ldt.h \ + arch/x86/include/uapi/asm/sigcontext.h \ + arch/x86/include/asm/msr.h \ + $(wildcard include/config/TRACEPOINTS) \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/cpumask.h \ + arch/x86/include/uapi/asm/msr.h \ + include/linux/tracepoint-defs.h \ + arch/x86/include/asm/special_insns.h \ + arch/x86/include/asm/fpu/types.h \ + arch/x86/include/asm/vmxfeatures.h \ + arch/x86/include/asm/vdso/processor.h \ + include/linux/personality.h \ + include/uapi/linux/personality.h \ + include/linux/err.h \ + include/linux/bottom_half.h \ + include/linux/lockdep.h \ + $(wildcard include/config/DEBUG_LOCKING_API_SELFTESTS) \ + include/linux/smp.h \ + $(wildcard include/config/UP_LATE_INIT) \ + include/linux/smp_types.h \ + include/linux/llist.h \ + $(wildcard include/config/ARCH_HAVE_NMI_SAFE_CMPXCHG) \ + arch/x86/include/asm/smp.h \ + $(wildcard include/config/X86_LOCAL_APIC) \ + $(wildcard include/config/DEBUG_NMI_SELFTEST) \ + include/linux/rcutree.h \ + include/linux/wait.h \ + include/linux/spinlock.h \ + arch/x86/include/generated/asm/mmiowb.h \ + include/asm-generic/mmiowb.h \ + $(wildcard include/config/MMIOWB) \ + arch/x86/include/asm/spinlock.h \ + arch/x86/include/asm/qspinlock.h \ + include/asm-generic/qspinlock.h \ + arch/x86/include/asm/qrwlock.h \ + include/asm-generic/qrwlock.h \ + include/linux/rwlock.h \ + $(wildcard include/config/PREEMPT) \ + include/linux/spinlock_api_smp.h \ + $(wildcard include/config/INLINE_SPIN_LOCK) \ + $(wildcard include/config/INLINE_SPIN_LOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK_BH) \ + $(wildcard include/config/UNINLINE_SPIN_UNLOCK) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/GENERIC_LOCKBREAK) \ + include/linux/rwlock_api_smp.h \ + $(wildcard include/config/INLINE_READ_LOCK) \ + $(wildcard include/config/INLINE_WRITE_LOCK) \ + $(wildcard include/config/INLINE_READ_LOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_LOCK_BH) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_READ_TRYLOCK) \ + $(wildcard include/config/INLINE_WRITE_TRYLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_BH) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQRESTORE) \ + include/uapi/linux/wait.h \ + include/linux/refcount.h \ + include/linux/sem.h \ + include/uapi/linux/sem.h \ + include/linux/ipc.h \ + include/linux/uidgid.h \ + $(wildcard include/config/MULTIUSER) \ + $(wildcard include/config/USER_NS) \ + include/linux/highuid.h \ + include/linux/rhashtable-types.h \ + include/linux/mutex.h \ + $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ + include/linux/osq_lock.h \ + include/linux/debug_locks.h \ + include/linux/workqueue.h \ + $(wildcard include/config/DEBUG_OBJECTS_WORK) \ + $(wildcard include/config/FREEZER) \ + $(wildcard include/config/SYSFS) \ + $(wildcard include/config/WQ_WATCHDOG) \ + include/linux/timer.h \ + $(wildcard include/config/DEBUG_OBJECTS_TIMERS) \ + $(wildcard include/config/NO_HZ_COMMON) \ + include/linux/ktime.h \ + include/linux/time.h \ + $(wildcard include/config/POSIX_TIMERS) \ + include/linux/time32.h \ + include/linux/timex.h \ + include/uapi/linux/timex.h \ + arch/x86/include/asm/timex.h \ + $(wildcard include/config/X86_TSC) \ + arch/x86/include/asm/tsc.h \ + include/vdso/time32.h \ + include/vdso/time.h \ + include/linux/jiffies.h \ + include/vdso/jiffies.h \ + include/generated/timeconst.h \ + include/vdso/ktime.h \ + include/linux/timekeeping.h \ + $(wildcard include/config/GENERIC_CMOS_UPDATE) \ + include/linux/clocksource_ids.h \ + include/linux/debugobjects.h \ + $(wildcard include/config/DEBUG_OBJECTS) \ + $(wildcard include/config/DEBUG_OBJECTS_FREE) \ + include/uapi/linux/ipc.h \ + arch/x86/include/generated/uapi/asm/ipcbuf.h \ + include/uapi/asm-generic/ipcbuf.h \ + arch/x86/include/uapi/asm/sembuf.h \ + include/linux/shm.h \ + include/uapi/linux/shm.h \ + include/uapi/asm-generic/hugetlb_encode.h \ + arch/x86/include/uapi/asm/shmbuf.h \ + include/uapi/asm-generic/shmbuf.h \ + arch/x86/include/asm/shmparam.h \ + include/linux/plist.h \ + $(wildcard include/config/DEBUG_PLIST) \ + include/linux/hrtimer.h \ + $(wildcard include/config/HIGH_RES_TIMERS) \ + $(wildcard include/config/TIME_LOW_RES) \ + $(wildcard include/config/TIMERFD) \ + include/linux/hrtimer_defs.h \ + include/linux/rbtree.h \ + include/linux/rbtree_types.h \ + include/linux/percpu.h \ + $(wildcard include/config/NEED_PER_CPU_EMBED_FIRST_CHUNK) \ + $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ + include/linux/mmdebug.h \ + $(wildcard include/config/DEBUG_VM) \ + $(wildcard include/config/DEBUG_VM_PGFLAGS) \ + include/linux/seqlock.h \ + include/linux/ww_mutex.h \ + $(wildcard include/config/DEBUG_RT_MUTEXES) \ + $(wildcard include/config/DEBUG_WW_MUTEX_SLOWPATH) \ + include/linux/rtmutex.h \ + include/linux/timerqueue.h \ + include/linux/seccomp.h \ + $(wildcard include/config/SECCOMP) \ + $(wildcard include/config/HAVE_ARCH_SECCOMP_FILTER) \ + $(wildcard include/config/SECCOMP_FILTER) \ + $(wildcard include/config/CHECKPOINT_RESTORE) \ + $(wildcard include/config/SECCOMP_CACHE_DEBUG) \ + include/uapi/linux/seccomp.h \ + arch/x86/include/asm/seccomp.h \ + arch/x86/include/asm/unistd.h \ + arch/x86/include/uapi/asm/unistd.h \ + arch/x86/include/generated/uapi/asm/unistd_64.h \ + arch/x86/include/generated/asm/unistd_64_x32.h \ + arch/x86/include/generated/asm/unistd_32_ia32.h \ + arch/x86/include/asm/ia32_unistd.h \ + include/asm-generic/seccomp.h \ + include/uapi/linux/unistd.h \ + include/linux/nodemask.h \ + $(wildcard include/config/HIGHMEM) \ + include/linux/numa.h \ + $(wildcard include/config/NODES_SHIFT) \ + include/linux/resource.h \ + include/uapi/linux/resource.h \ + arch/x86/include/generated/uapi/asm/resource.h \ + include/asm-generic/resource.h \ + include/uapi/asm-generic/resource.h \ + include/linux/latencytop.h \ + include/linux/sched/prio.h \ + include/linux/sched/types.h \ + include/linux/signal_types.h \ + $(wildcard include/config/OLD_SIGACTION) \ + include/uapi/linux/signal.h \ + arch/x86/include/asm/signal.h \ + arch/x86/include/uapi/asm/signal.h \ + include/uapi/asm-generic/signal-defs.h \ + arch/x86/include/uapi/asm/siginfo.h \ + include/uapi/asm-generic/siginfo.h \ + include/linux/syscall_user_dispatch.h \ + include/linux/mm_types_task.h \ + $(wildcard include/config/ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH) \ + $(wildcard include/config/SPLIT_PTLOCK_CPUS) \ + $(wildcard include/config/ARCH_ENABLE_SPLIT_PMD_PTLOCK) \ + arch/x86/include/asm/tlbbatch.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/TASK_IO_ACCOUNTING) \ + include/linux/posix-timers.h \ + include/linux/alarmtimer.h \ + $(wildcard include/config/RTC_CLASS) \ + include/linux/task_work.h \ + include/uapi/linux/rseq.h \ + include/linux/kcsan.h \ + arch/x86/include/generated/asm/kmap_size.h \ + include/asm-generic/kmap_size.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL) \ + arch/x86/include/asm/uaccess.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_HAS_ASM_GOTO_TIED_OUTPUT) \ + $(wildcard include/config/ARCH_HAS_COPY_MC) \ + $(wildcard include/config/X86_INTEL_USERCOPY) \ + arch/x86/include/asm/smap.h \ + arch/x86/include/asm/extable.h \ + $(wildcard include/config/BPF_JIT) \ + arch/x86/include/asm/uaccess_64.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.h \ + include/linux/module.h \ + $(wildcard include/config/MODULES_TREE_LOOKUP) \ + $(wildcard include/config/STACKTRACE_BUILD_ID) \ + $(wildcard include/config/MODULE_SIG) \ + $(wildcard include/config/KALLSYMS) \ + $(wildcard include/config/TREE_SRCU) \ + $(wildcard include/config/BPF_EVENTS) \ + $(wildcard include/config/DEBUG_INFO_BTF_MODULES) \ + $(wildcard include/config/EVENT_TRACING) \ + $(wildcard include/config/MODULE_UNLOAD) \ + $(wildcard include/config/CONSTRUCTORS) \ + $(wildcard include/config/FUNCTION_ERROR_INJECTION) \ + include/linux/stat.h \ + arch/x86/include/uapi/asm/stat.h \ + include/uapi/linux/stat.h \ + include/linux/buildid.h \ + $(wildcard include/config/CRASH_CORE) \ + include/linux/mm_types.h \ + $(wildcard include/config/HAVE_ALIGNED_STRUCT_PAGE) \ + $(wildcard include/config/USERFAULTFD) \ + $(wildcard include/config/SWAP) \ + $(wildcard include/config/HAVE_ARCH_COMPAT_MMAP_BASES) \ + $(wildcard include/config/MEMBARRIER) \ + $(wildcard include/config/AIO) \ + $(wildcard include/config/MMU_NOTIFIER) \ + $(wildcard include/config/TRANSPARENT_HUGEPAGE) \ + $(wildcard include/config/HUGETLB_PAGE) \ + $(wildcard include/config/IOMMU_SUPPORT) \ + include/linux/auxvec.h \ + include/uapi/linux/auxvec.h \ + arch/x86/include/uapi/asm/auxvec.h \ + include/linux/rwsem.h \ + $(wildcard include/config/RWSEM_SPIN_ON_OWNER) \ + $(wildcard include/config/DEBUG_RWSEMS) \ + include/linux/completion.h \ + include/linux/swait.h \ + include/linux/uprobes.h \ + arch/x86/include/asm/uprobes.h \ + include/linux/notifier.h \ + include/linux/srcu.h \ + $(wildcard include/config/TINY_SRCU) \ + $(wildcard include/config/SRCU) \ + include/linux/rcu_segcblist.h \ + include/linux/srcutree.h \ + include/linux/rcu_node_tree.h \ + $(wildcard include/config/RCU_FANOUT) \ + $(wildcard include/config/RCU_FANOUT_LEAF) \ + include/linux/page-flags-layout.h \ + $(wildcard include/config/KASAN_HW_TAGS) \ + include/generated/bounds.h \ + arch/x86/include/asm/mmu.h \ + $(wildcard include/config/MODIFY_LDT_SYSCALL) \ + include/linux/kmod.h \ + include/linux/umh.h \ + include/linux/gfp.h \ + $(wildcard include/config/ZONE_DMA) \ + $(wildcard include/config/ZONE_DMA32) \ + $(wildcard include/config/ZONE_DEVICE) \ + $(wildcard include/config/PM_SLEEP) \ + $(wildcard include/config/CONTIG_ALLOC) \ + $(wildcard include/config/CMA) \ + include/linux/mmzone.h \ + $(wildcard include/config/FORCE_MAX_ZONEORDER) \ + $(wildcard include/config/MEMORY_ISOLATION) \ + $(wildcard include/config/ZSMALLOC) \ + $(wildcard include/config/SHADOW_CALL_STACK) \ + $(wildcard include/config/MEMORY_HOTPLUG) \ + $(wildcard include/config/PAGE_EXTENSION) \ + $(wildcard include/config/DEFERRED_STRUCT_PAGE_INIT) \ + $(wildcard include/config/HAVE_MEMORYLESS_NODES) \ + $(wildcard include/config/SPARSEMEM_EXTREME) \ + $(wildcard include/config/HAVE_ARCH_PFN_VALID) \ + include/linux/pageblock-flags.h \ + $(wildcard include/config/HUGETLB_PAGE_SIZE_VARIABLE) \ + include/linux/page-flags.h \ + $(wildcard include/config/ARCH_USES_PG_UNCACHED) \ + $(wildcard include/config/MEMORY_FAILURE) \ + $(wildcard include/config/PAGE_IDLE_FLAG) \ + $(wildcard include/config/THP_SWAP) \ + $(wildcard include/config/KSM) \ + include/linux/local_lock.h \ + include/linux/local_lock_internal.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ + $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ + $(wildcard include/config/MEMORY_HOTREMOVE) \ + arch/x86/include/asm/mmzone.h \ + arch/x86/include/asm/mmzone_64.h \ + include/linux/topology.h \ + $(wildcard include/config/USE_PERCPU_NUMA_NODE_ID) \ + $(wildcard include/config/SCHED_SMT) \ + include/linux/arch_topology.h \ + $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ + arch/x86/include/asm/topology.h \ + $(wildcard include/config/SCHED_MC_PRIO) \ + $(wildcard include/config/ACPI_CPPC_LIB) \ + arch/x86/include/asm/mpspec.h \ + $(wildcard include/config/EISA) \ + $(wildcard include/config/X86_MPPARSE) \ + arch/x86/include/asm/mpspec_def.h \ + arch/x86/include/asm/x86_init.h \ + arch/x86/include/asm/apicdef.h \ + include/asm-generic/topology.h \ + include/linux/sysctl.h \ + $(wildcard include/config/SYSCTL) \ + include/uapi/linux/sysctl.h \ + include/linux/elf.h \ + $(wildcard include/config/ARCH_USE_GNU_PROPERTY) \ + $(wildcard include/config/ARCH_HAVE_ELF_PROT) \ + arch/x86/include/asm/elf.h \ + $(wildcard include/config/X86_X32_ABI) \ + arch/x86/include/asm/user.h \ + arch/x86/include/asm/user_64.h \ + arch/x86/include/asm/fsgsbase.h \ + arch/x86/include/asm/vdso.h \ + $(wildcard include/config/X86_X32) \ + include/uapi/linux/elf.h \ + include/uapi/linux/elf-em.h \ + include/linux/kobject.h \ + $(wildcard include/config/UEVENT_HELPER) \ + $(wildcard include/config/DEBUG_KOBJECT_RELEASE) \ + include/linux/sysfs.h \ + include/linux/kernfs.h \ + $(wildcard include/config/KERNFS) \ + include/linux/idr.h \ + include/linux/radix-tree.h \ + include/linux/xarray.h \ + $(wildcard include/config/XARRAY_MULTI) \ + include/linux/kconfig.h \ + include/linux/kobject_ns.h \ + include/linux/kref.h \ + include/linux/moduleparam.h \ + $(wildcard include/config/ALPHA) \ + $(wildcard include/config/IA64) \ + $(wildcard include/config/PPC64) \ + include/linux/rbtree_latch.h \ + include/linux/error-injection.h \ + include/asm-generic/error-injection.h \ + include/linux/cfi.h \ + $(wildcard include/config/CFI_CLANG_SHADOW) \ + arch/x86/include/asm/module.h \ + $(wildcard include/config/UNWINDER_ORC) \ + include/asm-generic/module.h \ + $(wildcard include/config/HAVE_MOD_ARCH_SPECIFIC) \ + $(wildcard include/config/MODULES_USE_ELF_REL) \ + $(wildcard include/config/MODULES_USE_ELF_RELA) \ + arch/x86/include/asm/orc_types.h \ + include/linux/cdev.h \ + include/linux/kdev_t.h \ + include/uapi/linux/kdev_t.h \ + include/linux/device.h \ + $(wildcard include/config/ENERGY_MODEL) \ + $(wildcard include/config/GENERIC_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/PINCTRL) \ + $(wildcard include/config/GENERIC_MSI_IRQ) \ + $(wildcard include/config/DMA_OPS) \ + $(wildcard include/config/DMA_DECLARE_COHERENT) \ + $(wildcard include/config/DMA_CMA) \ + $(wildcard include/config/SWIOTLB) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_DEVICE) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU_ALL) \ + $(wildcard include/config/DMA_OPS_BYPASS) \ + $(wildcard include/config/OF) \ + $(wildcard include/config/DEVTMPFS) \ + $(wildcard include/config/SYSFS_DEPRECATED) \ + include/linux/dev_printk.h \ + include/linux/ratelimit.h \ + include/linux/energy_model.h \ + include/linux/sched/cpufreq.h \ + $(wildcard include/config/CPU_FREQ) \ + include/linux/sched/topology.h \ + $(wildcard include/config/SCHED_DEBUG) \ + $(wildcard include/config/SCHED_MC) \ + $(wildcard include/config/CPU_FREQ_GOV_SCHEDUTIL) \ + include/linux/sched/idle.h \ + include/linux/sched/sd_flags.h \ + include/linux/ioport.h \ + include/linux/klist.h \ + include/linux/pm.h \ + $(wildcard include/config/VT_CONSOLE_SLEEP) \ + $(wildcard include/config/PM) \ + $(wildcard include/config/PM_CLK) \ + $(wildcard include/config/PM_GENERIC_DOMAINS) \ + include/linux/overflow.h \ + include/linux/device/bus.h \ + $(wildcard include/config/ACPI) \ + include/linux/device/class.h \ + include/linux/device/driver.h \ + arch/x86/include/asm/device.h \ + include/linux/pm_wakeup.h \ + include/linux/dma-mapping.h \ + $(wildcard include/config/DMA_API_DEBUG) \ + $(wildcard include/config/HAS_DMA) \ + $(wildcard include/config/NEED_DMA_MAP_STATE) \ + include/linux/sizes.h \ + include/linux/dma-direction.h \ + include/linux/scatterlist.h \ + $(wildcard include/config/NEED_SG_DMA_LENGTH) \ + $(wildcard include/config/DEBUG_SG) \ + $(wildcard include/config/SGL_ALLOC) \ + $(wildcard include/config/ARCH_NO_SG_CHAIN) \ + $(wildcard include/config/SG_POOL) \ + include/linux/mm.h \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_BITS) \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_COMPAT_BITS) \ + $(wildcard include/config/DEBUG_INFO_BTF) \ + $(wildcard include/config/ARCH_USES_HIGH_VMA_FLAGS) \ + $(wildcard include/config/ARCH_HAS_PKEYS) \ + $(wildcard include/config/PPC) \ + $(wildcard include/config/PARISC) \ + $(wildcard include/config/SPARC64) \ + $(wildcard include/config/ARM64) \ + $(wildcard include/config/ARM64_MTE) \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ + $(wildcard include/config/STACK_GROWSUP) \ + $(wildcard include/config/SHMEM) \ + $(wildcard include/config/DEV_PAGEMAP_OPS) \ + $(wildcard include/config/DEVICE_PRIVATE) \ + $(wildcard include/config/PCI_P2PDMA) \ + $(wildcard include/config/MIGRATION) \ + $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ + $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ + $(wildcard include/config/DEBUG_VM_RB) \ + $(wildcard include/config/PAGE_POISONING) \ + $(wildcard include/config/INIT_ON_ALLOC_DEFAULT_ON) \ + $(wildcard include/config/INIT_ON_FREE_DEFAULT_ON) \ + $(wildcard include/config/DEBUG_PAGEALLOC) \ + $(wildcard include/config/HUGETLBFS) \ + $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ + include/linux/mmap_lock.h \ + include/linux/percpu-refcount.h \ + include/linux/bit_spinlock.h \ + include/linux/shrinker.h \ + include/linux/page_ext.h \ + include/linux/stacktrace.h \ + $(wildcard include/config/STACKTRACE) \ + $(wildcard include/config/ARCH_STACKWALK) \ + $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ + include/linux/stackdepot.h \ + $(wildcard include/config/STACKDEPOT) \ + include/linux/page_ref.h \ + $(wildcard include/config/DEBUG_PAGE_REF) \ + include/linux/memremap.h \ + include/linux/pgtable.h \ + $(wildcard include/config/HIGHPTE) \ + $(wildcard include/config/GUP_GET_PTE_LOW_HIGH) \ + $(wildcard include/config/HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD) \ + $(wildcard include/config/HAVE_ARCH_SOFT_DIRTY) \ + $(wildcard include/config/ARCH_ENABLE_THP_MIGRATION) \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMAP) \ + $(wildcard include/config/X86_ESPFIX64) \ + arch/x86/include/asm/pgtable.h \ + $(wildcard include/config/DEBUG_WX) \ + arch/x86/include/asm/pkru.h \ + arch/x86/include/asm/fpu/api.h \ + $(wildcard include/config/X86_DEBUG_FPU) \ + include/asm-generic/pgtable_uffd.h \ + arch/x86/include/asm/pgtable_64.h \ + arch/x86/include/asm/fixmap.h \ + $(wildcard include/config/PROVIDE_OHCI1394_DMA_INIT) \ + $(wildcard include/config/X86_IO_APIC) \ + $(wildcard include/config/PCI_MMCONFIG) \ + $(wildcard include/config/ACPI_APEI_GHES) \ + $(wildcard include/config/INTEL_TXT) \ + arch/x86/include/uapi/asm/vsyscall.h \ + include/asm-generic/fixmap.h \ + arch/x86/include/asm/pgtable-invert.h \ + include/linux/kasan.h \ + $(wildcard include/config/KASAN_STACK) \ + $(wildcard include/config/KASAN_VMALLOC) \ + $(wildcard include/config/KASAN_INLINE) \ + include/linux/huge_mm.h \ + include/linux/sched/coredump.h \ + $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ + include/linux/fs.h \ + $(wildcard include/config/READ_ONLY_THP_FOR_FS) \ + $(wildcard include/config/FS_POSIX_ACL) \ + $(wildcard include/config/CGROUP_WRITEBACK) \ + $(wildcard include/config/IMA) \ + $(wildcard include/config/FILE_LOCKING) \ + $(wildcard include/config/FSNOTIFY) \ + $(wildcard include/config/FS_ENCRYPTION) \ + $(wildcard include/config/FS_VERITY) \ + $(wildcard include/config/EPOLL) \ + $(wildcard include/config/UNICODE) \ + $(wildcard include/config/QUOTA) \ + $(wildcard include/config/BLK_DEV_LOOP) \ + $(wildcard include/config/FS_DAX) \ + include/linux/wait_bit.h \ + include/linux/dcache.h \ + include/linux/rculist_bl.h \ + include/linux/list_bl.h \ + include/linux/lockref.h \ + $(wildcard include/config/ARCH_USE_CMPXCHG_LOCKREF) \ + include/linux/stringhash.h \ + $(wildcard include/config/DCACHE_WORD_ACCESS) \ + include/linux/hash.h \ + $(wildcard include/config/HAVE_ARCH_HASH) \ + include/linux/path.h \ + include/linux/list_lru.h \ + $(wildcard include/config/MEMCG_KMEM) \ + include/linux/capability.h \ + include/uapi/linux/capability.h \ + include/linux/semaphore.h \ + include/linux/fcntl.h \ + $(wildcard include/config/ARCH_32BIT_OFF_T) \ + include/uapi/linux/fcntl.h \ + arch/x86/include/generated/uapi/asm/fcntl.h \ + include/uapi/asm-generic/fcntl.h \ + include/uapi/linux/openat2.h \ + include/linux/migrate_mode.h \ + include/linux/percpu-rwsem.h \ + include/linux/rcuwait.h \ + include/linux/sched/signal.h \ + $(wildcard include/config/SCHED_AUTOGROUP) \ + $(wildcard include/config/BSD_PROCESS_ACCT) \ + $(wildcard include/config/TASKSTATS) \ + include/linux/signal.h \ + $(wildcard include/config/DYNAMIC_SIGFRAME) \ + include/linux/sched/jobctl.h \ + include/linux/sched/task.h \ + $(wildcard include/config/HAVE_EXIT_THREAD) \ + $(wildcard include/config/ARCH_WANTS_DYNAMIC_TASK_STRUCT) \ + $(wildcard include/config/HAVE_ARCH_THREAD_STRUCT_WHITELIST) \ + include/linux/cred.h \ + $(wildcard include/config/DEBUG_CREDENTIALS) \ + include/linux/key.h \ + $(wildcard include/config/KEY_NOTIFICATIONS) \ + $(wildcard include/config/NET) \ + include/linux/assoc_array.h \ + $(wildcard include/config/ASSOCIATIVE_ARRAY) \ + include/linux/sched/user.h \ + $(wildcard include/config/WATCH_QUEUE) \ + include/linux/percpu_counter.h \ + include/linux/rcu_sync.h \ + include/linux/delayed_call.h \ + include/linux/uuid.h \ + include/uapi/linux/uuid.h \ + include/linux/errseq.h \ + include/linux/ioprio.h \ + include/linux/sched/rt.h \ + include/linux/iocontext.h \ + include/uapi/linux/ioprio.h \ + include/linux/fs_types.h \ + include/linux/mount.h \ + include/linux/mnt_idmapping.h \ + include/uapi/linux/fs.h \ + include/linux/quota.h \ + $(wildcard include/config/QUOTA_NETLINK_INTERFACE) \ + include/uapi/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/dqblk_qtree.h \ + include/linux/projid.h \ + include/uapi/linux/quota.h \ + include/linux/nfs_fs_i.h \ + include/linux/vmstat.h \ + $(wildcard include/config/VM_EVENT_COUNTERS) \ + $(wildcard include/config/DEBUG_TLBFLUSH) \ + $(wildcard include/config/DEBUG_VM_VMACACHE) \ + include/linux/vm_event_item.h \ + $(wildcard include/config/MEMORY_BALLOON) \ + $(wildcard include/config/BALLOON_COMPACTION) \ + arch/x86/include/asm/io.h \ + $(wildcard include/config/MTRR) \ + $(wildcard include/config/X86_PAT) \ + arch/x86/include/generated/asm/early_ioremap.h \ + include/asm-generic/early_ioremap.h \ + $(wildcard include/config/GENERIC_EARLY_IOREMAP) \ + include/asm-generic/iomap.h \ + $(wildcard include/config/HAS_IOPORT_MAP) \ + include/asm-generic/pci_iomap.h \ + $(wildcard include/config/PCI) \ + $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ + $(wildcard include/config/GENERIC_PCI_IOMAP) \ + include/asm-generic/io.h \ + $(wildcard include/config/GENERIC_IOMAP) \ + $(wildcard include/config/GENERIC_IOREMAP) \ + $(wildcard include/config/VIRT_TO_BUS) \ + include/linux/logic_pio.h \ + $(wildcard include/config/INDIRECT_PIO) \ + include/linux/fwnode.h \ + include/linux/vmalloc.h \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMALLOC) \ + arch/x86/include/asm/vmalloc.h \ + arch/x86/include/asm/pgtable_areas.h \ + include/linux/delay.h \ + arch/x86/include/asm/delay.h \ + include/asm-generic/delay.h \ + include/linux/fb.h \ + $(wildcard include/config/GUMSTIX_AM200EPD) \ + $(wildcard include/config/FB_NOTIFY) \ + $(wildcard include/config/FB_DEFERRED_IO) \ + $(wildcard include/config/FB_TILEBLITTING) \ + $(wildcard include/config/FB_BACKLIGHT) \ + $(wildcard include/config/FB_FOREIGN_ENDIAN) \ + $(wildcard include/config/FB_BOTH_ENDIAN) \ + $(wildcard include/config/FB_BIG_ENDIAN) \ + $(wildcard include/config/FB_LITTLE_ENDIAN) \ + include/linux/kgdb.h \ + $(wildcard include/config/HAVE_ARCH_KGDB) \ + $(wildcard include/config/KGDB) \ + $(wildcard include/config/SERIAL_KGDB_NMI) \ + $(wildcard include/config/KGDB_HONOUR_BLOCKLIST) \ + include/linux/kprobes.h \ + $(wildcard include/config/KPROBES_SANITY_TEST) \ + $(wildcard include/config/OPTPROBES) \ + $(wildcard include/config/KPROBES_ON_FTRACE) \ + include/linux/ftrace.h \ + $(wildcard include/config/FUNCTION_TRACER) \ + $(wildcard include/config/DYNAMIC_FTRACE) \ + $(wildcard include/config/HAVE_DYNAMIC_FTRACE_WITH_ARGS) \ + $(wildcard include/config/DYNAMIC_FTRACE_WITH_REGS) \ + $(wildcard include/config/DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ + $(wildcard include/config/HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ + $(wildcard include/config/STACK_TRACER) \ + $(wildcard include/config/FUNCTION_PROFILER) \ + $(wildcard include/config/FTRACE_SYSCALLS) \ + include/linux/trace_recursion.h \ + $(wildcard include/config/FTRACE_RECORD_RECURSION) \ + include/linux/interrupt.h \ + $(wildcard include/config/IRQ_FORCED_THREADING) \ + $(wildcard include/config/GENERIC_IRQ_PROBE) \ + $(wildcard include/config/IRQ_TIMINGS) \ + include/linux/irqreturn.h \ + include/linux/irqnr.h \ + include/uapi/linux/irqnr.h \ + include/linux/hardirq.h \ + include/linux/context_tracking_state.h \ + $(wildcard include/config/CONTEXT_TRACKING) \ + include/linux/ftrace_irq.h \ + $(wildcard include/config/HWLAT_TRACER) \ + $(wildcard include/config/OSNOISE_TRACER) \ + include/linux/vtime.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING) \ + $(wildcard include/config/IRQ_TIME_ACCOUNTING) \ + arch/x86/include/asm/hardirq.h \ + $(wildcard include/config/KVM_INTEL) \ + $(wildcard include/config/HAVE_KVM) \ + $(wildcard include/config/X86_THERMAL_VECTOR) \ + $(wildcard include/config/X86_MCE_THRESHOLD) \ + $(wildcard include/config/X86_MCE_AMD) \ + $(wildcard include/config/X86_HV_CALLBACK_VECTOR) \ + $(wildcard include/config/HYPERV) \ + arch/x86/include/asm/irq.h \ + arch/x86/include/asm/irq_vectors.h \ + $(wildcard include/config/PCI_MSI) \ + arch/x86/include/asm/sections.h \ + include/asm-generic/sections.h \ + include/linux/trace_clock.h \ + arch/x86/include/asm/trace_clock.h \ + include/linux/kallsyms.h \ + $(wildcard include/config/KALLSYMS_ALL) \ + include/linux/ptrace.h \ + include/linux/pid_namespace.h \ + $(wildcard include/config/PID_NS) \ + include/linux/nsproxy.h \ + include/linux/ns_common.h \ + include/uapi/linux/ptrace.h \ + arch/x86/include/asm/ftrace.h \ + include/linux/compat.h \ + $(wildcard include/config/ARCH_HAS_SYSCALL_WRAPPER) \ + $(wildcard include/config/COMPAT_OLD_SIGACTION) \ + $(wildcard include/config/ODD_RT_SIGACTION) \ + include/linux/socket.h \ + arch/x86/include/generated/uapi/asm/socket.h \ + include/uapi/asm-generic/socket.h \ + arch/x86/include/generated/uapi/asm/sockios.h \ + include/uapi/asm-generic/sockios.h \ + include/uapi/linux/sockios.h \ + include/linux/uio.h \ + include/uapi/linux/uio.h \ + include/uapi/linux/socket.h \ + include/uapi/linux/if.h \ + include/uapi/linux/libc-compat.h \ + include/uapi/linux/hdlc/ioctl.h \ + include/uapi/linux/aio_abi.h \ + arch/x86/include/asm/compat.h \ + include/linux/sched/task_stack.h \ + $(wildcard include/config/DEBUG_STACK_USAGE) \ + include/uapi/linux/magic.h \ + arch/x86/include/asm/user32.h \ + include/asm-generic/compat.h \ + $(wildcard include/config/COMPAT_FOR_U64_ALIGNMENT) \ + arch/x86/include/asm/syscall_wrapper.h \ + include/linux/freelist.h \ + arch/x86/include/asm/kprobes.h \ + include/asm-generic/kprobes.h \ + arch/x86/include/asm/text-patching.h \ + $(wildcard include/config/UML_X86) \ + arch/x86/include/asm/insn.h \ + arch/x86/include/asm/inat.h \ + arch/x86/include/asm/inat_types.h \ + arch/x86/include/asm/kgdb.h \ + include/uapi/linux/fb.h \ + include/linux/i2c.h \ + $(wildcard include/config/I2C) \ + $(wildcard include/config/I2C_SLAVE) \ + $(wildcard include/config/I2C_BOARDINFO) \ + $(wildcard include/config/I2C_MUX) \ + include/linux/acpi.h \ + $(wildcard include/config/ACPI_DEBUGGER) \ + $(wildcard include/config/LOONGARCH) \ + $(wildcard include/config/ACPI_PROCESSOR_CSTATE) \ + $(wildcard include/config/ACPI_HOTPLUG_CPU) \ + $(wildcard include/config/ACPI_HOTPLUG_IOAPIC) \ + $(wildcard include/config/ACPI_WMI) \ + $(wildcard include/config/ACPI_NUMA) \ + $(wildcard include/config/HIBERNATION) \ + $(wildcard include/config/ACPI_HOTPLUG_MEMORY) \ + $(wildcard include/config/ACPI_CONTAINER) \ + $(wildcard include/config/ACPI_GTDT) \ + $(wildcard include/config/GPIOLIB) \ + $(wildcard include/config/ACPI_TABLE_UPGRADE) \ + $(wildcard include/config/ACPI_WATCHDOG) \ + $(wildcard include/config/ACPI_SPCR_TABLE) \ + $(wildcard include/config/ACPI_GENERIC_GSI) \ + $(wildcard include/config/ACPI_LPIT) \ + $(wildcard include/config/ACPI_PPTT) \ + include/linux/irqdomain.h \ + $(wildcard include/config/IRQ_DOMAIN_HIERARCHY) \ + $(wildcard include/config/GENERIC_IRQ_DEBUGFS) \ + $(wildcard include/config/IRQ_DOMAIN) \ + $(wildcard include/config/IRQ_DOMAIN_NOMAP) \ + include/linux/irqhandler.h \ + include/linux/of.h \ + $(wildcard include/config/OF_DYNAMIC) \ + $(wildcard include/config/SPARC) \ + $(wildcard include/config/OF_PROMTREE) \ + $(wildcard include/config/OF_KOBJ) \ + $(wildcard include/config/OF_NUMA) \ + $(wildcard include/config/OF_OVERLAY) \ + include/linux/mod_devicetable.h \ + include/linux/property.h \ + include/linux/resource_ext.h \ + include/linux/slab.h \ + $(wildcard include/config/DEBUG_SLAB) \ + $(wildcard include/config/FAILSLAB) \ + $(wildcard include/config/HAVE_HARDENED_USERCOPY_ALLOCATOR) \ + $(wildcard include/config/SLAB) \ + $(wildcard include/config/SLUB) \ + $(wildcard include/config/SLOB) \ + $(wildcard include/config/CC_IS_GCC) \ + $(wildcard include/config/CLANG_VERSION) \ + include/acpi/acpi.h \ + include/acpi/platform/acenv.h \ + include/acpi/platform/acgcc.h \ + include/acpi/platform/aclinux.h \ + $(wildcard include/config/ACPI_REDUCED_HARDWARE_ONLY) \ + $(wildcard include/config/ACPI_DEBUG) \ + include/linux/ctype.h \ + arch/x86/include/asm/acenv.h \ + include/acpi/acnames.h \ + include/acpi/actypes.h \ + include/acpi/acexcep.h \ + include/acpi/actbl.h \ + include/acpi/actbl1.h \ + include/acpi/actbl2.h \ + include/acpi/actbl3.h \ + include/acpi/acrestyp.h \ + include/acpi/platform/acenvex.h \ + include/acpi/platform/aclinuxex.h \ + include/acpi/platform/acgccex.h \ + include/acpi/acoutput.h \ + include/acpi/acpiosxf.h \ + include/acpi/acpixf.h \ + include/acpi/acconfig.h \ + include/acpi/acbuffer.h \ + include/acpi/acpi_bus.h \ + $(wildcard include/config/ACPI_SYSTEM_POWER_STATES_SUPPORT) \ + $(wildcard include/config/ACPI_SLEEP) \ + include/acpi/acpi_drivers.h \ + $(wildcard include/config/ACPI_DOCK) \ + include/acpi/acpi_numa.h \ + $(wildcard include/config/ACPI_HMAT) \ + include/acpi/acpi_io.h \ + include/linux/io.h \ + arch/x86/include/asm/acpi.h \ + $(wildcard include/config/ACPI_APEI) \ + include/acpi/pdc_intel.h \ + arch/x86/include/asm/numa.h \ + $(wildcard include/config/NUMA_EMU) \ + include/linux/regulator/consumer.h \ + $(wildcard include/config/REGULATOR) \ + include/linux/suspend.h \ + $(wildcard include/config/VT) \ + $(wildcard include/config/SUSPEND) \ + $(wildcard include/config/HIBERNATION_SNAPSHOT_DEV) \ + $(wildcard include/config/PM_SLEEP_DEBUG) \ + $(wildcard include/config/PM_AUTOSLEEP) \ + include/linux/swap.h \ + $(wildcard include/config/FRONTSWAP) \ + $(wildcard include/config/MEMCG_SWAP) \ + include/linux/memcontrol.h \ + include/linux/cgroup.h \ + $(wildcard include/config/CGROUP_CPUACCT) \ + $(wildcard include/config/SOCK_CGROUP_DATA) \ + $(wildcard include/config/CGROUP_DATA) \ + $(wildcard include/config/CGROUP_BPF) \ + include/uapi/linux/cgroupstats.h \ + include/uapi/linux/taskstats.h \ + include/linux/seq_file.h \ + include/linux/user_namespace.h \ + $(wildcard include/config/INOTIFY_USER) \ + $(wildcard include/config/FANOTIFY) \ + $(wildcard include/config/PERSISTENT_KEYRINGS) \ + include/linux/kernel_stat.h \ + include/linux/cgroup-defs.h \ + $(wildcard include/config/CGROUP_NET_CLASSID) \ + $(wildcard include/config/CGROUP_NET_PRIO) \ + include/linux/u64_stats_sync.h \ + arch/x86/include/generated/asm/local64.h \ + include/asm-generic/local64.h \ + arch/x86/include/asm/local.h \ + include/linux/bpf-cgroup.h \ + include/linux/bpf.h \ + $(wildcard include/config/BPF_JIT_ALWAYS_ON) \ + $(wildcard include/config/INET) \ + include/uapi/linux/bpf.h \ + $(wildcard include/config/BPF_LIRC_MODE2) \ + $(wildcard include/config/EFFICIENT_UNALIGNED_ACCESS) \ + $(wildcard include/config/IP_ROUTE_CLASSID) \ + $(wildcard include/config/BPF_KPROBE_OVERRIDE) \ + $(wildcard include/config/XFRM) \ + include/uapi/linux/bpf_common.h \ + include/linux/file.h \ + include/linux/sched/mm.h \ + $(wildcard include/config/ARCH_HAS_MEMBARRIER_CALLBACKS) \ + include/linux/sync_core.h \ + $(wildcard include/config/ARCH_HAS_SYNC_CORE_BEFORE_USERMODE) \ + arch/x86/include/asm/sync_core.h \ + include/linux/bpfptr.h \ + include/linux/sockptr.h \ + include/linux/bpf_types.h \ + $(wildcard include/config/BPF_LSM) \ + $(wildcard include/config/XDP_SOCKETS) \ + include/linux/psi_types.h \ + include/linux/kthread.h \ + include/linux/cgroup_subsys.h \ + $(wildcard include/config/CGROUP_DEVICE) \ + $(wildcard include/config/CGROUP_FREEZER) \ + $(wildcard include/config/CGROUP_PERF) \ + $(wildcard include/config/CGROUP_HUGETLB) \ + $(wildcard include/config/CGROUP_PIDS) \ + $(wildcard include/config/CGROUP_RDMA) \ + $(wildcard include/config/CGROUP_MISC) \ + $(wildcard include/config/CGROUP_DEBUG) \ + include/linux/page_counter.h \ + include/linux/vmpressure.h \ + include/linux/eventfd.h \ + include/linux/writeback.h \ + include/linux/flex_proportions.h \ + include/linux/backing-dev-defs.h \ + $(wildcard include/config/DEBUG_FS) \ + include/linux/blk_types.h \ + $(wildcard include/config/FAIL_MAKE_REQUEST) \ + $(wildcard include/config/BLK_CGROUP_IOCOST) \ + $(wildcard include/config/BLK_INLINE_ENCRYPTION) \ + $(wildcard include/config/BLK_DEV_INTEGRITY) \ + include/linux/bvec.h \ + include/linux/highmem.h \ + arch/x86/include/asm/cacheflush.h \ + include/asm-generic/cacheflush.h \ + include/linux/highmem-internal.h \ + include/linux/blk-cgroup.h \ + $(wildcard include/config/BLK_CGROUP_FC_APPID) \ + include/linux/blkdev.h \ + $(wildcard include/config/BLK_RQ_ALLOC_TIME) \ + $(wildcard include/config/BLK_WBT) \ + $(wildcard include/config/BLK_DEV_ZONED) \ + $(wildcard include/config/BLK_DEV_THROTTLING) \ + $(wildcard include/config/BLK_DEBUG_FS) \ + include/linux/sched/clock.h \ + $(wildcard include/config/HAVE_UNSTABLE_SCHED_CLOCK) \ + include/uapi/linux/major.h \ + include/linux/genhd.h \ + $(wildcard include/config/BLOCK_HOLDER_DEPRECATED) \ + $(wildcard include/config/CDROM) \ + include/linux/mempool.h \ + include/linux/bio.h \ + include/uapi/linux/blkzoned.h \ + include/linux/sbitmap.h \ + include/linux/elevator.h \ + include/linux/hashtable.h \ + include/linux/blk-mq.h \ + $(wildcard include/config/FAIL_IO_TIMEOUT) \ + include/linux/node.h \ + $(wildcard include/config/HMEM_REPORTING) \ + $(wildcard include/config/MEMORY_HOTPLUG_SPARSE) \ + include/linux/pagemap.h \ + include/linux/hugetlb_inline.h \ + include/uapi/linux/mempolicy.h \ + include/linux/freezer.h \ + include/uapi/linux/i2c.h \ + include/linux/backlight.h \ + $(wildcard include/config/BACKLIGHT_CLASS_DEVICE) \ + include/linux/poll.h \ + include/uapi/linux/poll.h \ + arch/x86/include/generated/uapi/asm/poll.h \ + include/uapi/asm-generic/poll.h \ + include/uapi/linux/eventpoll.h \ + include/linux/pci.h \ + $(wildcard include/config/PCI_IOV) \ + $(wildcard include/config/PCIEAER) \ + $(wildcard include/config/PCIEPORTBUS) \ + $(wildcard include/config/PCIEASPM) \ + $(wildcard include/config/HOTPLUG_PCI_PCIE) \ + $(wildcard include/config/PCIE_PTM) \ + $(wildcard include/config/PCIE_DPC) \ + $(wildcard include/config/PCI_ATS) \ + $(wildcard include/config/PCI_PRI) \ + $(wildcard include/config/PCI_PASID) \ + $(wildcard include/config/PCI_DOMAINS_GENERIC) \ + $(wildcard include/config/PCI_DOMAINS) \ + $(wildcard include/config/PCI_QUIRKS) \ + $(wildcard include/config/ACPI_MCFG) \ + $(wildcard include/config/HOTPLUG_PCI) \ + $(wildcard include/config/EEH) \ + include/uapi/linux/pci.h \ + include/uapi/linux/pci_regs.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + arch/x86/include/asm/pci.h \ + $(wildcard include/config/PCI_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/VMD) \ + arch/x86/include/asm/memtype.h \ + include/asm-generic/pci.h \ + include/linux/pci-dma-compat.h \ + include/linux/aio.h \ + include/linux/splice.h \ + include/linux/pipe_fs_i.h \ + include/generated/uapi/linux/version.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.h \ + $(wildcard include/config/BLOCK_ID) \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.h \ + include/linux/cpuset.h \ + include/linux/mmu_context.h \ + arch/x86/include/asm/mmu_context.h \ + arch/x86/include/asm/desc.h \ + arch/x86/include/asm/cpu_entry_area.h \ + arch/x86/include/asm/intel_ds.h \ + include/linux/pkeys.h \ + arch/x86/include/asm/pkeys.h \ + include/trace/events/tlb.h \ + include/linux/tracepoint.h \ + $(wildcard include/config/HAVE_SYSCALL_TRACEPOINTS) \ + $(wildcard include/config/TRACEPOINT) \ + include/linux/static_call.h \ + include/linux/cpu.h \ + $(wildcard include/config/PM_SLEEP_SMP) \ + $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ + $(wildcard include/config/HOTPLUG_SMT) \ + include/linux/cpuhotplug.h \ + arch/x86/include/asm/static_call.h \ + include/trace/define_trace.h \ + arch/x86/include/asm/tlbflush.h \ + arch/x86/include/asm/invpcid.h \ + arch/x86/include/asm/pti.h \ + arch/x86/include/asm/debugreg.h \ + arch/x86/include/uapi/asm/debugreg.h \ + include/asm-generic/mmu_context.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.h \ + +/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.o: $(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.o) + +$(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.o): diff --git a/host_software/driver/XDMA/linux-kernel/xdma/.cdev_events.o.cmd b/host_software/driver/XDMA/linux-kernel/xdma/.cdev_events.o.cmd new file mode 100644 index 0000000..5199e4c --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/.cdev_events.o.cmd @@ -0,0 +1,1426 @@ +cmd_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_events.o := gcc -Wp,-MMD,/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/.cdev_events.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/9/include -I./arch/x86/include -I./arch/x86/include/generated -I./include -I./arch/x86/include/uapi -I./arch/x86/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -I./ubuntu/include -include ./include/linux/compiler_types.h -D__KERNEL__ -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu89 -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fcf-protection=none -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -DCONFIG_X86_X32_ABI -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mfunction-return=thunk-extern -fno-jump-tables -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fstack-protector-strong -Wimplicit-fallthrough=5 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-stack-clash-protection -g -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wno-stringop-truncation -Wno-array-bounds -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -I/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/include -fsanitize=bounds -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"cdev_events"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_events.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_events.c + +source_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_events.o := /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_events.c + +deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_events.o := \ + include/linux/compiler-version.h \ + $(wildcard include/config/CC_VERSION_TEXT) \ + include/linux/kconfig.h \ + $(wildcard include/config/CPU_BIG_ENDIAN) \ + $(wildcard include/config/BOOGER) \ + $(wildcard include/config/FOO) \ + include/linux/compiler_types.h \ + $(wildcard include/config/HAVE_ARCH_COMPILER_H) \ + $(wildcard include/config/CC_HAS_ASM_INLINE) \ + include/linux/compiler_attributes.h \ + include/linux/compiler-gcc.h \ + $(wildcard include/config/RETPOLINE) \ + $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ + $(wildcard include/config/KCOV) \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.h \ + include/linux/kernel.h \ + $(wildcard include/config/PREEMPT_VOLUNTARY) \ + $(wildcard include/config/PREEMPT_DYNAMIC) \ + $(wildcard include/config/PREEMPT_) \ + $(wildcard include/config/DEBUG_ATOMIC_SLEEP) \ + $(wildcard include/config/SMP) \ + $(wildcard include/config/MMU) \ + $(wildcard include/config/PROVE_LOCKING) \ + $(wildcard include/config/TRACING) \ + $(wildcard include/config/FTRACE_MCOUNT_RECORD) \ + include/linux/stdarg.h \ + include/linux/align.h \ + include/linux/const.h \ + include/vdso/const.h \ + include/uapi/linux/const.h \ + include/linux/limits.h \ + include/uapi/linux/limits.h \ + include/linux/types.h \ + $(wildcard include/config/HAVE_UID16) \ + $(wildcard include/config/UID16) \ + $(wildcard include/config/ARCH_DMA_ADDR_T_64BIT) \ + $(wildcard include/config/PHYS_ADDR_T_64BIT) \ + $(wildcard include/config/64BIT) \ + $(wildcard include/config/ARCH_32BIT_USTAT_F_TINODE) \ + include/uapi/linux/types.h \ + arch/x86/include/generated/uapi/asm/types.h \ + include/uapi/asm-generic/types.h \ + include/asm-generic/int-ll64.h \ + include/uapi/asm-generic/int-ll64.h \ + arch/x86/include/uapi/asm/bitsperlong.h \ + include/asm-generic/bitsperlong.h \ + include/uapi/asm-generic/bitsperlong.h \ + include/uapi/linux/posix_types.h \ + include/linux/stddef.h \ + include/uapi/linux/stddef.h \ + include/linux/compiler_types.h \ + arch/x86/include/asm/posix_types.h \ + $(wildcard include/config/X86_32) \ + arch/x86/include/uapi/asm/posix_types_64.h \ + include/uapi/asm-generic/posix_types.h \ + include/vdso/limits.h \ + include/linux/linkage.h \ + $(wildcard include/config/ARCH_USE_SYM_ANNOTATIONS) \ + include/linux/stringify.h \ + include/linux/export.h \ + $(wildcard include/config/MODVERSIONS) \ + $(wildcard include/config/MODULE_REL_CRCS) \ + $(wildcard include/config/HAVE_ARCH_PREL32_RELOCATIONS) \ + $(wildcard include/config/MODULES) \ + $(wildcard include/config/TRIM_UNUSED_KSYMS) \ + include/linux/compiler.h \ + $(wildcard include/config/TRACE_BRANCH_PROFILING) \ + $(wildcard include/config/PROFILE_ALL_BRANCHES) \ + $(wildcard include/config/STACK_VALIDATION) \ + $(wildcard include/config/CFI_CLANG) \ + arch/x86/include/generated/asm/rwonce.h \ + include/asm-generic/rwonce.h \ + include/linux/kasan-checks.h \ + $(wildcard include/config/KASAN_GENERIC) \ + $(wildcard include/config/KASAN_SW_TAGS) \ + include/linux/kcsan-checks.h \ + $(wildcard include/config/KCSAN) \ + $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ + arch/x86/include/asm/linkage.h \ + $(wildcard include/config/X86_64) \ + $(wildcard include/config/X86_ALIGNMENT_16) \ + $(wildcard include/config/RETHUNK) \ + $(wildcard include/config/SLS) \ + include/linux/bitops.h \ + include/linux/bits.h \ + include/vdso/bits.h \ + include/linux/build_bug.h \ + include/linux/typecheck.h \ + include/uapi/linux/kernel.h \ + include/uapi/linux/sysinfo.h \ + arch/x86/include/asm/bitops.h \ + $(wildcard include/config/X86_CMOV) \ + arch/x86/include/asm/alternative.h \ + arch/x86/include/asm/asm.h \ + $(wildcard include/config/KPROBES) \ + arch/x86/include/asm/extable_fixup_types.h \ + arch/x86/include/asm/rmwcc.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO) \ + arch/x86/include/asm/barrier.h \ + arch/x86/include/asm/nops.h \ + include/asm-generic/barrier.h \ + include/asm-generic/bitops/find.h \ + $(wildcard include/config/GENERIC_FIND_FIRST_BIT) \ + include/asm-generic/bitops/sched.h \ + arch/x86/include/asm/arch_hweight.h \ + arch/x86/include/asm/cpufeatures.h \ + arch/x86/include/asm/required-features.h \ + $(wildcard include/config/X86_MINIMUM_CPU_FAMILY) \ + $(wildcard include/config/MATH_EMULATION) \ + $(wildcard include/config/X86_PAE) \ + $(wildcard include/config/X86_CMPXCHG64) \ + $(wildcard include/config/X86_USE_3DNOW) \ + $(wildcard include/config/X86_P6_NOP) \ + $(wildcard include/config/MATOM) \ + $(wildcard include/config/PARAVIRT_XXL) \ + arch/x86/include/asm/disabled-features.h \ + $(wildcard include/config/X86_SMAP) \ + $(wildcard include/config/X86_UMIP) \ + $(wildcard include/config/X86_INTEL_MEMORY_PROTECTION_KEYS) \ + $(wildcard include/config/X86_5LEVEL) \ + $(wildcard include/config/PAGE_TABLE_ISOLATION) \ + $(wildcard include/config/CPU_UNRET_ENTRY) \ + $(wildcard include/config/X86_SGX) \ + include/asm-generic/bitops/const_hweight.h \ + include/asm-generic/bitops/instrumented-atomic.h \ + include/linux/instrumented.h \ + include/asm-generic/bitops/instrumented-non-atomic.h \ + $(wildcard include/config/KCSAN_ASSUME_PLAIN_WRITES_ATOMIC) \ + include/asm-generic/bitops/instrumented-lock.h \ + include/asm-generic/bitops/le.h \ + arch/x86/include/uapi/asm/byteorder.h \ + include/linux/byteorder/little_endian.h \ + include/uapi/linux/byteorder/little_endian.h \ + include/linux/swab.h \ + include/uapi/linux/swab.h \ + arch/x86/include/uapi/asm/swab.h \ + include/linux/byteorder/generic.h \ + include/asm-generic/bitops/ext2-atomic-setbit.h \ + include/linux/kstrtox.h \ + include/linux/log2.h \ + $(wildcard include/config/ARCH_HAS_ILOG2_U32) \ + $(wildcard include/config/ARCH_HAS_ILOG2_U64) \ + include/linux/math.h \ + arch/x86/include/asm/div64.h \ + include/asm-generic/div64.h \ + include/linux/minmax.h \ + include/linux/panic.h \ + $(wildcard include/config/PANIC_TIMEOUT) \ + include/linux/printk.h \ + $(wildcard include/config/MESSAGE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_QUIET) \ + $(wildcard include/config/EARLY_PRINTK) \ + $(wildcard include/config/PRINTK) \ + $(wildcard include/config/PRINTK_INDEX) \ + $(wildcard include/config/DYNAMIC_DEBUG) \ + $(wildcard include/config/DYNAMIC_DEBUG_CORE) \ + include/linux/init.h \ + $(wildcard include/config/STRICT_KERNEL_RWX) \ + $(wildcard include/config/STRICT_MODULE_RWX) \ + $(wildcard include/config/LTO_CLANG) \ + include/linux/kern_levels.h \ + include/linux/cache.h \ + $(wildcard include/config/ARCH_HAS_CACHE_LINE_SIZE) \ + arch/x86/include/asm/cache.h \ + $(wildcard include/config/X86_L1_CACHE_SHIFT) \ + $(wildcard include/config/X86_INTERNODE_CACHE_SHIFT) \ + $(wildcard include/config/X86_VSMP) \ + include/linux/ratelimit_types.h \ + include/uapi/linux/param.h \ + arch/x86/include/generated/uapi/asm/param.h \ + include/asm-generic/param.h \ + $(wildcard include/config/HZ) \ + include/uapi/asm-generic/param.h \ + include/linux/spinlock_types.h \ + $(wildcard include/config/PREEMPT_RT) \ + $(wildcard include/config/DEBUG_LOCK_ALLOC) \ + include/linux/spinlock_types_raw.h \ + $(wildcard include/config/DEBUG_SPINLOCK) \ + arch/x86/include/asm/spinlock_types.h \ + include/asm-generic/qspinlock_types.h \ + $(wildcard include/config/NR_CPUS) \ + include/asm-generic/qrwlock_types.h \ + include/linux/lockdep_types.h \ + $(wildcard include/config/PROVE_RAW_LOCK_NESTING) \ + $(wildcard include/config/PREEMPT_LOCK) \ + $(wildcard include/config/LOCKDEP) \ + $(wildcard include/config/LOCK_STAT) \ + include/linux/rwlock_types.h \ + include/linux/once_lite.h \ + include/linux/dynamic_debug.h \ + $(wildcard include/config/JUMP_LABEL) \ + include/linux/jump_label.h \ + $(wildcard include/config/HAVE_ARCH_JUMP_LABEL_RELATIVE) \ + arch/x86/include/asm/jump_label.h \ + include/linux/static_call_types.h \ + $(wildcard include/config/HAVE_STATIC_CALL) \ + $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ + include/linux/uaccess.h \ + $(wildcard include/config/SET_FS) \ + $(wildcard include/config/PREEMPT_COUNT) \ + $(wildcard include/config/HARDENED_USERCOPY) \ + include/linux/fault-inject-usercopy.h \ + $(wildcard include/config/FAULT_INJECTION_USERCOPY) \ + include/linux/sched.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_NATIVE) \ + $(wildcard include/config/SCHED_INFO) \ + $(wildcard include/config/SCHEDSTATS) \ + $(wildcard include/config/FAIR_GROUP_SCHED) \ + $(wildcard include/config/RT_GROUP_SCHED) \ + $(wildcard include/config/RT_MUTEXES) \ + $(wildcard include/config/UCLAMP_TASK) \ + $(wildcard include/config/UCLAMP_BUCKETS_COUNT) \ + $(wildcard include/config/KMAP_LOCAL) \ + $(wildcard include/config/THREAD_INFO_IN_TASK) \ + $(wildcard include/config/SCHED_CORE) \ + $(wildcard include/config/CGROUP_SCHED) \ + $(wildcard include/config/PREEMPT_NOTIFIERS) \ + $(wildcard include/config/BLK_DEV_IO_TRACE) \ + $(wildcard include/config/PREEMPT_RCU) \ + $(wildcard include/config/TASKS_RCU) \ + $(wildcard include/config/TASKS_TRACE_RCU) \ + $(wildcard include/config/PSI) \ + $(wildcard include/config/MEMCG) \ + $(wildcard include/config/COMPAT_BRK) \ + $(wildcard include/config/CGROUPS) \ + $(wildcard include/config/BLK_CGROUP) \ + $(wildcard include/config/PAGE_OWNER) \ + $(wildcard include/config/EVENTFD) \ + $(wildcard include/config/STACKPROTECTOR) \ + $(wildcard include/config/ARCH_HAS_SCALED_CPUTIME) \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_GEN) \ + $(wildcard include/config/NO_HZ_FULL) \ + $(wildcard include/config/POSIX_CPUTIMERS) \ + $(wildcard include/config/POSIX_CPU_TIMERS_TASK_WORK) \ + $(wildcard include/config/KEYS) \ + $(wildcard include/config/SYSVIPC) \ + $(wildcard include/config/DETECT_HUNG_TASK) \ + $(wildcard include/config/IO_URING) \ + $(wildcard include/config/AUDIT) \ + $(wildcard include/config/AUDITSYSCALL) \ + $(wildcard include/config/DEBUG_MUTEXES) \ + $(wildcard include/config/TRACE_IRQFLAGS) \ + $(wildcard include/config/UBSAN) \ + $(wildcard include/config/UBSAN_TRAP) \ + $(wildcard include/config/BLOCK) \ + $(wildcard include/config/COMPACTION) \ + $(wildcard include/config/TASK_XACCT) \ + $(wildcard include/config/CPUSETS) \ + $(wildcard include/config/X86_CPU_RESCTRL) \ + $(wildcard include/config/FUTEX) \ + $(wildcard include/config/COMPAT) \ + $(wildcard include/config/PERF_EVENTS) \ + $(wildcard include/config/DEBUG_PREEMPT) \ + $(wildcard include/config/NUMA) \ + $(wildcard include/config/NUMA_BALANCING) \ + $(wildcard include/config/RSEQ) \ + $(wildcard include/config/TASK_DELAY_ACCT) \ + $(wildcard include/config/FAULT_INJECTION) \ + $(wildcard include/config/LATENCYTOP) \ + $(wildcard include/config/KUNIT) \ + $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ + $(wildcard include/config/UPROBES) \ + $(wildcard include/config/BCACHE) \ + $(wildcard include/config/VMAP_STACK) \ + $(wildcard include/config/LIVEPATCH) \ + $(wildcard include/config/SECURITY) \ + $(wildcard include/config/BPF_SYSCALL) \ + $(wildcard include/config/GCC_PLUGIN_STACKLEAK) \ + $(wildcard include/config/X86_MCE) \ + $(wildcard include/config/KRETPROBES) \ + $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ + $(wildcard include/config/ARCH_TASK_STRUCT_ON_STACK) \ + $(wildcard include/config/PREEMPTION) \ + $(wildcard include/config/DEBUG_RSEQ) \ + include/uapi/linux/sched.h \ + arch/x86/include/asm/current.h \ + arch/x86/include/asm/percpu.h \ + $(wildcard include/config/X86_64_SMP) \ + include/asm-generic/percpu.h \ + $(wildcard include/config/HAVE_SETUP_PER_CPU_AREA) \ + include/linux/threads.h \ + $(wildcard include/config/BASE_SMALL) \ + include/linux/percpu-defs.h \ + $(wildcard include/config/DEBUG_FORCE_WEAK_PER_CPU) \ + $(wildcard include/config/AMD_MEM_ENCRYPT) \ + include/linux/pid.h \ + include/linux/rculist.h \ + $(wildcard include/config/PROVE_RCU_LIST) \ + include/linux/list.h \ + $(wildcard include/config/DEBUG_LIST) \ + include/linux/poison.h \ + $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ + include/linux/rcupdate.h \ + $(wildcard include/config/TINY_RCU) \ + $(wildcard include/config/TASKS_RCU_GENERIC) \ + $(wildcard include/config/RCU_STALL_COMMON) \ + $(wildcard include/config/RCU_NOCB_CPU) \ + $(wildcard include/config/TASKS_RUDE_RCU) \ + $(wildcard include/config/TREE_RCU) \ + $(wildcard include/config/DEBUG_OBJECTS_RCU_HEAD) \ + $(wildcard include/config/HOTPLUG_CPU) \ + $(wildcard include/config/PROVE_RCU) \ + $(wildcard include/config/ARCH_WEAK_RELEASE_ACQUIRE) \ + include/linux/atomic.h \ + arch/x86/include/asm/atomic.h \ + arch/x86/include/asm/cmpxchg.h \ + arch/x86/include/asm/cmpxchg_64.h \ + arch/x86/include/asm/atomic64_64.h \ + include/linux/atomic/atomic-arch-fallback.h \ + $(wildcard include/config/GENERIC_ATOMIC64) \ + include/linux/atomic/atomic-long.h \ + include/linux/atomic/atomic-instrumented.h \ + include/linux/irqflags.h \ + $(wildcard include/config/IRQSOFF_TRACER) \ + $(wildcard include/config/PREEMPT_TRACER) \ + $(wildcard include/config/DEBUG_IRQFLAGS) \ + $(wildcard include/config/TRACE_IRQFLAGS_SUPPORT) \ + arch/x86/include/asm/irqflags.h \ + $(wildcard include/config/DEBUG_ENTRY) \ + $(wildcard include/config/XEN_PV) \ + arch/x86/include/asm/processor-flags.h \ + $(wildcard include/config/VM86) \ + arch/x86/include/uapi/asm/processor-flags.h \ + include/linux/mem_encrypt.h \ + $(wildcard include/config/ARCH_HAS_MEM_ENCRYPT) \ + arch/x86/include/asm/mem_encrypt.h \ + include/linux/cc_platform.h \ + $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ + arch/x86/include/uapi/asm/bootparam.h \ + include/linux/screen_info.h \ + include/uapi/linux/screen_info.h \ + include/linux/apm_bios.h \ + include/uapi/linux/apm_bios.h \ + include/uapi/linux/ioctl.h \ + arch/x86/include/generated/uapi/asm/ioctl.h \ + include/asm-generic/ioctl.h \ + include/uapi/asm-generic/ioctl.h \ + include/linux/edd.h \ + include/uapi/linux/edd.h \ + arch/x86/include/asm/ist.h \ + arch/x86/include/uapi/asm/ist.h \ + include/video/edid.h \ + $(wildcard include/config/X86) \ + include/uapi/video/edid.h \ + arch/x86/include/asm/nospec-branch.h \ + $(wildcard include/config/CPU_IBPB_ENTRY) \ + include/linux/static_key.h \ + include/linux/objtool.h \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/unwind_hints.h \ + arch/x86/include/asm/orc_types.h \ + arch/x86/include/asm/GEN-for-each-reg.h \ + arch/x86/include/asm/segment.h \ + arch/x86/include/asm/paravirt.h \ + $(wildcard include/config/PARAVIRT) \ + $(wildcard include/config/PARAVIRT_SPINLOCKS) \ + $(wildcard include/config/X86_IOPL_IOPERM) \ + $(wildcard include/config/PGTABLE_LEVELS) \ + arch/x86/include/asm/pgtable_types.h \ + $(wildcard include/config/MEM_SOFT_DIRTY) \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_WP) \ + $(wildcard include/config/PROC_FS) \ + arch/x86/include/asm/page_types.h \ + $(wildcard include/config/PHYSICAL_START) \ + $(wildcard include/config/PHYSICAL_ALIGN) \ + $(wildcard include/config/DYNAMIC_PHYSICAL_MASK) \ + arch/x86/include/asm/page_64_types.h \ + $(wildcard include/config/KASAN) \ + $(wildcard include/config/DYNAMIC_MEMORY_LAYOUT) \ + $(wildcard include/config/RANDOMIZE_BASE) \ + arch/x86/include/asm/kaslr.h \ + $(wildcard include/config/RANDOMIZE_MEMORY) \ + arch/x86/include/asm/pgtable_64_types.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL_FORCE_MAP) \ + arch/x86/include/asm/sparsemem.h \ + $(wildcard include/config/SPARSEMEM) \ + $(wildcard include/config/NUMA_KEEP_MEMINFO) \ + arch/x86/include/asm/paravirt_types.h \ + $(wildcard include/config/PARAVIRT_DEBUG) \ + arch/x86/include/asm/desc_defs.h \ + include/linux/bug.h \ + $(wildcard include/config/GENERIC_BUG) \ + $(wildcard include/config/BUG_ON_DATA_CORRUPTION) \ + arch/x86/include/asm/bug.h \ + $(wildcard include/config/DEBUG_BUGVERBOSE) \ + include/linux/instrumentation.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/BUG) \ + $(wildcard include/config/GENERIC_BUG_RELATIVE_POINTERS) \ + include/linux/cpumask.h \ + $(wildcard include/config/CPUMASK_OFFSTACK) \ + $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ + include/linux/bitmap.h \ + include/linux/string.h \ + $(wildcard include/config/BINARY_PRINTF) \ + $(wildcard include/config/FORTIFY_SOURCE) \ + include/linux/errno.h \ + include/uapi/linux/errno.h \ + arch/x86/include/generated/uapi/asm/errno.h \ + include/uapi/asm-generic/errno.h \ + include/uapi/asm-generic/errno-base.h \ + include/uapi/linux/string.h \ + arch/x86/include/asm/string.h \ + arch/x86/include/asm/string_64.h \ + $(wildcard include/config/ARCH_HAS_UACCESS_FLUSHCACHE) \ + include/linux/fortify-string.h \ + arch/x86/include/asm/frame.h \ + $(wildcard include/config/FRAME_POINTER) \ + include/linux/preempt.h \ + $(wildcard include/config/TRACE_PREEMPT_TOGGLE) \ + arch/x86/include/asm/preempt.h \ + include/linux/thread_info.h \ + $(wildcard include/config/GENERIC_ENTRY) \ + $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ + include/linux/restart_block.h \ + include/linux/time64.h \ + include/linux/math64.h \ + $(wildcard include/config/ARCH_SUPPORTS_INT128) \ + include/vdso/math64.h \ + include/vdso/time64.h \ + include/uapi/linux/time.h \ + include/uapi/linux/time_types.h \ + arch/x86/include/asm/thread_info.h \ + $(wildcard include/config/IA32_EMULATION) \ + arch/x86/include/asm/page.h \ + arch/x86/include/asm/page_64.h \ + $(wildcard include/config/DEBUG_VIRTUAL) \ + $(wildcard include/config/FLATMEM) \ + $(wildcard include/config/X86_VSYSCALL_EMULATION) \ + include/linux/range.h \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/SPARSEMEM_VMEMMAP) \ + include/linux/pfn.h \ + include/asm-generic/getorder.h \ + arch/x86/include/asm/cpufeature.h \ + $(wildcard include/config/X86_FEATURE_NAMES) \ + arch/x86/include/asm/processor.h \ + $(wildcard include/config/X86_VMX_FEATURE_NAMES) \ + $(wildcard include/config/X86_DEBUGCTLMSR) \ + $(wildcard include/config/CPU_SUP_AMD) \ + $(wildcard include/config/XEN) \ + arch/x86/include/asm/math_emu.h \ + arch/x86/include/asm/ptrace.h \ + arch/x86/include/uapi/asm/ptrace.h \ + arch/x86/include/uapi/asm/ptrace-abi.h \ + arch/x86/include/asm/proto.h \ + arch/x86/include/uapi/asm/ldt.h \ + arch/x86/include/uapi/asm/sigcontext.h \ + arch/x86/include/asm/msr.h \ + $(wildcard include/config/TRACEPOINTS) \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/cpumask.h \ + arch/x86/include/uapi/asm/msr.h \ + include/linux/tracepoint-defs.h \ + arch/x86/include/asm/special_insns.h \ + arch/x86/include/asm/fpu/types.h \ + arch/x86/include/asm/vmxfeatures.h \ + arch/x86/include/asm/vdso/processor.h \ + include/linux/personality.h \ + include/uapi/linux/personality.h \ + include/linux/err.h \ + include/linux/bottom_half.h \ + include/linux/lockdep.h \ + $(wildcard include/config/DEBUG_LOCKING_API_SELFTESTS) \ + include/linux/smp.h \ + $(wildcard include/config/UP_LATE_INIT) \ + include/linux/smp_types.h \ + include/linux/llist.h \ + $(wildcard include/config/ARCH_HAVE_NMI_SAFE_CMPXCHG) \ + arch/x86/include/asm/smp.h \ + $(wildcard include/config/X86_LOCAL_APIC) \ + $(wildcard include/config/DEBUG_NMI_SELFTEST) \ + include/linux/rcutree.h \ + include/linux/wait.h \ + include/linux/spinlock.h \ + arch/x86/include/generated/asm/mmiowb.h \ + include/asm-generic/mmiowb.h \ + $(wildcard include/config/MMIOWB) \ + arch/x86/include/asm/spinlock.h \ + arch/x86/include/asm/qspinlock.h \ + include/asm-generic/qspinlock.h \ + arch/x86/include/asm/qrwlock.h \ + include/asm-generic/qrwlock.h \ + include/linux/rwlock.h \ + $(wildcard include/config/PREEMPT) \ + include/linux/spinlock_api_smp.h \ + $(wildcard include/config/INLINE_SPIN_LOCK) \ + $(wildcard include/config/INLINE_SPIN_LOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK_BH) \ + $(wildcard include/config/UNINLINE_SPIN_UNLOCK) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/GENERIC_LOCKBREAK) \ + include/linux/rwlock_api_smp.h \ + $(wildcard include/config/INLINE_READ_LOCK) \ + $(wildcard include/config/INLINE_WRITE_LOCK) \ + $(wildcard include/config/INLINE_READ_LOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_LOCK_BH) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_READ_TRYLOCK) \ + $(wildcard include/config/INLINE_WRITE_TRYLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_BH) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQRESTORE) \ + include/uapi/linux/wait.h \ + include/linux/refcount.h \ + include/linux/sem.h \ + include/uapi/linux/sem.h \ + include/linux/ipc.h \ + include/linux/uidgid.h \ + $(wildcard include/config/MULTIUSER) \ + $(wildcard include/config/USER_NS) \ + include/linux/highuid.h \ + include/linux/rhashtable-types.h \ + include/linux/mutex.h \ + $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ + include/linux/osq_lock.h \ + include/linux/debug_locks.h \ + include/linux/workqueue.h \ + $(wildcard include/config/DEBUG_OBJECTS_WORK) \ + $(wildcard include/config/FREEZER) \ + $(wildcard include/config/SYSFS) \ + $(wildcard include/config/WQ_WATCHDOG) \ + include/linux/timer.h \ + $(wildcard include/config/DEBUG_OBJECTS_TIMERS) \ + $(wildcard include/config/NO_HZ_COMMON) \ + include/linux/ktime.h \ + include/linux/time.h \ + $(wildcard include/config/POSIX_TIMERS) \ + include/linux/time32.h \ + include/linux/timex.h \ + include/uapi/linux/timex.h \ + arch/x86/include/asm/timex.h \ + $(wildcard include/config/X86_TSC) \ + arch/x86/include/asm/tsc.h \ + include/vdso/time32.h \ + include/vdso/time.h \ + include/linux/jiffies.h \ + include/vdso/jiffies.h \ + include/generated/timeconst.h \ + include/vdso/ktime.h \ + include/linux/timekeeping.h \ + $(wildcard include/config/GENERIC_CMOS_UPDATE) \ + include/linux/clocksource_ids.h \ + include/linux/debugobjects.h \ + $(wildcard include/config/DEBUG_OBJECTS) \ + $(wildcard include/config/DEBUG_OBJECTS_FREE) \ + include/uapi/linux/ipc.h \ + arch/x86/include/generated/uapi/asm/ipcbuf.h \ + include/uapi/asm-generic/ipcbuf.h \ + arch/x86/include/uapi/asm/sembuf.h \ + include/linux/shm.h \ + include/uapi/linux/shm.h \ + include/uapi/asm-generic/hugetlb_encode.h \ + arch/x86/include/uapi/asm/shmbuf.h \ + include/uapi/asm-generic/shmbuf.h \ + arch/x86/include/asm/shmparam.h \ + include/linux/plist.h \ + $(wildcard include/config/DEBUG_PLIST) \ + include/linux/hrtimer.h \ + $(wildcard include/config/HIGH_RES_TIMERS) \ + $(wildcard include/config/TIME_LOW_RES) \ + $(wildcard include/config/TIMERFD) \ + include/linux/hrtimer_defs.h \ + include/linux/rbtree.h \ + include/linux/rbtree_types.h \ + include/linux/percpu.h \ + $(wildcard include/config/NEED_PER_CPU_EMBED_FIRST_CHUNK) \ + $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ + include/linux/mmdebug.h \ + $(wildcard include/config/DEBUG_VM) \ + $(wildcard include/config/DEBUG_VM_PGFLAGS) \ + include/linux/seqlock.h \ + include/linux/ww_mutex.h \ + $(wildcard include/config/DEBUG_RT_MUTEXES) \ + $(wildcard include/config/DEBUG_WW_MUTEX_SLOWPATH) \ + include/linux/rtmutex.h \ + include/linux/timerqueue.h \ + include/linux/seccomp.h \ + $(wildcard include/config/SECCOMP) \ + $(wildcard include/config/HAVE_ARCH_SECCOMP_FILTER) \ + $(wildcard include/config/SECCOMP_FILTER) \ + $(wildcard include/config/CHECKPOINT_RESTORE) \ + $(wildcard include/config/SECCOMP_CACHE_DEBUG) \ + include/uapi/linux/seccomp.h \ + arch/x86/include/asm/seccomp.h \ + arch/x86/include/asm/unistd.h \ + arch/x86/include/uapi/asm/unistd.h \ + arch/x86/include/generated/uapi/asm/unistd_64.h \ + arch/x86/include/generated/asm/unistd_64_x32.h \ + arch/x86/include/generated/asm/unistd_32_ia32.h \ + arch/x86/include/asm/ia32_unistd.h \ + include/asm-generic/seccomp.h \ + include/uapi/linux/unistd.h \ + include/linux/nodemask.h \ + $(wildcard include/config/HIGHMEM) \ + include/linux/numa.h \ + $(wildcard include/config/NODES_SHIFT) \ + include/linux/resource.h \ + include/uapi/linux/resource.h \ + arch/x86/include/generated/uapi/asm/resource.h \ + include/asm-generic/resource.h \ + include/uapi/asm-generic/resource.h \ + include/linux/latencytop.h \ + include/linux/sched/prio.h \ + include/linux/sched/types.h \ + include/linux/signal_types.h \ + $(wildcard include/config/OLD_SIGACTION) \ + include/uapi/linux/signal.h \ + arch/x86/include/asm/signal.h \ + arch/x86/include/uapi/asm/signal.h \ + include/uapi/asm-generic/signal-defs.h \ + arch/x86/include/uapi/asm/siginfo.h \ + include/uapi/asm-generic/siginfo.h \ + include/linux/syscall_user_dispatch.h \ + include/linux/mm_types_task.h \ + $(wildcard include/config/ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH) \ + $(wildcard include/config/SPLIT_PTLOCK_CPUS) \ + $(wildcard include/config/ARCH_ENABLE_SPLIT_PMD_PTLOCK) \ + arch/x86/include/asm/tlbbatch.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/TASK_IO_ACCOUNTING) \ + include/linux/posix-timers.h \ + include/linux/alarmtimer.h \ + $(wildcard include/config/RTC_CLASS) \ + include/linux/task_work.h \ + include/uapi/linux/rseq.h \ + include/linux/kcsan.h \ + arch/x86/include/generated/asm/kmap_size.h \ + include/asm-generic/kmap_size.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL) \ + arch/x86/include/asm/uaccess.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_HAS_ASM_GOTO_TIED_OUTPUT) \ + $(wildcard include/config/ARCH_HAS_COPY_MC) \ + $(wildcard include/config/X86_INTEL_USERCOPY) \ + arch/x86/include/asm/smap.h \ + arch/x86/include/asm/extable.h \ + $(wildcard include/config/BPF_JIT) \ + arch/x86/include/asm/uaccess_64.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.h \ + include/linux/module.h \ + $(wildcard include/config/MODULES_TREE_LOOKUP) \ + $(wildcard include/config/STACKTRACE_BUILD_ID) \ + $(wildcard include/config/MODULE_SIG) \ + $(wildcard include/config/KALLSYMS) \ + $(wildcard include/config/TREE_SRCU) \ + $(wildcard include/config/BPF_EVENTS) \ + $(wildcard include/config/DEBUG_INFO_BTF_MODULES) \ + $(wildcard include/config/EVENT_TRACING) \ + $(wildcard include/config/MODULE_UNLOAD) \ + $(wildcard include/config/CONSTRUCTORS) \ + $(wildcard include/config/FUNCTION_ERROR_INJECTION) \ + include/linux/stat.h \ + arch/x86/include/uapi/asm/stat.h \ + include/uapi/linux/stat.h \ + include/linux/buildid.h \ + $(wildcard include/config/CRASH_CORE) \ + include/linux/mm_types.h \ + $(wildcard include/config/HAVE_ALIGNED_STRUCT_PAGE) \ + $(wildcard include/config/USERFAULTFD) \ + $(wildcard include/config/SWAP) \ + $(wildcard include/config/HAVE_ARCH_COMPAT_MMAP_BASES) \ + $(wildcard include/config/MEMBARRIER) \ + $(wildcard include/config/AIO) \ + $(wildcard include/config/MMU_NOTIFIER) \ + $(wildcard include/config/TRANSPARENT_HUGEPAGE) \ + $(wildcard include/config/HUGETLB_PAGE) \ + $(wildcard include/config/IOMMU_SUPPORT) \ + include/linux/auxvec.h \ + include/uapi/linux/auxvec.h \ + arch/x86/include/uapi/asm/auxvec.h \ + include/linux/rwsem.h \ + $(wildcard include/config/RWSEM_SPIN_ON_OWNER) \ + $(wildcard include/config/DEBUG_RWSEMS) \ + include/linux/completion.h \ + include/linux/swait.h \ + include/linux/uprobes.h \ + arch/x86/include/asm/uprobes.h \ + include/linux/notifier.h \ + include/linux/srcu.h \ + $(wildcard include/config/TINY_SRCU) \ + $(wildcard include/config/SRCU) \ + include/linux/rcu_segcblist.h \ + include/linux/srcutree.h \ + include/linux/rcu_node_tree.h \ + $(wildcard include/config/RCU_FANOUT) \ + $(wildcard include/config/RCU_FANOUT_LEAF) \ + include/linux/page-flags-layout.h \ + $(wildcard include/config/KASAN_HW_TAGS) \ + include/generated/bounds.h \ + arch/x86/include/asm/mmu.h \ + $(wildcard include/config/MODIFY_LDT_SYSCALL) \ + include/linux/kmod.h \ + include/linux/umh.h \ + include/linux/gfp.h \ + $(wildcard include/config/ZONE_DMA) \ + $(wildcard include/config/ZONE_DMA32) \ + $(wildcard include/config/ZONE_DEVICE) \ + $(wildcard include/config/PM_SLEEP) \ + $(wildcard include/config/CONTIG_ALLOC) \ + $(wildcard include/config/CMA) \ + include/linux/mmzone.h \ + $(wildcard include/config/FORCE_MAX_ZONEORDER) \ + $(wildcard include/config/MEMORY_ISOLATION) \ + $(wildcard include/config/ZSMALLOC) \ + $(wildcard include/config/SHADOW_CALL_STACK) \ + $(wildcard include/config/MEMORY_HOTPLUG) \ + $(wildcard include/config/PAGE_EXTENSION) \ + $(wildcard include/config/DEFERRED_STRUCT_PAGE_INIT) \ + $(wildcard include/config/HAVE_MEMORYLESS_NODES) \ + $(wildcard include/config/SPARSEMEM_EXTREME) \ + $(wildcard include/config/HAVE_ARCH_PFN_VALID) \ + include/linux/pageblock-flags.h \ + $(wildcard include/config/HUGETLB_PAGE_SIZE_VARIABLE) \ + include/linux/page-flags.h \ + $(wildcard include/config/ARCH_USES_PG_UNCACHED) \ + $(wildcard include/config/MEMORY_FAILURE) \ + $(wildcard include/config/PAGE_IDLE_FLAG) \ + $(wildcard include/config/THP_SWAP) \ + $(wildcard include/config/KSM) \ + include/linux/local_lock.h \ + include/linux/local_lock_internal.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ + $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ + $(wildcard include/config/MEMORY_HOTREMOVE) \ + arch/x86/include/asm/mmzone.h \ + arch/x86/include/asm/mmzone_64.h \ + include/linux/topology.h \ + $(wildcard include/config/USE_PERCPU_NUMA_NODE_ID) \ + $(wildcard include/config/SCHED_SMT) \ + include/linux/arch_topology.h \ + $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ + arch/x86/include/asm/topology.h \ + $(wildcard include/config/SCHED_MC_PRIO) \ + $(wildcard include/config/ACPI_CPPC_LIB) \ + arch/x86/include/asm/mpspec.h \ + $(wildcard include/config/EISA) \ + $(wildcard include/config/X86_MPPARSE) \ + arch/x86/include/asm/mpspec_def.h \ + arch/x86/include/asm/x86_init.h \ + arch/x86/include/asm/apicdef.h \ + include/asm-generic/topology.h \ + include/linux/sysctl.h \ + $(wildcard include/config/SYSCTL) \ + include/uapi/linux/sysctl.h \ + include/linux/elf.h \ + $(wildcard include/config/ARCH_USE_GNU_PROPERTY) \ + $(wildcard include/config/ARCH_HAVE_ELF_PROT) \ + arch/x86/include/asm/elf.h \ + $(wildcard include/config/X86_X32_ABI) \ + arch/x86/include/asm/user.h \ + arch/x86/include/asm/user_64.h \ + arch/x86/include/asm/fsgsbase.h \ + arch/x86/include/asm/vdso.h \ + $(wildcard include/config/X86_X32) \ + include/uapi/linux/elf.h \ + include/uapi/linux/elf-em.h \ + include/linux/kobject.h \ + $(wildcard include/config/UEVENT_HELPER) \ + $(wildcard include/config/DEBUG_KOBJECT_RELEASE) \ + include/linux/sysfs.h \ + include/linux/kernfs.h \ + $(wildcard include/config/KERNFS) \ + include/linux/idr.h \ + include/linux/radix-tree.h \ + include/linux/xarray.h \ + $(wildcard include/config/XARRAY_MULTI) \ + include/linux/kconfig.h \ + include/linux/kobject_ns.h \ + include/linux/kref.h \ + include/linux/moduleparam.h \ + $(wildcard include/config/ALPHA) \ + $(wildcard include/config/IA64) \ + $(wildcard include/config/PPC64) \ + include/linux/rbtree_latch.h \ + include/linux/error-injection.h \ + include/asm-generic/error-injection.h \ + include/linux/cfi.h \ + $(wildcard include/config/CFI_CLANG_SHADOW) \ + arch/x86/include/asm/module.h \ + $(wildcard include/config/UNWINDER_ORC) \ + include/asm-generic/module.h \ + $(wildcard include/config/HAVE_MOD_ARCH_SPECIFIC) \ + $(wildcard include/config/MODULES_USE_ELF_REL) \ + $(wildcard include/config/MODULES_USE_ELF_RELA) \ + arch/x86/include/asm/orc_types.h \ + include/linux/cdev.h \ + include/linux/kdev_t.h \ + include/uapi/linux/kdev_t.h \ + include/linux/device.h \ + $(wildcard include/config/ENERGY_MODEL) \ + $(wildcard include/config/GENERIC_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/PINCTRL) \ + $(wildcard include/config/GENERIC_MSI_IRQ) \ + $(wildcard include/config/DMA_OPS) \ + $(wildcard include/config/DMA_DECLARE_COHERENT) \ + $(wildcard include/config/DMA_CMA) \ + $(wildcard include/config/SWIOTLB) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_DEVICE) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU_ALL) \ + $(wildcard include/config/DMA_OPS_BYPASS) \ + $(wildcard include/config/OF) \ + $(wildcard include/config/DEVTMPFS) \ + $(wildcard include/config/SYSFS_DEPRECATED) \ + include/linux/dev_printk.h \ + include/linux/ratelimit.h \ + include/linux/energy_model.h \ + include/linux/sched/cpufreq.h \ + $(wildcard include/config/CPU_FREQ) \ + include/linux/sched/topology.h \ + $(wildcard include/config/SCHED_DEBUG) \ + $(wildcard include/config/SCHED_MC) \ + $(wildcard include/config/CPU_FREQ_GOV_SCHEDUTIL) \ + include/linux/sched/idle.h \ + include/linux/sched/sd_flags.h \ + include/linux/ioport.h \ + include/linux/klist.h \ + include/linux/pm.h \ + $(wildcard include/config/VT_CONSOLE_SLEEP) \ + $(wildcard include/config/PM) \ + $(wildcard include/config/PM_CLK) \ + $(wildcard include/config/PM_GENERIC_DOMAINS) \ + include/linux/overflow.h \ + include/linux/device/bus.h \ + $(wildcard include/config/ACPI) \ + include/linux/device/class.h \ + include/linux/device/driver.h \ + arch/x86/include/asm/device.h \ + include/linux/pm_wakeup.h \ + include/linux/dma-mapping.h \ + $(wildcard include/config/DMA_API_DEBUG) \ + $(wildcard include/config/HAS_DMA) \ + $(wildcard include/config/NEED_DMA_MAP_STATE) \ + include/linux/sizes.h \ + include/linux/dma-direction.h \ + include/linux/scatterlist.h \ + $(wildcard include/config/NEED_SG_DMA_LENGTH) \ + $(wildcard include/config/DEBUG_SG) \ + $(wildcard include/config/SGL_ALLOC) \ + $(wildcard include/config/ARCH_NO_SG_CHAIN) \ + $(wildcard include/config/SG_POOL) \ + include/linux/mm.h \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_BITS) \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_COMPAT_BITS) \ + $(wildcard include/config/DEBUG_INFO_BTF) \ + $(wildcard include/config/ARCH_USES_HIGH_VMA_FLAGS) \ + $(wildcard include/config/ARCH_HAS_PKEYS) \ + $(wildcard include/config/PPC) \ + $(wildcard include/config/PARISC) \ + $(wildcard include/config/SPARC64) \ + $(wildcard include/config/ARM64) \ + $(wildcard include/config/ARM64_MTE) \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ + $(wildcard include/config/STACK_GROWSUP) \ + $(wildcard include/config/SHMEM) \ + $(wildcard include/config/DEV_PAGEMAP_OPS) \ + $(wildcard include/config/DEVICE_PRIVATE) \ + $(wildcard include/config/PCI_P2PDMA) \ + $(wildcard include/config/MIGRATION) \ + $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ + $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ + $(wildcard include/config/DEBUG_VM_RB) \ + $(wildcard include/config/PAGE_POISONING) \ + $(wildcard include/config/INIT_ON_ALLOC_DEFAULT_ON) \ + $(wildcard include/config/INIT_ON_FREE_DEFAULT_ON) \ + $(wildcard include/config/DEBUG_PAGEALLOC) \ + $(wildcard include/config/HUGETLBFS) \ + $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ + include/linux/mmap_lock.h \ + include/linux/percpu-refcount.h \ + include/linux/bit_spinlock.h \ + include/linux/shrinker.h \ + include/linux/page_ext.h \ + include/linux/stacktrace.h \ + $(wildcard include/config/STACKTRACE) \ + $(wildcard include/config/ARCH_STACKWALK) \ + $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ + include/linux/stackdepot.h \ + $(wildcard include/config/STACKDEPOT) \ + include/linux/page_ref.h \ + $(wildcard include/config/DEBUG_PAGE_REF) \ + include/linux/memremap.h \ + include/linux/pgtable.h \ + $(wildcard include/config/HIGHPTE) \ + $(wildcard include/config/GUP_GET_PTE_LOW_HIGH) \ + $(wildcard include/config/HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD) \ + $(wildcard include/config/HAVE_ARCH_SOFT_DIRTY) \ + $(wildcard include/config/ARCH_ENABLE_THP_MIGRATION) \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMAP) \ + $(wildcard include/config/X86_ESPFIX64) \ + arch/x86/include/asm/pgtable.h \ + $(wildcard include/config/DEBUG_WX) \ + arch/x86/include/asm/pkru.h \ + arch/x86/include/asm/fpu/api.h \ + $(wildcard include/config/X86_DEBUG_FPU) \ + include/asm-generic/pgtable_uffd.h \ + arch/x86/include/asm/pgtable_64.h \ + arch/x86/include/asm/fixmap.h \ + $(wildcard include/config/PROVIDE_OHCI1394_DMA_INIT) \ + $(wildcard include/config/X86_IO_APIC) \ + $(wildcard include/config/PCI_MMCONFIG) \ + $(wildcard include/config/ACPI_APEI_GHES) \ + $(wildcard include/config/INTEL_TXT) \ + arch/x86/include/uapi/asm/vsyscall.h \ + include/asm-generic/fixmap.h \ + arch/x86/include/asm/pgtable-invert.h \ + include/linux/kasan.h \ + $(wildcard include/config/KASAN_STACK) \ + $(wildcard include/config/KASAN_VMALLOC) \ + $(wildcard include/config/KASAN_INLINE) \ + include/linux/huge_mm.h \ + include/linux/sched/coredump.h \ + $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ + include/linux/fs.h \ + $(wildcard include/config/READ_ONLY_THP_FOR_FS) \ + $(wildcard include/config/FS_POSIX_ACL) \ + $(wildcard include/config/CGROUP_WRITEBACK) \ + $(wildcard include/config/IMA) \ + $(wildcard include/config/FILE_LOCKING) \ + $(wildcard include/config/FSNOTIFY) \ + $(wildcard include/config/FS_ENCRYPTION) \ + $(wildcard include/config/FS_VERITY) \ + $(wildcard include/config/EPOLL) \ + $(wildcard include/config/UNICODE) \ + $(wildcard include/config/QUOTA) \ + $(wildcard include/config/BLK_DEV_LOOP) \ + $(wildcard include/config/FS_DAX) \ + include/linux/wait_bit.h \ + include/linux/dcache.h \ + include/linux/rculist_bl.h \ + include/linux/list_bl.h \ + include/linux/lockref.h \ + $(wildcard include/config/ARCH_USE_CMPXCHG_LOCKREF) \ + include/linux/stringhash.h \ + $(wildcard include/config/DCACHE_WORD_ACCESS) \ + include/linux/hash.h \ + $(wildcard include/config/HAVE_ARCH_HASH) \ + include/linux/path.h \ + include/linux/list_lru.h \ + $(wildcard include/config/MEMCG_KMEM) \ + include/linux/capability.h \ + include/uapi/linux/capability.h \ + include/linux/semaphore.h \ + include/linux/fcntl.h \ + $(wildcard include/config/ARCH_32BIT_OFF_T) \ + include/uapi/linux/fcntl.h \ + arch/x86/include/generated/uapi/asm/fcntl.h \ + include/uapi/asm-generic/fcntl.h \ + include/uapi/linux/openat2.h \ + include/linux/migrate_mode.h \ + include/linux/percpu-rwsem.h \ + include/linux/rcuwait.h \ + include/linux/sched/signal.h \ + $(wildcard include/config/SCHED_AUTOGROUP) \ + $(wildcard include/config/BSD_PROCESS_ACCT) \ + $(wildcard include/config/TASKSTATS) \ + include/linux/signal.h \ + $(wildcard include/config/DYNAMIC_SIGFRAME) \ + include/linux/sched/jobctl.h \ + include/linux/sched/task.h \ + $(wildcard include/config/HAVE_EXIT_THREAD) \ + $(wildcard include/config/ARCH_WANTS_DYNAMIC_TASK_STRUCT) \ + $(wildcard include/config/HAVE_ARCH_THREAD_STRUCT_WHITELIST) \ + include/linux/cred.h \ + $(wildcard include/config/DEBUG_CREDENTIALS) \ + include/linux/key.h \ + $(wildcard include/config/KEY_NOTIFICATIONS) \ + $(wildcard include/config/NET) \ + include/linux/assoc_array.h \ + $(wildcard include/config/ASSOCIATIVE_ARRAY) \ + include/linux/sched/user.h \ + $(wildcard include/config/WATCH_QUEUE) \ + include/linux/percpu_counter.h \ + include/linux/rcu_sync.h \ + include/linux/delayed_call.h \ + include/linux/uuid.h \ + include/uapi/linux/uuid.h \ + include/linux/errseq.h \ + include/linux/ioprio.h \ + include/linux/sched/rt.h \ + include/linux/iocontext.h \ + include/uapi/linux/ioprio.h \ + include/linux/fs_types.h \ + include/linux/mount.h \ + include/linux/mnt_idmapping.h \ + include/uapi/linux/fs.h \ + include/linux/quota.h \ + $(wildcard include/config/QUOTA_NETLINK_INTERFACE) \ + include/uapi/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/dqblk_qtree.h \ + include/linux/projid.h \ + include/uapi/linux/quota.h \ + include/linux/nfs_fs_i.h \ + include/linux/vmstat.h \ + $(wildcard include/config/VM_EVENT_COUNTERS) \ + $(wildcard include/config/DEBUG_TLBFLUSH) \ + $(wildcard include/config/DEBUG_VM_VMACACHE) \ + include/linux/vm_event_item.h \ + $(wildcard include/config/MEMORY_BALLOON) \ + $(wildcard include/config/BALLOON_COMPACTION) \ + arch/x86/include/asm/io.h \ + $(wildcard include/config/MTRR) \ + $(wildcard include/config/X86_PAT) \ + arch/x86/include/generated/asm/early_ioremap.h \ + include/asm-generic/early_ioremap.h \ + $(wildcard include/config/GENERIC_EARLY_IOREMAP) \ + include/asm-generic/iomap.h \ + $(wildcard include/config/HAS_IOPORT_MAP) \ + include/asm-generic/pci_iomap.h \ + $(wildcard include/config/PCI) \ + $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ + $(wildcard include/config/GENERIC_PCI_IOMAP) \ + include/asm-generic/io.h \ + $(wildcard include/config/GENERIC_IOMAP) \ + $(wildcard include/config/GENERIC_IOREMAP) \ + $(wildcard include/config/VIRT_TO_BUS) \ + include/linux/logic_pio.h \ + $(wildcard include/config/INDIRECT_PIO) \ + include/linux/fwnode.h \ + include/linux/vmalloc.h \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMALLOC) \ + arch/x86/include/asm/vmalloc.h \ + arch/x86/include/asm/pgtable_areas.h \ + include/linux/delay.h \ + arch/x86/include/asm/delay.h \ + include/asm-generic/delay.h \ + include/linux/fb.h \ + $(wildcard include/config/GUMSTIX_AM200EPD) \ + $(wildcard include/config/FB_NOTIFY) \ + $(wildcard include/config/FB_DEFERRED_IO) \ + $(wildcard include/config/FB_TILEBLITTING) \ + $(wildcard include/config/FB_BACKLIGHT) \ + $(wildcard include/config/FB_FOREIGN_ENDIAN) \ + $(wildcard include/config/FB_BOTH_ENDIAN) \ + $(wildcard include/config/FB_BIG_ENDIAN) \ + $(wildcard include/config/FB_LITTLE_ENDIAN) \ + include/linux/kgdb.h \ + $(wildcard include/config/HAVE_ARCH_KGDB) \ + $(wildcard include/config/KGDB) \ + $(wildcard include/config/SERIAL_KGDB_NMI) \ + $(wildcard include/config/KGDB_HONOUR_BLOCKLIST) \ + include/linux/kprobes.h \ + $(wildcard include/config/KPROBES_SANITY_TEST) \ + $(wildcard include/config/OPTPROBES) \ + $(wildcard include/config/KPROBES_ON_FTRACE) \ + include/linux/ftrace.h \ + $(wildcard include/config/FUNCTION_TRACER) \ + $(wildcard include/config/DYNAMIC_FTRACE) \ + $(wildcard include/config/HAVE_DYNAMIC_FTRACE_WITH_ARGS) \ + $(wildcard include/config/DYNAMIC_FTRACE_WITH_REGS) \ + $(wildcard include/config/DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ + $(wildcard include/config/HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ + $(wildcard include/config/STACK_TRACER) \ + $(wildcard include/config/FUNCTION_PROFILER) \ + $(wildcard include/config/FTRACE_SYSCALLS) \ + include/linux/trace_recursion.h \ + $(wildcard include/config/FTRACE_RECORD_RECURSION) \ + include/linux/interrupt.h \ + $(wildcard include/config/IRQ_FORCED_THREADING) \ + $(wildcard include/config/GENERIC_IRQ_PROBE) \ + $(wildcard include/config/IRQ_TIMINGS) \ + include/linux/irqreturn.h \ + include/linux/irqnr.h \ + include/uapi/linux/irqnr.h \ + include/linux/hardirq.h \ + include/linux/context_tracking_state.h \ + $(wildcard include/config/CONTEXT_TRACKING) \ + include/linux/ftrace_irq.h \ + $(wildcard include/config/HWLAT_TRACER) \ + $(wildcard include/config/OSNOISE_TRACER) \ + include/linux/vtime.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING) \ + $(wildcard include/config/IRQ_TIME_ACCOUNTING) \ + arch/x86/include/asm/hardirq.h \ + $(wildcard include/config/KVM_INTEL) \ + $(wildcard include/config/HAVE_KVM) \ + $(wildcard include/config/X86_THERMAL_VECTOR) \ + $(wildcard include/config/X86_MCE_THRESHOLD) \ + $(wildcard include/config/X86_MCE_AMD) \ + $(wildcard include/config/X86_HV_CALLBACK_VECTOR) \ + $(wildcard include/config/HYPERV) \ + arch/x86/include/asm/irq.h \ + arch/x86/include/asm/irq_vectors.h \ + $(wildcard include/config/PCI_MSI) \ + arch/x86/include/asm/sections.h \ + include/asm-generic/sections.h \ + include/linux/trace_clock.h \ + arch/x86/include/asm/trace_clock.h \ + include/linux/kallsyms.h \ + $(wildcard include/config/KALLSYMS_ALL) \ + include/linux/ptrace.h \ + include/linux/pid_namespace.h \ + $(wildcard include/config/PID_NS) \ + include/linux/nsproxy.h \ + include/linux/ns_common.h \ + include/uapi/linux/ptrace.h \ + arch/x86/include/asm/ftrace.h \ + include/linux/compat.h \ + $(wildcard include/config/ARCH_HAS_SYSCALL_WRAPPER) \ + $(wildcard include/config/COMPAT_OLD_SIGACTION) \ + $(wildcard include/config/ODD_RT_SIGACTION) \ + include/linux/socket.h \ + arch/x86/include/generated/uapi/asm/socket.h \ + include/uapi/asm-generic/socket.h \ + arch/x86/include/generated/uapi/asm/sockios.h \ + include/uapi/asm-generic/sockios.h \ + include/uapi/linux/sockios.h \ + include/linux/uio.h \ + include/uapi/linux/uio.h \ + include/uapi/linux/socket.h \ + include/uapi/linux/if.h \ + include/uapi/linux/libc-compat.h \ + include/uapi/linux/hdlc/ioctl.h \ + include/uapi/linux/aio_abi.h \ + arch/x86/include/asm/compat.h \ + include/linux/sched/task_stack.h \ + $(wildcard include/config/DEBUG_STACK_USAGE) \ + include/uapi/linux/magic.h \ + arch/x86/include/asm/user32.h \ + include/asm-generic/compat.h \ + $(wildcard include/config/COMPAT_FOR_U64_ALIGNMENT) \ + arch/x86/include/asm/syscall_wrapper.h \ + include/linux/freelist.h \ + arch/x86/include/asm/kprobes.h \ + include/asm-generic/kprobes.h \ + arch/x86/include/asm/text-patching.h \ + $(wildcard include/config/UML_X86) \ + arch/x86/include/asm/insn.h \ + arch/x86/include/asm/inat.h \ + arch/x86/include/asm/inat_types.h \ + arch/x86/include/asm/kgdb.h \ + include/uapi/linux/fb.h \ + include/linux/i2c.h \ + $(wildcard include/config/I2C) \ + $(wildcard include/config/I2C_SLAVE) \ + $(wildcard include/config/I2C_BOARDINFO) \ + $(wildcard include/config/I2C_MUX) \ + include/linux/acpi.h \ + $(wildcard include/config/ACPI_DEBUGGER) \ + $(wildcard include/config/LOONGARCH) \ + $(wildcard include/config/ACPI_PROCESSOR_CSTATE) \ + $(wildcard include/config/ACPI_HOTPLUG_CPU) \ + $(wildcard include/config/ACPI_HOTPLUG_IOAPIC) \ + $(wildcard include/config/ACPI_WMI) \ + $(wildcard include/config/ACPI_NUMA) \ + $(wildcard include/config/HIBERNATION) \ + $(wildcard include/config/ACPI_HOTPLUG_MEMORY) \ + $(wildcard include/config/ACPI_CONTAINER) \ + $(wildcard include/config/ACPI_GTDT) \ + $(wildcard include/config/GPIOLIB) \ + $(wildcard include/config/ACPI_TABLE_UPGRADE) \ + $(wildcard include/config/ACPI_WATCHDOG) \ + $(wildcard include/config/ACPI_SPCR_TABLE) \ + $(wildcard include/config/ACPI_GENERIC_GSI) \ + $(wildcard include/config/ACPI_LPIT) \ + $(wildcard include/config/ACPI_PPTT) \ + include/linux/irqdomain.h \ + $(wildcard include/config/IRQ_DOMAIN_HIERARCHY) \ + $(wildcard include/config/GENERIC_IRQ_DEBUGFS) \ + $(wildcard include/config/IRQ_DOMAIN) \ + $(wildcard include/config/IRQ_DOMAIN_NOMAP) \ + include/linux/irqhandler.h \ + include/linux/of.h \ + $(wildcard include/config/OF_DYNAMIC) \ + $(wildcard include/config/SPARC) \ + $(wildcard include/config/OF_PROMTREE) \ + $(wildcard include/config/OF_KOBJ) \ + $(wildcard include/config/OF_NUMA) \ + $(wildcard include/config/OF_OVERLAY) \ + include/linux/mod_devicetable.h \ + include/linux/property.h \ + include/linux/resource_ext.h \ + include/linux/slab.h \ + $(wildcard include/config/DEBUG_SLAB) \ + $(wildcard include/config/FAILSLAB) \ + $(wildcard include/config/HAVE_HARDENED_USERCOPY_ALLOCATOR) \ + $(wildcard include/config/SLAB) \ + $(wildcard include/config/SLUB) \ + $(wildcard include/config/SLOB) \ + $(wildcard include/config/CC_IS_GCC) \ + $(wildcard include/config/CLANG_VERSION) \ + include/acpi/acpi.h \ + include/acpi/platform/acenv.h \ + include/acpi/platform/acgcc.h \ + include/acpi/platform/aclinux.h \ + $(wildcard include/config/ACPI_REDUCED_HARDWARE_ONLY) \ + $(wildcard include/config/ACPI_DEBUG) \ + include/linux/ctype.h \ + arch/x86/include/asm/acenv.h \ + include/acpi/acnames.h \ + include/acpi/actypes.h \ + include/acpi/acexcep.h \ + include/acpi/actbl.h \ + include/acpi/actbl1.h \ + include/acpi/actbl2.h \ + include/acpi/actbl3.h \ + include/acpi/acrestyp.h \ + include/acpi/platform/acenvex.h \ + include/acpi/platform/aclinuxex.h \ + include/acpi/platform/acgccex.h \ + include/acpi/acoutput.h \ + include/acpi/acpiosxf.h \ + include/acpi/acpixf.h \ + include/acpi/acconfig.h \ + include/acpi/acbuffer.h \ + include/acpi/acpi_bus.h \ + $(wildcard include/config/ACPI_SYSTEM_POWER_STATES_SUPPORT) \ + $(wildcard include/config/ACPI_SLEEP) \ + include/acpi/acpi_drivers.h \ + $(wildcard include/config/ACPI_DOCK) \ + include/acpi/acpi_numa.h \ + $(wildcard include/config/ACPI_HMAT) \ + include/acpi/acpi_io.h \ + include/linux/io.h \ + arch/x86/include/asm/acpi.h \ + $(wildcard include/config/ACPI_APEI) \ + include/acpi/pdc_intel.h \ + arch/x86/include/asm/numa.h \ + $(wildcard include/config/NUMA_EMU) \ + include/linux/regulator/consumer.h \ + $(wildcard include/config/REGULATOR) \ + include/linux/suspend.h \ + $(wildcard include/config/VT) \ + $(wildcard include/config/SUSPEND) \ + $(wildcard include/config/HIBERNATION_SNAPSHOT_DEV) \ + $(wildcard include/config/PM_SLEEP_DEBUG) \ + $(wildcard include/config/PM_AUTOSLEEP) \ + include/linux/swap.h \ + $(wildcard include/config/FRONTSWAP) \ + $(wildcard include/config/MEMCG_SWAP) \ + include/linux/memcontrol.h \ + include/linux/cgroup.h \ + $(wildcard include/config/CGROUP_CPUACCT) \ + $(wildcard include/config/SOCK_CGROUP_DATA) \ + $(wildcard include/config/CGROUP_DATA) \ + $(wildcard include/config/CGROUP_BPF) \ + include/uapi/linux/cgroupstats.h \ + include/uapi/linux/taskstats.h \ + include/linux/seq_file.h \ + include/linux/user_namespace.h \ + $(wildcard include/config/INOTIFY_USER) \ + $(wildcard include/config/FANOTIFY) \ + $(wildcard include/config/PERSISTENT_KEYRINGS) \ + include/linux/kernel_stat.h \ + include/linux/cgroup-defs.h \ + $(wildcard include/config/CGROUP_NET_CLASSID) \ + $(wildcard include/config/CGROUP_NET_PRIO) \ + include/linux/u64_stats_sync.h \ + arch/x86/include/generated/asm/local64.h \ + include/asm-generic/local64.h \ + arch/x86/include/asm/local.h \ + include/linux/bpf-cgroup.h \ + include/linux/bpf.h \ + $(wildcard include/config/BPF_JIT_ALWAYS_ON) \ + $(wildcard include/config/INET) \ + include/uapi/linux/bpf.h \ + $(wildcard include/config/BPF_LIRC_MODE2) \ + $(wildcard include/config/EFFICIENT_UNALIGNED_ACCESS) \ + $(wildcard include/config/IP_ROUTE_CLASSID) \ + $(wildcard include/config/BPF_KPROBE_OVERRIDE) \ + $(wildcard include/config/XFRM) \ + include/uapi/linux/bpf_common.h \ + include/linux/file.h \ + include/linux/sched/mm.h \ + $(wildcard include/config/ARCH_HAS_MEMBARRIER_CALLBACKS) \ + include/linux/sync_core.h \ + $(wildcard include/config/ARCH_HAS_SYNC_CORE_BEFORE_USERMODE) \ + arch/x86/include/asm/sync_core.h \ + include/linux/bpfptr.h \ + include/linux/sockptr.h \ + include/linux/bpf_types.h \ + $(wildcard include/config/BPF_LSM) \ + $(wildcard include/config/XDP_SOCKETS) \ + include/linux/psi_types.h \ + include/linux/kthread.h \ + include/linux/cgroup_subsys.h \ + $(wildcard include/config/CGROUP_DEVICE) \ + $(wildcard include/config/CGROUP_FREEZER) \ + $(wildcard include/config/CGROUP_PERF) \ + $(wildcard include/config/CGROUP_HUGETLB) \ + $(wildcard include/config/CGROUP_PIDS) \ + $(wildcard include/config/CGROUP_RDMA) \ + $(wildcard include/config/CGROUP_MISC) \ + $(wildcard include/config/CGROUP_DEBUG) \ + include/linux/page_counter.h \ + include/linux/vmpressure.h \ + include/linux/eventfd.h \ + include/linux/writeback.h \ + include/linux/flex_proportions.h \ + include/linux/backing-dev-defs.h \ + $(wildcard include/config/DEBUG_FS) \ + include/linux/blk_types.h \ + $(wildcard include/config/FAIL_MAKE_REQUEST) \ + $(wildcard include/config/BLK_CGROUP_IOCOST) \ + $(wildcard include/config/BLK_INLINE_ENCRYPTION) \ + $(wildcard include/config/BLK_DEV_INTEGRITY) \ + include/linux/bvec.h \ + include/linux/highmem.h \ + arch/x86/include/asm/cacheflush.h \ + include/asm-generic/cacheflush.h \ + include/linux/highmem-internal.h \ + include/linux/blk-cgroup.h \ + $(wildcard include/config/BLK_CGROUP_FC_APPID) \ + include/linux/blkdev.h \ + $(wildcard include/config/BLK_RQ_ALLOC_TIME) \ + $(wildcard include/config/BLK_WBT) \ + $(wildcard include/config/BLK_DEV_ZONED) \ + $(wildcard include/config/BLK_DEV_THROTTLING) \ + $(wildcard include/config/BLK_DEBUG_FS) \ + include/linux/sched/clock.h \ + $(wildcard include/config/HAVE_UNSTABLE_SCHED_CLOCK) \ + include/uapi/linux/major.h \ + include/linux/genhd.h \ + $(wildcard include/config/BLOCK_HOLDER_DEPRECATED) \ + $(wildcard include/config/CDROM) \ + include/linux/mempool.h \ + include/linux/bio.h \ + include/uapi/linux/blkzoned.h \ + include/linux/sbitmap.h \ + include/linux/elevator.h \ + include/linux/hashtable.h \ + include/linux/blk-mq.h \ + $(wildcard include/config/FAIL_IO_TIMEOUT) \ + include/linux/node.h \ + $(wildcard include/config/HMEM_REPORTING) \ + $(wildcard include/config/MEMORY_HOTPLUG_SPARSE) \ + include/linux/pagemap.h \ + include/linux/hugetlb_inline.h \ + include/uapi/linux/mempolicy.h \ + include/linux/freezer.h \ + include/uapi/linux/i2c.h \ + include/linux/backlight.h \ + $(wildcard include/config/BACKLIGHT_CLASS_DEVICE) \ + include/linux/poll.h \ + include/uapi/linux/poll.h \ + arch/x86/include/generated/uapi/asm/poll.h \ + include/uapi/asm-generic/poll.h \ + include/uapi/linux/eventpoll.h \ + include/linux/pci.h \ + $(wildcard include/config/PCI_IOV) \ + $(wildcard include/config/PCIEAER) \ + $(wildcard include/config/PCIEPORTBUS) \ + $(wildcard include/config/PCIEASPM) \ + $(wildcard include/config/HOTPLUG_PCI_PCIE) \ + $(wildcard include/config/PCIE_PTM) \ + $(wildcard include/config/PCIE_DPC) \ + $(wildcard include/config/PCI_ATS) \ + $(wildcard include/config/PCI_PRI) \ + $(wildcard include/config/PCI_PASID) \ + $(wildcard include/config/PCI_DOMAINS_GENERIC) \ + $(wildcard include/config/PCI_DOMAINS) \ + $(wildcard include/config/PCI_QUIRKS) \ + $(wildcard include/config/ACPI_MCFG) \ + $(wildcard include/config/HOTPLUG_PCI) \ + $(wildcard include/config/EEH) \ + include/uapi/linux/pci.h \ + include/uapi/linux/pci_regs.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + arch/x86/include/asm/pci.h \ + $(wildcard include/config/PCI_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/VMD) \ + arch/x86/include/asm/memtype.h \ + include/asm-generic/pci.h \ + include/linux/pci-dma-compat.h \ + include/linux/aio.h \ + include/linux/splice.h \ + include/linux/pipe_fs_i.h \ + include/generated/uapi/linux/version.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.h \ + $(wildcard include/config/BLOCK_ID) \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.h \ + include/linux/cpuset.h \ + include/linux/mmu_context.h \ + arch/x86/include/asm/mmu_context.h \ + arch/x86/include/asm/desc.h \ + arch/x86/include/asm/cpu_entry_area.h \ + arch/x86/include/asm/intel_ds.h \ + include/linux/pkeys.h \ + arch/x86/include/asm/pkeys.h \ + include/trace/events/tlb.h \ + include/linux/tracepoint.h \ + $(wildcard include/config/HAVE_SYSCALL_TRACEPOINTS) \ + $(wildcard include/config/TRACEPOINT) \ + include/linux/static_call.h \ + include/linux/cpu.h \ + $(wildcard include/config/PM_SLEEP_SMP) \ + $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ + $(wildcard include/config/HOTPLUG_SMT) \ + include/linux/cpuhotplug.h \ + arch/x86/include/asm/static_call.h \ + include/trace/define_trace.h \ + arch/x86/include/asm/tlbflush.h \ + arch/x86/include/asm/invpcid.h \ + arch/x86/include/asm/pti.h \ + arch/x86/include/asm/debugreg.h \ + arch/x86/include/uapi/asm/debugreg.h \ + include/asm-generic/mmu_context.h \ + +/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_events.o: $(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_events.o) + +$(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_events.o): diff --git a/host_software/driver/XDMA/linux-kernel/xdma/.cdev_sgdma.o.cmd b/host_software/driver/XDMA/linux-kernel/xdma/.cdev_sgdma.o.cmd new file mode 100644 index 0000000..0367645 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/.cdev_sgdma.o.cmd @@ -0,0 +1,1428 @@ +cmd_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.o := gcc -Wp,-MMD,/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/.cdev_sgdma.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/9/include -I./arch/x86/include -I./arch/x86/include/generated -I./include -I./arch/x86/include/uapi -I./arch/x86/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -I./ubuntu/include -include ./include/linux/compiler_types.h -D__KERNEL__ -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu89 -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fcf-protection=none -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -DCONFIG_X86_X32_ABI -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mfunction-return=thunk-extern -fno-jump-tables -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fstack-protector-strong -Wimplicit-fallthrough=5 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-stack-clash-protection -g -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wno-stringop-truncation -Wno-array-bounds -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -I/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/include -fsanitize=bounds -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"cdev_sgdma"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.c + +source_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.o := /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.c + +deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.o := \ + include/linux/compiler-version.h \ + $(wildcard include/config/CC_VERSION_TEXT) \ + include/linux/kconfig.h \ + $(wildcard include/config/CPU_BIG_ENDIAN) \ + $(wildcard include/config/BOOGER) \ + $(wildcard include/config/FOO) \ + include/linux/compiler_types.h \ + $(wildcard include/config/HAVE_ARCH_COMPILER_H) \ + $(wildcard include/config/CC_HAS_ASM_INLINE) \ + include/linux/compiler_attributes.h \ + include/linux/compiler-gcc.h \ + $(wildcard include/config/RETPOLINE) \ + $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ + $(wildcard include/config/KCOV) \ + include/linux/types.h \ + $(wildcard include/config/HAVE_UID16) \ + $(wildcard include/config/UID16) \ + $(wildcard include/config/ARCH_DMA_ADDR_T_64BIT) \ + $(wildcard include/config/PHYS_ADDR_T_64BIT) \ + $(wildcard include/config/64BIT) \ + $(wildcard include/config/ARCH_32BIT_USTAT_F_TINODE) \ + include/uapi/linux/types.h \ + arch/x86/include/generated/uapi/asm/types.h \ + include/uapi/asm-generic/types.h \ + include/asm-generic/int-ll64.h \ + include/uapi/asm-generic/int-ll64.h \ + arch/x86/include/uapi/asm/bitsperlong.h \ + include/asm-generic/bitsperlong.h \ + include/uapi/asm-generic/bitsperlong.h \ + include/uapi/linux/posix_types.h \ + include/linux/stddef.h \ + include/uapi/linux/stddef.h \ + include/linux/compiler_types.h \ + arch/x86/include/asm/posix_types.h \ + $(wildcard include/config/X86_32) \ + arch/x86/include/uapi/asm/posix_types_64.h \ + include/uapi/asm-generic/posix_types.h \ + arch/x86/include/asm/cacheflush.h \ + include/linux/mm.h \ + $(wildcard include/config/NUMA) \ + $(wildcard include/config/SYSCTL) \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_BITS) \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_COMPAT_BITS) \ + $(wildcard include/config/DEBUG_INFO_BTF) \ + $(wildcard include/config/SPARSEMEM) \ + $(wildcard include/config/SPARSEMEM_VMEMMAP) \ + $(wildcard include/config/MMU) \ + $(wildcard include/config/MEM_SOFT_DIRTY) \ + $(wildcard include/config/ARCH_USES_HIGH_VMA_FLAGS) \ + $(wildcard include/config/ARCH_HAS_PKEYS) \ + $(wildcard include/config/PPC) \ + $(wildcard include/config/X86) \ + $(wildcard include/config/PARISC) \ + $(wildcard include/config/IA64) \ + $(wildcard include/config/SPARC64) \ + $(wildcard include/config/ARM64) \ + $(wildcard include/config/ARM64_MTE) \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ + $(wildcard include/config/STACK_GROWSUP) \ + $(wildcard include/config/SHMEM) \ + $(wildcard include/config/TRANSPARENT_HUGEPAGE) \ + $(wildcard include/config/HUGETLB_PAGE) \ + $(wildcard include/config/ZONE_DEVICE) \ + $(wildcard include/config/DEV_PAGEMAP_OPS) \ + $(wildcard include/config/DEVICE_PRIVATE) \ + $(wildcard include/config/PCI_P2PDMA) \ + $(wildcard include/config/NUMA_BALANCING) \ + $(wildcard include/config/KASAN_SW_TAGS) \ + $(wildcard include/config/KASAN_HW_TAGS) \ + $(wildcard include/config/MIGRATION) \ + $(wildcard include/config/HIGHMEM) \ + $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ + $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ + $(wildcard include/config/DEBUG_VM_RB) \ + $(wildcard include/config/PAGE_POISONING) \ + $(wildcard include/config/INIT_ON_ALLOC_DEFAULT_ON) \ + $(wildcard include/config/INIT_ON_FREE_DEFAULT_ON) \ + $(wildcard include/config/DEBUG_PAGEALLOC) \ + $(wildcard include/config/MEMORY_HOTPLUG) \ + $(wildcard include/config/MEMORY_FAILURE) \ + $(wildcard include/config/HUGETLBFS) \ + $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ + $(wildcard include/config/PRINTK) \ + include/linux/errno.h \ + include/uapi/linux/errno.h \ + arch/x86/include/generated/uapi/asm/errno.h \ + include/uapi/asm-generic/errno.h \ + include/uapi/asm-generic/errno-base.h \ + include/linux/mmdebug.h \ + $(wildcard include/config/DEBUG_VM) \ + $(wildcard include/config/DEBUG_VIRTUAL) \ + $(wildcard include/config/DEBUG_VM_PGFLAGS) \ + include/linux/bug.h \ + $(wildcard include/config/GENERIC_BUG) \ + $(wildcard include/config/BUG_ON_DATA_CORRUPTION) \ + arch/x86/include/asm/bug.h \ + $(wildcard include/config/DEBUG_BUGVERBOSE) \ + include/linux/stringify.h \ + include/linux/instrumentation.h \ + $(wildcard include/config/DEBUG_ENTRY) \ + $(wildcard include/config/STACK_VALIDATION) \ + include/asm-generic/bug.h \ + $(wildcard include/config/BUG) \ + $(wildcard include/config/GENERIC_BUG_RELATIVE_POINTERS) \ + $(wildcard include/config/SMP) \ + $(wildcard include/config/CFI_CLANG) \ + $(wildcard include/config/MODULES) \ + include/linux/compiler.h \ + $(wildcard include/config/TRACE_BRANCH_PROFILING) \ + $(wildcard include/config/PROFILE_ALL_BRANCHES) \ + arch/x86/include/generated/asm/rwonce.h \ + include/asm-generic/rwonce.h \ + include/linux/kasan-checks.h \ + $(wildcard include/config/KASAN_GENERIC) \ + include/linux/kcsan-checks.h \ + $(wildcard include/config/KCSAN) \ + $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ + include/linux/once_lite.h \ + include/linux/panic.h \ + $(wildcard include/config/PANIC_TIMEOUT) \ + include/linux/printk.h \ + $(wildcard include/config/MESSAGE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_QUIET) \ + $(wildcard include/config/EARLY_PRINTK) \ + $(wildcard include/config/PRINTK_INDEX) \ + $(wildcard include/config/DYNAMIC_DEBUG) \ + $(wildcard include/config/DYNAMIC_DEBUG_CORE) \ + include/linux/stdarg.h \ + include/linux/init.h \ + $(wildcard include/config/HAVE_ARCH_PREL32_RELOCATIONS) \ + $(wildcard include/config/STRICT_KERNEL_RWX) \ + $(wildcard include/config/STRICT_MODULE_RWX) \ + $(wildcard include/config/LTO_CLANG) \ + include/linux/kern_levels.h \ + include/linux/linkage.h \ + $(wildcard include/config/ARCH_USE_SYM_ANNOTATIONS) \ + include/linux/export.h \ + $(wildcard include/config/MODVERSIONS) \ + $(wildcard include/config/MODULE_REL_CRCS) \ + $(wildcard include/config/TRIM_UNUSED_KSYMS) \ + arch/x86/include/asm/linkage.h \ + $(wildcard include/config/X86_64) \ + $(wildcard include/config/X86_ALIGNMENT_16) \ + $(wildcard include/config/RETHUNK) \ + $(wildcard include/config/SLS) \ + include/linux/cache.h \ + $(wildcard include/config/ARCH_HAS_CACHE_LINE_SIZE) \ + include/uapi/linux/kernel.h \ + include/uapi/linux/sysinfo.h \ + include/linux/const.h \ + include/vdso/const.h \ + include/uapi/linux/const.h \ + arch/x86/include/asm/cache.h \ + $(wildcard include/config/X86_L1_CACHE_SHIFT) \ + $(wildcard include/config/X86_INTERNODE_CACHE_SHIFT) \ + $(wildcard include/config/X86_VSMP) \ + include/linux/ratelimit_types.h \ + include/linux/bits.h \ + include/vdso/bits.h \ + include/linux/build_bug.h \ + include/uapi/linux/param.h \ + arch/x86/include/generated/uapi/asm/param.h \ + include/asm-generic/param.h \ + $(wildcard include/config/HZ) \ + include/uapi/asm-generic/param.h \ + include/linux/spinlock_types.h \ + $(wildcard include/config/PREEMPT_RT) \ + $(wildcard include/config/DEBUG_LOCK_ALLOC) \ + include/linux/spinlock_types_raw.h \ + $(wildcard include/config/DEBUG_SPINLOCK) \ + arch/x86/include/asm/spinlock_types.h \ + include/asm-generic/qspinlock_types.h \ + $(wildcard include/config/NR_CPUS) \ + include/asm-generic/qrwlock_types.h \ + arch/x86/include/uapi/asm/byteorder.h \ + include/linux/byteorder/little_endian.h \ + include/uapi/linux/byteorder/little_endian.h \ + include/linux/swab.h \ + include/uapi/linux/swab.h \ + arch/x86/include/uapi/asm/swab.h \ + include/linux/byteorder/generic.h \ + include/linux/lockdep_types.h \ + $(wildcard include/config/PROVE_RAW_LOCK_NESTING) \ + $(wildcard include/config/PREEMPT_LOCK) \ + $(wildcard include/config/LOCKDEP) \ + $(wildcard include/config/LOCK_STAT) \ + include/linux/rwlock_types.h \ + include/linux/dynamic_debug.h \ + $(wildcard include/config/JUMP_LABEL) \ + include/linux/jump_label.h \ + $(wildcard include/config/HAVE_ARCH_JUMP_LABEL_RELATIVE) \ + arch/x86/include/asm/jump_label.h \ + arch/x86/include/asm/asm.h \ + $(wildcard include/config/KPROBES) \ + arch/x86/include/asm/extable_fixup_types.h \ + arch/x86/include/asm/nops.h \ + include/linux/gfp.h \ + $(wildcard include/config/ZONE_DMA) \ + $(wildcard include/config/ZONE_DMA32) \ + $(wildcard include/config/PM_SLEEP) \ + $(wildcard include/config/CONTIG_ALLOC) \ + $(wildcard include/config/CMA) \ + include/linux/mmzone.h \ + $(wildcard include/config/FORCE_MAX_ZONEORDER) \ + $(wildcard include/config/MEMORY_ISOLATION) \ + $(wildcard include/config/ZSMALLOC) \ + $(wildcard include/config/SHADOW_CALL_STACK) \ + $(wildcard include/config/SWAP) \ + $(wildcard include/config/MEMCG) \ + $(wildcard include/config/COMPACTION) \ + $(wildcard include/config/FLATMEM) \ + $(wildcard include/config/PAGE_EXTENSION) \ + $(wildcard include/config/DEFERRED_STRUCT_PAGE_INIT) \ + $(wildcard include/config/HAVE_MEMORYLESS_NODES) \ + $(wildcard include/config/SPARSEMEM_EXTREME) \ + $(wildcard include/config/HAVE_ARCH_PFN_VALID) \ + include/linux/spinlock.h \ + $(wildcard include/config/PREEMPTION) \ + include/linux/typecheck.h \ + include/linux/preempt.h \ + $(wildcard include/config/PREEMPT_COUNT) \ + $(wildcard include/config/DEBUG_PREEMPT) \ + $(wildcard include/config/TRACE_PREEMPT_TOGGLE) \ + $(wildcard include/config/PREEMPT_NOTIFIERS) \ + include/linux/list.h \ + $(wildcard include/config/DEBUG_LIST) \ + include/linux/poison.h \ + $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ + include/linux/kernel.h \ + $(wildcard include/config/PREEMPT_VOLUNTARY) \ + $(wildcard include/config/PREEMPT_DYNAMIC) \ + $(wildcard include/config/PREEMPT_) \ + $(wildcard include/config/DEBUG_ATOMIC_SLEEP) \ + $(wildcard include/config/PROVE_LOCKING) \ + $(wildcard include/config/TRACING) \ + $(wildcard include/config/FTRACE_MCOUNT_RECORD) \ + include/linux/align.h \ + include/linux/limits.h \ + include/uapi/linux/limits.h \ + include/vdso/limits.h \ + include/linux/bitops.h \ + arch/x86/include/asm/bitops.h \ + $(wildcard include/config/X86_CMOV) \ + arch/x86/include/asm/alternative.h \ + arch/x86/include/asm/rmwcc.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO) \ + arch/x86/include/asm/barrier.h \ + include/asm-generic/barrier.h \ + include/asm-generic/bitops/find.h \ + $(wildcard include/config/GENERIC_FIND_FIRST_BIT) \ + include/asm-generic/bitops/sched.h \ + arch/x86/include/asm/arch_hweight.h \ + arch/x86/include/asm/cpufeatures.h \ + arch/x86/include/asm/required-features.h \ + $(wildcard include/config/X86_MINIMUM_CPU_FAMILY) \ + $(wildcard include/config/MATH_EMULATION) \ + $(wildcard include/config/X86_PAE) \ + $(wildcard include/config/X86_CMPXCHG64) \ + $(wildcard include/config/X86_USE_3DNOW) \ + $(wildcard include/config/X86_P6_NOP) \ + $(wildcard include/config/MATOM) \ + $(wildcard include/config/PARAVIRT_XXL) \ + arch/x86/include/asm/disabled-features.h \ + $(wildcard include/config/X86_SMAP) \ + $(wildcard include/config/X86_UMIP) \ + $(wildcard include/config/X86_INTEL_MEMORY_PROTECTION_KEYS) \ + $(wildcard include/config/X86_5LEVEL) \ + $(wildcard include/config/PAGE_TABLE_ISOLATION) \ + $(wildcard include/config/CPU_UNRET_ENTRY) \ + $(wildcard include/config/X86_SGX) \ + include/asm-generic/bitops/const_hweight.h \ + include/asm-generic/bitops/instrumented-atomic.h \ + include/linux/instrumented.h \ + include/asm-generic/bitops/instrumented-non-atomic.h \ + $(wildcard include/config/KCSAN_ASSUME_PLAIN_WRITES_ATOMIC) \ + include/asm-generic/bitops/instrumented-lock.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic-setbit.h \ + include/linux/kstrtox.h \ + include/linux/log2.h \ + $(wildcard include/config/ARCH_HAS_ILOG2_U32) \ + $(wildcard include/config/ARCH_HAS_ILOG2_U64) \ + include/linux/math.h \ + arch/x86/include/asm/div64.h \ + include/asm-generic/div64.h \ + include/linux/minmax.h \ + include/linux/static_call_types.h \ + $(wildcard include/config/HAVE_STATIC_CALL) \ + $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ + arch/x86/include/asm/preempt.h \ + arch/x86/include/asm/percpu.h \ + $(wildcard include/config/X86_64_SMP) \ + include/asm-generic/percpu.h \ + $(wildcard include/config/HAVE_SETUP_PER_CPU_AREA) \ + include/linux/threads.h \ + $(wildcard include/config/BASE_SMALL) \ + include/linux/percpu-defs.h \ + $(wildcard include/config/DEBUG_FORCE_WEAK_PER_CPU) \ + $(wildcard include/config/AMD_MEM_ENCRYPT) \ + include/linux/thread_info.h \ + $(wildcard include/config/THREAD_INFO_IN_TASK) \ + $(wildcard include/config/GENERIC_ENTRY) \ + $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ + $(wildcard include/config/HARDENED_USERCOPY) \ + include/linux/restart_block.h \ + include/linux/time64.h \ + include/linux/math64.h \ + $(wildcard include/config/ARCH_SUPPORTS_INT128) \ + include/vdso/math64.h \ + include/vdso/time64.h \ + include/uapi/linux/time.h \ + include/uapi/linux/time_types.h \ + arch/x86/include/asm/current.h \ + arch/x86/include/asm/thread_info.h \ + $(wildcard include/config/VM86) \ + $(wildcard include/config/X86_IOPL_IOPERM) \ + $(wildcard include/config/FRAME_POINTER) \ + $(wildcard include/config/COMPAT) \ + $(wildcard include/config/IA32_EMULATION) \ + arch/x86/include/asm/page.h \ + arch/x86/include/asm/page_types.h \ + $(wildcard include/config/PHYSICAL_START) \ + $(wildcard include/config/PHYSICAL_ALIGN) \ + $(wildcard include/config/DYNAMIC_PHYSICAL_MASK) \ + include/linux/mem_encrypt.h \ + $(wildcard include/config/ARCH_HAS_MEM_ENCRYPT) \ + arch/x86/include/asm/mem_encrypt.h \ + include/linux/cc_platform.h \ + $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ + arch/x86/include/uapi/asm/bootparam.h \ + include/linux/screen_info.h \ + include/uapi/linux/screen_info.h \ + include/linux/apm_bios.h \ + include/uapi/linux/apm_bios.h \ + include/uapi/linux/ioctl.h \ + arch/x86/include/generated/uapi/asm/ioctl.h \ + include/asm-generic/ioctl.h \ + include/uapi/asm-generic/ioctl.h \ + include/linux/edd.h \ + include/uapi/linux/edd.h \ + arch/x86/include/asm/ist.h \ + arch/x86/include/uapi/asm/ist.h \ + include/video/edid.h \ + include/uapi/video/edid.h \ + arch/x86/include/asm/page_64_types.h \ + $(wildcard include/config/KASAN) \ + $(wildcard include/config/DYNAMIC_MEMORY_LAYOUT) \ + $(wildcard include/config/RANDOMIZE_BASE) \ + arch/x86/include/asm/kaslr.h \ + $(wildcard include/config/RANDOMIZE_MEMORY) \ + arch/x86/include/asm/page_64.h \ + $(wildcard include/config/X86_VSYSCALL_EMULATION) \ + include/linux/range.h \ + include/asm-generic/memory_model.h \ + include/linux/pfn.h \ + include/asm-generic/getorder.h \ + arch/x86/include/asm/cpufeature.h \ + $(wildcard include/config/X86_FEATURE_NAMES) \ + arch/x86/include/asm/processor.h \ + $(wildcard include/config/X86_VMX_FEATURE_NAMES) \ + $(wildcard include/config/STACKPROTECTOR) \ + $(wildcard include/config/X86_DEBUGCTLMSR) \ + $(wildcard include/config/CPU_SUP_AMD) \ + $(wildcard include/config/XEN) \ + arch/x86/include/asm/processor-flags.h \ + arch/x86/include/uapi/asm/processor-flags.h \ + arch/x86/include/asm/math_emu.h \ + arch/x86/include/asm/ptrace.h \ + $(wildcard include/config/PARAVIRT) \ + arch/x86/include/asm/segment.h \ + $(wildcard include/config/XEN_PV) \ + arch/x86/include/uapi/asm/ptrace.h \ + arch/x86/include/uapi/asm/ptrace-abi.h \ + arch/x86/include/asm/paravirt_types.h \ + $(wildcard include/config/PGTABLE_LEVELS) \ + $(wildcard include/config/PARAVIRT_DEBUG) \ + arch/x86/include/asm/desc_defs.h \ + arch/x86/include/asm/pgtable_types.h \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_WP) \ + $(wildcard include/config/PROC_FS) \ + arch/x86/include/asm/pgtable_64_types.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL_FORCE_MAP) \ + arch/x86/include/asm/sparsemem.h \ + $(wildcard include/config/NUMA_KEEP_MEMINFO) \ + arch/x86/include/asm/nospec-branch.h \ + $(wildcard include/config/CPU_IBPB_ENTRY) \ + include/linux/static_key.h \ + include/linux/objtool.h \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/unwind_hints.h \ + arch/x86/include/asm/orc_types.h \ + arch/x86/include/asm/GEN-for-each-reg.h \ + arch/x86/include/asm/proto.h \ + arch/x86/include/uapi/asm/ldt.h \ + arch/x86/include/uapi/asm/sigcontext.h \ + arch/x86/include/asm/msr.h \ + $(wildcard include/config/TRACEPOINTS) \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/cpumask.h \ + include/linux/cpumask.h \ + $(wildcard include/config/CPUMASK_OFFSTACK) \ + $(wildcard include/config/HOTPLUG_CPU) \ + $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ + include/linux/bitmap.h \ + include/linux/string.h \ + $(wildcard include/config/BINARY_PRINTF) \ + $(wildcard include/config/FORTIFY_SOURCE) \ + include/uapi/linux/string.h \ + arch/x86/include/asm/string.h \ + arch/x86/include/asm/string_64.h \ + $(wildcard include/config/ARCH_HAS_UACCESS_FLUSHCACHE) \ + include/linux/fortify-string.h \ + include/linux/atomic.h \ + arch/x86/include/asm/atomic.h \ + arch/x86/include/asm/cmpxchg.h \ + arch/x86/include/asm/cmpxchg_64.h \ + arch/x86/include/asm/atomic64_64.h \ + include/linux/atomic/atomic-arch-fallback.h \ + $(wildcard include/config/GENERIC_ATOMIC64) \ + include/linux/atomic/atomic-long.h \ + include/linux/atomic/atomic-instrumented.h \ + arch/x86/include/uapi/asm/msr.h \ + include/linux/tracepoint-defs.h \ + arch/x86/include/asm/paravirt.h \ + $(wildcard include/config/PARAVIRT_SPINLOCKS) \ + arch/x86/include/asm/frame.h \ + arch/x86/include/asm/special_insns.h \ + include/linux/irqflags.h \ + $(wildcard include/config/TRACE_IRQFLAGS) \ + $(wildcard include/config/IRQSOFF_TRACER) \ + $(wildcard include/config/PREEMPT_TRACER) \ + $(wildcard include/config/DEBUG_IRQFLAGS) \ + $(wildcard include/config/TRACE_IRQFLAGS_SUPPORT) \ + arch/x86/include/asm/irqflags.h \ + arch/x86/include/asm/fpu/types.h \ + arch/x86/include/asm/vmxfeatures.h \ + arch/x86/include/asm/vdso/processor.h \ + include/linux/personality.h \ + include/uapi/linux/personality.h \ + include/linux/err.h \ + include/linux/bottom_half.h \ + include/linux/lockdep.h \ + $(wildcard include/config/DEBUG_LOCKING_API_SELFTESTS) \ + include/linux/smp.h \ + $(wildcard include/config/UP_LATE_INIT) \ + include/linux/smp_types.h \ + include/linux/llist.h \ + $(wildcard include/config/ARCH_HAVE_NMI_SAFE_CMPXCHG) \ + arch/x86/include/asm/smp.h \ + $(wildcard include/config/X86_LOCAL_APIC) \ + $(wildcard include/config/DEBUG_NMI_SELFTEST) \ + arch/x86/include/generated/asm/mmiowb.h \ + include/asm-generic/mmiowb.h \ + $(wildcard include/config/MMIOWB) \ + arch/x86/include/asm/spinlock.h \ + arch/x86/include/asm/qspinlock.h \ + include/asm-generic/qspinlock.h \ + arch/x86/include/asm/qrwlock.h \ + include/asm-generic/qrwlock.h \ + include/linux/rwlock.h \ + $(wildcard include/config/PREEMPT) \ + include/linux/spinlock_api_smp.h \ + $(wildcard include/config/INLINE_SPIN_LOCK) \ + $(wildcard include/config/INLINE_SPIN_LOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK_BH) \ + $(wildcard include/config/UNINLINE_SPIN_UNLOCK) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/GENERIC_LOCKBREAK) \ + include/linux/rwlock_api_smp.h \ + $(wildcard include/config/INLINE_READ_LOCK) \ + $(wildcard include/config/INLINE_WRITE_LOCK) \ + $(wildcard include/config/INLINE_READ_LOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_LOCK_BH) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_READ_TRYLOCK) \ + $(wildcard include/config/INLINE_WRITE_TRYLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_BH) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQRESTORE) \ + include/linux/wait.h \ + include/uapi/linux/wait.h \ + include/linux/numa.h \ + $(wildcard include/config/NODES_SHIFT) \ + include/linux/seqlock.h \ + include/linux/mutex.h \ + $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ + $(wildcard include/config/DEBUG_MUTEXES) \ + include/linux/osq_lock.h \ + include/linux/debug_locks.h \ + include/linux/ww_mutex.h \ + $(wildcard include/config/DEBUG_RT_MUTEXES) \ + $(wildcard include/config/DEBUG_WW_MUTEX_SLOWPATH) \ + include/linux/rtmutex.h \ + include/linux/rbtree_types.h \ + include/linux/nodemask.h \ + include/linux/pageblock-flags.h \ + $(wildcard include/config/HUGETLB_PAGE_SIZE_VARIABLE) \ + include/linux/page-flags-layout.h \ + include/generated/bounds.h \ + include/linux/mm_types.h \ + $(wildcard include/config/HAVE_ALIGNED_STRUCT_PAGE) \ + $(wildcard include/config/USERFAULTFD) \ + $(wildcard include/config/HAVE_ARCH_COMPAT_MMAP_BASES) \ + $(wildcard include/config/MEMBARRIER) \ + $(wildcard include/config/AIO) \ + $(wildcard include/config/MMU_NOTIFIER) \ + $(wildcard include/config/ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH) \ + $(wildcard include/config/IOMMU_SUPPORT) \ + include/linux/mm_types_task.h \ + $(wildcard include/config/SPLIT_PTLOCK_CPUS) \ + $(wildcard include/config/ARCH_ENABLE_SPLIT_PMD_PTLOCK) \ + arch/x86/include/asm/tlbbatch.h \ + include/linux/auxvec.h \ + include/uapi/linux/auxvec.h \ + arch/x86/include/uapi/asm/auxvec.h \ + include/linux/rbtree.h \ + include/linux/rcupdate.h \ + $(wildcard include/config/PREEMPT_RCU) \ + $(wildcard include/config/TINY_RCU) \ + $(wildcard include/config/TASKS_RCU_GENERIC) \ + $(wildcard include/config/RCU_STALL_COMMON) \ + $(wildcard include/config/NO_HZ_FULL) \ + $(wildcard include/config/RCU_NOCB_CPU) \ + $(wildcard include/config/TASKS_RCU) \ + $(wildcard include/config/TASKS_TRACE_RCU) \ + $(wildcard include/config/TASKS_RUDE_RCU) \ + $(wildcard include/config/TREE_RCU) \ + $(wildcard include/config/DEBUG_OBJECTS_RCU_HEAD) \ + $(wildcard include/config/PROVE_RCU) \ + $(wildcard include/config/ARCH_WEAK_RELEASE_ACQUIRE) \ + include/linux/rcutree.h \ + include/linux/rwsem.h \ + $(wildcard include/config/RWSEM_SPIN_ON_OWNER) \ + $(wildcard include/config/DEBUG_RWSEMS) \ + include/linux/completion.h \ + include/linux/swait.h \ + include/linux/uprobes.h \ + $(wildcard include/config/UPROBES) \ + arch/x86/include/asm/uprobes.h \ + include/linux/notifier.h \ + $(wildcard include/config/TREE_SRCU) \ + include/linux/srcu.h \ + $(wildcard include/config/TINY_SRCU) \ + $(wildcard include/config/SRCU) \ + include/linux/workqueue.h \ + $(wildcard include/config/DEBUG_OBJECTS_WORK) \ + $(wildcard include/config/FREEZER) \ + $(wildcard include/config/SYSFS) \ + $(wildcard include/config/WQ_WATCHDOG) \ + include/linux/timer.h \ + $(wildcard include/config/DEBUG_OBJECTS_TIMERS) \ + $(wildcard include/config/NO_HZ_COMMON) \ + include/linux/ktime.h \ + include/linux/time.h \ + $(wildcard include/config/POSIX_TIMERS) \ + include/linux/time32.h \ + include/linux/timex.h \ + include/uapi/linux/timex.h \ + arch/x86/include/asm/timex.h \ + $(wildcard include/config/X86_TSC) \ + arch/x86/include/asm/tsc.h \ + include/vdso/time32.h \ + include/vdso/time.h \ + include/linux/jiffies.h \ + include/vdso/jiffies.h \ + include/generated/timeconst.h \ + include/vdso/ktime.h \ + include/linux/timekeeping.h \ + $(wildcard include/config/GENERIC_CMOS_UPDATE) \ + include/linux/clocksource_ids.h \ + include/linux/debugobjects.h \ + $(wildcard include/config/DEBUG_OBJECTS) \ + $(wildcard include/config/DEBUG_OBJECTS_FREE) \ + include/linux/rcu_segcblist.h \ + include/linux/srcutree.h \ + include/linux/rcu_node_tree.h \ + $(wildcard include/config/RCU_FANOUT) \ + $(wildcard include/config/RCU_FANOUT_LEAF) \ + arch/x86/include/asm/mmu.h \ + $(wildcard include/config/MODIFY_LDT_SYSCALL) \ + include/linux/page-flags.h \ + $(wildcard include/config/ARCH_USES_PG_UNCACHED) \ + $(wildcard include/config/PAGE_IDLE_FLAG) \ + $(wildcard include/config/THP_SWAP) \ + $(wildcard include/config/KSM) \ + include/linux/local_lock.h \ + include/linux/local_lock_internal.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ + $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ + $(wildcard include/config/MEMORY_HOTREMOVE) \ + arch/x86/include/asm/mmzone.h \ + arch/x86/include/asm/mmzone_64.h \ + include/linux/topology.h \ + $(wildcard include/config/USE_PERCPU_NUMA_NODE_ID) \ + $(wildcard include/config/SCHED_SMT) \ + include/linux/arch_topology.h \ + $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ + include/linux/percpu.h \ + $(wildcard include/config/NEED_PER_CPU_EMBED_FIRST_CHUNK) \ + $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ + arch/x86/include/asm/topology.h \ + $(wildcard include/config/SCHED_MC_PRIO) \ + $(wildcard include/config/ACPI_CPPC_LIB) \ + arch/x86/include/asm/mpspec.h \ + $(wildcard include/config/EISA) \ + $(wildcard include/config/X86_MPPARSE) \ + arch/x86/include/asm/mpspec_def.h \ + arch/x86/include/asm/x86_init.h \ + arch/x86/include/asm/apicdef.h \ + include/asm-generic/topology.h \ + include/linux/mmap_lock.h \ + include/linux/percpu-refcount.h \ + include/linux/bit_spinlock.h \ + include/linux/shrinker.h \ + include/linux/resource.h \ + include/uapi/linux/resource.h \ + arch/x86/include/generated/uapi/asm/resource.h \ + include/asm-generic/resource.h \ + include/uapi/asm-generic/resource.h \ + include/linux/page_ext.h \ + include/linux/stacktrace.h \ + $(wildcard include/config/STACKTRACE) \ + $(wildcard include/config/ARCH_STACKWALK) \ + $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ + include/linux/stackdepot.h \ + $(wildcard include/config/STACKDEPOT) \ + include/linux/page_ref.h \ + $(wildcard include/config/DEBUG_PAGE_REF) \ + include/linux/memremap.h \ + include/linux/ioport.h \ + include/linux/overflow.h \ + include/linux/sizes.h \ + include/linux/sched.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_NATIVE) \ + $(wildcard include/config/SCHED_INFO) \ + $(wildcard include/config/SCHEDSTATS) \ + $(wildcard include/config/FAIR_GROUP_SCHED) \ + $(wildcard include/config/RT_GROUP_SCHED) \ + $(wildcard include/config/RT_MUTEXES) \ + $(wildcard include/config/UCLAMP_TASK) \ + $(wildcard include/config/UCLAMP_BUCKETS_COUNT) \ + $(wildcard include/config/KMAP_LOCAL) \ + $(wildcard include/config/SCHED_CORE) \ + $(wildcard include/config/CGROUP_SCHED) \ + $(wildcard include/config/BLK_DEV_IO_TRACE) \ + $(wildcard include/config/PSI) \ + $(wildcard include/config/COMPAT_BRK) \ + $(wildcard include/config/CGROUPS) \ + $(wildcard include/config/BLK_CGROUP) \ + $(wildcard include/config/PAGE_OWNER) \ + $(wildcard include/config/EVENTFD) \ + $(wildcard include/config/ARCH_HAS_SCALED_CPUTIME) \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_GEN) \ + $(wildcard include/config/POSIX_CPUTIMERS) \ + $(wildcard include/config/POSIX_CPU_TIMERS_TASK_WORK) \ + $(wildcard include/config/KEYS) \ + $(wildcard include/config/SYSVIPC) \ + $(wildcard include/config/DETECT_HUNG_TASK) \ + $(wildcard include/config/IO_URING) \ + $(wildcard include/config/AUDIT) \ + $(wildcard include/config/AUDITSYSCALL) \ + $(wildcard include/config/UBSAN) \ + $(wildcard include/config/UBSAN_TRAP) \ + $(wildcard include/config/BLOCK) \ + $(wildcard include/config/TASK_XACCT) \ + $(wildcard include/config/CPUSETS) \ + $(wildcard include/config/X86_CPU_RESCTRL) \ + $(wildcard include/config/FUTEX) \ + $(wildcard include/config/PERF_EVENTS) \ + $(wildcard include/config/RSEQ) \ + $(wildcard include/config/TASK_DELAY_ACCT) \ + $(wildcard include/config/FAULT_INJECTION) \ + $(wildcard include/config/LATENCYTOP) \ + $(wildcard include/config/KUNIT) \ + $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ + $(wildcard include/config/BCACHE) \ + $(wildcard include/config/VMAP_STACK) \ + $(wildcard include/config/LIVEPATCH) \ + $(wildcard include/config/SECURITY) \ + $(wildcard include/config/BPF_SYSCALL) \ + $(wildcard include/config/GCC_PLUGIN_STACKLEAK) \ + $(wildcard include/config/X86_MCE) \ + $(wildcard include/config/KRETPROBES) \ + $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ + $(wildcard include/config/ARCH_TASK_STRUCT_ON_STACK) \ + $(wildcard include/config/DEBUG_RSEQ) \ + include/uapi/linux/sched.h \ + include/linux/pid.h \ + include/linux/rculist.h \ + $(wildcard include/config/PROVE_RCU_LIST) \ + include/linux/refcount.h \ + include/linux/sem.h \ + include/uapi/linux/sem.h \ + include/linux/ipc.h \ + include/linux/uidgid.h \ + $(wildcard include/config/MULTIUSER) \ + $(wildcard include/config/USER_NS) \ + include/linux/highuid.h \ + include/linux/rhashtable-types.h \ + include/uapi/linux/ipc.h \ + arch/x86/include/generated/uapi/asm/ipcbuf.h \ + include/uapi/asm-generic/ipcbuf.h \ + arch/x86/include/uapi/asm/sembuf.h \ + include/linux/shm.h \ + include/uapi/linux/shm.h \ + include/uapi/asm-generic/hugetlb_encode.h \ + arch/x86/include/uapi/asm/shmbuf.h \ + include/uapi/asm-generic/shmbuf.h \ + arch/x86/include/asm/shmparam.h \ + include/linux/plist.h \ + $(wildcard include/config/DEBUG_PLIST) \ + include/linux/hrtimer.h \ + $(wildcard include/config/HIGH_RES_TIMERS) \ + $(wildcard include/config/TIME_LOW_RES) \ + $(wildcard include/config/TIMERFD) \ + include/linux/hrtimer_defs.h \ + include/linux/timerqueue.h \ + include/linux/seccomp.h \ + $(wildcard include/config/SECCOMP) \ + $(wildcard include/config/HAVE_ARCH_SECCOMP_FILTER) \ + $(wildcard include/config/SECCOMP_FILTER) \ + $(wildcard include/config/CHECKPOINT_RESTORE) \ + $(wildcard include/config/SECCOMP_CACHE_DEBUG) \ + include/uapi/linux/seccomp.h \ + arch/x86/include/asm/seccomp.h \ + arch/x86/include/asm/unistd.h \ + arch/x86/include/uapi/asm/unistd.h \ + arch/x86/include/generated/uapi/asm/unistd_64.h \ + arch/x86/include/generated/asm/unistd_64_x32.h \ + arch/x86/include/generated/asm/unistd_32_ia32.h \ + arch/x86/include/asm/ia32_unistd.h \ + include/asm-generic/seccomp.h \ + include/uapi/linux/unistd.h \ + include/linux/latencytop.h \ + include/linux/sched/prio.h \ + include/linux/sched/types.h \ + include/linux/signal_types.h \ + $(wildcard include/config/OLD_SIGACTION) \ + include/uapi/linux/signal.h \ + arch/x86/include/asm/signal.h \ + arch/x86/include/uapi/asm/signal.h \ + include/uapi/asm-generic/signal-defs.h \ + arch/x86/include/uapi/asm/siginfo.h \ + include/uapi/asm-generic/siginfo.h \ + include/linux/syscall_user_dispatch.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/TASK_IO_ACCOUNTING) \ + include/linux/posix-timers.h \ + include/linux/alarmtimer.h \ + $(wildcard include/config/RTC_CLASS) \ + include/linux/task_work.h \ + include/uapi/linux/rseq.h \ + include/linux/kcsan.h \ + arch/x86/include/generated/asm/kmap_size.h \ + include/asm-generic/kmap_size.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL) \ + include/linux/pgtable.h \ + $(wildcard include/config/HIGHPTE) \ + $(wildcard include/config/GUP_GET_PTE_LOW_HIGH) \ + $(wildcard include/config/HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD) \ + $(wildcard include/config/HAVE_ARCH_SOFT_DIRTY) \ + $(wildcard include/config/ARCH_ENABLE_THP_MIGRATION) \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMAP) \ + $(wildcard include/config/X86_ESPFIX64) \ + arch/x86/include/asm/pgtable.h \ + $(wildcard include/config/DEBUG_WX) \ + arch/x86/include/asm/pkru.h \ + arch/x86/include/asm/fpu/api.h \ + $(wildcard include/config/X86_DEBUG_FPU) \ + include/asm-generic/pgtable_uffd.h \ + arch/x86/include/asm/pgtable_64.h \ + arch/x86/include/asm/fixmap.h \ + $(wildcard include/config/PROVIDE_OHCI1394_DMA_INIT) \ + $(wildcard include/config/X86_IO_APIC) \ + $(wildcard include/config/PCI_MMCONFIG) \ + $(wildcard include/config/ACPI_APEI_GHES) \ + $(wildcard include/config/INTEL_TXT) \ + arch/x86/include/uapi/asm/vsyscall.h \ + include/asm-generic/fixmap.h \ + arch/x86/include/asm/pgtable-invert.h \ + include/linux/kasan.h \ + $(wildcard include/config/KASAN_STACK) \ + $(wildcard include/config/KASAN_VMALLOC) \ + $(wildcard include/config/KASAN_INLINE) \ + include/linux/huge_mm.h \ + include/linux/sched/coredump.h \ + $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ + include/linux/fs.h \ + $(wildcard include/config/READ_ONLY_THP_FOR_FS) \ + $(wildcard include/config/FS_POSIX_ACL) \ + $(wildcard include/config/CGROUP_WRITEBACK) \ + $(wildcard include/config/IMA) \ + $(wildcard include/config/FILE_LOCKING) \ + $(wildcard include/config/FSNOTIFY) \ + $(wildcard include/config/FS_ENCRYPTION) \ + $(wildcard include/config/FS_VERITY) \ + $(wildcard include/config/EPOLL) \ + $(wildcard include/config/UNICODE) \ + $(wildcard include/config/QUOTA) \ + $(wildcard include/config/BLK_DEV_LOOP) \ + $(wildcard include/config/FS_DAX) \ + include/linux/wait_bit.h \ + include/linux/kdev_t.h \ + include/uapi/linux/kdev_t.h \ + include/linux/dcache.h \ + include/linux/rculist_bl.h \ + include/linux/list_bl.h \ + include/linux/lockref.h \ + $(wildcard include/config/ARCH_USE_CMPXCHG_LOCKREF) \ + include/linux/stringhash.h \ + $(wildcard include/config/DCACHE_WORD_ACCESS) \ + include/linux/hash.h \ + $(wildcard include/config/HAVE_ARCH_HASH) \ + include/linux/path.h \ + include/linux/stat.h \ + arch/x86/include/uapi/asm/stat.h \ + include/uapi/linux/stat.h \ + include/linux/list_lru.h \ + $(wildcard include/config/MEMCG_KMEM) \ + include/linux/radix-tree.h \ + include/linux/xarray.h \ + $(wildcard include/config/XARRAY_MULTI) \ + include/linux/kconfig.h \ + include/linux/capability.h \ + include/uapi/linux/capability.h \ + include/linux/semaphore.h \ + include/linux/fcntl.h \ + $(wildcard include/config/ARCH_32BIT_OFF_T) \ + include/uapi/linux/fcntl.h \ + arch/x86/include/generated/uapi/asm/fcntl.h \ + include/uapi/asm-generic/fcntl.h \ + include/uapi/linux/openat2.h \ + include/linux/migrate_mode.h \ + include/linux/percpu-rwsem.h \ + include/linux/rcuwait.h \ + include/linux/sched/signal.h \ + $(wildcard include/config/SCHED_AUTOGROUP) \ + $(wildcard include/config/BSD_PROCESS_ACCT) \ + $(wildcard include/config/TASKSTATS) \ + include/linux/signal.h \ + $(wildcard include/config/DYNAMIC_SIGFRAME) \ + include/linux/sched/jobctl.h \ + include/linux/sched/task.h \ + $(wildcard include/config/HAVE_EXIT_THREAD) \ + $(wildcard include/config/ARCH_WANTS_DYNAMIC_TASK_STRUCT) \ + $(wildcard include/config/HAVE_ARCH_THREAD_STRUCT_WHITELIST) \ + include/linux/uaccess.h \ + $(wildcard include/config/SET_FS) \ + include/linux/fault-inject-usercopy.h \ + $(wildcard include/config/FAULT_INJECTION_USERCOPY) \ + arch/x86/include/asm/uaccess.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_HAS_ASM_GOTO_TIED_OUTPUT) \ + $(wildcard include/config/ARCH_HAS_COPY_MC) \ + $(wildcard include/config/X86_INTEL_USERCOPY) \ + arch/x86/include/asm/smap.h \ + arch/x86/include/asm/extable.h \ + $(wildcard include/config/BPF_JIT) \ + arch/x86/include/asm/uaccess_64.h \ + include/linux/cred.h \ + $(wildcard include/config/DEBUG_CREDENTIALS) \ + include/linux/key.h \ + $(wildcard include/config/KEY_NOTIFICATIONS) \ + $(wildcard include/config/NET) \ + include/linux/sysctl.h \ + include/uapi/linux/sysctl.h \ + include/linux/assoc_array.h \ + $(wildcard include/config/ASSOCIATIVE_ARRAY) \ + include/linux/sched/user.h \ + $(wildcard include/config/WATCH_QUEUE) \ + include/linux/percpu_counter.h \ + include/linux/ratelimit.h \ + include/linux/rcu_sync.h \ + include/linux/delayed_call.h \ + include/linux/uuid.h \ + include/uapi/linux/uuid.h \ + include/linux/errseq.h \ + include/linux/ioprio.h \ + include/linux/sched/rt.h \ + include/linux/iocontext.h \ + include/uapi/linux/ioprio.h \ + include/linux/fs_types.h \ + include/linux/mount.h \ + include/linux/mnt_idmapping.h \ + include/uapi/linux/fs.h \ + include/linux/quota.h \ + $(wildcard include/config/QUOTA_NETLINK_INTERFACE) \ + include/uapi/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/dqblk_qtree.h \ + include/linux/projid.h \ + include/uapi/linux/quota.h \ + include/linux/nfs_fs_i.h \ + include/linux/vmstat.h \ + $(wildcard include/config/VM_EVENT_COUNTERS) \ + $(wildcard include/config/DEBUG_TLBFLUSH) \ + $(wildcard include/config/DEBUG_VM_VMACACHE) \ + include/linux/vm_event_item.h \ + $(wildcard include/config/MEMORY_BALLOON) \ + $(wildcard include/config/BALLOON_COMPACTION) \ + include/asm-generic/cacheflush.h \ + include/linux/slab.h \ + $(wildcard include/config/DEBUG_SLAB) \ + $(wildcard include/config/FAILSLAB) \ + $(wildcard include/config/HAVE_HARDENED_USERCOPY_ALLOCATOR) \ + $(wildcard include/config/SLAB) \ + $(wildcard include/config/SLUB) \ + $(wildcard include/config/SLOB) \ + $(wildcard include/config/CC_IS_GCC) \ + $(wildcard include/config/CLANG_VERSION) \ + include/linux/aio.h \ + include/uapi/linux/aio_abi.h \ + include/linux/kthread.h \ + include/generated/uapi/linux/version.h \ + include/linux/uio.h \ + include/uapi/linux/uio.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/include/libxdma_api.h \ + include/linux/scatterlist.h \ + $(wildcard include/config/NEED_SG_DMA_LENGTH) \ + $(wildcard include/config/DEBUG_SG) \ + $(wildcard include/config/SGL_ALLOC) \ + $(wildcard include/config/ARCH_NO_SG_CHAIN) \ + $(wildcard include/config/SG_POOL) \ + arch/x86/include/asm/io.h \ + $(wildcard include/config/MTRR) \ + $(wildcard include/config/X86_PAT) \ + arch/x86/include/generated/asm/early_ioremap.h \ + include/asm-generic/early_ioremap.h \ + $(wildcard include/config/GENERIC_EARLY_IOREMAP) \ + include/asm-generic/iomap.h \ + $(wildcard include/config/HAS_IOPORT_MAP) \ + include/asm-generic/pci_iomap.h \ + $(wildcard include/config/PCI) \ + $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ + $(wildcard include/config/GENERIC_PCI_IOMAP) \ + include/asm-generic/io.h \ + $(wildcard include/config/GENERIC_IOMAP) \ + $(wildcard include/config/GENERIC_IOREMAP) \ + $(wildcard include/config/VIRT_TO_BUS) \ + include/linux/logic_pio.h \ + $(wildcard include/config/INDIRECT_PIO) \ + include/linux/fwnode.h \ + include/linux/vmalloc.h \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMALLOC) \ + arch/x86/include/asm/vmalloc.h \ + arch/x86/include/asm/pgtable_areas.h \ + include/linux/interrupt.h \ + $(wildcard include/config/IRQ_FORCED_THREADING) \ + $(wildcard include/config/GENERIC_IRQ_PROBE) \ + $(wildcard include/config/IRQ_TIMINGS) \ + include/linux/irqreturn.h \ + include/linux/irqnr.h \ + include/uapi/linux/irqnr.h \ + include/linux/hardirq.h \ + include/linux/context_tracking_state.h \ + $(wildcard include/config/CONTEXT_TRACKING) \ + include/linux/ftrace_irq.h \ + $(wildcard include/config/HWLAT_TRACER) \ + $(wildcard include/config/OSNOISE_TRACER) \ + include/linux/vtime.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING) \ + $(wildcard include/config/IRQ_TIME_ACCOUNTING) \ + arch/x86/include/asm/hardirq.h \ + $(wildcard include/config/KVM_INTEL) \ + $(wildcard include/config/HAVE_KVM) \ + $(wildcard include/config/X86_THERMAL_VECTOR) \ + $(wildcard include/config/X86_MCE_THRESHOLD) \ + $(wildcard include/config/X86_MCE_AMD) \ + $(wildcard include/config/X86_HV_CALLBACK_VECTOR) \ + $(wildcard include/config/HYPERV) \ + include/linux/kref.h \ + arch/x86/include/asm/irq.h \ + arch/x86/include/asm/irq_vectors.h \ + $(wildcard include/config/PCI_MSI) \ + arch/x86/include/asm/sections.h \ + include/asm-generic/sections.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.h \ + include/linux/module.h \ + $(wildcard include/config/MODULES_TREE_LOOKUP) \ + $(wildcard include/config/STACKTRACE_BUILD_ID) \ + $(wildcard include/config/MODULE_SIG) \ + $(wildcard include/config/KALLSYMS) \ + $(wildcard include/config/BPF_EVENTS) \ + $(wildcard include/config/DEBUG_INFO_BTF_MODULES) \ + $(wildcard include/config/EVENT_TRACING) \ + $(wildcard include/config/MODULE_UNLOAD) \ + $(wildcard include/config/CONSTRUCTORS) \ + $(wildcard include/config/FUNCTION_ERROR_INJECTION) \ + include/linux/buildid.h \ + $(wildcard include/config/CRASH_CORE) \ + include/linux/kmod.h \ + include/linux/umh.h \ + include/linux/elf.h \ + $(wildcard include/config/ARCH_USE_GNU_PROPERTY) \ + $(wildcard include/config/ARCH_HAVE_ELF_PROT) \ + arch/x86/include/asm/elf.h \ + $(wildcard include/config/X86_X32_ABI) \ + arch/x86/include/asm/user.h \ + arch/x86/include/asm/user_64.h \ + arch/x86/include/asm/fsgsbase.h \ + arch/x86/include/asm/vdso.h \ + $(wildcard include/config/X86_X32) \ + include/uapi/linux/elf.h \ + include/uapi/linux/elf-em.h \ + include/linux/kobject.h \ + $(wildcard include/config/UEVENT_HELPER) \ + $(wildcard include/config/DEBUG_KOBJECT_RELEASE) \ + include/linux/sysfs.h \ + include/linux/kernfs.h \ + $(wildcard include/config/KERNFS) \ + include/linux/idr.h \ + include/linux/kobject_ns.h \ + include/linux/moduleparam.h \ + $(wildcard include/config/ALPHA) \ + $(wildcard include/config/PPC64) \ + include/linux/rbtree_latch.h \ + include/linux/error-injection.h \ + include/asm-generic/error-injection.h \ + include/linux/cfi.h \ + $(wildcard include/config/CFI_CLANG_SHADOW) \ + arch/x86/include/asm/module.h \ + $(wildcard include/config/UNWINDER_ORC) \ + include/asm-generic/module.h \ + $(wildcard include/config/HAVE_MOD_ARCH_SPECIFIC) \ + $(wildcard include/config/MODULES_USE_ELF_REL) \ + $(wildcard include/config/MODULES_USE_ELF_RELA) \ + arch/x86/include/asm/orc_types.h \ + include/linux/cdev.h \ + include/linux/device.h \ + $(wildcard include/config/ENERGY_MODEL) \ + $(wildcard include/config/GENERIC_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/PINCTRL) \ + $(wildcard include/config/GENERIC_MSI_IRQ) \ + $(wildcard include/config/DMA_OPS) \ + $(wildcard include/config/DMA_DECLARE_COHERENT) \ + $(wildcard include/config/DMA_CMA) \ + $(wildcard include/config/SWIOTLB) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_DEVICE) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU_ALL) \ + $(wildcard include/config/DMA_OPS_BYPASS) \ + $(wildcard include/config/OF) \ + $(wildcard include/config/DEVTMPFS) \ + $(wildcard include/config/SYSFS_DEPRECATED) \ + include/linux/dev_printk.h \ + include/linux/energy_model.h \ + include/linux/sched/cpufreq.h \ + $(wildcard include/config/CPU_FREQ) \ + include/linux/sched/topology.h \ + $(wildcard include/config/SCHED_DEBUG) \ + $(wildcard include/config/SCHED_MC) \ + $(wildcard include/config/CPU_FREQ_GOV_SCHEDUTIL) \ + include/linux/sched/idle.h \ + include/linux/sched/sd_flags.h \ + include/linux/klist.h \ + include/linux/pm.h \ + $(wildcard include/config/VT_CONSOLE_SLEEP) \ + $(wildcard include/config/PM) \ + $(wildcard include/config/PM_CLK) \ + $(wildcard include/config/PM_GENERIC_DOMAINS) \ + include/linux/device/bus.h \ + $(wildcard include/config/ACPI) \ + include/linux/device/class.h \ + include/linux/device/driver.h \ + arch/x86/include/asm/device.h \ + include/linux/pm_wakeup.h \ + include/linux/dma-mapping.h \ + $(wildcard include/config/DMA_API_DEBUG) \ + $(wildcard include/config/HAS_DMA) \ + $(wildcard include/config/NEED_DMA_MAP_STATE) \ + include/linux/dma-direction.h \ + include/linux/delay.h \ + arch/x86/include/asm/delay.h \ + include/asm-generic/delay.h \ + include/linux/fb.h \ + $(wildcard include/config/GUMSTIX_AM200EPD) \ + $(wildcard include/config/FB_NOTIFY) \ + $(wildcard include/config/FB_DEFERRED_IO) \ + $(wildcard include/config/FB_TILEBLITTING) \ + $(wildcard include/config/FB_BACKLIGHT) \ + $(wildcard include/config/FB_FOREIGN_ENDIAN) \ + $(wildcard include/config/FB_BOTH_ENDIAN) \ + $(wildcard include/config/FB_BIG_ENDIAN) \ + $(wildcard include/config/FB_LITTLE_ENDIAN) \ + include/linux/kgdb.h \ + $(wildcard include/config/HAVE_ARCH_KGDB) \ + $(wildcard include/config/KGDB) \ + $(wildcard include/config/SERIAL_KGDB_NMI) \ + $(wildcard include/config/KGDB_HONOUR_BLOCKLIST) \ + include/linux/kprobes.h \ + $(wildcard include/config/KPROBES_SANITY_TEST) \ + $(wildcard include/config/OPTPROBES) \ + $(wildcard include/config/KPROBES_ON_FTRACE) \ + include/linux/ftrace.h \ + $(wildcard include/config/FUNCTION_TRACER) \ + $(wildcard include/config/DYNAMIC_FTRACE) \ + $(wildcard include/config/HAVE_DYNAMIC_FTRACE_WITH_ARGS) \ + $(wildcard include/config/DYNAMIC_FTRACE_WITH_REGS) \ + $(wildcard include/config/DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ + $(wildcard include/config/HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ + $(wildcard include/config/STACK_TRACER) \ + $(wildcard include/config/FUNCTION_PROFILER) \ + $(wildcard include/config/FTRACE_SYSCALLS) \ + include/linux/trace_recursion.h \ + $(wildcard include/config/FTRACE_RECORD_RECURSION) \ + include/linux/trace_clock.h \ + arch/x86/include/asm/trace_clock.h \ + include/linux/kallsyms.h \ + $(wildcard include/config/KALLSYMS_ALL) \ + include/linux/ptrace.h \ + include/linux/pid_namespace.h \ + $(wildcard include/config/PID_NS) \ + include/linux/nsproxy.h \ + include/linux/ns_common.h \ + include/uapi/linux/ptrace.h \ + arch/x86/include/asm/ftrace.h \ + include/linux/compat.h \ + $(wildcard include/config/ARCH_HAS_SYSCALL_WRAPPER) \ + $(wildcard include/config/COMPAT_OLD_SIGACTION) \ + $(wildcard include/config/ODD_RT_SIGACTION) \ + include/linux/socket.h \ + arch/x86/include/generated/uapi/asm/socket.h \ + include/uapi/asm-generic/socket.h \ + arch/x86/include/generated/uapi/asm/sockios.h \ + include/uapi/asm-generic/sockios.h \ + include/uapi/linux/sockios.h \ + include/uapi/linux/socket.h \ + include/uapi/linux/if.h \ + include/uapi/linux/libc-compat.h \ + include/uapi/linux/hdlc/ioctl.h \ + arch/x86/include/asm/compat.h \ + include/linux/sched/task_stack.h \ + $(wildcard include/config/DEBUG_STACK_USAGE) \ + include/uapi/linux/magic.h \ + arch/x86/include/asm/user32.h \ + include/asm-generic/compat.h \ + $(wildcard include/config/COMPAT_FOR_U64_ALIGNMENT) \ + arch/x86/include/asm/syscall_wrapper.h \ + include/linux/freelist.h \ + arch/x86/include/asm/kprobes.h \ + include/asm-generic/kprobes.h \ + arch/x86/include/asm/text-patching.h \ + $(wildcard include/config/UML_X86) \ + arch/x86/include/asm/insn.h \ + arch/x86/include/asm/inat.h \ + arch/x86/include/asm/inat_types.h \ + arch/x86/include/asm/kgdb.h \ + include/uapi/linux/fb.h \ + include/linux/i2c.h \ + $(wildcard include/config/I2C) \ + $(wildcard include/config/I2C_SLAVE) \ + $(wildcard include/config/I2C_BOARDINFO) \ + $(wildcard include/config/I2C_MUX) \ + include/linux/acpi.h \ + $(wildcard include/config/ACPI_DEBUGGER) \ + $(wildcard include/config/LOONGARCH) \ + $(wildcard include/config/ACPI_PROCESSOR_CSTATE) \ + $(wildcard include/config/ACPI_HOTPLUG_CPU) \ + $(wildcard include/config/ACPI_HOTPLUG_IOAPIC) \ + $(wildcard include/config/ACPI_WMI) \ + $(wildcard include/config/ACPI_NUMA) \ + $(wildcard include/config/HIBERNATION) \ + $(wildcard include/config/ACPI_HOTPLUG_MEMORY) \ + $(wildcard include/config/ACPI_CONTAINER) \ + $(wildcard include/config/ACPI_GTDT) \ + $(wildcard include/config/GPIOLIB) \ + $(wildcard include/config/ACPI_TABLE_UPGRADE) \ + $(wildcard include/config/ACPI_WATCHDOG) \ + $(wildcard include/config/ACPI_SPCR_TABLE) \ + $(wildcard include/config/ACPI_GENERIC_GSI) \ + $(wildcard include/config/ACPI_LPIT) \ + $(wildcard include/config/ACPI_PPTT) \ + include/linux/irqdomain.h \ + $(wildcard include/config/IRQ_DOMAIN_HIERARCHY) \ + $(wildcard include/config/GENERIC_IRQ_DEBUGFS) \ + $(wildcard include/config/IRQ_DOMAIN) \ + $(wildcard include/config/IRQ_DOMAIN_NOMAP) \ + include/linux/irqhandler.h \ + include/linux/of.h \ + $(wildcard include/config/OF_DYNAMIC) \ + $(wildcard include/config/SPARC) \ + $(wildcard include/config/OF_PROMTREE) \ + $(wildcard include/config/OF_KOBJ) \ + $(wildcard include/config/OF_NUMA) \ + $(wildcard include/config/OF_OVERLAY) \ + include/linux/mod_devicetable.h \ + include/linux/property.h \ + include/linux/resource_ext.h \ + include/acpi/acpi.h \ + include/acpi/platform/acenv.h \ + include/acpi/platform/acgcc.h \ + include/acpi/platform/aclinux.h \ + $(wildcard include/config/ACPI_REDUCED_HARDWARE_ONLY) \ + $(wildcard include/config/ACPI_DEBUG) \ + include/linux/ctype.h \ + arch/x86/include/asm/acenv.h \ + include/acpi/acnames.h \ + include/acpi/actypes.h \ + include/acpi/acexcep.h \ + include/acpi/actbl.h \ + include/acpi/actbl1.h \ + include/acpi/actbl2.h \ + include/acpi/actbl3.h \ + include/acpi/acrestyp.h \ + include/acpi/platform/acenvex.h \ + include/acpi/platform/aclinuxex.h \ + include/acpi/platform/acgccex.h \ + include/acpi/acoutput.h \ + include/acpi/acpiosxf.h \ + include/acpi/acpixf.h \ + include/acpi/acconfig.h \ + include/acpi/acbuffer.h \ + include/acpi/acpi_bus.h \ + $(wildcard include/config/ACPI_SYSTEM_POWER_STATES_SUPPORT) \ + $(wildcard include/config/ACPI_SLEEP) \ + include/acpi/acpi_drivers.h \ + $(wildcard include/config/ACPI_DOCK) \ + include/acpi/acpi_numa.h \ + $(wildcard include/config/ACPI_HMAT) \ + include/acpi/acpi_io.h \ + include/linux/io.h \ + arch/x86/include/asm/acpi.h \ + $(wildcard include/config/ACPI_APEI) \ + include/acpi/pdc_intel.h \ + arch/x86/include/asm/numa.h \ + $(wildcard include/config/NUMA_EMU) \ + include/linux/regulator/consumer.h \ + $(wildcard include/config/REGULATOR) \ + include/linux/suspend.h \ + $(wildcard include/config/VT) \ + $(wildcard include/config/SUSPEND) \ + $(wildcard include/config/HIBERNATION_SNAPSHOT_DEV) \ + $(wildcard include/config/PM_SLEEP_DEBUG) \ + $(wildcard include/config/PM_AUTOSLEEP) \ + include/linux/swap.h \ + $(wildcard include/config/FRONTSWAP) \ + $(wildcard include/config/MEMCG_SWAP) \ + include/linux/memcontrol.h \ + include/linux/cgroup.h \ + $(wildcard include/config/CGROUP_CPUACCT) \ + $(wildcard include/config/SOCK_CGROUP_DATA) \ + $(wildcard include/config/CGROUP_DATA) \ + $(wildcard include/config/CGROUP_BPF) \ + include/uapi/linux/cgroupstats.h \ + include/uapi/linux/taskstats.h \ + include/linux/seq_file.h \ + include/linux/user_namespace.h \ + $(wildcard include/config/INOTIFY_USER) \ + $(wildcard include/config/FANOTIFY) \ + $(wildcard include/config/PERSISTENT_KEYRINGS) \ + include/linux/kernel_stat.h \ + include/linux/cgroup-defs.h \ + $(wildcard include/config/CGROUP_NET_CLASSID) \ + $(wildcard include/config/CGROUP_NET_PRIO) \ + include/linux/u64_stats_sync.h \ + arch/x86/include/generated/asm/local64.h \ + include/asm-generic/local64.h \ + arch/x86/include/asm/local.h \ + include/linux/bpf-cgroup.h \ + include/linux/bpf.h \ + $(wildcard include/config/BPF_JIT_ALWAYS_ON) \ + $(wildcard include/config/INET) \ + include/uapi/linux/bpf.h \ + $(wildcard include/config/BPF_LIRC_MODE2) \ + $(wildcard include/config/EFFICIENT_UNALIGNED_ACCESS) \ + $(wildcard include/config/IP_ROUTE_CLASSID) \ + $(wildcard include/config/BPF_KPROBE_OVERRIDE) \ + $(wildcard include/config/XFRM) \ + include/uapi/linux/bpf_common.h \ + include/linux/file.h \ + include/linux/sched/mm.h \ + $(wildcard include/config/ARCH_HAS_MEMBARRIER_CALLBACKS) \ + include/linux/sync_core.h \ + $(wildcard include/config/ARCH_HAS_SYNC_CORE_BEFORE_USERMODE) \ + arch/x86/include/asm/sync_core.h \ + include/linux/bpfptr.h \ + include/linux/sockptr.h \ + include/linux/bpf_types.h \ + $(wildcard include/config/BPF_LSM) \ + $(wildcard include/config/XDP_SOCKETS) \ + include/linux/psi_types.h \ + include/linux/cgroup_subsys.h \ + $(wildcard include/config/CGROUP_DEVICE) \ + $(wildcard include/config/CGROUP_FREEZER) \ + $(wildcard include/config/CGROUP_PERF) \ + $(wildcard include/config/CGROUP_HUGETLB) \ + $(wildcard include/config/CGROUP_PIDS) \ + $(wildcard include/config/CGROUP_RDMA) \ + $(wildcard include/config/CGROUP_MISC) \ + $(wildcard include/config/CGROUP_DEBUG) \ + include/linux/page_counter.h \ + include/linux/vmpressure.h \ + include/linux/eventfd.h \ + include/linux/writeback.h \ + include/linux/flex_proportions.h \ + include/linux/backing-dev-defs.h \ + $(wildcard include/config/DEBUG_FS) \ + include/linux/blk_types.h \ + $(wildcard include/config/FAIL_MAKE_REQUEST) \ + $(wildcard include/config/BLK_CGROUP_IOCOST) \ + $(wildcard include/config/BLK_INLINE_ENCRYPTION) \ + $(wildcard include/config/BLK_DEV_INTEGRITY) \ + include/linux/bvec.h \ + include/linux/highmem.h \ + include/linux/highmem-internal.h \ + include/linux/blk-cgroup.h \ + $(wildcard include/config/BLK_CGROUP_FC_APPID) \ + include/linux/blkdev.h \ + $(wildcard include/config/BLK_RQ_ALLOC_TIME) \ + $(wildcard include/config/BLK_WBT) \ + $(wildcard include/config/BLK_DEV_ZONED) \ + $(wildcard include/config/BLK_DEV_THROTTLING) \ + $(wildcard include/config/BLK_DEBUG_FS) \ + include/linux/sched/clock.h \ + $(wildcard include/config/HAVE_UNSTABLE_SCHED_CLOCK) \ + include/uapi/linux/major.h \ + include/linux/genhd.h \ + $(wildcard include/config/BLOCK_HOLDER_DEPRECATED) \ + $(wildcard include/config/CDROM) \ + include/linux/mempool.h \ + include/linux/bio.h \ + include/uapi/linux/blkzoned.h \ + include/linux/sbitmap.h \ + include/linux/elevator.h \ + include/linux/hashtable.h \ + include/linux/blk-mq.h \ + $(wildcard include/config/FAIL_IO_TIMEOUT) \ + include/linux/node.h \ + $(wildcard include/config/HMEM_REPORTING) \ + $(wildcard include/config/MEMORY_HOTPLUG_SPARSE) \ + include/linux/pagemap.h \ + include/linux/hugetlb_inline.h \ + include/uapi/linux/mempolicy.h \ + include/linux/freezer.h \ + include/uapi/linux/i2c.h \ + include/linux/backlight.h \ + $(wildcard include/config/BACKLIGHT_CLASS_DEVICE) \ + include/linux/poll.h \ + include/uapi/linux/poll.h \ + arch/x86/include/generated/uapi/asm/poll.h \ + include/uapi/asm-generic/poll.h \ + include/uapi/linux/eventpoll.h \ + include/linux/pci.h \ + $(wildcard include/config/PCI_IOV) \ + $(wildcard include/config/PCIEAER) \ + $(wildcard include/config/PCIEPORTBUS) \ + $(wildcard include/config/PCIEASPM) \ + $(wildcard include/config/HOTPLUG_PCI_PCIE) \ + $(wildcard include/config/PCIE_PTM) \ + $(wildcard include/config/PCIE_DPC) \ + $(wildcard include/config/PCI_ATS) \ + $(wildcard include/config/PCI_PRI) \ + $(wildcard include/config/PCI_PASID) \ + $(wildcard include/config/PCI_DOMAINS_GENERIC) \ + $(wildcard include/config/PCI_DOMAINS) \ + $(wildcard include/config/PCI_QUIRKS) \ + $(wildcard include/config/ACPI_MCFG) \ + $(wildcard include/config/HOTPLUG_PCI) \ + $(wildcard include/config/EEH) \ + include/uapi/linux/pci.h \ + include/uapi/linux/pci_regs.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + arch/x86/include/asm/pci.h \ + $(wildcard include/config/PCI_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/VMD) \ + arch/x86/include/asm/memtype.h \ + include/asm-generic/pci.h \ + include/linux/pci-dma-compat.h \ + include/linux/splice.h \ + include/linux/pipe_fs_i.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.h \ + $(wildcard include/config/BLOCK_ID) \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.h \ + include/linux/cpuset.h \ + include/linux/mmu_context.h \ + arch/x86/include/asm/mmu_context.h \ + arch/x86/include/asm/desc.h \ + arch/x86/include/asm/cpu_entry_area.h \ + arch/x86/include/asm/intel_ds.h \ + include/linux/pkeys.h \ + arch/x86/include/asm/pkeys.h \ + include/trace/events/tlb.h \ + include/linux/tracepoint.h \ + $(wildcard include/config/HAVE_SYSCALL_TRACEPOINTS) \ + $(wildcard include/config/TRACEPOINT) \ + include/linux/static_call.h \ + include/linux/cpu.h \ + $(wildcard include/config/PM_SLEEP_SMP) \ + $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ + $(wildcard include/config/HOTPLUG_SMT) \ + include/linux/cpuhotplug.h \ + arch/x86/include/asm/static_call.h \ + include/trace/define_trace.h \ + arch/x86/include/asm/tlbflush.h \ + arch/x86/include/asm/invpcid.h \ + arch/x86/include/asm/pti.h \ + arch/x86/include/asm/debugreg.h \ + arch/x86/include/uapi/asm/debugreg.h \ + include/asm-generic/mmu_context.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.h \ + +/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.o: $(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.o) + +$(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.o): diff --git a/host_software/driver/XDMA/linux-kernel/xdma/.cdev_xvc.o.cmd b/host_software/driver/XDMA/linux-kernel/xdma/.cdev_xvc.o.cmd new file mode 100644 index 0000000..8bad60b --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/.cdev_xvc.o.cmd @@ -0,0 +1,1427 @@ +cmd_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.o := gcc -Wp,-MMD,/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/.cdev_xvc.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/9/include -I./arch/x86/include -I./arch/x86/include/generated -I./include -I./arch/x86/include/uapi -I./arch/x86/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -I./ubuntu/include -include ./include/linux/compiler_types.h -D__KERNEL__ -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu89 -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fcf-protection=none -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -DCONFIG_X86_X32_ABI -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mfunction-return=thunk-extern -fno-jump-tables -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fstack-protector-strong -Wimplicit-fallthrough=5 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-stack-clash-protection -g -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wno-stringop-truncation -Wno-array-bounds -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -I/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/include -fsanitize=bounds -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"cdev_xvc"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.c + +source_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.o := /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.c + +deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.o := \ + include/linux/compiler-version.h \ + $(wildcard include/config/CC_VERSION_TEXT) \ + include/linux/kconfig.h \ + $(wildcard include/config/CPU_BIG_ENDIAN) \ + $(wildcard include/config/BOOGER) \ + $(wildcard include/config/FOO) \ + include/linux/compiler_types.h \ + $(wildcard include/config/HAVE_ARCH_COMPILER_H) \ + $(wildcard include/config/CC_HAS_ASM_INLINE) \ + include/linux/compiler_attributes.h \ + include/linux/compiler-gcc.h \ + $(wildcard include/config/RETPOLINE) \ + $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ + $(wildcard include/config/KCOV) \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.h \ + include/linux/kernel.h \ + $(wildcard include/config/PREEMPT_VOLUNTARY) \ + $(wildcard include/config/PREEMPT_DYNAMIC) \ + $(wildcard include/config/PREEMPT_) \ + $(wildcard include/config/DEBUG_ATOMIC_SLEEP) \ + $(wildcard include/config/SMP) \ + $(wildcard include/config/MMU) \ + $(wildcard include/config/PROVE_LOCKING) \ + $(wildcard include/config/TRACING) \ + $(wildcard include/config/FTRACE_MCOUNT_RECORD) \ + include/linux/stdarg.h \ + include/linux/align.h \ + include/linux/const.h \ + include/vdso/const.h \ + include/uapi/linux/const.h \ + include/linux/limits.h \ + include/uapi/linux/limits.h \ + include/linux/types.h \ + $(wildcard include/config/HAVE_UID16) \ + $(wildcard include/config/UID16) \ + $(wildcard include/config/ARCH_DMA_ADDR_T_64BIT) \ + $(wildcard include/config/PHYS_ADDR_T_64BIT) \ + $(wildcard include/config/64BIT) \ + $(wildcard include/config/ARCH_32BIT_USTAT_F_TINODE) \ + include/uapi/linux/types.h \ + arch/x86/include/generated/uapi/asm/types.h \ + include/uapi/asm-generic/types.h \ + include/asm-generic/int-ll64.h \ + include/uapi/asm-generic/int-ll64.h \ + arch/x86/include/uapi/asm/bitsperlong.h \ + include/asm-generic/bitsperlong.h \ + include/uapi/asm-generic/bitsperlong.h \ + include/uapi/linux/posix_types.h \ + include/linux/stddef.h \ + include/uapi/linux/stddef.h \ + include/linux/compiler_types.h \ + arch/x86/include/asm/posix_types.h \ + $(wildcard include/config/X86_32) \ + arch/x86/include/uapi/asm/posix_types_64.h \ + include/uapi/asm-generic/posix_types.h \ + include/vdso/limits.h \ + include/linux/linkage.h \ + $(wildcard include/config/ARCH_USE_SYM_ANNOTATIONS) \ + include/linux/stringify.h \ + include/linux/export.h \ + $(wildcard include/config/MODVERSIONS) \ + $(wildcard include/config/MODULE_REL_CRCS) \ + $(wildcard include/config/HAVE_ARCH_PREL32_RELOCATIONS) \ + $(wildcard include/config/MODULES) \ + $(wildcard include/config/TRIM_UNUSED_KSYMS) \ + include/linux/compiler.h \ + $(wildcard include/config/TRACE_BRANCH_PROFILING) \ + $(wildcard include/config/PROFILE_ALL_BRANCHES) \ + $(wildcard include/config/STACK_VALIDATION) \ + $(wildcard include/config/CFI_CLANG) \ + arch/x86/include/generated/asm/rwonce.h \ + include/asm-generic/rwonce.h \ + include/linux/kasan-checks.h \ + $(wildcard include/config/KASAN_GENERIC) \ + $(wildcard include/config/KASAN_SW_TAGS) \ + include/linux/kcsan-checks.h \ + $(wildcard include/config/KCSAN) \ + $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ + arch/x86/include/asm/linkage.h \ + $(wildcard include/config/X86_64) \ + $(wildcard include/config/X86_ALIGNMENT_16) \ + $(wildcard include/config/RETHUNK) \ + $(wildcard include/config/SLS) \ + include/linux/bitops.h \ + include/linux/bits.h \ + include/vdso/bits.h \ + include/linux/build_bug.h \ + include/linux/typecheck.h \ + include/uapi/linux/kernel.h \ + include/uapi/linux/sysinfo.h \ + arch/x86/include/asm/bitops.h \ + $(wildcard include/config/X86_CMOV) \ + arch/x86/include/asm/alternative.h \ + arch/x86/include/asm/asm.h \ + $(wildcard include/config/KPROBES) \ + arch/x86/include/asm/extable_fixup_types.h \ + arch/x86/include/asm/rmwcc.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO) \ + arch/x86/include/asm/barrier.h \ + arch/x86/include/asm/nops.h \ + include/asm-generic/barrier.h \ + include/asm-generic/bitops/find.h \ + $(wildcard include/config/GENERIC_FIND_FIRST_BIT) \ + include/asm-generic/bitops/sched.h \ + arch/x86/include/asm/arch_hweight.h \ + arch/x86/include/asm/cpufeatures.h \ + arch/x86/include/asm/required-features.h \ + $(wildcard include/config/X86_MINIMUM_CPU_FAMILY) \ + $(wildcard include/config/MATH_EMULATION) \ + $(wildcard include/config/X86_PAE) \ + $(wildcard include/config/X86_CMPXCHG64) \ + $(wildcard include/config/X86_USE_3DNOW) \ + $(wildcard include/config/X86_P6_NOP) \ + $(wildcard include/config/MATOM) \ + $(wildcard include/config/PARAVIRT_XXL) \ + arch/x86/include/asm/disabled-features.h \ + $(wildcard include/config/X86_SMAP) \ + $(wildcard include/config/X86_UMIP) \ + $(wildcard include/config/X86_INTEL_MEMORY_PROTECTION_KEYS) \ + $(wildcard include/config/X86_5LEVEL) \ + $(wildcard include/config/PAGE_TABLE_ISOLATION) \ + $(wildcard include/config/CPU_UNRET_ENTRY) \ + $(wildcard include/config/X86_SGX) \ + include/asm-generic/bitops/const_hweight.h \ + include/asm-generic/bitops/instrumented-atomic.h \ + include/linux/instrumented.h \ + include/asm-generic/bitops/instrumented-non-atomic.h \ + $(wildcard include/config/KCSAN_ASSUME_PLAIN_WRITES_ATOMIC) \ + include/asm-generic/bitops/instrumented-lock.h \ + include/asm-generic/bitops/le.h \ + arch/x86/include/uapi/asm/byteorder.h \ + include/linux/byteorder/little_endian.h \ + include/uapi/linux/byteorder/little_endian.h \ + include/linux/swab.h \ + include/uapi/linux/swab.h \ + arch/x86/include/uapi/asm/swab.h \ + include/linux/byteorder/generic.h \ + include/asm-generic/bitops/ext2-atomic-setbit.h \ + include/linux/kstrtox.h \ + include/linux/log2.h \ + $(wildcard include/config/ARCH_HAS_ILOG2_U32) \ + $(wildcard include/config/ARCH_HAS_ILOG2_U64) \ + include/linux/math.h \ + arch/x86/include/asm/div64.h \ + include/asm-generic/div64.h \ + include/linux/minmax.h \ + include/linux/panic.h \ + $(wildcard include/config/PANIC_TIMEOUT) \ + include/linux/printk.h \ + $(wildcard include/config/MESSAGE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_QUIET) \ + $(wildcard include/config/EARLY_PRINTK) \ + $(wildcard include/config/PRINTK) \ + $(wildcard include/config/PRINTK_INDEX) \ + $(wildcard include/config/DYNAMIC_DEBUG) \ + $(wildcard include/config/DYNAMIC_DEBUG_CORE) \ + include/linux/init.h \ + $(wildcard include/config/STRICT_KERNEL_RWX) \ + $(wildcard include/config/STRICT_MODULE_RWX) \ + $(wildcard include/config/LTO_CLANG) \ + include/linux/kern_levels.h \ + include/linux/cache.h \ + $(wildcard include/config/ARCH_HAS_CACHE_LINE_SIZE) \ + arch/x86/include/asm/cache.h \ + $(wildcard include/config/X86_L1_CACHE_SHIFT) \ + $(wildcard include/config/X86_INTERNODE_CACHE_SHIFT) \ + $(wildcard include/config/X86_VSMP) \ + include/linux/ratelimit_types.h \ + include/uapi/linux/param.h \ + arch/x86/include/generated/uapi/asm/param.h \ + include/asm-generic/param.h \ + $(wildcard include/config/HZ) \ + include/uapi/asm-generic/param.h \ + include/linux/spinlock_types.h \ + $(wildcard include/config/PREEMPT_RT) \ + $(wildcard include/config/DEBUG_LOCK_ALLOC) \ + include/linux/spinlock_types_raw.h \ + $(wildcard include/config/DEBUG_SPINLOCK) \ + arch/x86/include/asm/spinlock_types.h \ + include/asm-generic/qspinlock_types.h \ + $(wildcard include/config/NR_CPUS) \ + include/asm-generic/qrwlock_types.h \ + include/linux/lockdep_types.h \ + $(wildcard include/config/PROVE_RAW_LOCK_NESTING) \ + $(wildcard include/config/PREEMPT_LOCK) \ + $(wildcard include/config/LOCKDEP) \ + $(wildcard include/config/LOCK_STAT) \ + include/linux/rwlock_types.h \ + include/linux/once_lite.h \ + include/linux/dynamic_debug.h \ + $(wildcard include/config/JUMP_LABEL) \ + include/linux/jump_label.h \ + $(wildcard include/config/HAVE_ARCH_JUMP_LABEL_RELATIVE) \ + arch/x86/include/asm/jump_label.h \ + include/linux/static_call_types.h \ + $(wildcard include/config/HAVE_STATIC_CALL) \ + $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ + include/linux/uaccess.h \ + $(wildcard include/config/SET_FS) \ + $(wildcard include/config/PREEMPT_COUNT) \ + $(wildcard include/config/HARDENED_USERCOPY) \ + include/linux/fault-inject-usercopy.h \ + $(wildcard include/config/FAULT_INJECTION_USERCOPY) \ + include/linux/sched.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_NATIVE) \ + $(wildcard include/config/SCHED_INFO) \ + $(wildcard include/config/SCHEDSTATS) \ + $(wildcard include/config/FAIR_GROUP_SCHED) \ + $(wildcard include/config/RT_GROUP_SCHED) \ + $(wildcard include/config/RT_MUTEXES) \ + $(wildcard include/config/UCLAMP_TASK) \ + $(wildcard include/config/UCLAMP_BUCKETS_COUNT) \ + $(wildcard include/config/KMAP_LOCAL) \ + $(wildcard include/config/THREAD_INFO_IN_TASK) \ + $(wildcard include/config/SCHED_CORE) \ + $(wildcard include/config/CGROUP_SCHED) \ + $(wildcard include/config/PREEMPT_NOTIFIERS) \ + $(wildcard include/config/BLK_DEV_IO_TRACE) \ + $(wildcard include/config/PREEMPT_RCU) \ + $(wildcard include/config/TASKS_RCU) \ + $(wildcard include/config/TASKS_TRACE_RCU) \ + $(wildcard include/config/PSI) \ + $(wildcard include/config/MEMCG) \ + $(wildcard include/config/COMPAT_BRK) \ + $(wildcard include/config/CGROUPS) \ + $(wildcard include/config/BLK_CGROUP) \ + $(wildcard include/config/PAGE_OWNER) \ + $(wildcard include/config/EVENTFD) \ + $(wildcard include/config/STACKPROTECTOR) \ + $(wildcard include/config/ARCH_HAS_SCALED_CPUTIME) \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_GEN) \ + $(wildcard include/config/NO_HZ_FULL) \ + $(wildcard include/config/POSIX_CPUTIMERS) \ + $(wildcard include/config/POSIX_CPU_TIMERS_TASK_WORK) \ + $(wildcard include/config/KEYS) \ + $(wildcard include/config/SYSVIPC) \ + $(wildcard include/config/DETECT_HUNG_TASK) \ + $(wildcard include/config/IO_URING) \ + $(wildcard include/config/AUDIT) \ + $(wildcard include/config/AUDITSYSCALL) \ + $(wildcard include/config/DEBUG_MUTEXES) \ + $(wildcard include/config/TRACE_IRQFLAGS) \ + $(wildcard include/config/UBSAN) \ + $(wildcard include/config/UBSAN_TRAP) \ + $(wildcard include/config/BLOCK) \ + $(wildcard include/config/COMPACTION) \ + $(wildcard include/config/TASK_XACCT) \ + $(wildcard include/config/CPUSETS) \ + $(wildcard include/config/X86_CPU_RESCTRL) \ + $(wildcard include/config/FUTEX) \ + $(wildcard include/config/COMPAT) \ + $(wildcard include/config/PERF_EVENTS) \ + $(wildcard include/config/DEBUG_PREEMPT) \ + $(wildcard include/config/NUMA) \ + $(wildcard include/config/NUMA_BALANCING) \ + $(wildcard include/config/RSEQ) \ + $(wildcard include/config/TASK_DELAY_ACCT) \ + $(wildcard include/config/FAULT_INJECTION) \ + $(wildcard include/config/LATENCYTOP) \ + $(wildcard include/config/KUNIT) \ + $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ + $(wildcard include/config/UPROBES) \ + $(wildcard include/config/BCACHE) \ + $(wildcard include/config/VMAP_STACK) \ + $(wildcard include/config/LIVEPATCH) \ + $(wildcard include/config/SECURITY) \ + $(wildcard include/config/BPF_SYSCALL) \ + $(wildcard include/config/GCC_PLUGIN_STACKLEAK) \ + $(wildcard include/config/X86_MCE) \ + $(wildcard include/config/KRETPROBES) \ + $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ + $(wildcard include/config/ARCH_TASK_STRUCT_ON_STACK) \ + $(wildcard include/config/PREEMPTION) \ + $(wildcard include/config/DEBUG_RSEQ) \ + include/uapi/linux/sched.h \ + arch/x86/include/asm/current.h \ + arch/x86/include/asm/percpu.h \ + $(wildcard include/config/X86_64_SMP) \ + include/asm-generic/percpu.h \ + $(wildcard include/config/HAVE_SETUP_PER_CPU_AREA) \ + include/linux/threads.h \ + $(wildcard include/config/BASE_SMALL) \ + include/linux/percpu-defs.h \ + $(wildcard include/config/DEBUG_FORCE_WEAK_PER_CPU) \ + $(wildcard include/config/AMD_MEM_ENCRYPT) \ + include/linux/pid.h \ + include/linux/rculist.h \ + $(wildcard include/config/PROVE_RCU_LIST) \ + include/linux/list.h \ + $(wildcard include/config/DEBUG_LIST) \ + include/linux/poison.h \ + $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ + include/linux/rcupdate.h \ + $(wildcard include/config/TINY_RCU) \ + $(wildcard include/config/TASKS_RCU_GENERIC) \ + $(wildcard include/config/RCU_STALL_COMMON) \ + $(wildcard include/config/RCU_NOCB_CPU) \ + $(wildcard include/config/TASKS_RUDE_RCU) \ + $(wildcard include/config/TREE_RCU) \ + $(wildcard include/config/DEBUG_OBJECTS_RCU_HEAD) \ + $(wildcard include/config/HOTPLUG_CPU) \ + $(wildcard include/config/PROVE_RCU) \ + $(wildcard include/config/ARCH_WEAK_RELEASE_ACQUIRE) \ + include/linux/atomic.h \ + arch/x86/include/asm/atomic.h \ + arch/x86/include/asm/cmpxchg.h \ + arch/x86/include/asm/cmpxchg_64.h \ + arch/x86/include/asm/atomic64_64.h \ + include/linux/atomic/atomic-arch-fallback.h \ + $(wildcard include/config/GENERIC_ATOMIC64) \ + include/linux/atomic/atomic-long.h \ + include/linux/atomic/atomic-instrumented.h \ + include/linux/irqflags.h \ + $(wildcard include/config/IRQSOFF_TRACER) \ + $(wildcard include/config/PREEMPT_TRACER) \ + $(wildcard include/config/DEBUG_IRQFLAGS) \ + $(wildcard include/config/TRACE_IRQFLAGS_SUPPORT) \ + arch/x86/include/asm/irqflags.h \ + $(wildcard include/config/DEBUG_ENTRY) \ + $(wildcard include/config/XEN_PV) \ + arch/x86/include/asm/processor-flags.h \ + $(wildcard include/config/VM86) \ + arch/x86/include/uapi/asm/processor-flags.h \ + include/linux/mem_encrypt.h \ + $(wildcard include/config/ARCH_HAS_MEM_ENCRYPT) \ + arch/x86/include/asm/mem_encrypt.h \ + include/linux/cc_platform.h \ + $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ + arch/x86/include/uapi/asm/bootparam.h \ + include/linux/screen_info.h \ + include/uapi/linux/screen_info.h \ + include/linux/apm_bios.h \ + include/uapi/linux/apm_bios.h \ + include/uapi/linux/ioctl.h \ + arch/x86/include/generated/uapi/asm/ioctl.h \ + include/asm-generic/ioctl.h \ + include/uapi/asm-generic/ioctl.h \ + include/linux/edd.h \ + include/uapi/linux/edd.h \ + arch/x86/include/asm/ist.h \ + arch/x86/include/uapi/asm/ist.h \ + include/video/edid.h \ + $(wildcard include/config/X86) \ + include/uapi/video/edid.h \ + arch/x86/include/asm/nospec-branch.h \ + $(wildcard include/config/CPU_IBPB_ENTRY) \ + include/linux/static_key.h \ + include/linux/objtool.h \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/unwind_hints.h \ + arch/x86/include/asm/orc_types.h \ + arch/x86/include/asm/GEN-for-each-reg.h \ + arch/x86/include/asm/segment.h \ + arch/x86/include/asm/paravirt.h \ + $(wildcard include/config/PARAVIRT) \ + $(wildcard include/config/PARAVIRT_SPINLOCKS) \ + $(wildcard include/config/X86_IOPL_IOPERM) \ + $(wildcard include/config/PGTABLE_LEVELS) \ + arch/x86/include/asm/pgtable_types.h \ + $(wildcard include/config/MEM_SOFT_DIRTY) \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_WP) \ + $(wildcard include/config/PROC_FS) \ + arch/x86/include/asm/page_types.h \ + $(wildcard include/config/PHYSICAL_START) \ + $(wildcard include/config/PHYSICAL_ALIGN) \ + $(wildcard include/config/DYNAMIC_PHYSICAL_MASK) \ + arch/x86/include/asm/page_64_types.h \ + $(wildcard include/config/KASAN) \ + $(wildcard include/config/DYNAMIC_MEMORY_LAYOUT) \ + $(wildcard include/config/RANDOMIZE_BASE) \ + arch/x86/include/asm/kaslr.h \ + $(wildcard include/config/RANDOMIZE_MEMORY) \ + arch/x86/include/asm/pgtable_64_types.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL_FORCE_MAP) \ + arch/x86/include/asm/sparsemem.h \ + $(wildcard include/config/SPARSEMEM) \ + $(wildcard include/config/NUMA_KEEP_MEMINFO) \ + arch/x86/include/asm/paravirt_types.h \ + $(wildcard include/config/PARAVIRT_DEBUG) \ + arch/x86/include/asm/desc_defs.h \ + include/linux/bug.h \ + $(wildcard include/config/GENERIC_BUG) \ + $(wildcard include/config/BUG_ON_DATA_CORRUPTION) \ + arch/x86/include/asm/bug.h \ + $(wildcard include/config/DEBUG_BUGVERBOSE) \ + include/linux/instrumentation.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/BUG) \ + $(wildcard include/config/GENERIC_BUG_RELATIVE_POINTERS) \ + include/linux/cpumask.h \ + $(wildcard include/config/CPUMASK_OFFSTACK) \ + $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ + include/linux/bitmap.h \ + include/linux/string.h \ + $(wildcard include/config/BINARY_PRINTF) \ + $(wildcard include/config/FORTIFY_SOURCE) \ + include/linux/errno.h \ + include/uapi/linux/errno.h \ + arch/x86/include/generated/uapi/asm/errno.h \ + include/uapi/asm-generic/errno.h \ + include/uapi/asm-generic/errno-base.h \ + include/uapi/linux/string.h \ + arch/x86/include/asm/string.h \ + arch/x86/include/asm/string_64.h \ + $(wildcard include/config/ARCH_HAS_UACCESS_FLUSHCACHE) \ + include/linux/fortify-string.h \ + arch/x86/include/asm/frame.h \ + $(wildcard include/config/FRAME_POINTER) \ + include/linux/preempt.h \ + $(wildcard include/config/TRACE_PREEMPT_TOGGLE) \ + arch/x86/include/asm/preempt.h \ + include/linux/thread_info.h \ + $(wildcard include/config/GENERIC_ENTRY) \ + $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ + include/linux/restart_block.h \ + include/linux/time64.h \ + include/linux/math64.h \ + $(wildcard include/config/ARCH_SUPPORTS_INT128) \ + include/vdso/math64.h \ + include/vdso/time64.h \ + include/uapi/linux/time.h \ + include/uapi/linux/time_types.h \ + arch/x86/include/asm/thread_info.h \ + $(wildcard include/config/IA32_EMULATION) \ + arch/x86/include/asm/page.h \ + arch/x86/include/asm/page_64.h \ + $(wildcard include/config/DEBUG_VIRTUAL) \ + $(wildcard include/config/FLATMEM) \ + $(wildcard include/config/X86_VSYSCALL_EMULATION) \ + include/linux/range.h \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/SPARSEMEM_VMEMMAP) \ + include/linux/pfn.h \ + include/asm-generic/getorder.h \ + arch/x86/include/asm/cpufeature.h \ + $(wildcard include/config/X86_FEATURE_NAMES) \ + arch/x86/include/asm/processor.h \ + $(wildcard include/config/X86_VMX_FEATURE_NAMES) \ + $(wildcard include/config/X86_DEBUGCTLMSR) \ + $(wildcard include/config/CPU_SUP_AMD) \ + $(wildcard include/config/XEN) \ + arch/x86/include/asm/math_emu.h \ + arch/x86/include/asm/ptrace.h \ + arch/x86/include/uapi/asm/ptrace.h \ + arch/x86/include/uapi/asm/ptrace-abi.h \ + arch/x86/include/asm/proto.h \ + arch/x86/include/uapi/asm/ldt.h \ + arch/x86/include/uapi/asm/sigcontext.h \ + arch/x86/include/asm/msr.h \ + $(wildcard include/config/TRACEPOINTS) \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/cpumask.h \ + arch/x86/include/uapi/asm/msr.h \ + include/linux/tracepoint-defs.h \ + arch/x86/include/asm/special_insns.h \ + arch/x86/include/asm/fpu/types.h \ + arch/x86/include/asm/vmxfeatures.h \ + arch/x86/include/asm/vdso/processor.h \ + include/linux/personality.h \ + include/uapi/linux/personality.h \ + include/linux/err.h \ + include/linux/bottom_half.h \ + include/linux/lockdep.h \ + $(wildcard include/config/DEBUG_LOCKING_API_SELFTESTS) \ + include/linux/smp.h \ + $(wildcard include/config/UP_LATE_INIT) \ + include/linux/smp_types.h \ + include/linux/llist.h \ + $(wildcard include/config/ARCH_HAVE_NMI_SAFE_CMPXCHG) \ + arch/x86/include/asm/smp.h \ + $(wildcard include/config/X86_LOCAL_APIC) \ + $(wildcard include/config/DEBUG_NMI_SELFTEST) \ + include/linux/rcutree.h \ + include/linux/wait.h \ + include/linux/spinlock.h \ + arch/x86/include/generated/asm/mmiowb.h \ + include/asm-generic/mmiowb.h \ + $(wildcard include/config/MMIOWB) \ + arch/x86/include/asm/spinlock.h \ + arch/x86/include/asm/qspinlock.h \ + include/asm-generic/qspinlock.h \ + arch/x86/include/asm/qrwlock.h \ + include/asm-generic/qrwlock.h \ + include/linux/rwlock.h \ + $(wildcard include/config/PREEMPT) \ + include/linux/spinlock_api_smp.h \ + $(wildcard include/config/INLINE_SPIN_LOCK) \ + $(wildcard include/config/INLINE_SPIN_LOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK_BH) \ + $(wildcard include/config/UNINLINE_SPIN_UNLOCK) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/GENERIC_LOCKBREAK) \ + include/linux/rwlock_api_smp.h \ + $(wildcard include/config/INLINE_READ_LOCK) \ + $(wildcard include/config/INLINE_WRITE_LOCK) \ + $(wildcard include/config/INLINE_READ_LOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_LOCK_BH) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_READ_TRYLOCK) \ + $(wildcard include/config/INLINE_WRITE_TRYLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_BH) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQRESTORE) \ + include/uapi/linux/wait.h \ + include/linux/refcount.h \ + include/linux/sem.h \ + include/uapi/linux/sem.h \ + include/linux/ipc.h \ + include/linux/uidgid.h \ + $(wildcard include/config/MULTIUSER) \ + $(wildcard include/config/USER_NS) \ + include/linux/highuid.h \ + include/linux/rhashtable-types.h \ + include/linux/mutex.h \ + $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ + include/linux/osq_lock.h \ + include/linux/debug_locks.h \ + include/linux/workqueue.h \ + $(wildcard include/config/DEBUG_OBJECTS_WORK) \ + $(wildcard include/config/FREEZER) \ + $(wildcard include/config/SYSFS) \ + $(wildcard include/config/WQ_WATCHDOG) \ + include/linux/timer.h \ + $(wildcard include/config/DEBUG_OBJECTS_TIMERS) \ + $(wildcard include/config/NO_HZ_COMMON) \ + include/linux/ktime.h \ + include/linux/time.h \ + $(wildcard include/config/POSIX_TIMERS) \ + include/linux/time32.h \ + include/linux/timex.h \ + include/uapi/linux/timex.h \ + arch/x86/include/asm/timex.h \ + $(wildcard include/config/X86_TSC) \ + arch/x86/include/asm/tsc.h \ + include/vdso/time32.h \ + include/vdso/time.h \ + include/linux/jiffies.h \ + include/vdso/jiffies.h \ + include/generated/timeconst.h \ + include/vdso/ktime.h \ + include/linux/timekeeping.h \ + $(wildcard include/config/GENERIC_CMOS_UPDATE) \ + include/linux/clocksource_ids.h \ + include/linux/debugobjects.h \ + $(wildcard include/config/DEBUG_OBJECTS) \ + $(wildcard include/config/DEBUG_OBJECTS_FREE) \ + include/uapi/linux/ipc.h \ + arch/x86/include/generated/uapi/asm/ipcbuf.h \ + include/uapi/asm-generic/ipcbuf.h \ + arch/x86/include/uapi/asm/sembuf.h \ + include/linux/shm.h \ + include/uapi/linux/shm.h \ + include/uapi/asm-generic/hugetlb_encode.h \ + arch/x86/include/uapi/asm/shmbuf.h \ + include/uapi/asm-generic/shmbuf.h \ + arch/x86/include/asm/shmparam.h \ + include/linux/plist.h \ + $(wildcard include/config/DEBUG_PLIST) \ + include/linux/hrtimer.h \ + $(wildcard include/config/HIGH_RES_TIMERS) \ + $(wildcard include/config/TIME_LOW_RES) \ + $(wildcard include/config/TIMERFD) \ + include/linux/hrtimer_defs.h \ + include/linux/rbtree.h \ + include/linux/rbtree_types.h \ + include/linux/percpu.h \ + $(wildcard include/config/NEED_PER_CPU_EMBED_FIRST_CHUNK) \ + $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ + include/linux/mmdebug.h \ + $(wildcard include/config/DEBUG_VM) \ + $(wildcard include/config/DEBUG_VM_PGFLAGS) \ + include/linux/seqlock.h \ + include/linux/ww_mutex.h \ + $(wildcard include/config/DEBUG_RT_MUTEXES) \ + $(wildcard include/config/DEBUG_WW_MUTEX_SLOWPATH) \ + include/linux/rtmutex.h \ + include/linux/timerqueue.h \ + include/linux/seccomp.h \ + $(wildcard include/config/SECCOMP) \ + $(wildcard include/config/HAVE_ARCH_SECCOMP_FILTER) \ + $(wildcard include/config/SECCOMP_FILTER) \ + $(wildcard include/config/CHECKPOINT_RESTORE) \ + $(wildcard include/config/SECCOMP_CACHE_DEBUG) \ + include/uapi/linux/seccomp.h \ + arch/x86/include/asm/seccomp.h \ + arch/x86/include/asm/unistd.h \ + arch/x86/include/uapi/asm/unistd.h \ + arch/x86/include/generated/uapi/asm/unistd_64.h \ + arch/x86/include/generated/asm/unistd_64_x32.h \ + arch/x86/include/generated/asm/unistd_32_ia32.h \ + arch/x86/include/asm/ia32_unistd.h \ + include/asm-generic/seccomp.h \ + include/uapi/linux/unistd.h \ + include/linux/nodemask.h \ + $(wildcard include/config/HIGHMEM) \ + include/linux/numa.h \ + $(wildcard include/config/NODES_SHIFT) \ + include/linux/resource.h \ + include/uapi/linux/resource.h \ + arch/x86/include/generated/uapi/asm/resource.h \ + include/asm-generic/resource.h \ + include/uapi/asm-generic/resource.h \ + include/linux/latencytop.h \ + include/linux/sched/prio.h \ + include/linux/sched/types.h \ + include/linux/signal_types.h \ + $(wildcard include/config/OLD_SIGACTION) \ + include/uapi/linux/signal.h \ + arch/x86/include/asm/signal.h \ + arch/x86/include/uapi/asm/signal.h \ + include/uapi/asm-generic/signal-defs.h \ + arch/x86/include/uapi/asm/siginfo.h \ + include/uapi/asm-generic/siginfo.h \ + include/linux/syscall_user_dispatch.h \ + include/linux/mm_types_task.h \ + $(wildcard include/config/ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH) \ + $(wildcard include/config/SPLIT_PTLOCK_CPUS) \ + $(wildcard include/config/ARCH_ENABLE_SPLIT_PMD_PTLOCK) \ + arch/x86/include/asm/tlbbatch.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/TASK_IO_ACCOUNTING) \ + include/linux/posix-timers.h \ + include/linux/alarmtimer.h \ + $(wildcard include/config/RTC_CLASS) \ + include/linux/task_work.h \ + include/uapi/linux/rseq.h \ + include/linux/kcsan.h \ + arch/x86/include/generated/asm/kmap_size.h \ + include/asm-generic/kmap_size.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL) \ + arch/x86/include/asm/uaccess.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_HAS_ASM_GOTO_TIED_OUTPUT) \ + $(wildcard include/config/ARCH_HAS_COPY_MC) \ + $(wildcard include/config/X86_INTEL_USERCOPY) \ + arch/x86/include/asm/smap.h \ + arch/x86/include/asm/extable.h \ + $(wildcard include/config/BPF_JIT) \ + arch/x86/include/asm/uaccess_64.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.h \ + include/linux/module.h \ + $(wildcard include/config/MODULES_TREE_LOOKUP) \ + $(wildcard include/config/STACKTRACE_BUILD_ID) \ + $(wildcard include/config/MODULE_SIG) \ + $(wildcard include/config/KALLSYMS) \ + $(wildcard include/config/TREE_SRCU) \ + $(wildcard include/config/BPF_EVENTS) \ + $(wildcard include/config/DEBUG_INFO_BTF_MODULES) \ + $(wildcard include/config/EVENT_TRACING) \ + $(wildcard include/config/MODULE_UNLOAD) \ + $(wildcard include/config/CONSTRUCTORS) \ + $(wildcard include/config/FUNCTION_ERROR_INJECTION) \ + include/linux/stat.h \ + arch/x86/include/uapi/asm/stat.h \ + include/uapi/linux/stat.h \ + include/linux/buildid.h \ + $(wildcard include/config/CRASH_CORE) \ + include/linux/mm_types.h \ + $(wildcard include/config/HAVE_ALIGNED_STRUCT_PAGE) \ + $(wildcard include/config/USERFAULTFD) \ + $(wildcard include/config/SWAP) \ + $(wildcard include/config/HAVE_ARCH_COMPAT_MMAP_BASES) \ + $(wildcard include/config/MEMBARRIER) \ + $(wildcard include/config/AIO) \ + $(wildcard include/config/MMU_NOTIFIER) \ + $(wildcard include/config/TRANSPARENT_HUGEPAGE) \ + $(wildcard include/config/HUGETLB_PAGE) \ + $(wildcard include/config/IOMMU_SUPPORT) \ + include/linux/auxvec.h \ + include/uapi/linux/auxvec.h \ + arch/x86/include/uapi/asm/auxvec.h \ + include/linux/rwsem.h \ + $(wildcard include/config/RWSEM_SPIN_ON_OWNER) \ + $(wildcard include/config/DEBUG_RWSEMS) \ + include/linux/completion.h \ + include/linux/swait.h \ + include/linux/uprobes.h \ + arch/x86/include/asm/uprobes.h \ + include/linux/notifier.h \ + include/linux/srcu.h \ + $(wildcard include/config/TINY_SRCU) \ + $(wildcard include/config/SRCU) \ + include/linux/rcu_segcblist.h \ + include/linux/srcutree.h \ + include/linux/rcu_node_tree.h \ + $(wildcard include/config/RCU_FANOUT) \ + $(wildcard include/config/RCU_FANOUT_LEAF) \ + include/linux/page-flags-layout.h \ + $(wildcard include/config/KASAN_HW_TAGS) \ + include/generated/bounds.h \ + arch/x86/include/asm/mmu.h \ + $(wildcard include/config/MODIFY_LDT_SYSCALL) \ + include/linux/kmod.h \ + include/linux/umh.h \ + include/linux/gfp.h \ + $(wildcard include/config/ZONE_DMA) \ + $(wildcard include/config/ZONE_DMA32) \ + $(wildcard include/config/ZONE_DEVICE) \ + $(wildcard include/config/PM_SLEEP) \ + $(wildcard include/config/CONTIG_ALLOC) \ + $(wildcard include/config/CMA) \ + include/linux/mmzone.h \ + $(wildcard include/config/FORCE_MAX_ZONEORDER) \ + $(wildcard include/config/MEMORY_ISOLATION) \ + $(wildcard include/config/ZSMALLOC) \ + $(wildcard include/config/SHADOW_CALL_STACK) \ + $(wildcard include/config/MEMORY_HOTPLUG) \ + $(wildcard include/config/PAGE_EXTENSION) \ + $(wildcard include/config/DEFERRED_STRUCT_PAGE_INIT) \ + $(wildcard include/config/HAVE_MEMORYLESS_NODES) \ + $(wildcard include/config/SPARSEMEM_EXTREME) \ + $(wildcard include/config/HAVE_ARCH_PFN_VALID) \ + include/linux/pageblock-flags.h \ + $(wildcard include/config/HUGETLB_PAGE_SIZE_VARIABLE) \ + include/linux/page-flags.h \ + $(wildcard include/config/ARCH_USES_PG_UNCACHED) \ + $(wildcard include/config/MEMORY_FAILURE) \ + $(wildcard include/config/PAGE_IDLE_FLAG) \ + $(wildcard include/config/THP_SWAP) \ + $(wildcard include/config/KSM) \ + include/linux/local_lock.h \ + include/linux/local_lock_internal.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ + $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ + $(wildcard include/config/MEMORY_HOTREMOVE) \ + arch/x86/include/asm/mmzone.h \ + arch/x86/include/asm/mmzone_64.h \ + include/linux/topology.h \ + $(wildcard include/config/USE_PERCPU_NUMA_NODE_ID) \ + $(wildcard include/config/SCHED_SMT) \ + include/linux/arch_topology.h \ + $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ + arch/x86/include/asm/topology.h \ + $(wildcard include/config/SCHED_MC_PRIO) \ + $(wildcard include/config/ACPI_CPPC_LIB) \ + arch/x86/include/asm/mpspec.h \ + $(wildcard include/config/EISA) \ + $(wildcard include/config/X86_MPPARSE) \ + arch/x86/include/asm/mpspec_def.h \ + arch/x86/include/asm/x86_init.h \ + arch/x86/include/asm/apicdef.h \ + include/asm-generic/topology.h \ + include/linux/sysctl.h \ + $(wildcard include/config/SYSCTL) \ + include/uapi/linux/sysctl.h \ + include/linux/elf.h \ + $(wildcard include/config/ARCH_USE_GNU_PROPERTY) \ + $(wildcard include/config/ARCH_HAVE_ELF_PROT) \ + arch/x86/include/asm/elf.h \ + $(wildcard include/config/X86_X32_ABI) \ + arch/x86/include/asm/user.h \ + arch/x86/include/asm/user_64.h \ + arch/x86/include/asm/fsgsbase.h \ + arch/x86/include/asm/vdso.h \ + $(wildcard include/config/X86_X32) \ + include/uapi/linux/elf.h \ + include/uapi/linux/elf-em.h \ + include/linux/kobject.h \ + $(wildcard include/config/UEVENT_HELPER) \ + $(wildcard include/config/DEBUG_KOBJECT_RELEASE) \ + include/linux/sysfs.h \ + include/linux/kernfs.h \ + $(wildcard include/config/KERNFS) \ + include/linux/idr.h \ + include/linux/radix-tree.h \ + include/linux/xarray.h \ + $(wildcard include/config/XARRAY_MULTI) \ + include/linux/kconfig.h \ + include/linux/kobject_ns.h \ + include/linux/kref.h \ + include/linux/moduleparam.h \ + $(wildcard include/config/ALPHA) \ + $(wildcard include/config/IA64) \ + $(wildcard include/config/PPC64) \ + include/linux/rbtree_latch.h \ + include/linux/error-injection.h \ + include/asm-generic/error-injection.h \ + include/linux/cfi.h \ + $(wildcard include/config/CFI_CLANG_SHADOW) \ + arch/x86/include/asm/module.h \ + $(wildcard include/config/UNWINDER_ORC) \ + include/asm-generic/module.h \ + $(wildcard include/config/HAVE_MOD_ARCH_SPECIFIC) \ + $(wildcard include/config/MODULES_USE_ELF_REL) \ + $(wildcard include/config/MODULES_USE_ELF_RELA) \ + arch/x86/include/asm/orc_types.h \ + include/linux/cdev.h \ + include/linux/kdev_t.h \ + include/uapi/linux/kdev_t.h \ + include/linux/device.h \ + $(wildcard include/config/ENERGY_MODEL) \ + $(wildcard include/config/GENERIC_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/PINCTRL) \ + $(wildcard include/config/GENERIC_MSI_IRQ) \ + $(wildcard include/config/DMA_OPS) \ + $(wildcard include/config/DMA_DECLARE_COHERENT) \ + $(wildcard include/config/DMA_CMA) \ + $(wildcard include/config/SWIOTLB) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_DEVICE) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU_ALL) \ + $(wildcard include/config/DMA_OPS_BYPASS) \ + $(wildcard include/config/OF) \ + $(wildcard include/config/DEVTMPFS) \ + $(wildcard include/config/SYSFS_DEPRECATED) \ + include/linux/dev_printk.h \ + include/linux/ratelimit.h \ + include/linux/energy_model.h \ + include/linux/sched/cpufreq.h \ + $(wildcard include/config/CPU_FREQ) \ + include/linux/sched/topology.h \ + $(wildcard include/config/SCHED_DEBUG) \ + $(wildcard include/config/SCHED_MC) \ + $(wildcard include/config/CPU_FREQ_GOV_SCHEDUTIL) \ + include/linux/sched/idle.h \ + include/linux/sched/sd_flags.h \ + include/linux/ioport.h \ + include/linux/klist.h \ + include/linux/pm.h \ + $(wildcard include/config/VT_CONSOLE_SLEEP) \ + $(wildcard include/config/PM) \ + $(wildcard include/config/PM_CLK) \ + $(wildcard include/config/PM_GENERIC_DOMAINS) \ + include/linux/overflow.h \ + include/linux/device/bus.h \ + $(wildcard include/config/ACPI) \ + include/linux/device/class.h \ + include/linux/device/driver.h \ + arch/x86/include/asm/device.h \ + include/linux/pm_wakeup.h \ + include/linux/dma-mapping.h \ + $(wildcard include/config/DMA_API_DEBUG) \ + $(wildcard include/config/HAS_DMA) \ + $(wildcard include/config/NEED_DMA_MAP_STATE) \ + include/linux/sizes.h \ + include/linux/dma-direction.h \ + include/linux/scatterlist.h \ + $(wildcard include/config/NEED_SG_DMA_LENGTH) \ + $(wildcard include/config/DEBUG_SG) \ + $(wildcard include/config/SGL_ALLOC) \ + $(wildcard include/config/ARCH_NO_SG_CHAIN) \ + $(wildcard include/config/SG_POOL) \ + include/linux/mm.h \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_BITS) \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_COMPAT_BITS) \ + $(wildcard include/config/DEBUG_INFO_BTF) \ + $(wildcard include/config/ARCH_USES_HIGH_VMA_FLAGS) \ + $(wildcard include/config/ARCH_HAS_PKEYS) \ + $(wildcard include/config/PPC) \ + $(wildcard include/config/PARISC) \ + $(wildcard include/config/SPARC64) \ + $(wildcard include/config/ARM64) \ + $(wildcard include/config/ARM64_MTE) \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ + $(wildcard include/config/STACK_GROWSUP) \ + $(wildcard include/config/SHMEM) \ + $(wildcard include/config/DEV_PAGEMAP_OPS) \ + $(wildcard include/config/DEVICE_PRIVATE) \ + $(wildcard include/config/PCI_P2PDMA) \ + $(wildcard include/config/MIGRATION) \ + $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ + $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ + $(wildcard include/config/DEBUG_VM_RB) \ + $(wildcard include/config/PAGE_POISONING) \ + $(wildcard include/config/INIT_ON_ALLOC_DEFAULT_ON) \ + $(wildcard include/config/INIT_ON_FREE_DEFAULT_ON) \ + $(wildcard include/config/DEBUG_PAGEALLOC) \ + $(wildcard include/config/HUGETLBFS) \ + $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ + include/linux/mmap_lock.h \ + include/linux/percpu-refcount.h \ + include/linux/bit_spinlock.h \ + include/linux/shrinker.h \ + include/linux/page_ext.h \ + include/linux/stacktrace.h \ + $(wildcard include/config/STACKTRACE) \ + $(wildcard include/config/ARCH_STACKWALK) \ + $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ + include/linux/stackdepot.h \ + $(wildcard include/config/STACKDEPOT) \ + include/linux/page_ref.h \ + $(wildcard include/config/DEBUG_PAGE_REF) \ + include/linux/memremap.h \ + include/linux/pgtable.h \ + $(wildcard include/config/HIGHPTE) \ + $(wildcard include/config/GUP_GET_PTE_LOW_HIGH) \ + $(wildcard include/config/HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD) \ + $(wildcard include/config/HAVE_ARCH_SOFT_DIRTY) \ + $(wildcard include/config/ARCH_ENABLE_THP_MIGRATION) \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMAP) \ + $(wildcard include/config/X86_ESPFIX64) \ + arch/x86/include/asm/pgtable.h \ + $(wildcard include/config/DEBUG_WX) \ + arch/x86/include/asm/pkru.h \ + arch/x86/include/asm/fpu/api.h \ + $(wildcard include/config/X86_DEBUG_FPU) \ + include/asm-generic/pgtable_uffd.h \ + arch/x86/include/asm/pgtable_64.h \ + arch/x86/include/asm/fixmap.h \ + $(wildcard include/config/PROVIDE_OHCI1394_DMA_INIT) \ + $(wildcard include/config/X86_IO_APIC) \ + $(wildcard include/config/PCI_MMCONFIG) \ + $(wildcard include/config/ACPI_APEI_GHES) \ + $(wildcard include/config/INTEL_TXT) \ + arch/x86/include/uapi/asm/vsyscall.h \ + include/asm-generic/fixmap.h \ + arch/x86/include/asm/pgtable-invert.h \ + include/linux/kasan.h \ + $(wildcard include/config/KASAN_STACK) \ + $(wildcard include/config/KASAN_VMALLOC) \ + $(wildcard include/config/KASAN_INLINE) \ + include/linux/huge_mm.h \ + include/linux/sched/coredump.h \ + $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ + include/linux/fs.h \ + $(wildcard include/config/READ_ONLY_THP_FOR_FS) \ + $(wildcard include/config/FS_POSIX_ACL) \ + $(wildcard include/config/CGROUP_WRITEBACK) \ + $(wildcard include/config/IMA) \ + $(wildcard include/config/FILE_LOCKING) \ + $(wildcard include/config/FSNOTIFY) \ + $(wildcard include/config/FS_ENCRYPTION) \ + $(wildcard include/config/FS_VERITY) \ + $(wildcard include/config/EPOLL) \ + $(wildcard include/config/UNICODE) \ + $(wildcard include/config/QUOTA) \ + $(wildcard include/config/BLK_DEV_LOOP) \ + $(wildcard include/config/FS_DAX) \ + include/linux/wait_bit.h \ + include/linux/dcache.h \ + include/linux/rculist_bl.h \ + include/linux/list_bl.h \ + include/linux/lockref.h \ + $(wildcard include/config/ARCH_USE_CMPXCHG_LOCKREF) \ + include/linux/stringhash.h \ + $(wildcard include/config/DCACHE_WORD_ACCESS) \ + include/linux/hash.h \ + $(wildcard include/config/HAVE_ARCH_HASH) \ + include/linux/path.h \ + include/linux/list_lru.h \ + $(wildcard include/config/MEMCG_KMEM) \ + include/linux/capability.h \ + include/uapi/linux/capability.h \ + include/linux/semaphore.h \ + include/linux/fcntl.h \ + $(wildcard include/config/ARCH_32BIT_OFF_T) \ + include/uapi/linux/fcntl.h \ + arch/x86/include/generated/uapi/asm/fcntl.h \ + include/uapi/asm-generic/fcntl.h \ + include/uapi/linux/openat2.h \ + include/linux/migrate_mode.h \ + include/linux/percpu-rwsem.h \ + include/linux/rcuwait.h \ + include/linux/sched/signal.h \ + $(wildcard include/config/SCHED_AUTOGROUP) \ + $(wildcard include/config/BSD_PROCESS_ACCT) \ + $(wildcard include/config/TASKSTATS) \ + include/linux/signal.h \ + $(wildcard include/config/DYNAMIC_SIGFRAME) \ + include/linux/sched/jobctl.h \ + include/linux/sched/task.h \ + $(wildcard include/config/HAVE_EXIT_THREAD) \ + $(wildcard include/config/ARCH_WANTS_DYNAMIC_TASK_STRUCT) \ + $(wildcard include/config/HAVE_ARCH_THREAD_STRUCT_WHITELIST) \ + include/linux/cred.h \ + $(wildcard include/config/DEBUG_CREDENTIALS) \ + include/linux/key.h \ + $(wildcard include/config/KEY_NOTIFICATIONS) \ + $(wildcard include/config/NET) \ + include/linux/assoc_array.h \ + $(wildcard include/config/ASSOCIATIVE_ARRAY) \ + include/linux/sched/user.h \ + $(wildcard include/config/WATCH_QUEUE) \ + include/linux/percpu_counter.h \ + include/linux/rcu_sync.h \ + include/linux/delayed_call.h \ + include/linux/uuid.h \ + include/uapi/linux/uuid.h \ + include/linux/errseq.h \ + include/linux/ioprio.h \ + include/linux/sched/rt.h \ + include/linux/iocontext.h \ + include/uapi/linux/ioprio.h \ + include/linux/fs_types.h \ + include/linux/mount.h \ + include/linux/mnt_idmapping.h \ + include/uapi/linux/fs.h \ + include/linux/quota.h \ + $(wildcard include/config/QUOTA_NETLINK_INTERFACE) \ + include/uapi/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/dqblk_qtree.h \ + include/linux/projid.h \ + include/uapi/linux/quota.h \ + include/linux/nfs_fs_i.h \ + include/linux/vmstat.h \ + $(wildcard include/config/VM_EVENT_COUNTERS) \ + $(wildcard include/config/DEBUG_TLBFLUSH) \ + $(wildcard include/config/DEBUG_VM_VMACACHE) \ + include/linux/vm_event_item.h \ + $(wildcard include/config/MEMORY_BALLOON) \ + $(wildcard include/config/BALLOON_COMPACTION) \ + arch/x86/include/asm/io.h \ + $(wildcard include/config/MTRR) \ + $(wildcard include/config/X86_PAT) \ + arch/x86/include/generated/asm/early_ioremap.h \ + include/asm-generic/early_ioremap.h \ + $(wildcard include/config/GENERIC_EARLY_IOREMAP) \ + include/asm-generic/iomap.h \ + $(wildcard include/config/HAS_IOPORT_MAP) \ + include/asm-generic/pci_iomap.h \ + $(wildcard include/config/PCI) \ + $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ + $(wildcard include/config/GENERIC_PCI_IOMAP) \ + include/asm-generic/io.h \ + $(wildcard include/config/GENERIC_IOMAP) \ + $(wildcard include/config/GENERIC_IOREMAP) \ + $(wildcard include/config/VIRT_TO_BUS) \ + include/linux/logic_pio.h \ + $(wildcard include/config/INDIRECT_PIO) \ + include/linux/fwnode.h \ + include/linux/vmalloc.h \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMALLOC) \ + arch/x86/include/asm/vmalloc.h \ + arch/x86/include/asm/pgtable_areas.h \ + include/linux/delay.h \ + arch/x86/include/asm/delay.h \ + include/asm-generic/delay.h \ + include/linux/fb.h \ + $(wildcard include/config/GUMSTIX_AM200EPD) \ + $(wildcard include/config/FB_NOTIFY) \ + $(wildcard include/config/FB_DEFERRED_IO) \ + $(wildcard include/config/FB_TILEBLITTING) \ + $(wildcard include/config/FB_BACKLIGHT) \ + $(wildcard include/config/FB_FOREIGN_ENDIAN) \ + $(wildcard include/config/FB_BOTH_ENDIAN) \ + $(wildcard include/config/FB_BIG_ENDIAN) \ + $(wildcard include/config/FB_LITTLE_ENDIAN) \ + include/linux/kgdb.h \ + $(wildcard include/config/HAVE_ARCH_KGDB) \ + $(wildcard include/config/KGDB) \ + $(wildcard include/config/SERIAL_KGDB_NMI) \ + $(wildcard include/config/KGDB_HONOUR_BLOCKLIST) \ + include/linux/kprobes.h \ + $(wildcard include/config/KPROBES_SANITY_TEST) \ + $(wildcard include/config/OPTPROBES) \ + $(wildcard include/config/KPROBES_ON_FTRACE) \ + include/linux/ftrace.h \ + $(wildcard include/config/FUNCTION_TRACER) \ + $(wildcard include/config/DYNAMIC_FTRACE) \ + $(wildcard include/config/HAVE_DYNAMIC_FTRACE_WITH_ARGS) \ + $(wildcard include/config/DYNAMIC_FTRACE_WITH_REGS) \ + $(wildcard include/config/DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ + $(wildcard include/config/HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ + $(wildcard include/config/STACK_TRACER) \ + $(wildcard include/config/FUNCTION_PROFILER) \ + $(wildcard include/config/FTRACE_SYSCALLS) \ + include/linux/trace_recursion.h \ + $(wildcard include/config/FTRACE_RECORD_RECURSION) \ + include/linux/interrupt.h \ + $(wildcard include/config/IRQ_FORCED_THREADING) \ + $(wildcard include/config/GENERIC_IRQ_PROBE) \ + $(wildcard include/config/IRQ_TIMINGS) \ + include/linux/irqreturn.h \ + include/linux/irqnr.h \ + include/uapi/linux/irqnr.h \ + include/linux/hardirq.h \ + include/linux/context_tracking_state.h \ + $(wildcard include/config/CONTEXT_TRACKING) \ + include/linux/ftrace_irq.h \ + $(wildcard include/config/HWLAT_TRACER) \ + $(wildcard include/config/OSNOISE_TRACER) \ + include/linux/vtime.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING) \ + $(wildcard include/config/IRQ_TIME_ACCOUNTING) \ + arch/x86/include/asm/hardirq.h \ + $(wildcard include/config/KVM_INTEL) \ + $(wildcard include/config/HAVE_KVM) \ + $(wildcard include/config/X86_THERMAL_VECTOR) \ + $(wildcard include/config/X86_MCE_THRESHOLD) \ + $(wildcard include/config/X86_MCE_AMD) \ + $(wildcard include/config/X86_HV_CALLBACK_VECTOR) \ + $(wildcard include/config/HYPERV) \ + arch/x86/include/asm/irq.h \ + arch/x86/include/asm/irq_vectors.h \ + $(wildcard include/config/PCI_MSI) \ + arch/x86/include/asm/sections.h \ + include/asm-generic/sections.h \ + include/linux/trace_clock.h \ + arch/x86/include/asm/trace_clock.h \ + include/linux/kallsyms.h \ + $(wildcard include/config/KALLSYMS_ALL) \ + include/linux/ptrace.h \ + include/linux/pid_namespace.h \ + $(wildcard include/config/PID_NS) \ + include/linux/nsproxy.h \ + include/linux/ns_common.h \ + include/uapi/linux/ptrace.h \ + arch/x86/include/asm/ftrace.h \ + include/linux/compat.h \ + $(wildcard include/config/ARCH_HAS_SYSCALL_WRAPPER) \ + $(wildcard include/config/COMPAT_OLD_SIGACTION) \ + $(wildcard include/config/ODD_RT_SIGACTION) \ + include/linux/socket.h \ + arch/x86/include/generated/uapi/asm/socket.h \ + include/uapi/asm-generic/socket.h \ + arch/x86/include/generated/uapi/asm/sockios.h \ + include/uapi/asm-generic/sockios.h \ + include/uapi/linux/sockios.h \ + include/linux/uio.h \ + include/uapi/linux/uio.h \ + include/uapi/linux/socket.h \ + include/uapi/linux/if.h \ + include/uapi/linux/libc-compat.h \ + include/uapi/linux/hdlc/ioctl.h \ + include/uapi/linux/aio_abi.h \ + arch/x86/include/asm/compat.h \ + include/linux/sched/task_stack.h \ + $(wildcard include/config/DEBUG_STACK_USAGE) \ + include/uapi/linux/magic.h \ + arch/x86/include/asm/user32.h \ + include/asm-generic/compat.h \ + $(wildcard include/config/COMPAT_FOR_U64_ALIGNMENT) \ + arch/x86/include/asm/syscall_wrapper.h \ + include/linux/freelist.h \ + arch/x86/include/asm/kprobes.h \ + include/asm-generic/kprobes.h \ + arch/x86/include/asm/text-patching.h \ + $(wildcard include/config/UML_X86) \ + arch/x86/include/asm/insn.h \ + arch/x86/include/asm/inat.h \ + arch/x86/include/asm/inat_types.h \ + arch/x86/include/asm/kgdb.h \ + include/uapi/linux/fb.h \ + include/linux/i2c.h \ + $(wildcard include/config/I2C) \ + $(wildcard include/config/I2C_SLAVE) \ + $(wildcard include/config/I2C_BOARDINFO) \ + $(wildcard include/config/I2C_MUX) \ + include/linux/acpi.h \ + $(wildcard include/config/ACPI_DEBUGGER) \ + $(wildcard include/config/LOONGARCH) \ + $(wildcard include/config/ACPI_PROCESSOR_CSTATE) \ + $(wildcard include/config/ACPI_HOTPLUG_CPU) \ + $(wildcard include/config/ACPI_HOTPLUG_IOAPIC) \ + $(wildcard include/config/ACPI_WMI) \ + $(wildcard include/config/ACPI_NUMA) \ + $(wildcard include/config/HIBERNATION) \ + $(wildcard include/config/ACPI_HOTPLUG_MEMORY) \ + $(wildcard include/config/ACPI_CONTAINER) \ + $(wildcard include/config/ACPI_GTDT) \ + $(wildcard include/config/GPIOLIB) \ + $(wildcard include/config/ACPI_TABLE_UPGRADE) \ + $(wildcard include/config/ACPI_WATCHDOG) \ + $(wildcard include/config/ACPI_SPCR_TABLE) \ + $(wildcard include/config/ACPI_GENERIC_GSI) \ + $(wildcard include/config/ACPI_LPIT) \ + $(wildcard include/config/ACPI_PPTT) \ + include/linux/irqdomain.h \ + $(wildcard include/config/IRQ_DOMAIN_HIERARCHY) \ + $(wildcard include/config/GENERIC_IRQ_DEBUGFS) \ + $(wildcard include/config/IRQ_DOMAIN) \ + $(wildcard include/config/IRQ_DOMAIN_NOMAP) \ + include/linux/irqhandler.h \ + include/linux/of.h \ + $(wildcard include/config/OF_DYNAMIC) \ + $(wildcard include/config/SPARC) \ + $(wildcard include/config/OF_PROMTREE) \ + $(wildcard include/config/OF_KOBJ) \ + $(wildcard include/config/OF_NUMA) \ + $(wildcard include/config/OF_OVERLAY) \ + include/linux/mod_devicetable.h \ + include/linux/property.h \ + include/linux/resource_ext.h \ + include/linux/slab.h \ + $(wildcard include/config/DEBUG_SLAB) \ + $(wildcard include/config/FAILSLAB) \ + $(wildcard include/config/HAVE_HARDENED_USERCOPY_ALLOCATOR) \ + $(wildcard include/config/SLAB) \ + $(wildcard include/config/SLUB) \ + $(wildcard include/config/SLOB) \ + $(wildcard include/config/CC_IS_GCC) \ + $(wildcard include/config/CLANG_VERSION) \ + include/acpi/acpi.h \ + include/acpi/platform/acenv.h \ + include/acpi/platform/acgcc.h \ + include/acpi/platform/aclinux.h \ + $(wildcard include/config/ACPI_REDUCED_HARDWARE_ONLY) \ + $(wildcard include/config/ACPI_DEBUG) \ + include/linux/ctype.h \ + arch/x86/include/asm/acenv.h \ + include/acpi/acnames.h \ + include/acpi/actypes.h \ + include/acpi/acexcep.h \ + include/acpi/actbl.h \ + include/acpi/actbl1.h \ + include/acpi/actbl2.h \ + include/acpi/actbl3.h \ + include/acpi/acrestyp.h \ + include/acpi/platform/acenvex.h \ + include/acpi/platform/aclinuxex.h \ + include/acpi/platform/acgccex.h \ + include/acpi/acoutput.h \ + include/acpi/acpiosxf.h \ + include/acpi/acpixf.h \ + include/acpi/acconfig.h \ + include/acpi/acbuffer.h \ + include/acpi/acpi_bus.h \ + $(wildcard include/config/ACPI_SYSTEM_POWER_STATES_SUPPORT) \ + $(wildcard include/config/ACPI_SLEEP) \ + include/acpi/acpi_drivers.h \ + $(wildcard include/config/ACPI_DOCK) \ + include/acpi/acpi_numa.h \ + $(wildcard include/config/ACPI_HMAT) \ + include/acpi/acpi_io.h \ + include/linux/io.h \ + arch/x86/include/asm/acpi.h \ + $(wildcard include/config/ACPI_APEI) \ + include/acpi/pdc_intel.h \ + arch/x86/include/asm/numa.h \ + $(wildcard include/config/NUMA_EMU) \ + include/linux/regulator/consumer.h \ + $(wildcard include/config/REGULATOR) \ + include/linux/suspend.h \ + $(wildcard include/config/VT) \ + $(wildcard include/config/SUSPEND) \ + $(wildcard include/config/HIBERNATION_SNAPSHOT_DEV) \ + $(wildcard include/config/PM_SLEEP_DEBUG) \ + $(wildcard include/config/PM_AUTOSLEEP) \ + include/linux/swap.h \ + $(wildcard include/config/FRONTSWAP) \ + $(wildcard include/config/MEMCG_SWAP) \ + include/linux/memcontrol.h \ + include/linux/cgroup.h \ + $(wildcard include/config/CGROUP_CPUACCT) \ + $(wildcard include/config/SOCK_CGROUP_DATA) \ + $(wildcard include/config/CGROUP_DATA) \ + $(wildcard include/config/CGROUP_BPF) \ + include/uapi/linux/cgroupstats.h \ + include/uapi/linux/taskstats.h \ + include/linux/seq_file.h \ + include/linux/user_namespace.h \ + $(wildcard include/config/INOTIFY_USER) \ + $(wildcard include/config/FANOTIFY) \ + $(wildcard include/config/PERSISTENT_KEYRINGS) \ + include/linux/kernel_stat.h \ + include/linux/cgroup-defs.h \ + $(wildcard include/config/CGROUP_NET_CLASSID) \ + $(wildcard include/config/CGROUP_NET_PRIO) \ + include/linux/u64_stats_sync.h \ + arch/x86/include/generated/asm/local64.h \ + include/asm-generic/local64.h \ + arch/x86/include/asm/local.h \ + include/linux/bpf-cgroup.h \ + include/linux/bpf.h \ + $(wildcard include/config/BPF_JIT_ALWAYS_ON) \ + $(wildcard include/config/INET) \ + include/uapi/linux/bpf.h \ + $(wildcard include/config/BPF_LIRC_MODE2) \ + $(wildcard include/config/EFFICIENT_UNALIGNED_ACCESS) \ + $(wildcard include/config/IP_ROUTE_CLASSID) \ + $(wildcard include/config/BPF_KPROBE_OVERRIDE) \ + $(wildcard include/config/XFRM) \ + include/uapi/linux/bpf_common.h \ + include/linux/file.h \ + include/linux/sched/mm.h \ + $(wildcard include/config/ARCH_HAS_MEMBARRIER_CALLBACKS) \ + include/linux/sync_core.h \ + $(wildcard include/config/ARCH_HAS_SYNC_CORE_BEFORE_USERMODE) \ + arch/x86/include/asm/sync_core.h \ + include/linux/bpfptr.h \ + include/linux/sockptr.h \ + include/linux/bpf_types.h \ + $(wildcard include/config/BPF_LSM) \ + $(wildcard include/config/XDP_SOCKETS) \ + include/linux/psi_types.h \ + include/linux/kthread.h \ + include/linux/cgroup_subsys.h \ + $(wildcard include/config/CGROUP_DEVICE) \ + $(wildcard include/config/CGROUP_FREEZER) \ + $(wildcard include/config/CGROUP_PERF) \ + $(wildcard include/config/CGROUP_HUGETLB) \ + $(wildcard include/config/CGROUP_PIDS) \ + $(wildcard include/config/CGROUP_RDMA) \ + $(wildcard include/config/CGROUP_MISC) \ + $(wildcard include/config/CGROUP_DEBUG) \ + include/linux/page_counter.h \ + include/linux/vmpressure.h \ + include/linux/eventfd.h \ + include/linux/writeback.h \ + include/linux/flex_proportions.h \ + include/linux/backing-dev-defs.h \ + $(wildcard include/config/DEBUG_FS) \ + include/linux/blk_types.h \ + $(wildcard include/config/FAIL_MAKE_REQUEST) \ + $(wildcard include/config/BLK_CGROUP_IOCOST) \ + $(wildcard include/config/BLK_INLINE_ENCRYPTION) \ + $(wildcard include/config/BLK_DEV_INTEGRITY) \ + include/linux/bvec.h \ + include/linux/highmem.h \ + arch/x86/include/asm/cacheflush.h \ + include/asm-generic/cacheflush.h \ + include/linux/highmem-internal.h \ + include/linux/blk-cgroup.h \ + $(wildcard include/config/BLK_CGROUP_FC_APPID) \ + include/linux/blkdev.h \ + $(wildcard include/config/BLK_RQ_ALLOC_TIME) \ + $(wildcard include/config/BLK_WBT) \ + $(wildcard include/config/BLK_DEV_ZONED) \ + $(wildcard include/config/BLK_DEV_THROTTLING) \ + $(wildcard include/config/BLK_DEBUG_FS) \ + include/linux/sched/clock.h \ + $(wildcard include/config/HAVE_UNSTABLE_SCHED_CLOCK) \ + include/uapi/linux/major.h \ + include/linux/genhd.h \ + $(wildcard include/config/BLOCK_HOLDER_DEPRECATED) \ + $(wildcard include/config/CDROM) \ + include/linux/mempool.h \ + include/linux/bio.h \ + include/uapi/linux/blkzoned.h \ + include/linux/sbitmap.h \ + include/linux/elevator.h \ + include/linux/hashtable.h \ + include/linux/blk-mq.h \ + $(wildcard include/config/FAIL_IO_TIMEOUT) \ + include/linux/node.h \ + $(wildcard include/config/HMEM_REPORTING) \ + $(wildcard include/config/MEMORY_HOTPLUG_SPARSE) \ + include/linux/pagemap.h \ + include/linux/hugetlb_inline.h \ + include/uapi/linux/mempolicy.h \ + include/linux/freezer.h \ + include/uapi/linux/i2c.h \ + include/linux/backlight.h \ + $(wildcard include/config/BACKLIGHT_CLASS_DEVICE) \ + include/linux/poll.h \ + include/uapi/linux/poll.h \ + arch/x86/include/generated/uapi/asm/poll.h \ + include/uapi/asm-generic/poll.h \ + include/uapi/linux/eventpoll.h \ + include/linux/pci.h \ + $(wildcard include/config/PCI_IOV) \ + $(wildcard include/config/PCIEAER) \ + $(wildcard include/config/PCIEPORTBUS) \ + $(wildcard include/config/PCIEASPM) \ + $(wildcard include/config/HOTPLUG_PCI_PCIE) \ + $(wildcard include/config/PCIE_PTM) \ + $(wildcard include/config/PCIE_DPC) \ + $(wildcard include/config/PCI_ATS) \ + $(wildcard include/config/PCI_PRI) \ + $(wildcard include/config/PCI_PASID) \ + $(wildcard include/config/PCI_DOMAINS_GENERIC) \ + $(wildcard include/config/PCI_DOMAINS) \ + $(wildcard include/config/PCI_QUIRKS) \ + $(wildcard include/config/ACPI_MCFG) \ + $(wildcard include/config/HOTPLUG_PCI) \ + $(wildcard include/config/EEH) \ + include/uapi/linux/pci.h \ + include/uapi/linux/pci_regs.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + arch/x86/include/asm/pci.h \ + $(wildcard include/config/PCI_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/VMD) \ + arch/x86/include/asm/memtype.h \ + include/asm-generic/pci.h \ + include/linux/pci-dma-compat.h \ + include/linux/aio.h \ + include/linux/splice.h \ + include/linux/pipe_fs_i.h \ + include/generated/uapi/linux/version.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.h \ + $(wildcard include/config/BLOCK_ID) \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.h \ + include/linux/cpuset.h \ + include/linux/mmu_context.h \ + arch/x86/include/asm/mmu_context.h \ + arch/x86/include/asm/desc.h \ + arch/x86/include/asm/cpu_entry_area.h \ + arch/x86/include/asm/intel_ds.h \ + include/linux/pkeys.h \ + arch/x86/include/asm/pkeys.h \ + include/trace/events/tlb.h \ + include/linux/tracepoint.h \ + $(wildcard include/config/HAVE_SYSCALL_TRACEPOINTS) \ + $(wildcard include/config/TRACEPOINT) \ + include/linux/static_call.h \ + include/linux/cpu.h \ + $(wildcard include/config/PM_SLEEP_SMP) \ + $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ + $(wildcard include/config/HOTPLUG_SMT) \ + include/linux/cpuhotplug.h \ + arch/x86/include/asm/static_call.h \ + include/trace/define_trace.h \ + arch/x86/include/asm/tlbflush.h \ + arch/x86/include/asm/invpcid.h \ + arch/x86/include/asm/pti.h \ + arch/x86/include/asm/debugreg.h \ + arch/x86/include/uapi/asm/debugreg.h \ + include/asm-generic/mmu_context.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.h \ + +/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.o: $(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.o) + +$(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.o): diff --git a/host_software/driver/XDMA/linux-kernel/xdma/.libxdma.o.cmd b/host_software/driver/XDMA/linux-kernel/xdma/.libxdma.o.cmd new file mode 100644 index 0000000..b4fb20c --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/.libxdma.o.cmd @@ -0,0 +1,1154 @@ +cmd_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.o := gcc -Wp,-MMD,/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/.libxdma.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/9/include -I./arch/x86/include -I./arch/x86/include/generated -I./include -I./arch/x86/include/uapi -I./arch/x86/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -I./ubuntu/include -include ./include/linux/compiler_types.h -D__KERNEL__ -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu89 -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fcf-protection=none -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -DCONFIG_X86_X32_ABI -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mfunction-return=thunk-extern -fno-jump-tables -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fstack-protector-strong -Wimplicit-fallthrough=5 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-stack-clash-protection -g -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wno-stringop-truncation -Wno-array-bounds -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -I/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/include -fsanitize=bounds -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"libxdma"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.c + +source_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.o := /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.c + +deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.o := \ + $(wildcard include/config/BLOCK_ID) \ + include/linux/compiler-version.h \ + $(wildcard include/config/CC_VERSION_TEXT) \ + include/linux/kconfig.h \ + $(wildcard include/config/CPU_BIG_ENDIAN) \ + $(wildcard include/config/BOOGER) \ + $(wildcard include/config/FOO) \ + include/linux/compiler_types.h \ + $(wildcard include/config/HAVE_ARCH_COMPILER_H) \ + $(wildcard include/config/CC_HAS_ASM_INLINE) \ + include/linux/compiler_attributes.h \ + include/linux/compiler-gcc.h \ + $(wildcard include/config/RETPOLINE) \ + $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ + $(wildcard include/config/KCOV) \ + include/linux/module.h \ + $(wildcard include/config/MODULES) \ + $(wildcard include/config/SYSFS) \ + $(wildcard include/config/MODULES_TREE_LOOKUP) \ + $(wildcard include/config/LIVEPATCH) \ + $(wildcard include/config/STACKTRACE_BUILD_ID) \ + $(wildcard include/config/CFI_CLANG) \ + $(wildcard include/config/MODULE_SIG) \ + $(wildcard include/config/GENERIC_BUG) \ + $(wildcard include/config/KALLSYMS) \ + $(wildcard include/config/SMP) \ + $(wildcard include/config/TRACEPOINTS) \ + $(wildcard include/config/TREE_SRCU) \ + $(wildcard include/config/BPF_EVENTS) \ + $(wildcard include/config/DEBUG_INFO_BTF_MODULES) \ + $(wildcard include/config/JUMP_LABEL) \ + $(wildcard include/config/TRACING) \ + $(wildcard include/config/EVENT_TRACING) \ + $(wildcard include/config/FTRACE_MCOUNT_RECORD) \ + $(wildcard include/config/KPROBES) \ + $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ + $(wildcard include/config/PRINTK_INDEX) \ + $(wildcard include/config/MODULE_UNLOAD) \ + $(wildcard include/config/CONSTRUCTORS) \ + $(wildcard include/config/FUNCTION_ERROR_INJECTION) \ + include/linux/list.h \ + $(wildcard include/config/DEBUG_LIST) \ + include/linux/types.h \ + $(wildcard include/config/HAVE_UID16) \ + $(wildcard include/config/UID16) \ + $(wildcard include/config/ARCH_DMA_ADDR_T_64BIT) \ + $(wildcard include/config/PHYS_ADDR_T_64BIT) \ + $(wildcard include/config/64BIT) \ + $(wildcard include/config/ARCH_32BIT_USTAT_F_TINODE) \ + include/uapi/linux/types.h \ + arch/x86/include/generated/uapi/asm/types.h \ + include/uapi/asm-generic/types.h \ + include/asm-generic/int-ll64.h \ + include/uapi/asm-generic/int-ll64.h \ + arch/x86/include/uapi/asm/bitsperlong.h \ + include/asm-generic/bitsperlong.h \ + include/uapi/asm-generic/bitsperlong.h \ + include/uapi/linux/posix_types.h \ + include/linux/stddef.h \ + include/uapi/linux/stddef.h \ + include/linux/compiler_types.h \ + arch/x86/include/asm/posix_types.h \ + $(wildcard include/config/X86_32) \ + arch/x86/include/uapi/asm/posix_types_64.h \ + include/uapi/asm-generic/posix_types.h \ + include/linux/poison.h \ + $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ + include/linux/const.h \ + include/vdso/const.h \ + include/uapi/linux/const.h \ + include/linux/kernel.h \ + $(wildcard include/config/PREEMPT_VOLUNTARY) \ + $(wildcard include/config/PREEMPT_DYNAMIC) \ + $(wildcard include/config/PREEMPT_) \ + $(wildcard include/config/DEBUG_ATOMIC_SLEEP) \ + $(wildcard include/config/MMU) \ + $(wildcard include/config/PROVE_LOCKING) \ + include/linux/stdarg.h \ + include/linux/align.h \ + include/linux/limits.h \ + include/uapi/linux/limits.h \ + include/vdso/limits.h \ + include/linux/linkage.h \ + $(wildcard include/config/ARCH_USE_SYM_ANNOTATIONS) \ + include/linux/stringify.h \ + include/linux/export.h \ + $(wildcard include/config/MODVERSIONS) \ + $(wildcard include/config/MODULE_REL_CRCS) \ + $(wildcard include/config/HAVE_ARCH_PREL32_RELOCATIONS) \ + $(wildcard include/config/TRIM_UNUSED_KSYMS) \ + include/linux/compiler.h \ + $(wildcard include/config/TRACE_BRANCH_PROFILING) \ + $(wildcard include/config/PROFILE_ALL_BRANCHES) \ + $(wildcard include/config/STACK_VALIDATION) \ + arch/x86/include/generated/asm/rwonce.h \ + include/asm-generic/rwonce.h \ + include/linux/kasan-checks.h \ + $(wildcard include/config/KASAN_GENERIC) \ + $(wildcard include/config/KASAN_SW_TAGS) \ + include/linux/kcsan-checks.h \ + $(wildcard include/config/KCSAN) \ + $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ + arch/x86/include/asm/linkage.h \ + $(wildcard include/config/X86_64) \ + $(wildcard include/config/X86_ALIGNMENT_16) \ + $(wildcard include/config/RETHUNK) \ + $(wildcard include/config/SLS) \ + include/linux/bitops.h \ + include/linux/bits.h \ + include/vdso/bits.h \ + include/linux/build_bug.h \ + include/linux/typecheck.h \ + include/uapi/linux/kernel.h \ + include/uapi/linux/sysinfo.h \ + arch/x86/include/asm/bitops.h \ + $(wildcard include/config/X86_CMOV) \ + arch/x86/include/asm/alternative.h \ + arch/x86/include/asm/asm.h \ + arch/x86/include/asm/extable_fixup_types.h \ + arch/x86/include/asm/rmwcc.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO) \ + arch/x86/include/asm/barrier.h \ + arch/x86/include/asm/nops.h \ + include/asm-generic/barrier.h \ + include/asm-generic/bitops/find.h \ + $(wildcard include/config/GENERIC_FIND_FIRST_BIT) \ + include/asm-generic/bitops/sched.h \ + arch/x86/include/asm/arch_hweight.h \ + arch/x86/include/asm/cpufeatures.h \ + arch/x86/include/asm/required-features.h \ + $(wildcard include/config/X86_MINIMUM_CPU_FAMILY) \ + $(wildcard include/config/MATH_EMULATION) \ + $(wildcard include/config/X86_PAE) \ + $(wildcard include/config/X86_CMPXCHG64) \ + $(wildcard include/config/X86_USE_3DNOW) \ + $(wildcard include/config/X86_P6_NOP) \ + $(wildcard include/config/MATOM) \ + $(wildcard include/config/PARAVIRT_XXL) \ + arch/x86/include/asm/disabled-features.h \ + $(wildcard include/config/X86_SMAP) \ + $(wildcard include/config/X86_UMIP) \ + $(wildcard include/config/X86_INTEL_MEMORY_PROTECTION_KEYS) \ + $(wildcard include/config/X86_5LEVEL) \ + $(wildcard include/config/PAGE_TABLE_ISOLATION) \ + $(wildcard include/config/CPU_UNRET_ENTRY) \ + $(wildcard include/config/X86_SGX) \ + include/asm-generic/bitops/const_hweight.h \ + include/asm-generic/bitops/instrumented-atomic.h \ + include/linux/instrumented.h \ + include/asm-generic/bitops/instrumented-non-atomic.h \ + $(wildcard include/config/KCSAN_ASSUME_PLAIN_WRITES_ATOMIC) \ + include/asm-generic/bitops/instrumented-lock.h \ + include/asm-generic/bitops/le.h \ + arch/x86/include/uapi/asm/byteorder.h \ + include/linux/byteorder/little_endian.h \ + include/uapi/linux/byteorder/little_endian.h \ + include/linux/swab.h \ + include/uapi/linux/swab.h \ + arch/x86/include/uapi/asm/swab.h \ + include/linux/byteorder/generic.h \ + include/asm-generic/bitops/ext2-atomic-setbit.h \ + include/linux/kstrtox.h \ + include/linux/log2.h \ + $(wildcard include/config/ARCH_HAS_ILOG2_U32) \ + $(wildcard include/config/ARCH_HAS_ILOG2_U64) \ + include/linux/math.h \ + arch/x86/include/asm/div64.h \ + include/asm-generic/div64.h \ + include/linux/minmax.h \ + include/linux/panic.h \ + $(wildcard include/config/PANIC_TIMEOUT) \ + include/linux/printk.h \ + $(wildcard include/config/MESSAGE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_QUIET) \ + $(wildcard include/config/EARLY_PRINTK) \ + $(wildcard include/config/PRINTK) \ + $(wildcard include/config/DYNAMIC_DEBUG) \ + $(wildcard include/config/DYNAMIC_DEBUG_CORE) \ + include/linux/init.h \ + $(wildcard include/config/STRICT_KERNEL_RWX) \ + $(wildcard include/config/STRICT_MODULE_RWX) \ + $(wildcard include/config/LTO_CLANG) \ + include/linux/kern_levels.h \ + include/linux/cache.h \ + $(wildcard include/config/ARCH_HAS_CACHE_LINE_SIZE) \ + arch/x86/include/asm/cache.h \ + $(wildcard include/config/X86_L1_CACHE_SHIFT) \ + $(wildcard include/config/X86_INTERNODE_CACHE_SHIFT) \ + $(wildcard include/config/X86_VSMP) \ + include/linux/ratelimit_types.h \ + include/uapi/linux/param.h \ + arch/x86/include/generated/uapi/asm/param.h \ + include/asm-generic/param.h \ + $(wildcard include/config/HZ) \ + include/uapi/asm-generic/param.h \ + include/linux/spinlock_types.h \ + $(wildcard include/config/PREEMPT_RT) \ + $(wildcard include/config/DEBUG_LOCK_ALLOC) \ + include/linux/spinlock_types_raw.h \ + $(wildcard include/config/DEBUG_SPINLOCK) \ + arch/x86/include/asm/spinlock_types.h \ + include/asm-generic/qspinlock_types.h \ + $(wildcard include/config/NR_CPUS) \ + include/asm-generic/qrwlock_types.h \ + include/linux/lockdep_types.h \ + $(wildcard include/config/PROVE_RAW_LOCK_NESTING) \ + $(wildcard include/config/PREEMPT_LOCK) \ + $(wildcard include/config/LOCKDEP) \ + $(wildcard include/config/LOCK_STAT) \ + include/linux/rwlock_types.h \ + include/linux/once_lite.h \ + include/linux/dynamic_debug.h \ + include/linux/jump_label.h \ + $(wildcard include/config/HAVE_ARCH_JUMP_LABEL_RELATIVE) \ + arch/x86/include/asm/jump_label.h \ + include/linux/static_call_types.h \ + $(wildcard include/config/HAVE_STATIC_CALL) \ + include/linux/stat.h \ + arch/x86/include/uapi/asm/stat.h \ + include/uapi/linux/stat.h \ + include/linux/time.h \ + $(wildcard include/config/POSIX_TIMERS) \ + include/linux/math64.h \ + $(wildcard include/config/ARCH_SUPPORTS_INT128) \ + include/vdso/math64.h \ + include/linux/time64.h \ + include/vdso/time64.h \ + include/uapi/linux/time.h \ + include/uapi/linux/time_types.h \ + include/linux/time32.h \ + include/linux/timex.h \ + include/uapi/linux/timex.h \ + arch/x86/include/asm/timex.h \ + $(wildcard include/config/X86_TSC) \ + arch/x86/include/asm/processor.h \ + $(wildcard include/config/X86_VMX_FEATURE_NAMES) \ + $(wildcard include/config/X86_IOPL_IOPERM) \ + $(wildcard include/config/STACKPROTECTOR) \ + $(wildcard include/config/VM86) \ + $(wildcard include/config/X86_DEBUGCTLMSR) \ + $(wildcard include/config/CPU_SUP_AMD) \ + $(wildcard include/config/XEN) \ + arch/x86/include/asm/processor-flags.h \ + arch/x86/include/uapi/asm/processor-flags.h \ + include/linux/mem_encrypt.h \ + $(wildcard include/config/ARCH_HAS_MEM_ENCRYPT) \ + $(wildcard include/config/AMD_MEM_ENCRYPT) \ + arch/x86/include/asm/mem_encrypt.h \ + include/linux/cc_platform.h \ + $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ + arch/x86/include/uapi/asm/bootparam.h \ + include/linux/screen_info.h \ + include/uapi/linux/screen_info.h \ + include/linux/apm_bios.h \ + include/uapi/linux/apm_bios.h \ + include/uapi/linux/ioctl.h \ + arch/x86/include/generated/uapi/asm/ioctl.h \ + include/asm-generic/ioctl.h \ + include/uapi/asm-generic/ioctl.h \ + include/linux/edd.h \ + include/uapi/linux/edd.h \ + arch/x86/include/asm/ist.h \ + arch/x86/include/uapi/asm/ist.h \ + include/video/edid.h \ + $(wildcard include/config/X86) \ + include/uapi/video/edid.h \ + arch/x86/include/asm/math_emu.h \ + arch/x86/include/asm/ptrace.h \ + $(wildcard include/config/PARAVIRT) \ + $(wildcard include/config/IA32_EMULATION) \ + arch/x86/include/asm/segment.h \ + $(wildcard include/config/XEN_PV) \ + arch/x86/include/asm/page_types.h \ + $(wildcard include/config/PHYSICAL_START) \ + $(wildcard include/config/PHYSICAL_ALIGN) \ + $(wildcard include/config/DYNAMIC_PHYSICAL_MASK) \ + arch/x86/include/asm/page_64_types.h \ + $(wildcard include/config/KASAN) \ + $(wildcard include/config/DYNAMIC_MEMORY_LAYOUT) \ + $(wildcard include/config/RANDOMIZE_BASE) \ + arch/x86/include/asm/kaslr.h \ + $(wildcard include/config/RANDOMIZE_MEMORY) \ + arch/x86/include/uapi/asm/ptrace.h \ + arch/x86/include/uapi/asm/ptrace-abi.h \ + arch/x86/include/asm/paravirt_types.h \ + $(wildcard include/config/PGTABLE_LEVELS) \ + $(wildcard include/config/PARAVIRT_DEBUG) \ + arch/x86/include/asm/desc_defs.h \ + arch/x86/include/asm/pgtable_types.h \ + $(wildcard include/config/MEM_SOFT_DIRTY) \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_WP) \ + $(wildcard include/config/PROC_FS) \ + arch/x86/include/asm/pgtable_64_types.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL_FORCE_MAP) \ + arch/x86/include/asm/sparsemem.h \ + $(wildcard include/config/SPARSEMEM) \ + $(wildcard include/config/NUMA_KEEP_MEMINFO) \ + arch/x86/include/asm/nospec-branch.h \ + $(wildcard include/config/DEBUG_ENTRY) \ + $(wildcard include/config/CPU_IBPB_ENTRY) \ + include/linux/static_key.h \ + include/linux/objtool.h \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/unwind_hints.h \ + arch/x86/include/asm/orc_types.h \ + arch/x86/include/asm/percpu.h \ + $(wildcard include/config/X86_64_SMP) \ + include/asm-generic/percpu.h \ + $(wildcard include/config/DEBUG_PREEMPT) \ + $(wildcard include/config/HAVE_SETUP_PER_CPU_AREA) \ + include/linux/threads.h \ + $(wildcard include/config/BASE_SMALL) \ + include/linux/percpu-defs.h \ + $(wildcard include/config/DEBUG_FORCE_WEAK_PER_CPU) \ + arch/x86/include/asm/GEN-for-each-reg.h \ + arch/x86/include/asm/proto.h \ + arch/x86/include/uapi/asm/ldt.h \ + arch/x86/include/uapi/asm/sigcontext.h \ + arch/x86/include/asm/current.h \ + arch/x86/include/asm/page.h \ + arch/x86/include/asm/page_64.h \ + $(wildcard include/config/DEBUG_VIRTUAL) \ + $(wildcard include/config/FLATMEM) \ + $(wildcard include/config/X86_VSYSCALL_EMULATION) \ + include/linux/range.h \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/SPARSEMEM_VMEMMAP) \ + include/linux/pfn.h \ + include/asm-generic/getorder.h \ + arch/x86/include/asm/msr.h \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/generated/uapi/asm/errno.h \ + include/uapi/asm-generic/errno.h \ + include/uapi/asm-generic/errno-base.h \ + arch/x86/include/asm/cpumask.h \ + include/linux/cpumask.h \ + $(wildcard include/config/CPUMASK_OFFSTACK) \ + $(wildcard include/config/HOTPLUG_CPU) \ + $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ + include/linux/bitmap.h \ + include/linux/string.h \ + $(wildcard include/config/BINARY_PRINTF) \ + $(wildcard include/config/FORTIFY_SOURCE) \ + include/linux/errno.h \ + include/uapi/linux/errno.h \ + include/uapi/linux/string.h \ + arch/x86/include/asm/string.h \ + arch/x86/include/asm/string_64.h \ + $(wildcard include/config/ARCH_HAS_UACCESS_FLUSHCACHE) \ + include/linux/fortify-string.h \ + include/linux/atomic.h \ + arch/x86/include/asm/atomic.h \ + arch/x86/include/asm/cmpxchg.h \ + arch/x86/include/asm/cmpxchg_64.h \ + arch/x86/include/asm/atomic64_64.h \ + include/linux/atomic/atomic-arch-fallback.h \ + $(wildcard include/config/GENERIC_ATOMIC64) \ + include/linux/atomic/atomic-long.h \ + include/linux/atomic/atomic-instrumented.h \ + include/linux/bug.h \ + $(wildcard include/config/BUG_ON_DATA_CORRUPTION) \ + arch/x86/include/asm/bug.h \ + $(wildcard include/config/DEBUG_BUGVERBOSE) \ + include/linux/instrumentation.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/BUG) \ + $(wildcard include/config/GENERIC_BUG_RELATIVE_POINTERS) \ + arch/x86/include/uapi/asm/msr.h \ + include/linux/tracepoint-defs.h \ + arch/x86/include/asm/paravirt.h \ + $(wildcard include/config/PARAVIRT_SPINLOCKS) \ + arch/x86/include/asm/frame.h \ + $(wildcard include/config/FRAME_POINTER) \ + arch/x86/include/asm/special_insns.h \ + include/linux/irqflags.h \ + $(wildcard include/config/TRACE_IRQFLAGS) \ + $(wildcard include/config/IRQSOFF_TRACER) \ + $(wildcard include/config/PREEMPT_TRACER) \ + $(wildcard include/config/DEBUG_IRQFLAGS) \ + $(wildcard include/config/TRACE_IRQFLAGS_SUPPORT) \ + arch/x86/include/asm/irqflags.h \ + arch/x86/include/asm/fpu/types.h \ + arch/x86/include/asm/vmxfeatures.h \ + arch/x86/include/asm/vdso/processor.h \ + include/linux/personality.h \ + include/uapi/linux/personality.h \ + include/linux/err.h \ + arch/x86/include/asm/tsc.h \ + arch/x86/include/asm/cpufeature.h \ + $(wildcard include/config/X86_FEATURE_NAMES) \ + include/vdso/time32.h \ + include/vdso/time.h \ + include/linux/uidgid.h \ + $(wildcard include/config/MULTIUSER) \ + $(wildcard include/config/USER_NS) \ + include/linux/highuid.h \ + include/linux/buildid.h \ + $(wildcard include/config/CRASH_CORE) \ + include/linux/mm_types.h \ + $(wildcard include/config/HAVE_ALIGNED_STRUCT_PAGE) \ + $(wildcard include/config/MEMCG) \ + $(wildcard include/config/USERFAULTFD) \ + $(wildcard include/config/SWAP) \ + $(wildcard include/config/NUMA) \ + $(wildcard include/config/HAVE_ARCH_COMPAT_MMAP_BASES) \ + $(wildcard include/config/MEMBARRIER) \ + $(wildcard include/config/AIO) \ + $(wildcard include/config/MMU_NOTIFIER) \ + $(wildcard include/config/TRANSPARENT_HUGEPAGE) \ + $(wildcard include/config/NUMA_BALANCING) \ + $(wildcard include/config/ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH) \ + $(wildcard include/config/HUGETLB_PAGE) \ + $(wildcard include/config/IOMMU_SUPPORT) \ + include/linux/mm_types_task.h \ + $(wildcard include/config/SPLIT_PTLOCK_CPUS) \ + $(wildcard include/config/ARCH_ENABLE_SPLIT_PMD_PTLOCK) \ + arch/x86/include/asm/tlbbatch.h \ + include/linux/auxvec.h \ + include/uapi/linux/auxvec.h \ + arch/x86/include/uapi/asm/auxvec.h \ + include/linux/spinlock.h \ + $(wildcard include/config/PREEMPTION) \ + include/linux/preempt.h \ + $(wildcard include/config/PREEMPT_COUNT) \ + $(wildcard include/config/TRACE_PREEMPT_TOGGLE) \ + $(wildcard include/config/PREEMPT_NOTIFIERS) \ + arch/x86/include/asm/preempt.h \ + include/linux/thread_info.h \ + $(wildcard include/config/THREAD_INFO_IN_TASK) \ + $(wildcard include/config/GENERIC_ENTRY) \ + $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ + $(wildcard include/config/HARDENED_USERCOPY) \ + include/linux/restart_block.h \ + arch/x86/include/asm/thread_info.h \ + $(wildcard include/config/COMPAT) \ + include/linux/bottom_half.h \ + include/linux/lockdep.h \ + $(wildcard include/config/DEBUG_LOCKING_API_SELFTESTS) \ + include/linux/smp.h \ + $(wildcard include/config/UP_LATE_INIT) \ + include/linux/smp_types.h \ + include/linux/llist.h \ + $(wildcard include/config/ARCH_HAVE_NMI_SAFE_CMPXCHG) \ + arch/x86/include/asm/smp.h \ + $(wildcard include/config/X86_LOCAL_APIC) \ + $(wildcard include/config/DEBUG_NMI_SELFTEST) \ + arch/x86/include/generated/asm/mmiowb.h \ + include/asm-generic/mmiowb.h \ + $(wildcard include/config/MMIOWB) \ + arch/x86/include/asm/spinlock.h \ + arch/x86/include/asm/qspinlock.h \ + include/asm-generic/qspinlock.h \ + arch/x86/include/asm/qrwlock.h \ + include/asm-generic/qrwlock.h \ + include/linux/rwlock.h \ + $(wildcard include/config/PREEMPT) \ + include/linux/spinlock_api_smp.h \ + $(wildcard include/config/INLINE_SPIN_LOCK) \ + $(wildcard include/config/INLINE_SPIN_LOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK_BH) \ + $(wildcard include/config/UNINLINE_SPIN_UNLOCK) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/GENERIC_LOCKBREAK) \ + include/linux/rwlock_api_smp.h \ + $(wildcard include/config/INLINE_READ_LOCK) \ + $(wildcard include/config/INLINE_WRITE_LOCK) \ + $(wildcard include/config/INLINE_READ_LOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_LOCK_BH) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_READ_TRYLOCK) \ + $(wildcard include/config/INLINE_WRITE_TRYLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_BH) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQRESTORE) \ + include/linux/rbtree.h \ + include/linux/rbtree_types.h \ + include/linux/rcupdate.h \ + $(wildcard include/config/PREEMPT_RCU) \ + $(wildcard include/config/TINY_RCU) \ + $(wildcard include/config/TASKS_RCU_GENERIC) \ + $(wildcard include/config/RCU_STALL_COMMON) \ + $(wildcard include/config/NO_HZ_FULL) \ + $(wildcard include/config/RCU_NOCB_CPU) \ + $(wildcard include/config/TASKS_RCU) \ + $(wildcard include/config/TASKS_TRACE_RCU) \ + $(wildcard include/config/TASKS_RUDE_RCU) \ + $(wildcard include/config/TREE_RCU) \ + $(wildcard include/config/DEBUG_OBJECTS_RCU_HEAD) \ + $(wildcard include/config/PROVE_RCU) \ + $(wildcard include/config/ARCH_WEAK_RELEASE_ACQUIRE) \ + include/linux/rcutree.h \ + include/linux/rwsem.h \ + $(wildcard include/config/RWSEM_SPIN_ON_OWNER) \ + $(wildcard include/config/DEBUG_RWSEMS) \ + include/linux/osq_lock.h \ + include/linux/completion.h \ + include/linux/swait.h \ + include/linux/wait.h \ + include/uapi/linux/wait.h \ + include/linux/uprobes.h \ + $(wildcard include/config/UPROBES) \ + arch/x86/include/asm/uprobes.h \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ + $(wildcard include/config/DEBUG_MUTEXES) \ + include/linux/debug_locks.h \ + include/linux/srcu.h \ + $(wildcard include/config/TINY_SRCU) \ + $(wildcard include/config/SRCU) \ + include/linux/workqueue.h \ + $(wildcard include/config/DEBUG_OBJECTS_WORK) \ + $(wildcard include/config/FREEZER) \ + $(wildcard include/config/WQ_WATCHDOG) \ + include/linux/timer.h \ + $(wildcard include/config/DEBUG_OBJECTS_TIMERS) \ + $(wildcard include/config/NO_HZ_COMMON) \ + include/linux/ktime.h \ + include/linux/jiffies.h \ + include/vdso/jiffies.h \ + include/generated/timeconst.h \ + include/vdso/ktime.h \ + include/linux/timekeeping.h \ + $(wildcard include/config/GENERIC_CMOS_UPDATE) \ + include/linux/clocksource_ids.h \ + include/linux/debugobjects.h \ + $(wildcard include/config/DEBUG_OBJECTS) \ + $(wildcard include/config/DEBUG_OBJECTS_FREE) \ + include/linux/rcu_segcblist.h \ + include/linux/srcutree.h \ + include/linux/rcu_node_tree.h \ + $(wildcard include/config/RCU_FANOUT) \ + $(wildcard include/config/RCU_FANOUT_LEAF) \ + include/linux/page-flags-layout.h \ + $(wildcard include/config/KASAN_HW_TAGS) \ + include/linux/numa.h \ + $(wildcard include/config/NODES_SHIFT) \ + include/generated/bounds.h \ + include/linux/seqlock.h \ + include/linux/ww_mutex.h \ + $(wildcard include/config/DEBUG_RT_MUTEXES) \ + $(wildcard include/config/DEBUG_WW_MUTEX_SLOWPATH) \ + include/linux/rtmutex.h \ + arch/x86/include/asm/mmu.h \ + $(wildcard include/config/MODIFY_LDT_SYSCALL) \ + include/linux/kmod.h \ + include/linux/umh.h \ + include/linux/gfp.h \ + $(wildcard include/config/HIGHMEM) \ + $(wildcard include/config/ZONE_DMA) \ + $(wildcard include/config/ZONE_DMA32) \ + $(wildcard include/config/ZONE_DEVICE) \ + $(wildcard include/config/PM_SLEEP) \ + $(wildcard include/config/CONTIG_ALLOC) \ + $(wildcard include/config/CMA) \ + include/linux/mmdebug.h \ + $(wildcard include/config/DEBUG_VM) \ + $(wildcard include/config/DEBUG_VM_PGFLAGS) \ + include/linux/mmzone.h \ + $(wildcard include/config/FORCE_MAX_ZONEORDER) \ + $(wildcard include/config/MEMORY_ISOLATION) \ + $(wildcard include/config/ZSMALLOC) \ + $(wildcard include/config/SHADOW_CALL_STACK) \ + $(wildcard include/config/MEMORY_HOTPLUG) \ + $(wildcard include/config/COMPACTION) \ + $(wildcard include/config/PAGE_EXTENSION) \ + $(wildcard include/config/DEFERRED_STRUCT_PAGE_INIT) \ + $(wildcard include/config/HAVE_MEMORYLESS_NODES) \ + $(wildcard include/config/SPARSEMEM_EXTREME) \ + $(wildcard include/config/HAVE_ARCH_PFN_VALID) \ + include/linux/nodemask.h \ + include/linux/pageblock-flags.h \ + $(wildcard include/config/HUGETLB_PAGE_SIZE_VARIABLE) \ + include/linux/page-flags.h \ + $(wildcard include/config/ARCH_USES_PG_UNCACHED) \ + $(wildcard include/config/MEMORY_FAILURE) \ + $(wildcard include/config/PAGE_IDLE_FLAG) \ + $(wildcard include/config/THP_SWAP) \ + $(wildcard include/config/KSM) \ + include/linux/local_lock.h \ + include/linux/local_lock_internal.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ + $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ + $(wildcard include/config/MEMORY_HOTREMOVE) \ + arch/x86/include/asm/mmzone.h \ + arch/x86/include/asm/mmzone_64.h \ + include/linux/topology.h \ + $(wildcard include/config/USE_PERCPU_NUMA_NODE_ID) \ + $(wildcard include/config/SCHED_SMT) \ + include/linux/arch_topology.h \ + $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ + include/linux/percpu.h \ + $(wildcard include/config/NEED_PER_CPU_EMBED_FIRST_CHUNK) \ + $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ + arch/x86/include/asm/topology.h \ + $(wildcard include/config/SCHED_MC_PRIO) \ + $(wildcard include/config/ACPI_CPPC_LIB) \ + arch/x86/include/asm/mpspec.h \ + $(wildcard include/config/EISA) \ + $(wildcard include/config/X86_MPPARSE) \ + arch/x86/include/asm/mpspec_def.h \ + arch/x86/include/asm/x86_init.h \ + arch/x86/include/asm/apicdef.h \ + include/asm-generic/topology.h \ + include/linux/sysctl.h \ + $(wildcard include/config/SYSCTL) \ + include/uapi/linux/sysctl.h \ + include/linux/elf.h \ + $(wildcard include/config/ARCH_USE_GNU_PROPERTY) \ + $(wildcard include/config/ARCH_HAVE_ELF_PROT) \ + arch/x86/include/asm/elf.h \ + $(wildcard include/config/X86_X32_ABI) \ + arch/x86/include/asm/user.h \ + arch/x86/include/asm/user_64.h \ + arch/x86/include/asm/fsgsbase.h \ + arch/x86/include/asm/vdso.h \ + $(wildcard include/config/X86_X32) \ + include/uapi/linux/elf.h \ + include/uapi/linux/elf-em.h \ + include/linux/kobject.h \ + $(wildcard include/config/UEVENT_HELPER) \ + $(wildcard include/config/DEBUG_KOBJECT_RELEASE) \ + include/linux/sysfs.h \ + include/linux/kernfs.h \ + $(wildcard include/config/KERNFS) \ + include/linux/idr.h \ + include/linux/radix-tree.h \ + include/linux/xarray.h \ + $(wildcard include/config/XARRAY_MULTI) \ + include/linux/kconfig.h \ + include/linux/kobject_ns.h \ + include/linux/kref.h \ + include/linux/refcount.h \ + include/linux/moduleparam.h \ + $(wildcard include/config/ALPHA) \ + $(wildcard include/config/IA64) \ + $(wildcard include/config/PPC64) \ + include/linux/rbtree_latch.h \ + include/linux/error-injection.h \ + include/asm-generic/error-injection.h \ + include/linux/cfi.h \ + $(wildcard include/config/CFI_CLANG_SHADOW) \ + arch/x86/include/asm/module.h \ + $(wildcard include/config/UNWINDER_ORC) \ + include/asm-generic/module.h \ + $(wildcard include/config/HAVE_MOD_ARCH_SPECIFIC) \ + $(wildcard include/config/MODULES_USE_ELF_REL) \ + $(wildcard include/config/MODULES_USE_ELF_RELA) \ + arch/x86/include/asm/orc_types.h \ + include/linux/mm.h \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_BITS) \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_COMPAT_BITS) \ + $(wildcard include/config/DEBUG_INFO_BTF) \ + $(wildcard include/config/ARCH_USES_HIGH_VMA_FLAGS) \ + $(wildcard include/config/ARCH_HAS_PKEYS) \ + $(wildcard include/config/PPC) \ + $(wildcard include/config/PARISC) \ + $(wildcard include/config/SPARC64) \ + $(wildcard include/config/ARM64) \ + $(wildcard include/config/ARM64_MTE) \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ + $(wildcard include/config/STACK_GROWSUP) \ + $(wildcard include/config/SHMEM) \ + $(wildcard include/config/DEV_PAGEMAP_OPS) \ + $(wildcard include/config/DEVICE_PRIVATE) \ + $(wildcard include/config/PCI_P2PDMA) \ + $(wildcard include/config/MIGRATION) \ + $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ + $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ + $(wildcard include/config/DEBUG_VM_RB) \ + $(wildcard include/config/PAGE_POISONING) \ + $(wildcard include/config/INIT_ON_ALLOC_DEFAULT_ON) \ + $(wildcard include/config/INIT_ON_FREE_DEFAULT_ON) \ + $(wildcard include/config/DEBUG_PAGEALLOC) \ + $(wildcard include/config/HUGETLBFS) \ + $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ + include/linux/mmap_lock.h \ + include/linux/percpu-refcount.h \ + include/linux/bit_spinlock.h \ + include/linux/shrinker.h \ + include/linux/resource.h \ + include/uapi/linux/resource.h \ + arch/x86/include/generated/uapi/asm/resource.h \ + include/asm-generic/resource.h \ + include/uapi/asm-generic/resource.h \ + include/linux/page_ext.h \ + include/linux/stacktrace.h \ + $(wildcard include/config/STACKTRACE) \ + $(wildcard include/config/ARCH_STACKWALK) \ + $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ + include/linux/stackdepot.h \ + $(wildcard include/config/STACKDEPOT) \ + include/linux/page_ref.h \ + $(wildcard include/config/DEBUG_PAGE_REF) \ + include/linux/memremap.h \ + include/linux/ioport.h \ + include/linux/overflow.h \ + include/linux/sizes.h \ + include/linux/sched.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_NATIVE) \ + $(wildcard include/config/SCHED_INFO) \ + $(wildcard include/config/SCHEDSTATS) \ + $(wildcard include/config/FAIR_GROUP_SCHED) \ + $(wildcard include/config/RT_GROUP_SCHED) \ + $(wildcard include/config/RT_MUTEXES) \ + $(wildcard include/config/UCLAMP_TASK) \ + $(wildcard include/config/UCLAMP_BUCKETS_COUNT) \ + $(wildcard include/config/KMAP_LOCAL) \ + $(wildcard include/config/SCHED_CORE) \ + $(wildcard include/config/CGROUP_SCHED) \ + $(wildcard include/config/BLK_DEV_IO_TRACE) \ + $(wildcard include/config/PSI) \ + $(wildcard include/config/COMPAT_BRK) \ + $(wildcard include/config/CGROUPS) \ + $(wildcard include/config/BLK_CGROUP) \ + $(wildcard include/config/PAGE_OWNER) \ + $(wildcard include/config/EVENTFD) \ + $(wildcard include/config/ARCH_HAS_SCALED_CPUTIME) \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_GEN) \ + $(wildcard include/config/POSIX_CPUTIMERS) \ + $(wildcard include/config/POSIX_CPU_TIMERS_TASK_WORK) \ + $(wildcard include/config/KEYS) \ + $(wildcard include/config/SYSVIPC) \ + $(wildcard include/config/DETECT_HUNG_TASK) \ + $(wildcard include/config/IO_URING) \ + $(wildcard include/config/AUDIT) \ + $(wildcard include/config/AUDITSYSCALL) \ + $(wildcard include/config/UBSAN) \ + $(wildcard include/config/UBSAN_TRAP) \ + $(wildcard include/config/BLOCK) \ + $(wildcard include/config/TASK_XACCT) \ + $(wildcard include/config/CPUSETS) \ + $(wildcard include/config/X86_CPU_RESCTRL) \ + $(wildcard include/config/FUTEX) \ + $(wildcard include/config/PERF_EVENTS) \ + $(wildcard include/config/RSEQ) \ + $(wildcard include/config/TASK_DELAY_ACCT) \ + $(wildcard include/config/FAULT_INJECTION) \ + $(wildcard include/config/LATENCYTOP) \ + $(wildcard include/config/KUNIT) \ + $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ + $(wildcard include/config/BCACHE) \ + $(wildcard include/config/VMAP_STACK) \ + $(wildcard include/config/SECURITY) \ + $(wildcard include/config/BPF_SYSCALL) \ + $(wildcard include/config/GCC_PLUGIN_STACKLEAK) \ + $(wildcard include/config/X86_MCE) \ + $(wildcard include/config/KRETPROBES) \ + $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ + $(wildcard include/config/ARCH_TASK_STRUCT_ON_STACK) \ + $(wildcard include/config/DEBUG_RSEQ) \ + include/uapi/linux/sched.h \ + include/linux/pid.h \ + include/linux/rculist.h \ + $(wildcard include/config/PROVE_RCU_LIST) \ + include/linux/sem.h \ + include/uapi/linux/sem.h \ + include/linux/ipc.h \ + include/linux/rhashtable-types.h \ + include/uapi/linux/ipc.h \ + arch/x86/include/generated/uapi/asm/ipcbuf.h \ + include/uapi/asm-generic/ipcbuf.h \ + arch/x86/include/uapi/asm/sembuf.h \ + include/linux/shm.h \ + include/uapi/linux/shm.h \ + include/uapi/asm-generic/hugetlb_encode.h \ + arch/x86/include/uapi/asm/shmbuf.h \ + include/uapi/asm-generic/shmbuf.h \ + arch/x86/include/asm/shmparam.h \ + include/linux/plist.h \ + $(wildcard include/config/DEBUG_PLIST) \ + include/linux/hrtimer.h \ + $(wildcard include/config/HIGH_RES_TIMERS) \ + $(wildcard include/config/TIME_LOW_RES) \ + $(wildcard include/config/TIMERFD) \ + include/linux/hrtimer_defs.h \ + include/linux/timerqueue.h \ + include/linux/seccomp.h \ + $(wildcard include/config/SECCOMP) \ + $(wildcard include/config/HAVE_ARCH_SECCOMP_FILTER) \ + $(wildcard include/config/SECCOMP_FILTER) \ + $(wildcard include/config/CHECKPOINT_RESTORE) \ + $(wildcard include/config/SECCOMP_CACHE_DEBUG) \ + include/uapi/linux/seccomp.h \ + arch/x86/include/asm/seccomp.h \ + arch/x86/include/asm/unistd.h \ + arch/x86/include/uapi/asm/unistd.h \ + arch/x86/include/generated/uapi/asm/unistd_64.h \ + arch/x86/include/generated/asm/unistd_64_x32.h \ + arch/x86/include/generated/asm/unistd_32_ia32.h \ + arch/x86/include/asm/ia32_unistd.h \ + include/asm-generic/seccomp.h \ + include/uapi/linux/unistd.h \ + include/linux/latencytop.h \ + include/linux/sched/prio.h \ + include/linux/sched/types.h \ + include/linux/signal_types.h \ + $(wildcard include/config/OLD_SIGACTION) \ + include/uapi/linux/signal.h \ + arch/x86/include/asm/signal.h \ + arch/x86/include/uapi/asm/signal.h \ + include/uapi/asm-generic/signal-defs.h \ + arch/x86/include/uapi/asm/siginfo.h \ + include/uapi/asm-generic/siginfo.h \ + include/linux/syscall_user_dispatch.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/TASK_IO_ACCOUNTING) \ + include/linux/posix-timers.h \ + include/linux/alarmtimer.h \ + $(wildcard include/config/RTC_CLASS) \ + include/linux/task_work.h \ + include/uapi/linux/rseq.h \ + include/linux/kcsan.h \ + arch/x86/include/generated/asm/kmap_size.h \ + include/asm-generic/kmap_size.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL) \ + include/linux/pgtable.h \ + $(wildcard include/config/HIGHPTE) \ + $(wildcard include/config/GUP_GET_PTE_LOW_HIGH) \ + $(wildcard include/config/HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD) \ + $(wildcard include/config/HAVE_ARCH_SOFT_DIRTY) \ + $(wildcard include/config/ARCH_ENABLE_THP_MIGRATION) \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMAP) \ + $(wildcard include/config/X86_ESPFIX64) \ + arch/x86/include/asm/pgtable.h \ + $(wildcard include/config/DEBUG_WX) \ + arch/x86/include/asm/pkru.h \ + arch/x86/include/asm/fpu/api.h \ + $(wildcard include/config/X86_DEBUG_FPU) \ + include/asm-generic/pgtable_uffd.h \ + arch/x86/include/asm/pgtable_64.h \ + arch/x86/include/asm/fixmap.h \ + $(wildcard include/config/PROVIDE_OHCI1394_DMA_INIT) \ + $(wildcard include/config/X86_IO_APIC) \ + $(wildcard include/config/PCI_MMCONFIG) \ + $(wildcard include/config/ACPI_APEI_GHES) \ + $(wildcard include/config/INTEL_TXT) \ + arch/x86/include/uapi/asm/vsyscall.h \ + include/asm-generic/fixmap.h \ + arch/x86/include/asm/pgtable-invert.h \ + include/linux/kasan.h \ + $(wildcard include/config/KASAN_STACK) \ + $(wildcard include/config/KASAN_VMALLOC) \ + $(wildcard include/config/KASAN_INLINE) \ + include/linux/huge_mm.h \ + include/linux/sched/coredump.h \ + $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ + include/linux/fs.h \ + $(wildcard include/config/READ_ONLY_THP_FOR_FS) \ + $(wildcard include/config/FS_POSIX_ACL) \ + $(wildcard include/config/CGROUP_WRITEBACK) \ + $(wildcard include/config/IMA) \ + $(wildcard include/config/FILE_LOCKING) \ + $(wildcard include/config/FSNOTIFY) \ + $(wildcard include/config/FS_ENCRYPTION) \ + $(wildcard include/config/FS_VERITY) \ + $(wildcard include/config/EPOLL) \ + $(wildcard include/config/UNICODE) \ + $(wildcard include/config/QUOTA) \ + $(wildcard include/config/BLK_DEV_LOOP) \ + $(wildcard include/config/FS_DAX) \ + include/linux/wait_bit.h \ + include/linux/kdev_t.h \ + include/uapi/linux/kdev_t.h \ + include/linux/dcache.h \ + include/linux/rculist_bl.h \ + include/linux/list_bl.h \ + include/linux/lockref.h \ + $(wildcard include/config/ARCH_USE_CMPXCHG_LOCKREF) \ + include/linux/stringhash.h \ + $(wildcard include/config/DCACHE_WORD_ACCESS) \ + include/linux/hash.h \ + $(wildcard include/config/HAVE_ARCH_HASH) \ + include/linux/path.h \ + include/linux/list_lru.h \ + $(wildcard include/config/MEMCG_KMEM) \ + include/linux/capability.h \ + include/uapi/linux/capability.h \ + include/linux/semaphore.h \ + include/linux/fcntl.h \ + $(wildcard include/config/ARCH_32BIT_OFF_T) \ + include/uapi/linux/fcntl.h \ + arch/x86/include/generated/uapi/asm/fcntl.h \ + include/uapi/asm-generic/fcntl.h \ + include/uapi/linux/openat2.h \ + include/linux/migrate_mode.h \ + include/linux/percpu-rwsem.h \ + include/linux/rcuwait.h \ + include/linux/sched/signal.h \ + $(wildcard include/config/SCHED_AUTOGROUP) \ + $(wildcard include/config/BSD_PROCESS_ACCT) \ + $(wildcard include/config/TASKSTATS) \ + include/linux/signal.h \ + $(wildcard include/config/DYNAMIC_SIGFRAME) \ + include/linux/sched/jobctl.h \ + include/linux/sched/task.h \ + $(wildcard include/config/HAVE_EXIT_THREAD) \ + $(wildcard include/config/ARCH_WANTS_DYNAMIC_TASK_STRUCT) \ + $(wildcard include/config/HAVE_ARCH_THREAD_STRUCT_WHITELIST) \ + include/linux/uaccess.h \ + $(wildcard include/config/SET_FS) \ + include/linux/fault-inject-usercopy.h \ + $(wildcard include/config/FAULT_INJECTION_USERCOPY) \ + arch/x86/include/asm/uaccess.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_HAS_ASM_GOTO_TIED_OUTPUT) \ + $(wildcard include/config/ARCH_HAS_COPY_MC) \ + $(wildcard include/config/X86_INTEL_USERCOPY) \ + arch/x86/include/asm/smap.h \ + arch/x86/include/asm/extable.h \ + $(wildcard include/config/BPF_JIT) \ + arch/x86/include/asm/uaccess_64.h \ + include/linux/cred.h \ + $(wildcard include/config/DEBUG_CREDENTIALS) \ + include/linux/key.h \ + $(wildcard include/config/KEY_NOTIFICATIONS) \ + $(wildcard include/config/NET) \ + include/linux/assoc_array.h \ + $(wildcard include/config/ASSOCIATIVE_ARRAY) \ + include/linux/sched/user.h \ + $(wildcard include/config/WATCH_QUEUE) \ + include/linux/percpu_counter.h \ + include/linux/ratelimit.h \ + include/linux/rcu_sync.h \ + include/linux/delayed_call.h \ + include/linux/uuid.h \ + include/uapi/linux/uuid.h \ + include/linux/errseq.h \ + include/linux/ioprio.h \ + include/linux/sched/rt.h \ + include/linux/iocontext.h \ + include/uapi/linux/ioprio.h \ + include/linux/fs_types.h \ + include/linux/mount.h \ + include/linux/mnt_idmapping.h \ + include/uapi/linux/fs.h \ + include/linux/quota.h \ + $(wildcard include/config/QUOTA_NETLINK_INTERFACE) \ + include/uapi/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/dqblk_qtree.h \ + include/linux/projid.h \ + include/uapi/linux/quota.h \ + include/linux/nfs_fs_i.h \ + include/linux/vmstat.h \ + $(wildcard include/config/VM_EVENT_COUNTERS) \ + $(wildcard include/config/DEBUG_TLBFLUSH) \ + $(wildcard include/config/DEBUG_VM_VMACACHE) \ + include/linux/vm_event_item.h \ + $(wildcard include/config/MEMORY_BALLOON) \ + $(wildcard include/config/BALLOON_COMPACTION) \ + include/linux/vmalloc.h \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMALLOC) \ + arch/x86/include/asm/vmalloc.h \ + arch/x86/include/asm/pgtable_areas.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.h \ + include/generated/uapi/linux/version.h \ + include/linux/dma-mapping.h \ + $(wildcard include/config/DMA_API_DEBUG) \ + $(wildcard include/config/HAS_DMA) \ + $(wildcard include/config/NEED_DMA_MAP_STATE) \ + include/linux/device.h \ + $(wildcard include/config/ENERGY_MODEL) \ + $(wildcard include/config/GENERIC_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/PINCTRL) \ + $(wildcard include/config/GENERIC_MSI_IRQ) \ + $(wildcard include/config/DMA_OPS) \ + $(wildcard include/config/DMA_DECLARE_COHERENT) \ + $(wildcard include/config/DMA_CMA) \ + $(wildcard include/config/SWIOTLB) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_DEVICE) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU_ALL) \ + $(wildcard include/config/DMA_OPS_BYPASS) \ + $(wildcard include/config/OF) \ + $(wildcard include/config/DEVTMPFS) \ + $(wildcard include/config/SYSFS_DEPRECATED) \ + include/linux/dev_printk.h \ + include/linux/energy_model.h \ + include/linux/sched/cpufreq.h \ + $(wildcard include/config/CPU_FREQ) \ + include/linux/sched/topology.h \ + $(wildcard include/config/SCHED_DEBUG) \ + $(wildcard include/config/SCHED_MC) \ + $(wildcard include/config/CPU_FREQ_GOV_SCHEDUTIL) \ + include/linux/sched/idle.h \ + include/linux/sched/sd_flags.h \ + include/linux/klist.h \ + include/linux/pm.h \ + $(wildcard include/config/VT_CONSOLE_SLEEP) \ + $(wildcard include/config/PM) \ + $(wildcard include/config/PM_CLK) \ + $(wildcard include/config/PM_GENERIC_DOMAINS) \ + include/linux/device/bus.h \ + $(wildcard include/config/ACPI) \ + include/linux/device/class.h \ + include/linux/device/driver.h \ + arch/x86/include/asm/device.h \ + include/linux/pm_wakeup.h \ + include/linux/dma-direction.h \ + include/linux/scatterlist.h \ + $(wildcard include/config/NEED_SG_DMA_LENGTH) \ + $(wildcard include/config/DEBUG_SG) \ + $(wildcard include/config/SGL_ALLOC) \ + $(wildcard include/config/ARCH_NO_SG_CHAIN) \ + $(wildcard include/config/SG_POOL) \ + arch/x86/include/asm/io.h \ + $(wildcard include/config/MTRR) \ + $(wildcard include/config/X86_PAT) \ + arch/x86/include/generated/asm/early_ioremap.h \ + include/asm-generic/early_ioremap.h \ + $(wildcard include/config/GENERIC_EARLY_IOREMAP) \ + include/asm-generic/iomap.h \ + $(wildcard include/config/HAS_IOPORT_MAP) \ + include/asm-generic/pci_iomap.h \ + $(wildcard include/config/PCI) \ + $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ + $(wildcard include/config/GENERIC_PCI_IOMAP) \ + include/asm-generic/io.h \ + $(wildcard include/config/GENERIC_IOMAP) \ + $(wildcard include/config/GENERIC_IOREMAP) \ + $(wildcard include/config/VIRT_TO_BUS) \ + include/linux/logic_pio.h \ + $(wildcard include/config/INDIRECT_PIO) \ + include/linux/fwnode.h \ + include/linux/interrupt.h \ + $(wildcard include/config/IRQ_FORCED_THREADING) \ + $(wildcard include/config/GENERIC_IRQ_PROBE) \ + $(wildcard include/config/IRQ_TIMINGS) \ + include/linux/irqreturn.h \ + include/linux/irqnr.h \ + include/uapi/linux/irqnr.h \ + include/linux/hardirq.h \ + include/linux/context_tracking_state.h \ + $(wildcard include/config/CONTEXT_TRACKING) \ + include/linux/ftrace_irq.h \ + $(wildcard include/config/HWLAT_TRACER) \ + $(wildcard include/config/OSNOISE_TRACER) \ + include/linux/vtime.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING) \ + $(wildcard include/config/IRQ_TIME_ACCOUNTING) \ + arch/x86/include/asm/hardirq.h \ + $(wildcard include/config/KVM_INTEL) \ + $(wildcard include/config/HAVE_KVM) \ + $(wildcard include/config/X86_THERMAL_VECTOR) \ + $(wildcard include/config/X86_MCE_THRESHOLD) \ + $(wildcard include/config/X86_MCE_AMD) \ + $(wildcard include/config/X86_HV_CALLBACK_VECTOR) \ + $(wildcard include/config/HYPERV) \ + arch/x86/include/asm/irq.h \ + arch/x86/include/asm/irq_vectors.h \ + $(wildcard include/config/PCI_MSI) \ + arch/x86/include/asm/sections.h \ + include/asm-generic/sections.h \ + include/linux/pci.h \ + $(wildcard include/config/PCI_IOV) \ + $(wildcard include/config/PCIEAER) \ + $(wildcard include/config/PCIEPORTBUS) \ + $(wildcard include/config/PCIEASPM) \ + $(wildcard include/config/HOTPLUG_PCI_PCIE) \ + $(wildcard include/config/PCIE_PTM) \ + $(wildcard include/config/PCIE_DPC) \ + $(wildcard include/config/PCI_ATS) \ + $(wildcard include/config/PCI_PRI) \ + $(wildcard include/config/PCI_PASID) \ + $(wildcard include/config/PCI_DOMAINS_GENERIC) \ + $(wildcard include/config/PCI_DOMAINS) \ + $(wildcard include/config/PCI_QUIRKS) \ + $(wildcard include/config/ACPI_MCFG) \ + $(wildcard include/config/HOTPLUG_PCI) \ + $(wildcard include/config/EEH) \ + include/linux/mod_devicetable.h \ + include/linux/io.h \ + include/linux/resource_ext.h \ + include/linux/slab.h \ + $(wildcard include/config/DEBUG_SLAB) \ + $(wildcard include/config/FAILSLAB) \ + $(wildcard include/config/HAVE_HARDENED_USERCOPY_ALLOCATOR) \ + $(wildcard include/config/SLAB) \ + $(wildcard include/config/SLUB) \ + $(wildcard include/config/SLOB) \ + $(wildcard include/config/CC_IS_GCC) \ + $(wildcard include/config/CLANG_VERSION) \ + include/uapi/linux/pci.h \ + include/uapi/linux/pci_regs.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + arch/x86/include/asm/pci.h \ + $(wildcard include/config/PCI_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/VMD) \ + arch/x86/include/asm/memtype.h \ + include/asm-generic/pci.h \ + include/linux/pci-dma-compat.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/include/libxdma_api.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.h \ + include/linux/kthread.h \ + include/linux/cpuset.h \ + include/linux/mmu_context.h \ + arch/x86/include/asm/mmu_context.h \ + arch/x86/include/asm/desc.h \ + arch/x86/include/asm/cpu_entry_area.h \ + arch/x86/include/asm/intel_ds.h \ + include/linux/pkeys.h \ + arch/x86/include/asm/pkeys.h \ + include/trace/events/tlb.h \ + include/linux/tracepoint.h \ + $(wildcard include/config/HAVE_SYSCALL_TRACEPOINTS) \ + $(wildcard include/config/TRACEPOINT) \ + include/linux/static_call.h \ + include/linux/cpu.h \ + $(wildcard include/config/PM_SLEEP_SMP) \ + $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ + $(wildcard include/config/HOTPLUG_SMT) \ + include/linux/node.h \ + $(wildcard include/config/HMEM_REPORTING) \ + $(wildcard include/config/MEMORY_HOTPLUG_SPARSE) \ + include/linux/cpuhotplug.h \ + arch/x86/include/asm/static_call.h \ + arch/x86/include/asm/text-patching.h \ + $(wildcard include/config/UML_X86) \ + include/trace/define_trace.h \ + arch/x86/include/asm/tlbflush.h \ + arch/x86/include/asm/invpcid.h \ + arch/x86/include/asm/pti.h \ + arch/x86/include/asm/debugreg.h \ + arch/x86/include/uapi/asm/debugreg.h \ + include/asm-generic/mmu_context.h \ + +/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.o: $(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.o) + +$(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.o): diff --git a/host_software/driver/XDMA/linux-kernel/xdma/.modules.order.cmd b/host_software/driver/XDMA/linux-kernel/xdma/.modules.order.cmd new file mode 100644 index 0000000..a0a25f5 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/.modules.order.cmd @@ -0,0 +1 @@ +cmd_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/modules.order := { echo /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.ko; :; } | awk '!x[$$0]++' - > /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/modules.order diff --git a/host_software/driver/XDMA/linux-kernel/xdma/.xdma.ko.cmd b/host_software/driver/XDMA/linux-kernel/xdma/.xdma.ko.cmd new file mode 100644 index 0000000..3bab288 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/.xdma.ko.cmd @@ -0,0 +1 @@ +cmd_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.ko := ld -r -m elf_x86_64 -z noexecstack --build-id=sha1 -T scripts/module.lds -o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.ko /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod.o; true diff --git a/host_software/driver/XDMA/linux-kernel/xdma/.xdma.mod.cmd b/host_software/driver/XDMA/linux-kernel/xdma/.xdma.mod.cmd new file mode 100644 index 0000000..05d2b35 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/.xdma.mod.cmd @@ -0,0 +1 @@ +cmd_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod := { echo /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_events.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_bypass.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.o; echo; } > /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod diff --git a/host_software/driver/XDMA/linux-kernel/xdma/.xdma.mod.o.cmd b/host_software/driver/XDMA/linux-kernel/xdma/.xdma.mod.o.cmd new file mode 100644 index 0000000..3b0c734 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/.xdma.mod.o.cmd @@ -0,0 +1,704 @@ +cmd_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod.o := gcc -Wp,-MMD,/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/.xdma.mod.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/9/include -I./arch/x86/include -I./arch/x86/include/generated -I./include -I./arch/x86/include/uapi -I./arch/x86/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -I./ubuntu/include -include ./include/linux/compiler_types.h -D__KERNEL__ -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu89 -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fcf-protection=none -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -DCONFIG_X86_X32_ABI -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mfunction-return=thunk-extern -fno-jump-tables -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fstack-protector-strong -Wimplicit-fallthrough=5 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-stack-clash-protection -g -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wno-stringop-truncation -Wno-array-bounds -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -fsanitize=bounds -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"xdma.mod"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod.c + +source_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod.o := /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod.c + +deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod.o := \ + $(wildcard include/config/MODULE_UNLOAD) \ + $(wildcard include/config/RETPOLINE) \ + include/linux/compiler-version.h \ + $(wildcard include/config/CC_VERSION_TEXT) \ + include/linux/kconfig.h \ + $(wildcard include/config/CPU_BIG_ENDIAN) \ + $(wildcard include/config/BOOGER) \ + $(wildcard include/config/FOO) \ + include/linux/compiler_types.h \ + $(wildcard include/config/HAVE_ARCH_COMPILER_H) \ + $(wildcard include/config/CC_HAS_ASM_INLINE) \ + include/linux/compiler_attributes.h \ + include/linux/compiler-gcc.h \ + $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ + $(wildcard include/config/KCOV) \ + include/linux/module.h \ + $(wildcard include/config/MODULES) \ + $(wildcard include/config/SYSFS) \ + $(wildcard include/config/MODULES_TREE_LOOKUP) \ + $(wildcard include/config/LIVEPATCH) \ + $(wildcard include/config/STACKTRACE_BUILD_ID) \ + $(wildcard include/config/CFI_CLANG) \ + $(wildcard include/config/MODULE_SIG) \ + $(wildcard include/config/GENERIC_BUG) \ + $(wildcard include/config/KALLSYMS) \ + $(wildcard include/config/SMP) \ + $(wildcard include/config/TRACEPOINTS) \ + $(wildcard include/config/TREE_SRCU) \ + $(wildcard include/config/BPF_EVENTS) \ + $(wildcard include/config/DEBUG_INFO_BTF_MODULES) \ + $(wildcard include/config/JUMP_LABEL) \ + $(wildcard include/config/TRACING) \ + $(wildcard include/config/EVENT_TRACING) \ + $(wildcard include/config/FTRACE_MCOUNT_RECORD) \ + $(wildcard include/config/KPROBES) \ + $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ + $(wildcard include/config/PRINTK_INDEX) \ + $(wildcard include/config/CONSTRUCTORS) \ + $(wildcard include/config/FUNCTION_ERROR_INJECTION) \ + include/linux/list.h \ + $(wildcard include/config/DEBUG_LIST) \ + include/linux/types.h \ + $(wildcard include/config/HAVE_UID16) \ + $(wildcard include/config/UID16) \ + $(wildcard include/config/ARCH_DMA_ADDR_T_64BIT) \ + $(wildcard include/config/PHYS_ADDR_T_64BIT) \ + $(wildcard include/config/64BIT) \ + $(wildcard include/config/ARCH_32BIT_USTAT_F_TINODE) \ + include/uapi/linux/types.h \ + arch/x86/include/generated/uapi/asm/types.h \ + include/uapi/asm-generic/types.h \ + include/asm-generic/int-ll64.h \ + include/uapi/asm-generic/int-ll64.h \ + arch/x86/include/uapi/asm/bitsperlong.h \ + include/asm-generic/bitsperlong.h \ + include/uapi/asm-generic/bitsperlong.h \ + include/uapi/linux/posix_types.h \ + include/linux/stddef.h \ + include/uapi/linux/stddef.h \ + include/linux/compiler_types.h \ + arch/x86/include/asm/posix_types.h \ + $(wildcard include/config/X86_32) \ + arch/x86/include/uapi/asm/posix_types_64.h \ + include/uapi/asm-generic/posix_types.h \ + include/linux/poison.h \ + $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ + include/linux/const.h \ + include/vdso/const.h \ + include/uapi/linux/const.h \ + include/linux/kernel.h \ + $(wildcard include/config/PREEMPT_VOLUNTARY) \ + $(wildcard include/config/PREEMPT_DYNAMIC) \ + $(wildcard include/config/PREEMPT_) \ + $(wildcard include/config/DEBUG_ATOMIC_SLEEP) \ + $(wildcard include/config/MMU) \ + $(wildcard include/config/PROVE_LOCKING) \ + include/linux/stdarg.h \ + include/linux/align.h \ + include/linux/limits.h \ + include/uapi/linux/limits.h \ + include/vdso/limits.h \ + include/linux/linkage.h \ + $(wildcard include/config/ARCH_USE_SYM_ANNOTATIONS) \ + include/linux/stringify.h \ + include/linux/export.h \ + $(wildcard include/config/MODVERSIONS) \ + $(wildcard include/config/MODULE_REL_CRCS) \ + $(wildcard include/config/HAVE_ARCH_PREL32_RELOCATIONS) \ + $(wildcard include/config/TRIM_UNUSED_KSYMS) \ + include/linux/compiler.h \ + $(wildcard include/config/TRACE_BRANCH_PROFILING) \ + $(wildcard include/config/PROFILE_ALL_BRANCHES) \ + $(wildcard include/config/STACK_VALIDATION) \ + arch/x86/include/generated/asm/rwonce.h \ + include/asm-generic/rwonce.h \ + include/linux/kasan-checks.h \ + $(wildcard include/config/KASAN_GENERIC) \ + $(wildcard include/config/KASAN_SW_TAGS) \ + include/linux/kcsan-checks.h \ + $(wildcard include/config/KCSAN) \ + $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ + arch/x86/include/asm/linkage.h \ + $(wildcard include/config/X86_64) \ + $(wildcard include/config/X86_ALIGNMENT_16) \ + $(wildcard include/config/RETHUNK) \ + $(wildcard include/config/SLS) \ + include/linux/bitops.h \ + include/linux/bits.h \ + include/vdso/bits.h \ + include/linux/build_bug.h \ + include/linux/typecheck.h \ + include/uapi/linux/kernel.h \ + include/uapi/linux/sysinfo.h \ + arch/x86/include/asm/bitops.h \ + $(wildcard include/config/X86_CMOV) \ + arch/x86/include/asm/alternative.h \ + arch/x86/include/asm/asm.h \ + arch/x86/include/asm/extable_fixup_types.h \ + arch/x86/include/asm/rmwcc.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO) \ + arch/x86/include/asm/barrier.h \ + arch/x86/include/asm/nops.h \ + include/asm-generic/barrier.h \ + include/asm-generic/bitops/find.h \ + $(wildcard include/config/GENERIC_FIND_FIRST_BIT) \ + include/asm-generic/bitops/sched.h \ + arch/x86/include/asm/arch_hweight.h \ + arch/x86/include/asm/cpufeatures.h \ + arch/x86/include/asm/required-features.h \ + $(wildcard include/config/X86_MINIMUM_CPU_FAMILY) \ + $(wildcard include/config/MATH_EMULATION) \ + $(wildcard include/config/X86_PAE) \ + $(wildcard include/config/X86_CMPXCHG64) \ + $(wildcard include/config/X86_USE_3DNOW) \ + $(wildcard include/config/X86_P6_NOP) \ + $(wildcard include/config/MATOM) \ + $(wildcard include/config/PARAVIRT_XXL) \ + arch/x86/include/asm/disabled-features.h \ + $(wildcard include/config/X86_SMAP) \ + $(wildcard include/config/X86_UMIP) \ + $(wildcard include/config/X86_INTEL_MEMORY_PROTECTION_KEYS) \ + $(wildcard include/config/X86_5LEVEL) \ + $(wildcard include/config/PAGE_TABLE_ISOLATION) \ + $(wildcard include/config/CPU_UNRET_ENTRY) \ + $(wildcard include/config/X86_SGX) \ + include/asm-generic/bitops/const_hweight.h \ + include/asm-generic/bitops/instrumented-atomic.h \ + include/linux/instrumented.h \ + include/asm-generic/bitops/instrumented-non-atomic.h \ + $(wildcard include/config/KCSAN_ASSUME_PLAIN_WRITES_ATOMIC) \ + include/asm-generic/bitops/instrumented-lock.h \ + include/asm-generic/bitops/le.h \ + arch/x86/include/uapi/asm/byteorder.h \ + include/linux/byteorder/little_endian.h \ + include/uapi/linux/byteorder/little_endian.h \ + include/linux/swab.h \ + include/uapi/linux/swab.h \ + arch/x86/include/uapi/asm/swab.h \ + include/linux/byteorder/generic.h \ + include/asm-generic/bitops/ext2-atomic-setbit.h \ + include/linux/kstrtox.h \ + include/linux/log2.h \ + $(wildcard include/config/ARCH_HAS_ILOG2_U32) \ + $(wildcard include/config/ARCH_HAS_ILOG2_U64) \ + include/linux/math.h \ + arch/x86/include/asm/div64.h \ + include/asm-generic/div64.h \ + include/linux/minmax.h \ + include/linux/panic.h \ + $(wildcard include/config/PANIC_TIMEOUT) \ + include/linux/printk.h \ + $(wildcard include/config/MESSAGE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_QUIET) \ + $(wildcard include/config/EARLY_PRINTK) \ + $(wildcard include/config/PRINTK) \ + $(wildcard include/config/DYNAMIC_DEBUG) \ + $(wildcard include/config/DYNAMIC_DEBUG_CORE) \ + include/linux/init.h \ + $(wildcard include/config/STRICT_KERNEL_RWX) \ + $(wildcard include/config/STRICT_MODULE_RWX) \ + $(wildcard include/config/LTO_CLANG) \ + include/linux/kern_levels.h \ + include/linux/cache.h \ + $(wildcard include/config/ARCH_HAS_CACHE_LINE_SIZE) \ + arch/x86/include/asm/cache.h \ + $(wildcard include/config/X86_L1_CACHE_SHIFT) \ + $(wildcard include/config/X86_INTERNODE_CACHE_SHIFT) \ + $(wildcard include/config/X86_VSMP) \ + include/linux/ratelimit_types.h \ + include/uapi/linux/param.h \ + arch/x86/include/generated/uapi/asm/param.h \ + include/asm-generic/param.h \ + $(wildcard include/config/HZ) \ + include/uapi/asm-generic/param.h \ + include/linux/spinlock_types.h \ + $(wildcard include/config/PREEMPT_RT) \ + $(wildcard include/config/DEBUG_LOCK_ALLOC) \ + include/linux/spinlock_types_raw.h \ + $(wildcard include/config/DEBUG_SPINLOCK) \ + arch/x86/include/asm/spinlock_types.h \ + include/asm-generic/qspinlock_types.h \ + $(wildcard include/config/NR_CPUS) \ + include/asm-generic/qrwlock_types.h \ + include/linux/lockdep_types.h \ + $(wildcard include/config/PROVE_RAW_LOCK_NESTING) \ + $(wildcard include/config/PREEMPT_LOCK) \ + $(wildcard include/config/LOCKDEP) \ + $(wildcard include/config/LOCK_STAT) \ + include/linux/rwlock_types.h \ + include/linux/once_lite.h \ + include/linux/dynamic_debug.h \ + include/linux/jump_label.h \ + $(wildcard include/config/HAVE_ARCH_JUMP_LABEL_RELATIVE) \ + arch/x86/include/asm/jump_label.h \ + include/linux/static_call_types.h \ + $(wildcard include/config/HAVE_STATIC_CALL) \ + include/linux/stat.h \ + arch/x86/include/uapi/asm/stat.h \ + include/uapi/linux/stat.h \ + include/linux/time.h \ + $(wildcard include/config/POSIX_TIMERS) \ + include/linux/math64.h \ + $(wildcard include/config/ARCH_SUPPORTS_INT128) \ + include/vdso/math64.h \ + include/linux/time64.h \ + include/vdso/time64.h \ + include/uapi/linux/time.h \ + include/uapi/linux/time_types.h \ + include/linux/time32.h \ + include/linux/timex.h \ + include/uapi/linux/timex.h \ + arch/x86/include/asm/timex.h \ + $(wildcard include/config/X86_TSC) \ + arch/x86/include/asm/processor.h \ + $(wildcard include/config/X86_VMX_FEATURE_NAMES) \ + $(wildcard include/config/X86_IOPL_IOPERM) \ + $(wildcard include/config/STACKPROTECTOR) \ + $(wildcard include/config/VM86) \ + $(wildcard include/config/X86_DEBUGCTLMSR) \ + $(wildcard include/config/CPU_SUP_AMD) \ + $(wildcard include/config/XEN) \ + arch/x86/include/asm/processor-flags.h \ + arch/x86/include/uapi/asm/processor-flags.h \ + include/linux/mem_encrypt.h \ + $(wildcard include/config/ARCH_HAS_MEM_ENCRYPT) \ + $(wildcard include/config/AMD_MEM_ENCRYPT) \ + arch/x86/include/asm/mem_encrypt.h \ + include/linux/cc_platform.h \ + $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ + arch/x86/include/uapi/asm/bootparam.h \ + include/linux/screen_info.h \ + include/uapi/linux/screen_info.h \ + include/linux/apm_bios.h \ + include/uapi/linux/apm_bios.h \ + include/uapi/linux/ioctl.h \ + arch/x86/include/generated/uapi/asm/ioctl.h \ + include/asm-generic/ioctl.h \ + include/uapi/asm-generic/ioctl.h \ + include/linux/edd.h \ + include/uapi/linux/edd.h \ + arch/x86/include/asm/ist.h \ + arch/x86/include/uapi/asm/ist.h \ + include/video/edid.h \ + $(wildcard include/config/X86) \ + include/uapi/video/edid.h \ + arch/x86/include/asm/math_emu.h \ + arch/x86/include/asm/ptrace.h \ + $(wildcard include/config/PARAVIRT) \ + $(wildcard include/config/IA32_EMULATION) \ + arch/x86/include/asm/segment.h \ + $(wildcard include/config/XEN_PV) \ + arch/x86/include/asm/page_types.h \ + $(wildcard include/config/PHYSICAL_START) \ + $(wildcard include/config/PHYSICAL_ALIGN) \ + $(wildcard include/config/DYNAMIC_PHYSICAL_MASK) \ + arch/x86/include/asm/page_64_types.h \ + $(wildcard include/config/KASAN) \ + $(wildcard include/config/DYNAMIC_MEMORY_LAYOUT) \ + $(wildcard include/config/RANDOMIZE_BASE) \ + arch/x86/include/asm/kaslr.h \ + $(wildcard include/config/RANDOMIZE_MEMORY) \ + arch/x86/include/uapi/asm/ptrace.h \ + arch/x86/include/uapi/asm/ptrace-abi.h \ + arch/x86/include/asm/paravirt_types.h \ + $(wildcard include/config/PGTABLE_LEVELS) \ + $(wildcard include/config/PARAVIRT_DEBUG) \ + arch/x86/include/asm/desc_defs.h \ + arch/x86/include/asm/pgtable_types.h \ + $(wildcard include/config/MEM_SOFT_DIRTY) \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_WP) \ + $(wildcard include/config/PROC_FS) \ + arch/x86/include/asm/pgtable_64_types.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL_FORCE_MAP) \ + arch/x86/include/asm/sparsemem.h \ + $(wildcard include/config/SPARSEMEM) \ + $(wildcard include/config/NUMA_KEEP_MEMINFO) \ + arch/x86/include/asm/nospec-branch.h \ + $(wildcard include/config/DEBUG_ENTRY) \ + $(wildcard include/config/CPU_IBPB_ENTRY) \ + include/linux/static_key.h \ + include/linux/objtool.h \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/unwind_hints.h \ + arch/x86/include/asm/orc_types.h \ + arch/x86/include/asm/percpu.h \ + $(wildcard include/config/X86_64_SMP) \ + include/asm-generic/percpu.h \ + $(wildcard include/config/DEBUG_PREEMPT) \ + $(wildcard include/config/HAVE_SETUP_PER_CPU_AREA) \ + include/linux/threads.h \ + $(wildcard include/config/BASE_SMALL) \ + include/linux/percpu-defs.h \ + $(wildcard include/config/DEBUG_FORCE_WEAK_PER_CPU) \ + arch/x86/include/asm/GEN-for-each-reg.h \ + arch/x86/include/asm/proto.h \ + arch/x86/include/uapi/asm/ldt.h \ + arch/x86/include/uapi/asm/sigcontext.h \ + arch/x86/include/asm/current.h \ + arch/x86/include/asm/page.h \ + arch/x86/include/asm/page_64.h \ + $(wildcard include/config/DEBUG_VIRTUAL) \ + $(wildcard include/config/FLATMEM) \ + $(wildcard include/config/X86_VSYSCALL_EMULATION) \ + include/linux/range.h \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/SPARSEMEM_VMEMMAP) \ + include/linux/pfn.h \ + include/asm-generic/getorder.h \ + arch/x86/include/asm/msr.h \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/generated/uapi/asm/errno.h \ + include/uapi/asm-generic/errno.h \ + include/uapi/asm-generic/errno-base.h \ + arch/x86/include/asm/cpumask.h \ + include/linux/cpumask.h \ + $(wildcard include/config/CPUMASK_OFFSTACK) \ + $(wildcard include/config/HOTPLUG_CPU) \ + $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ + include/linux/bitmap.h \ + include/linux/string.h \ + $(wildcard include/config/BINARY_PRINTF) \ + $(wildcard include/config/FORTIFY_SOURCE) \ + include/linux/errno.h \ + include/uapi/linux/errno.h \ + include/uapi/linux/string.h \ + arch/x86/include/asm/string.h \ + arch/x86/include/asm/string_64.h \ + $(wildcard include/config/ARCH_HAS_UACCESS_FLUSHCACHE) \ + include/linux/fortify-string.h \ + include/linux/atomic.h \ + arch/x86/include/asm/atomic.h \ + arch/x86/include/asm/cmpxchg.h \ + arch/x86/include/asm/cmpxchg_64.h \ + arch/x86/include/asm/atomic64_64.h \ + include/linux/atomic/atomic-arch-fallback.h \ + $(wildcard include/config/GENERIC_ATOMIC64) \ + include/linux/atomic/atomic-long.h \ + include/linux/atomic/atomic-instrumented.h \ + include/linux/bug.h \ + $(wildcard include/config/BUG_ON_DATA_CORRUPTION) \ + arch/x86/include/asm/bug.h \ + $(wildcard include/config/DEBUG_BUGVERBOSE) \ + include/linux/instrumentation.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/BUG) \ + $(wildcard include/config/GENERIC_BUG_RELATIVE_POINTERS) \ + arch/x86/include/uapi/asm/msr.h \ + include/linux/tracepoint-defs.h \ + arch/x86/include/asm/paravirt.h \ + $(wildcard include/config/PARAVIRT_SPINLOCKS) \ + arch/x86/include/asm/frame.h \ + $(wildcard include/config/FRAME_POINTER) \ + arch/x86/include/asm/special_insns.h \ + include/linux/irqflags.h \ + $(wildcard include/config/TRACE_IRQFLAGS) \ + $(wildcard include/config/IRQSOFF_TRACER) \ + $(wildcard include/config/PREEMPT_TRACER) \ + $(wildcard include/config/DEBUG_IRQFLAGS) \ + $(wildcard include/config/TRACE_IRQFLAGS_SUPPORT) \ + arch/x86/include/asm/irqflags.h \ + arch/x86/include/asm/fpu/types.h \ + arch/x86/include/asm/vmxfeatures.h \ + arch/x86/include/asm/vdso/processor.h \ + include/linux/personality.h \ + include/uapi/linux/personality.h \ + include/linux/err.h \ + arch/x86/include/asm/tsc.h \ + arch/x86/include/asm/cpufeature.h \ + $(wildcard include/config/X86_FEATURE_NAMES) \ + include/vdso/time32.h \ + include/vdso/time.h \ + include/linux/uidgid.h \ + $(wildcard include/config/MULTIUSER) \ + $(wildcard include/config/USER_NS) \ + include/linux/highuid.h \ + include/linux/buildid.h \ + $(wildcard include/config/CRASH_CORE) \ + include/linux/mm_types.h \ + $(wildcard include/config/HAVE_ALIGNED_STRUCT_PAGE) \ + $(wildcard include/config/MEMCG) \ + $(wildcard include/config/USERFAULTFD) \ + $(wildcard include/config/SWAP) \ + $(wildcard include/config/NUMA) \ + $(wildcard include/config/HAVE_ARCH_COMPAT_MMAP_BASES) \ + $(wildcard include/config/MEMBARRIER) \ + $(wildcard include/config/AIO) \ + $(wildcard include/config/MMU_NOTIFIER) \ + $(wildcard include/config/TRANSPARENT_HUGEPAGE) \ + $(wildcard include/config/NUMA_BALANCING) \ + $(wildcard include/config/ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH) \ + $(wildcard include/config/HUGETLB_PAGE) \ + $(wildcard include/config/IOMMU_SUPPORT) \ + include/linux/mm_types_task.h \ + $(wildcard include/config/SPLIT_PTLOCK_CPUS) \ + $(wildcard include/config/ARCH_ENABLE_SPLIT_PMD_PTLOCK) \ + arch/x86/include/asm/tlbbatch.h \ + include/linux/auxvec.h \ + include/uapi/linux/auxvec.h \ + arch/x86/include/uapi/asm/auxvec.h \ + include/linux/spinlock.h \ + $(wildcard include/config/PREEMPTION) \ + include/linux/preempt.h \ + $(wildcard include/config/PREEMPT_COUNT) \ + $(wildcard include/config/TRACE_PREEMPT_TOGGLE) \ + $(wildcard include/config/PREEMPT_NOTIFIERS) \ + arch/x86/include/asm/preempt.h \ + include/linux/thread_info.h \ + $(wildcard include/config/THREAD_INFO_IN_TASK) \ + $(wildcard include/config/GENERIC_ENTRY) \ + $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ + $(wildcard include/config/HARDENED_USERCOPY) \ + include/linux/restart_block.h \ + arch/x86/include/asm/thread_info.h \ + $(wildcard include/config/COMPAT) \ + include/linux/bottom_half.h \ + include/linux/lockdep.h \ + $(wildcard include/config/DEBUG_LOCKING_API_SELFTESTS) \ + include/linux/smp.h \ + $(wildcard include/config/UP_LATE_INIT) \ + include/linux/smp_types.h \ + include/linux/llist.h \ + $(wildcard include/config/ARCH_HAVE_NMI_SAFE_CMPXCHG) \ + arch/x86/include/asm/smp.h \ + $(wildcard include/config/X86_LOCAL_APIC) \ + $(wildcard include/config/DEBUG_NMI_SELFTEST) \ + arch/x86/include/generated/asm/mmiowb.h \ + include/asm-generic/mmiowb.h \ + $(wildcard include/config/MMIOWB) \ + arch/x86/include/asm/spinlock.h \ + arch/x86/include/asm/qspinlock.h \ + include/asm-generic/qspinlock.h \ + arch/x86/include/asm/qrwlock.h \ + include/asm-generic/qrwlock.h \ + include/linux/rwlock.h \ + $(wildcard include/config/PREEMPT) \ + include/linux/spinlock_api_smp.h \ + $(wildcard include/config/INLINE_SPIN_LOCK) \ + $(wildcard include/config/INLINE_SPIN_LOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK_BH) \ + $(wildcard include/config/UNINLINE_SPIN_UNLOCK) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/GENERIC_LOCKBREAK) \ + include/linux/rwlock_api_smp.h \ + $(wildcard include/config/INLINE_READ_LOCK) \ + $(wildcard include/config/INLINE_WRITE_LOCK) \ + $(wildcard include/config/INLINE_READ_LOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_LOCK_BH) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_READ_TRYLOCK) \ + $(wildcard include/config/INLINE_WRITE_TRYLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_BH) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQRESTORE) \ + include/linux/rbtree.h \ + include/linux/rbtree_types.h \ + include/linux/rcupdate.h \ + $(wildcard include/config/PREEMPT_RCU) \ + $(wildcard include/config/TINY_RCU) \ + $(wildcard include/config/TASKS_RCU_GENERIC) \ + $(wildcard include/config/RCU_STALL_COMMON) \ + $(wildcard include/config/NO_HZ_FULL) \ + $(wildcard include/config/RCU_NOCB_CPU) \ + $(wildcard include/config/TASKS_RCU) \ + $(wildcard include/config/TASKS_TRACE_RCU) \ + $(wildcard include/config/TASKS_RUDE_RCU) \ + $(wildcard include/config/TREE_RCU) \ + $(wildcard include/config/DEBUG_OBJECTS_RCU_HEAD) \ + $(wildcard include/config/PROVE_RCU) \ + $(wildcard include/config/ARCH_WEAK_RELEASE_ACQUIRE) \ + include/linux/rcutree.h \ + include/linux/rwsem.h \ + $(wildcard include/config/RWSEM_SPIN_ON_OWNER) \ + $(wildcard include/config/DEBUG_RWSEMS) \ + include/linux/osq_lock.h \ + include/linux/completion.h \ + include/linux/swait.h \ + include/linux/wait.h \ + include/uapi/linux/wait.h \ + include/linux/uprobes.h \ + $(wildcard include/config/UPROBES) \ + arch/x86/include/asm/uprobes.h \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ + $(wildcard include/config/DEBUG_MUTEXES) \ + include/linux/debug_locks.h \ + include/linux/srcu.h \ + $(wildcard include/config/TINY_SRCU) \ + $(wildcard include/config/SRCU) \ + include/linux/workqueue.h \ + $(wildcard include/config/DEBUG_OBJECTS_WORK) \ + $(wildcard include/config/FREEZER) \ + $(wildcard include/config/WQ_WATCHDOG) \ + include/linux/timer.h \ + $(wildcard include/config/DEBUG_OBJECTS_TIMERS) \ + $(wildcard include/config/NO_HZ_COMMON) \ + include/linux/ktime.h \ + include/linux/jiffies.h \ + include/vdso/jiffies.h \ + include/generated/timeconst.h \ + include/vdso/ktime.h \ + include/linux/timekeeping.h \ + $(wildcard include/config/GENERIC_CMOS_UPDATE) \ + include/linux/clocksource_ids.h \ + include/linux/debugobjects.h \ + $(wildcard include/config/DEBUG_OBJECTS) \ + $(wildcard include/config/DEBUG_OBJECTS_FREE) \ + include/linux/rcu_segcblist.h \ + include/linux/srcutree.h \ + include/linux/rcu_node_tree.h \ + $(wildcard include/config/RCU_FANOUT) \ + $(wildcard include/config/RCU_FANOUT_LEAF) \ + include/linux/page-flags-layout.h \ + $(wildcard include/config/KASAN_HW_TAGS) \ + include/linux/numa.h \ + $(wildcard include/config/NODES_SHIFT) \ + include/generated/bounds.h \ + include/linux/seqlock.h \ + include/linux/ww_mutex.h \ + $(wildcard include/config/DEBUG_RT_MUTEXES) \ + $(wildcard include/config/DEBUG_WW_MUTEX_SLOWPATH) \ + include/linux/rtmutex.h \ + arch/x86/include/asm/mmu.h \ + $(wildcard include/config/MODIFY_LDT_SYSCALL) \ + include/linux/kmod.h \ + include/linux/umh.h \ + include/linux/gfp.h \ + $(wildcard include/config/HIGHMEM) \ + $(wildcard include/config/ZONE_DMA) \ + $(wildcard include/config/ZONE_DMA32) \ + $(wildcard include/config/ZONE_DEVICE) \ + $(wildcard include/config/PM_SLEEP) \ + $(wildcard include/config/CONTIG_ALLOC) \ + $(wildcard include/config/CMA) \ + include/linux/mmdebug.h \ + $(wildcard include/config/DEBUG_VM) \ + $(wildcard include/config/DEBUG_VM_PGFLAGS) \ + include/linux/mmzone.h \ + $(wildcard include/config/FORCE_MAX_ZONEORDER) \ + $(wildcard include/config/MEMORY_ISOLATION) \ + $(wildcard include/config/ZSMALLOC) \ + $(wildcard include/config/SHADOW_CALL_STACK) \ + $(wildcard include/config/MEMORY_HOTPLUG) \ + $(wildcard include/config/COMPACTION) \ + $(wildcard include/config/PAGE_EXTENSION) \ + $(wildcard include/config/DEFERRED_STRUCT_PAGE_INIT) \ + $(wildcard include/config/HAVE_MEMORYLESS_NODES) \ + $(wildcard include/config/SPARSEMEM_EXTREME) \ + $(wildcard include/config/HAVE_ARCH_PFN_VALID) \ + include/linux/nodemask.h \ + include/linux/pageblock-flags.h \ + $(wildcard include/config/HUGETLB_PAGE_SIZE_VARIABLE) \ + include/linux/page-flags.h \ + $(wildcard include/config/ARCH_USES_PG_UNCACHED) \ + $(wildcard include/config/MEMORY_FAILURE) \ + $(wildcard include/config/PAGE_IDLE_FLAG) \ + $(wildcard include/config/THP_SWAP) \ + $(wildcard include/config/KSM) \ + include/linux/local_lock.h \ + include/linux/local_lock_internal.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ + $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ + $(wildcard include/config/MEMORY_HOTREMOVE) \ + arch/x86/include/asm/mmzone.h \ + arch/x86/include/asm/mmzone_64.h \ + include/linux/topology.h \ + $(wildcard include/config/USE_PERCPU_NUMA_NODE_ID) \ + $(wildcard include/config/SCHED_SMT) \ + include/linux/arch_topology.h \ + $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ + include/linux/percpu.h \ + $(wildcard include/config/NEED_PER_CPU_EMBED_FIRST_CHUNK) \ + $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ + arch/x86/include/asm/topology.h \ + $(wildcard include/config/SCHED_MC_PRIO) \ + $(wildcard include/config/ACPI_CPPC_LIB) \ + arch/x86/include/asm/mpspec.h \ + $(wildcard include/config/EISA) \ + $(wildcard include/config/X86_MPPARSE) \ + arch/x86/include/asm/mpspec_def.h \ + arch/x86/include/asm/x86_init.h \ + arch/x86/include/asm/apicdef.h \ + include/asm-generic/topology.h \ + include/linux/sysctl.h \ + $(wildcard include/config/SYSCTL) \ + include/uapi/linux/sysctl.h \ + include/linux/elf.h \ + $(wildcard include/config/ARCH_USE_GNU_PROPERTY) \ + $(wildcard include/config/ARCH_HAVE_ELF_PROT) \ + arch/x86/include/asm/elf.h \ + $(wildcard include/config/X86_X32_ABI) \ + arch/x86/include/asm/user.h \ + arch/x86/include/asm/user_64.h \ + arch/x86/include/asm/fsgsbase.h \ + arch/x86/include/asm/vdso.h \ + $(wildcard include/config/X86_X32) \ + include/uapi/linux/elf.h \ + include/uapi/linux/elf-em.h \ + include/linux/kobject.h \ + $(wildcard include/config/UEVENT_HELPER) \ + $(wildcard include/config/DEBUG_KOBJECT_RELEASE) \ + include/linux/sysfs.h \ + include/linux/kernfs.h \ + $(wildcard include/config/KERNFS) \ + include/linux/idr.h \ + include/linux/radix-tree.h \ + include/linux/xarray.h \ + $(wildcard include/config/XARRAY_MULTI) \ + include/linux/kconfig.h \ + include/linux/kobject_ns.h \ + include/linux/kref.h \ + include/linux/refcount.h \ + include/linux/moduleparam.h \ + $(wildcard include/config/ALPHA) \ + $(wildcard include/config/IA64) \ + $(wildcard include/config/PPC64) \ + include/linux/rbtree_latch.h \ + include/linux/error-injection.h \ + include/asm-generic/error-injection.h \ + include/linux/cfi.h \ + $(wildcard include/config/CFI_CLANG_SHADOW) \ + arch/x86/include/asm/module.h \ + $(wildcard include/config/UNWINDER_ORC) \ + include/asm-generic/module.h \ + $(wildcard include/config/HAVE_MOD_ARCH_SPECIFIC) \ + $(wildcard include/config/MODULES_USE_ELF_REL) \ + $(wildcard include/config/MODULES_USE_ELF_RELA) \ + arch/x86/include/asm/orc_types.h \ + include/linux/build-salt.h \ + $(wildcard include/config/BUILD_SALT) \ + include/linux/elfnote.h \ + include/linux/elfnote-lto.h \ + $(wildcard include/config/LTO) \ + include/linux/vermagic.h \ + include/generated/utsrelease.h \ + arch/x86/include/asm/vermagic.h \ + $(wildcard include/config/M486SX) \ + $(wildcard include/config/M486) \ + $(wildcard include/config/M586) \ + $(wildcard include/config/M586TSC) \ + $(wildcard include/config/M586MMX) \ + $(wildcard include/config/MCORE2) \ + $(wildcard include/config/M686) \ + $(wildcard include/config/MPENTIUMII) \ + $(wildcard include/config/MPENTIUMIII) \ + $(wildcard include/config/MPENTIUMM) \ + $(wildcard include/config/MPENTIUM4) \ + $(wildcard include/config/MK6) \ + $(wildcard include/config/MK7) \ + $(wildcard include/config/MK8) \ + $(wildcard include/config/MELAN) \ + $(wildcard include/config/MCRUSOE) \ + $(wildcard include/config/MEFFICEON) \ + $(wildcard include/config/MWINCHIPC6) \ + $(wildcard include/config/MWINCHIP3D) \ + $(wildcard include/config/MCYRIXIII) \ + $(wildcard include/config/MVIAC3_2) \ + $(wildcard include/config/MVIAC7) \ + $(wildcard include/config/MGEODEGX1) \ + $(wildcard include/config/MGEODE_LX) \ + +/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod.o: $(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod.o) + +$(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod.o): diff --git a/host_software/driver/XDMA/linux-kernel/xdma/.xdma.o.cmd b/host_software/driver/XDMA/linux-kernel/xdma/.xdma.o.cmd new file mode 100644 index 0000000..5320bc4 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/.xdma.o.cmd @@ -0,0 +1 @@ +cmd_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.o := ld -m elf_x86_64 -z noexecstack -r -o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_events.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_bypass.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.o diff --git a/host_software/driver/XDMA/linux-kernel/xdma/.xdma_cdev.o.cmd b/host_software/driver/XDMA/linux-kernel/xdma/.xdma_cdev.o.cmd new file mode 100644 index 0000000..0f76af6 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/.xdma_cdev.o.cmd @@ -0,0 +1,1426 @@ +cmd_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.o := gcc -Wp,-MMD,/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/.xdma_cdev.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/9/include -I./arch/x86/include -I./arch/x86/include/generated -I./include -I./arch/x86/include/uapi -I./arch/x86/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -I./ubuntu/include -include ./include/linux/compiler_types.h -D__KERNEL__ -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu89 -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fcf-protection=none -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -DCONFIG_X86_X32_ABI -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mfunction-return=thunk-extern -fno-jump-tables -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fstack-protector-strong -Wimplicit-fallthrough=5 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-stack-clash-protection -g -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wno-stringop-truncation -Wno-array-bounds -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -I/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/include -fsanitize=bounds -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"xdma_cdev"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.c + +source_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.o := /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.c + +deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.o := \ + include/linux/compiler-version.h \ + $(wildcard include/config/CC_VERSION_TEXT) \ + include/linux/kconfig.h \ + $(wildcard include/config/CPU_BIG_ENDIAN) \ + $(wildcard include/config/BOOGER) \ + $(wildcard include/config/FOO) \ + include/linux/compiler_types.h \ + $(wildcard include/config/HAVE_ARCH_COMPILER_H) \ + $(wildcard include/config/CC_HAS_ASM_INLINE) \ + include/linux/compiler_attributes.h \ + include/linux/compiler-gcc.h \ + $(wildcard include/config/RETPOLINE) \ + $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ + $(wildcard include/config/KCOV) \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.h \ + include/linux/kernel.h \ + $(wildcard include/config/PREEMPT_VOLUNTARY) \ + $(wildcard include/config/PREEMPT_DYNAMIC) \ + $(wildcard include/config/PREEMPT_) \ + $(wildcard include/config/DEBUG_ATOMIC_SLEEP) \ + $(wildcard include/config/SMP) \ + $(wildcard include/config/MMU) \ + $(wildcard include/config/PROVE_LOCKING) \ + $(wildcard include/config/TRACING) \ + $(wildcard include/config/FTRACE_MCOUNT_RECORD) \ + include/linux/stdarg.h \ + include/linux/align.h \ + include/linux/const.h \ + include/vdso/const.h \ + include/uapi/linux/const.h \ + include/linux/limits.h \ + include/uapi/linux/limits.h \ + include/linux/types.h \ + $(wildcard include/config/HAVE_UID16) \ + $(wildcard include/config/UID16) \ + $(wildcard include/config/ARCH_DMA_ADDR_T_64BIT) \ + $(wildcard include/config/PHYS_ADDR_T_64BIT) \ + $(wildcard include/config/64BIT) \ + $(wildcard include/config/ARCH_32BIT_USTAT_F_TINODE) \ + include/uapi/linux/types.h \ + arch/x86/include/generated/uapi/asm/types.h \ + include/uapi/asm-generic/types.h \ + include/asm-generic/int-ll64.h \ + include/uapi/asm-generic/int-ll64.h \ + arch/x86/include/uapi/asm/bitsperlong.h \ + include/asm-generic/bitsperlong.h \ + include/uapi/asm-generic/bitsperlong.h \ + include/uapi/linux/posix_types.h \ + include/linux/stddef.h \ + include/uapi/linux/stddef.h \ + include/linux/compiler_types.h \ + arch/x86/include/asm/posix_types.h \ + $(wildcard include/config/X86_32) \ + arch/x86/include/uapi/asm/posix_types_64.h \ + include/uapi/asm-generic/posix_types.h \ + include/vdso/limits.h \ + include/linux/linkage.h \ + $(wildcard include/config/ARCH_USE_SYM_ANNOTATIONS) \ + include/linux/stringify.h \ + include/linux/export.h \ + $(wildcard include/config/MODVERSIONS) \ + $(wildcard include/config/MODULE_REL_CRCS) \ + $(wildcard include/config/HAVE_ARCH_PREL32_RELOCATIONS) \ + $(wildcard include/config/MODULES) \ + $(wildcard include/config/TRIM_UNUSED_KSYMS) \ + include/linux/compiler.h \ + $(wildcard include/config/TRACE_BRANCH_PROFILING) \ + $(wildcard include/config/PROFILE_ALL_BRANCHES) \ + $(wildcard include/config/STACK_VALIDATION) \ + $(wildcard include/config/CFI_CLANG) \ + arch/x86/include/generated/asm/rwonce.h \ + include/asm-generic/rwonce.h \ + include/linux/kasan-checks.h \ + $(wildcard include/config/KASAN_GENERIC) \ + $(wildcard include/config/KASAN_SW_TAGS) \ + include/linux/kcsan-checks.h \ + $(wildcard include/config/KCSAN) \ + $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ + arch/x86/include/asm/linkage.h \ + $(wildcard include/config/X86_64) \ + $(wildcard include/config/X86_ALIGNMENT_16) \ + $(wildcard include/config/RETHUNK) \ + $(wildcard include/config/SLS) \ + include/linux/bitops.h \ + include/linux/bits.h \ + include/vdso/bits.h \ + include/linux/build_bug.h \ + include/linux/typecheck.h \ + include/uapi/linux/kernel.h \ + include/uapi/linux/sysinfo.h \ + arch/x86/include/asm/bitops.h \ + $(wildcard include/config/X86_CMOV) \ + arch/x86/include/asm/alternative.h \ + arch/x86/include/asm/asm.h \ + $(wildcard include/config/KPROBES) \ + arch/x86/include/asm/extable_fixup_types.h \ + arch/x86/include/asm/rmwcc.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO) \ + arch/x86/include/asm/barrier.h \ + arch/x86/include/asm/nops.h \ + include/asm-generic/barrier.h \ + include/asm-generic/bitops/find.h \ + $(wildcard include/config/GENERIC_FIND_FIRST_BIT) \ + include/asm-generic/bitops/sched.h \ + arch/x86/include/asm/arch_hweight.h \ + arch/x86/include/asm/cpufeatures.h \ + arch/x86/include/asm/required-features.h \ + $(wildcard include/config/X86_MINIMUM_CPU_FAMILY) \ + $(wildcard include/config/MATH_EMULATION) \ + $(wildcard include/config/X86_PAE) \ + $(wildcard include/config/X86_CMPXCHG64) \ + $(wildcard include/config/X86_USE_3DNOW) \ + $(wildcard include/config/X86_P6_NOP) \ + $(wildcard include/config/MATOM) \ + $(wildcard include/config/PARAVIRT_XXL) \ + arch/x86/include/asm/disabled-features.h \ + $(wildcard include/config/X86_SMAP) \ + $(wildcard include/config/X86_UMIP) \ + $(wildcard include/config/X86_INTEL_MEMORY_PROTECTION_KEYS) \ + $(wildcard include/config/X86_5LEVEL) \ + $(wildcard include/config/PAGE_TABLE_ISOLATION) \ + $(wildcard include/config/CPU_UNRET_ENTRY) \ + $(wildcard include/config/X86_SGX) \ + include/asm-generic/bitops/const_hweight.h \ + include/asm-generic/bitops/instrumented-atomic.h \ + include/linux/instrumented.h \ + include/asm-generic/bitops/instrumented-non-atomic.h \ + $(wildcard include/config/KCSAN_ASSUME_PLAIN_WRITES_ATOMIC) \ + include/asm-generic/bitops/instrumented-lock.h \ + include/asm-generic/bitops/le.h \ + arch/x86/include/uapi/asm/byteorder.h \ + include/linux/byteorder/little_endian.h \ + include/uapi/linux/byteorder/little_endian.h \ + include/linux/swab.h \ + include/uapi/linux/swab.h \ + arch/x86/include/uapi/asm/swab.h \ + include/linux/byteorder/generic.h \ + include/asm-generic/bitops/ext2-atomic-setbit.h \ + include/linux/kstrtox.h \ + include/linux/log2.h \ + $(wildcard include/config/ARCH_HAS_ILOG2_U32) \ + $(wildcard include/config/ARCH_HAS_ILOG2_U64) \ + include/linux/math.h \ + arch/x86/include/asm/div64.h \ + include/asm-generic/div64.h \ + include/linux/minmax.h \ + include/linux/panic.h \ + $(wildcard include/config/PANIC_TIMEOUT) \ + include/linux/printk.h \ + $(wildcard include/config/MESSAGE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_QUIET) \ + $(wildcard include/config/EARLY_PRINTK) \ + $(wildcard include/config/PRINTK) \ + $(wildcard include/config/PRINTK_INDEX) \ + $(wildcard include/config/DYNAMIC_DEBUG) \ + $(wildcard include/config/DYNAMIC_DEBUG_CORE) \ + include/linux/init.h \ + $(wildcard include/config/STRICT_KERNEL_RWX) \ + $(wildcard include/config/STRICT_MODULE_RWX) \ + $(wildcard include/config/LTO_CLANG) \ + include/linux/kern_levels.h \ + include/linux/cache.h \ + $(wildcard include/config/ARCH_HAS_CACHE_LINE_SIZE) \ + arch/x86/include/asm/cache.h \ + $(wildcard include/config/X86_L1_CACHE_SHIFT) \ + $(wildcard include/config/X86_INTERNODE_CACHE_SHIFT) \ + $(wildcard include/config/X86_VSMP) \ + include/linux/ratelimit_types.h \ + include/uapi/linux/param.h \ + arch/x86/include/generated/uapi/asm/param.h \ + include/asm-generic/param.h \ + $(wildcard include/config/HZ) \ + include/uapi/asm-generic/param.h \ + include/linux/spinlock_types.h \ + $(wildcard include/config/PREEMPT_RT) \ + $(wildcard include/config/DEBUG_LOCK_ALLOC) \ + include/linux/spinlock_types_raw.h \ + $(wildcard include/config/DEBUG_SPINLOCK) \ + arch/x86/include/asm/spinlock_types.h \ + include/asm-generic/qspinlock_types.h \ + $(wildcard include/config/NR_CPUS) \ + include/asm-generic/qrwlock_types.h \ + include/linux/lockdep_types.h \ + $(wildcard include/config/PROVE_RAW_LOCK_NESTING) \ + $(wildcard include/config/PREEMPT_LOCK) \ + $(wildcard include/config/LOCKDEP) \ + $(wildcard include/config/LOCK_STAT) \ + include/linux/rwlock_types.h \ + include/linux/once_lite.h \ + include/linux/dynamic_debug.h \ + $(wildcard include/config/JUMP_LABEL) \ + include/linux/jump_label.h \ + $(wildcard include/config/HAVE_ARCH_JUMP_LABEL_RELATIVE) \ + arch/x86/include/asm/jump_label.h \ + include/linux/static_call_types.h \ + $(wildcard include/config/HAVE_STATIC_CALL) \ + $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ + include/linux/uaccess.h \ + $(wildcard include/config/SET_FS) \ + $(wildcard include/config/PREEMPT_COUNT) \ + $(wildcard include/config/HARDENED_USERCOPY) \ + include/linux/fault-inject-usercopy.h \ + $(wildcard include/config/FAULT_INJECTION_USERCOPY) \ + include/linux/sched.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_NATIVE) \ + $(wildcard include/config/SCHED_INFO) \ + $(wildcard include/config/SCHEDSTATS) \ + $(wildcard include/config/FAIR_GROUP_SCHED) \ + $(wildcard include/config/RT_GROUP_SCHED) \ + $(wildcard include/config/RT_MUTEXES) \ + $(wildcard include/config/UCLAMP_TASK) \ + $(wildcard include/config/UCLAMP_BUCKETS_COUNT) \ + $(wildcard include/config/KMAP_LOCAL) \ + $(wildcard include/config/THREAD_INFO_IN_TASK) \ + $(wildcard include/config/SCHED_CORE) \ + $(wildcard include/config/CGROUP_SCHED) \ + $(wildcard include/config/PREEMPT_NOTIFIERS) \ + $(wildcard include/config/BLK_DEV_IO_TRACE) \ + $(wildcard include/config/PREEMPT_RCU) \ + $(wildcard include/config/TASKS_RCU) \ + $(wildcard include/config/TASKS_TRACE_RCU) \ + $(wildcard include/config/PSI) \ + $(wildcard include/config/MEMCG) \ + $(wildcard include/config/COMPAT_BRK) \ + $(wildcard include/config/CGROUPS) \ + $(wildcard include/config/BLK_CGROUP) \ + $(wildcard include/config/PAGE_OWNER) \ + $(wildcard include/config/EVENTFD) \ + $(wildcard include/config/STACKPROTECTOR) \ + $(wildcard include/config/ARCH_HAS_SCALED_CPUTIME) \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_GEN) \ + $(wildcard include/config/NO_HZ_FULL) \ + $(wildcard include/config/POSIX_CPUTIMERS) \ + $(wildcard include/config/POSIX_CPU_TIMERS_TASK_WORK) \ + $(wildcard include/config/KEYS) \ + $(wildcard include/config/SYSVIPC) \ + $(wildcard include/config/DETECT_HUNG_TASK) \ + $(wildcard include/config/IO_URING) \ + $(wildcard include/config/AUDIT) \ + $(wildcard include/config/AUDITSYSCALL) \ + $(wildcard include/config/DEBUG_MUTEXES) \ + $(wildcard include/config/TRACE_IRQFLAGS) \ + $(wildcard include/config/UBSAN) \ + $(wildcard include/config/UBSAN_TRAP) \ + $(wildcard include/config/BLOCK) \ + $(wildcard include/config/COMPACTION) \ + $(wildcard include/config/TASK_XACCT) \ + $(wildcard include/config/CPUSETS) \ + $(wildcard include/config/X86_CPU_RESCTRL) \ + $(wildcard include/config/FUTEX) \ + $(wildcard include/config/COMPAT) \ + $(wildcard include/config/PERF_EVENTS) \ + $(wildcard include/config/DEBUG_PREEMPT) \ + $(wildcard include/config/NUMA) \ + $(wildcard include/config/NUMA_BALANCING) \ + $(wildcard include/config/RSEQ) \ + $(wildcard include/config/TASK_DELAY_ACCT) \ + $(wildcard include/config/FAULT_INJECTION) \ + $(wildcard include/config/LATENCYTOP) \ + $(wildcard include/config/KUNIT) \ + $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ + $(wildcard include/config/UPROBES) \ + $(wildcard include/config/BCACHE) \ + $(wildcard include/config/VMAP_STACK) \ + $(wildcard include/config/LIVEPATCH) \ + $(wildcard include/config/SECURITY) \ + $(wildcard include/config/BPF_SYSCALL) \ + $(wildcard include/config/GCC_PLUGIN_STACKLEAK) \ + $(wildcard include/config/X86_MCE) \ + $(wildcard include/config/KRETPROBES) \ + $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ + $(wildcard include/config/ARCH_TASK_STRUCT_ON_STACK) \ + $(wildcard include/config/PREEMPTION) \ + $(wildcard include/config/DEBUG_RSEQ) \ + include/uapi/linux/sched.h \ + arch/x86/include/asm/current.h \ + arch/x86/include/asm/percpu.h \ + $(wildcard include/config/X86_64_SMP) \ + include/asm-generic/percpu.h \ + $(wildcard include/config/HAVE_SETUP_PER_CPU_AREA) \ + include/linux/threads.h \ + $(wildcard include/config/BASE_SMALL) \ + include/linux/percpu-defs.h \ + $(wildcard include/config/DEBUG_FORCE_WEAK_PER_CPU) \ + $(wildcard include/config/AMD_MEM_ENCRYPT) \ + include/linux/pid.h \ + include/linux/rculist.h \ + $(wildcard include/config/PROVE_RCU_LIST) \ + include/linux/list.h \ + $(wildcard include/config/DEBUG_LIST) \ + include/linux/poison.h \ + $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ + include/linux/rcupdate.h \ + $(wildcard include/config/TINY_RCU) \ + $(wildcard include/config/TASKS_RCU_GENERIC) \ + $(wildcard include/config/RCU_STALL_COMMON) \ + $(wildcard include/config/RCU_NOCB_CPU) \ + $(wildcard include/config/TASKS_RUDE_RCU) \ + $(wildcard include/config/TREE_RCU) \ + $(wildcard include/config/DEBUG_OBJECTS_RCU_HEAD) \ + $(wildcard include/config/HOTPLUG_CPU) \ + $(wildcard include/config/PROVE_RCU) \ + $(wildcard include/config/ARCH_WEAK_RELEASE_ACQUIRE) \ + include/linux/atomic.h \ + arch/x86/include/asm/atomic.h \ + arch/x86/include/asm/cmpxchg.h \ + arch/x86/include/asm/cmpxchg_64.h \ + arch/x86/include/asm/atomic64_64.h \ + include/linux/atomic/atomic-arch-fallback.h \ + $(wildcard include/config/GENERIC_ATOMIC64) \ + include/linux/atomic/atomic-long.h \ + include/linux/atomic/atomic-instrumented.h \ + include/linux/irqflags.h \ + $(wildcard include/config/IRQSOFF_TRACER) \ + $(wildcard include/config/PREEMPT_TRACER) \ + $(wildcard include/config/DEBUG_IRQFLAGS) \ + $(wildcard include/config/TRACE_IRQFLAGS_SUPPORT) \ + arch/x86/include/asm/irqflags.h \ + $(wildcard include/config/DEBUG_ENTRY) \ + $(wildcard include/config/XEN_PV) \ + arch/x86/include/asm/processor-flags.h \ + $(wildcard include/config/VM86) \ + arch/x86/include/uapi/asm/processor-flags.h \ + include/linux/mem_encrypt.h \ + $(wildcard include/config/ARCH_HAS_MEM_ENCRYPT) \ + arch/x86/include/asm/mem_encrypt.h \ + include/linux/cc_platform.h \ + $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ + arch/x86/include/uapi/asm/bootparam.h \ + include/linux/screen_info.h \ + include/uapi/linux/screen_info.h \ + include/linux/apm_bios.h \ + include/uapi/linux/apm_bios.h \ + include/uapi/linux/ioctl.h \ + arch/x86/include/generated/uapi/asm/ioctl.h \ + include/asm-generic/ioctl.h \ + include/uapi/asm-generic/ioctl.h \ + include/linux/edd.h \ + include/uapi/linux/edd.h \ + arch/x86/include/asm/ist.h \ + arch/x86/include/uapi/asm/ist.h \ + include/video/edid.h \ + $(wildcard include/config/X86) \ + include/uapi/video/edid.h \ + arch/x86/include/asm/nospec-branch.h \ + $(wildcard include/config/CPU_IBPB_ENTRY) \ + include/linux/static_key.h \ + include/linux/objtool.h \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/unwind_hints.h \ + arch/x86/include/asm/orc_types.h \ + arch/x86/include/asm/GEN-for-each-reg.h \ + arch/x86/include/asm/segment.h \ + arch/x86/include/asm/paravirt.h \ + $(wildcard include/config/PARAVIRT) \ + $(wildcard include/config/PARAVIRT_SPINLOCKS) \ + $(wildcard include/config/X86_IOPL_IOPERM) \ + $(wildcard include/config/PGTABLE_LEVELS) \ + arch/x86/include/asm/pgtable_types.h \ + $(wildcard include/config/MEM_SOFT_DIRTY) \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_WP) \ + $(wildcard include/config/PROC_FS) \ + arch/x86/include/asm/page_types.h \ + $(wildcard include/config/PHYSICAL_START) \ + $(wildcard include/config/PHYSICAL_ALIGN) \ + $(wildcard include/config/DYNAMIC_PHYSICAL_MASK) \ + arch/x86/include/asm/page_64_types.h \ + $(wildcard include/config/KASAN) \ + $(wildcard include/config/DYNAMIC_MEMORY_LAYOUT) \ + $(wildcard include/config/RANDOMIZE_BASE) \ + arch/x86/include/asm/kaslr.h \ + $(wildcard include/config/RANDOMIZE_MEMORY) \ + arch/x86/include/asm/pgtable_64_types.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL_FORCE_MAP) \ + arch/x86/include/asm/sparsemem.h \ + $(wildcard include/config/SPARSEMEM) \ + $(wildcard include/config/NUMA_KEEP_MEMINFO) \ + arch/x86/include/asm/paravirt_types.h \ + $(wildcard include/config/PARAVIRT_DEBUG) \ + arch/x86/include/asm/desc_defs.h \ + include/linux/bug.h \ + $(wildcard include/config/GENERIC_BUG) \ + $(wildcard include/config/BUG_ON_DATA_CORRUPTION) \ + arch/x86/include/asm/bug.h \ + $(wildcard include/config/DEBUG_BUGVERBOSE) \ + include/linux/instrumentation.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/BUG) \ + $(wildcard include/config/GENERIC_BUG_RELATIVE_POINTERS) \ + include/linux/cpumask.h \ + $(wildcard include/config/CPUMASK_OFFSTACK) \ + $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ + include/linux/bitmap.h \ + include/linux/string.h \ + $(wildcard include/config/BINARY_PRINTF) \ + $(wildcard include/config/FORTIFY_SOURCE) \ + include/linux/errno.h \ + include/uapi/linux/errno.h \ + arch/x86/include/generated/uapi/asm/errno.h \ + include/uapi/asm-generic/errno.h \ + include/uapi/asm-generic/errno-base.h \ + include/uapi/linux/string.h \ + arch/x86/include/asm/string.h \ + arch/x86/include/asm/string_64.h \ + $(wildcard include/config/ARCH_HAS_UACCESS_FLUSHCACHE) \ + include/linux/fortify-string.h \ + arch/x86/include/asm/frame.h \ + $(wildcard include/config/FRAME_POINTER) \ + include/linux/preempt.h \ + $(wildcard include/config/TRACE_PREEMPT_TOGGLE) \ + arch/x86/include/asm/preempt.h \ + include/linux/thread_info.h \ + $(wildcard include/config/GENERIC_ENTRY) \ + $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ + include/linux/restart_block.h \ + include/linux/time64.h \ + include/linux/math64.h \ + $(wildcard include/config/ARCH_SUPPORTS_INT128) \ + include/vdso/math64.h \ + include/vdso/time64.h \ + include/uapi/linux/time.h \ + include/uapi/linux/time_types.h \ + arch/x86/include/asm/thread_info.h \ + $(wildcard include/config/IA32_EMULATION) \ + arch/x86/include/asm/page.h \ + arch/x86/include/asm/page_64.h \ + $(wildcard include/config/DEBUG_VIRTUAL) \ + $(wildcard include/config/FLATMEM) \ + $(wildcard include/config/X86_VSYSCALL_EMULATION) \ + include/linux/range.h \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/SPARSEMEM_VMEMMAP) \ + include/linux/pfn.h \ + include/asm-generic/getorder.h \ + arch/x86/include/asm/cpufeature.h \ + $(wildcard include/config/X86_FEATURE_NAMES) \ + arch/x86/include/asm/processor.h \ + $(wildcard include/config/X86_VMX_FEATURE_NAMES) \ + $(wildcard include/config/X86_DEBUGCTLMSR) \ + $(wildcard include/config/CPU_SUP_AMD) \ + $(wildcard include/config/XEN) \ + arch/x86/include/asm/math_emu.h \ + arch/x86/include/asm/ptrace.h \ + arch/x86/include/uapi/asm/ptrace.h \ + arch/x86/include/uapi/asm/ptrace-abi.h \ + arch/x86/include/asm/proto.h \ + arch/x86/include/uapi/asm/ldt.h \ + arch/x86/include/uapi/asm/sigcontext.h \ + arch/x86/include/asm/msr.h \ + $(wildcard include/config/TRACEPOINTS) \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/cpumask.h \ + arch/x86/include/uapi/asm/msr.h \ + include/linux/tracepoint-defs.h \ + arch/x86/include/asm/special_insns.h \ + arch/x86/include/asm/fpu/types.h \ + arch/x86/include/asm/vmxfeatures.h \ + arch/x86/include/asm/vdso/processor.h \ + include/linux/personality.h \ + include/uapi/linux/personality.h \ + include/linux/err.h \ + include/linux/bottom_half.h \ + include/linux/lockdep.h \ + $(wildcard include/config/DEBUG_LOCKING_API_SELFTESTS) \ + include/linux/smp.h \ + $(wildcard include/config/UP_LATE_INIT) \ + include/linux/smp_types.h \ + include/linux/llist.h \ + $(wildcard include/config/ARCH_HAVE_NMI_SAFE_CMPXCHG) \ + arch/x86/include/asm/smp.h \ + $(wildcard include/config/X86_LOCAL_APIC) \ + $(wildcard include/config/DEBUG_NMI_SELFTEST) \ + include/linux/rcutree.h \ + include/linux/wait.h \ + include/linux/spinlock.h \ + arch/x86/include/generated/asm/mmiowb.h \ + include/asm-generic/mmiowb.h \ + $(wildcard include/config/MMIOWB) \ + arch/x86/include/asm/spinlock.h \ + arch/x86/include/asm/qspinlock.h \ + include/asm-generic/qspinlock.h \ + arch/x86/include/asm/qrwlock.h \ + include/asm-generic/qrwlock.h \ + include/linux/rwlock.h \ + $(wildcard include/config/PREEMPT) \ + include/linux/spinlock_api_smp.h \ + $(wildcard include/config/INLINE_SPIN_LOCK) \ + $(wildcard include/config/INLINE_SPIN_LOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK_BH) \ + $(wildcard include/config/UNINLINE_SPIN_UNLOCK) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/GENERIC_LOCKBREAK) \ + include/linux/rwlock_api_smp.h \ + $(wildcard include/config/INLINE_READ_LOCK) \ + $(wildcard include/config/INLINE_WRITE_LOCK) \ + $(wildcard include/config/INLINE_READ_LOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_LOCK_BH) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_READ_TRYLOCK) \ + $(wildcard include/config/INLINE_WRITE_TRYLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_BH) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQRESTORE) \ + include/uapi/linux/wait.h \ + include/linux/refcount.h \ + include/linux/sem.h \ + include/uapi/linux/sem.h \ + include/linux/ipc.h \ + include/linux/uidgid.h \ + $(wildcard include/config/MULTIUSER) \ + $(wildcard include/config/USER_NS) \ + include/linux/highuid.h \ + include/linux/rhashtable-types.h \ + include/linux/mutex.h \ + $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ + include/linux/osq_lock.h \ + include/linux/debug_locks.h \ + include/linux/workqueue.h \ + $(wildcard include/config/DEBUG_OBJECTS_WORK) \ + $(wildcard include/config/FREEZER) \ + $(wildcard include/config/SYSFS) \ + $(wildcard include/config/WQ_WATCHDOG) \ + include/linux/timer.h \ + $(wildcard include/config/DEBUG_OBJECTS_TIMERS) \ + $(wildcard include/config/NO_HZ_COMMON) \ + include/linux/ktime.h \ + include/linux/time.h \ + $(wildcard include/config/POSIX_TIMERS) \ + include/linux/time32.h \ + include/linux/timex.h \ + include/uapi/linux/timex.h \ + arch/x86/include/asm/timex.h \ + $(wildcard include/config/X86_TSC) \ + arch/x86/include/asm/tsc.h \ + include/vdso/time32.h \ + include/vdso/time.h \ + include/linux/jiffies.h \ + include/vdso/jiffies.h \ + include/generated/timeconst.h \ + include/vdso/ktime.h \ + include/linux/timekeeping.h \ + $(wildcard include/config/GENERIC_CMOS_UPDATE) \ + include/linux/clocksource_ids.h \ + include/linux/debugobjects.h \ + $(wildcard include/config/DEBUG_OBJECTS) \ + $(wildcard include/config/DEBUG_OBJECTS_FREE) \ + include/uapi/linux/ipc.h \ + arch/x86/include/generated/uapi/asm/ipcbuf.h \ + include/uapi/asm-generic/ipcbuf.h \ + arch/x86/include/uapi/asm/sembuf.h \ + include/linux/shm.h \ + include/uapi/linux/shm.h \ + include/uapi/asm-generic/hugetlb_encode.h \ + arch/x86/include/uapi/asm/shmbuf.h \ + include/uapi/asm-generic/shmbuf.h \ + arch/x86/include/asm/shmparam.h \ + include/linux/plist.h \ + $(wildcard include/config/DEBUG_PLIST) \ + include/linux/hrtimer.h \ + $(wildcard include/config/HIGH_RES_TIMERS) \ + $(wildcard include/config/TIME_LOW_RES) \ + $(wildcard include/config/TIMERFD) \ + include/linux/hrtimer_defs.h \ + include/linux/rbtree.h \ + include/linux/rbtree_types.h \ + include/linux/percpu.h \ + $(wildcard include/config/NEED_PER_CPU_EMBED_FIRST_CHUNK) \ + $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ + include/linux/mmdebug.h \ + $(wildcard include/config/DEBUG_VM) \ + $(wildcard include/config/DEBUG_VM_PGFLAGS) \ + include/linux/seqlock.h \ + include/linux/ww_mutex.h \ + $(wildcard include/config/DEBUG_RT_MUTEXES) \ + $(wildcard include/config/DEBUG_WW_MUTEX_SLOWPATH) \ + include/linux/rtmutex.h \ + include/linux/timerqueue.h \ + include/linux/seccomp.h \ + $(wildcard include/config/SECCOMP) \ + $(wildcard include/config/HAVE_ARCH_SECCOMP_FILTER) \ + $(wildcard include/config/SECCOMP_FILTER) \ + $(wildcard include/config/CHECKPOINT_RESTORE) \ + $(wildcard include/config/SECCOMP_CACHE_DEBUG) \ + include/uapi/linux/seccomp.h \ + arch/x86/include/asm/seccomp.h \ + arch/x86/include/asm/unistd.h \ + arch/x86/include/uapi/asm/unistd.h \ + arch/x86/include/generated/uapi/asm/unistd_64.h \ + arch/x86/include/generated/asm/unistd_64_x32.h \ + arch/x86/include/generated/asm/unistd_32_ia32.h \ + arch/x86/include/asm/ia32_unistd.h \ + include/asm-generic/seccomp.h \ + include/uapi/linux/unistd.h \ + include/linux/nodemask.h \ + $(wildcard include/config/HIGHMEM) \ + include/linux/numa.h \ + $(wildcard include/config/NODES_SHIFT) \ + include/linux/resource.h \ + include/uapi/linux/resource.h \ + arch/x86/include/generated/uapi/asm/resource.h \ + include/asm-generic/resource.h \ + include/uapi/asm-generic/resource.h \ + include/linux/latencytop.h \ + include/linux/sched/prio.h \ + include/linux/sched/types.h \ + include/linux/signal_types.h \ + $(wildcard include/config/OLD_SIGACTION) \ + include/uapi/linux/signal.h \ + arch/x86/include/asm/signal.h \ + arch/x86/include/uapi/asm/signal.h \ + include/uapi/asm-generic/signal-defs.h \ + arch/x86/include/uapi/asm/siginfo.h \ + include/uapi/asm-generic/siginfo.h \ + include/linux/syscall_user_dispatch.h \ + include/linux/mm_types_task.h \ + $(wildcard include/config/ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH) \ + $(wildcard include/config/SPLIT_PTLOCK_CPUS) \ + $(wildcard include/config/ARCH_ENABLE_SPLIT_PMD_PTLOCK) \ + arch/x86/include/asm/tlbbatch.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/TASK_IO_ACCOUNTING) \ + include/linux/posix-timers.h \ + include/linux/alarmtimer.h \ + $(wildcard include/config/RTC_CLASS) \ + include/linux/task_work.h \ + include/uapi/linux/rseq.h \ + include/linux/kcsan.h \ + arch/x86/include/generated/asm/kmap_size.h \ + include/asm-generic/kmap_size.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL) \ + arch/x86/include/asm/uaccess.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_HAS_ASM_GOTO_TIED_OUTPUT) \ + $(wildcard include/config/ARCH_HAS_COPY_MC) \ + $(wildcard include/config/X86_INTEL_USERCOPY) \ + arch/x86/include/asm/smap.h \ + arch/x86/include/asm/extable.h \ + $(wildcard include/config/BPF_JIT) \ + arch/x86/include/asm/uaccess_64.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.h \ + include/linux/module.h \ + $(wildcard include/config/MODULES_TREE_LOOKUP) \ + $(wildcard include/config/STACKTRACE_BUILD_ID) \ + $(wildcard include/config/MODULE_SIG) \ + $(wildcard include/config/KALLSYMS) \ + $(wildcard include/config/TREE_SRCU) \ + $(wildcard include/config/BPF_EVENTS) \ + $(wildcard include/config/DEBUG_INFO_BTF_MODULES) \ + $(wildcard include/config/EVENT_TRACING) \ + $(wildcard include/config/MODULE_UNLOAD) \ + $(wildcard include/config/CONSTRUCTORS) \ + $(wildcard include/config/FUNCTION_ERROR_INJECTION) \ + include/linux/stat.h \ + arch/x86/include/uapi/asm/stat.h \ + include/uapi/linux/stat.h \ + include/linux/buildid.h \ + $(wildcard include/config/CRASH_CORE) \ + include/linux/mm_types.h \ + $(wildcard include/config/HAVE_ALIGNED_STRUCT_PAGE) \ + $(wildcard include/config/USERFAULTFD) \ + $(wildcard include/config/SWAP) \ + $(wildcard include/config/HAVE_ARCH_COMPAT_MMAP_BASES) \ + $(wildcard include/config/MEMBARRIER) \ + $(wildcard include/config/AIO) \ + $(wildcard include/config/MMU_NOTIFIER) \ + $(wildcard include/config/TRANSPARENT_HUGEPAGE) \ + $(wildcard include/config/HUGETLB_PAGE) \ + $(wildcard include/config/IOMMU_SUPPORT) \ + include/linux/auxvec.h \ + include/uapi/linux/auxvec.h \ + arch/x86/include/uapi/asm/auxvec.h \ + include/linux/rwsem.h \ + $(wildcard include/config/RWSEM_SPIN_ON_OWNER) \ + $(wildcard include/config/DEBUG_RWSEMS) \ + include/linux/completion.h \ + include/linux/swait.h \ + include/linux/uprobes.h \ + arch/x86/include/asm/uprobes.h \ + include/linux/notifier.h \ + include/linux/srcu.h \ + $(wildcard include/config/TINY_SRCU) \ + $(wildcard include/config/SRCU) \ + include/linux/rcu_segcblist.h \ + include/linux/srcutree.h \ + include/linux/rcu_node_tree.h \ + $(wildcard include/config/RCU_FANOUT) \ + $(wildcard include/config/RCU_FANOUT_LEAF) \ + include/linux/page-flags-layout.h \ + $(wildcard include/config/KASAN_HW_TAGS) \ + include/generated/bounds.h \ + arch/x86/include/asm/mmu.h \ + $(wildcard include/config/MODIFY_LDT_SYSCALL) \ + include/linux/kmod.h \ + include/linux/umh.h \ + include/linux/gfp.h \ + $(wildcard include/config/ZONE_DMA) \ + $(wildcard include/config/ZONE_DMA32) \ + $(wildcard include/config/ZONE_DEVICE) \ + $(wildcard include/config/PM_SLEEP) \ + $(wildcard include/config/CONTIG_ALLOC) \ + $(wildcard include/config/CMA) \ + include/linux/mmzone.h \ + $(wildcard include/config/FORCE_MAX_ZONEORDER) \ + $(wildcard include/config/MEMORY_ISOLATION) \ + $(wildcard include/config/ZSMALLOC) \ + $(wildcard include/config/SHADOW_CALL_STACK) \ + $(wildcard include/config/MEMORY_HOTPLUG) \ + $(wildcard include/config/PAGE_EXTENSION) \ + $(wildcard include/config/DEFERRED_STRUCT_PAGE_INIT) \ + $(wildcard include/config/HAVE_MEMORYLESS_NODES) \ + $(wildcard include/config/SPARSEMEM_EXTREME) \ + $(wildcard include/config/HAVE_ARCH_PFN_VALID) \ + include/linux/pageblock-flags.h \ + $(wildcard include/config/HUGETLB_PAGE_SIZE_VARIABLE) \ + include/linux/page-flags.h \ + $(wildcard include/config/ARCH_USES_PG_UNCACHED) \ + $(wildcard include/config/MEMORY_FAILURE) \ + $(wildcard include/config/PAGE_IDLE_FLAG) \ + $(wildcard include/config/THP_SWAP) \ + $(wildcard include/config/KSM) \ + include/linux/local_lock.h \ + include/linux/local_lock_internal.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ + $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ + $(wildcard include/config/MEMORY_HOTREMOVE) \ + arch/x86/include/asm/mmzone.h \ + arch/x86/include/asm/mmzone_64.h \ + include/linux/topology.h \ + $(wildcard include/config/USE_PERCPU_NUMA_NODE_ID) \ + $(wildcard include/config/SCHED_SMT) \ + include/linux/arch_topology.h \ + $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ + arch/x86/include/asm/topology.h \ + $(wildcard include/config/SCHED_MC_PRIO) \ + $(wildcard include/config/ACPI_CPPC_LIB) \ + arch/x86/include/asm/mpspec.h \ + $(wildcard include/config/EISA) \ + $(wildcard include/config/X86_MPPARSE) \ + arch/x86/include/asm/mpspec_def.h \ + arch/x86/include/asm/x86_init.h \ + arch/x86/include/asm/apicdef.h \ + include/asm-generic/topology.h \ + include/linux/sysctl.h \ + $(wildcard include/config/SYSCTL) \ + include/uapi/linux/sysctl.h \ + include/linux/elf.h \ + $(wildcard include/config/ARCH_USE_GNU_PROPERTY) \ + $(wildcard include/config/ARCH_HAVE_ELF_PROT) \ + arch/x86/include/asm/elf.h \ + $(wildcard include/config/X86_X32_ABI) \ + arch/x86/include/asm/user.h \ + arch/x86/include/asm/user_64.h \ + arch/x86/include/asm/fsgsbase.h \ + arch/x86/include/asm/vdso.h \ + $(wildcard include/config/X86_X32) \ + include/uapi/linux/elf.h \ + include/uapi/linux/elf-em.h \ + include/linux/kobject.h \ + $(wildcard include/config/UEVENT_HELPER) \ + $(wildcard include/config/DEBUG_KOBJECT_RELEASE) \ + include/linux/sysfs.h \ + include/linux/kernfs.h \ + $(wildcard include/config/KERNFS) \ + include/linux/idr.h \ + include/linux/radix-tree.h \ + include/linux/xarray.h \ + $(wildcard include/config/XARRAY_MULTI) \ + include/linux/kconfig.h \ + include/linux/kobject_ns.h \ + include/linux/kref.h \ + include/linux/moduleparam.h \ + $(wildcard include/config/ALPHA) \ + $(wildcard include/config/IA64) \ + $(wildcard include/config/PPC64) \ + include/linux/rbtree_latch.h \ + include/linux/error-injection.h \ + include/asm-generic/error-injection.h \ + include/linux/cfi.h \ + $(wildcard include/config/CFI_CLANG_SHADOW) \ + arch/x86/include/asm/module.h \ + $(wildcard include/config/UNWINDER_ORC) \ + include/asm-generic/module.h \ + $(wildcard include/config/HAVE_MOD_ARCH_SPECIFIC) \ + $(wildcard include/config/MODULES_USE_ELF_REL) \ + $(wildcard include/config/MODULES_USE_ELF_RELA) \ + arch/x86/include/asm/orc_types.h \ + include/linux/cdev.h \ + include/linux/kdev_t.h \ + include/uapi/linux/kdev_t.h \ + include/linux/device.h \ + $(wildcard include/config/ENERGY_MODEL) \ + $(wildcard include/config/GENERIC_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/PINCTRL) \ + $(wildcard include/config/GENERIC_MSI_IRQ) \ + $(wildcard include/config/DMA_OPS) \ + $(wildcard include/config/DMA_DECLARE_COHERENT) \ + $(wildcard include/config/DMA_CMA) \ + $(wildcard include/config/SWIOTLB) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_DEVICE) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU_ALL) \ + $(wildcard include/config/DMA_OPS_BYPASS) \ + $(wildcard include/config/OF) \ + $(wildcard include/config/DEVTMPFS) \ + $(wildcard include/config/SYSFS_DEPRECATED) \ + include/linux/dev_printk.h \ + include/linux/ratelimit.h \ + include/linux/energy_model.h \ + include/linux/sched/cpufreq.h \ + $(wildcard include/config/CPU_FREQ) \ + include/linux/sched/topology.h \ + $(wildcard include/config/SCHED_DEBUG) \ + $(wildcard include/config/SCHED_MC) \ + $(wildcard include/config/CPU_FREQ_GOV_SCHEDUTIL) \ + include/linux/sched/idle.h \ + include/linux/sched/sd_flags.h \ + include/linux/ioport.h \ + include/linux/klist.h \ + include/linux/pm.h \ + $(wildcard include/config/VT_CONSOLE_SLEEP) \ + $(wildcard include/config/PM) \ + $(wildcard include/config/PM_CLK) \ + $(wildcard include/config/PM_GENERIC_DOMAINS) \ + include/linux/overflow.h \ + include/linux/device/bus.h \ + $(wildcard include/config/ACPI) \ + include/linux/device/class.h \ + include/linux/device/driver.h \ + arch/x86/include/asm/device.h \ + include/linux/pm_wakeup.h \ + include/linux/dma-mapping.h \ + $(wildcard include/config/DMA_API_DEBUG) \ + $(wildcard include/config/HAS_DMA) \ + $(wildcard include/config/NEED_DMA_MAP_STATE) \ + include/linux/sizes.h \ + include/linux/dma-direction.h \ + include/linux/scatterlist.h \ + $(wildcard include/config/NEED_SG_DMA_LENGTH) \ + $(wildcard include/config/DEBUG_SG) \ + $(wildcard include/config/SGL_ALLOC) \ + $(wildcard include/config/ARCH_NO_SG_CHAIN) \ + $(wildcard include/config/SG_POOL) \ + include/linux/mm.h \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_BITS) \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_COMPAT_BITS) \ + $(wildcard include/config/DEBUG_INFO_BTF) \ + $(wildcard include/config/ARCH_USES_HIGH_VMA_FLAGS) \ + $(wildcard include/config/ARCH_HAS_PKEYS) \ + $(wildcard include/config/PPC) \ + $(wildcard include/config/PARISC) \ + $(wildcard include/config/SPARC64) \ + $(wildcard include/config/ARM64) \ + $(wildcard include/config/ARM64_MTE) \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ + $(wildcard include/config/STACK_GROWSUP) \ + $(wildcard include/config/SHMEM) \ + $(wildcard include/config/DEV_PAGEMAP_OPS) \ + $(wildcard include/config/DEVICE_PRIVATE) \ + $(wildcard include/config/PCI_P2PDMA) \ + $(wildcard include/config/MIGRATION) \ + $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ + $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ + $(wildcard include/config/DEBUG_VM_RB) \ + $(wildcard include/config/PAGE_POISONING) \ + $(wildcard include/config/INIT_ON_ALLOC_DEFAULT_ON) \ + $(wildcard include/config/INIT_ON_FREE_DEFAULT_ON) \ + $(wildcard include/config/DEBUG_PAGEALLOC) \ + $(wildcard include/config/HUGETLBFS) \ + $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ + include/linux/mmap_lock.h \ + include/linux/percpu-refcount.h \ + include/linux/bit_spinlock.h \ + include/linux/shrinker.h \ + include/linux/page_ext.h \ + include/linux/stacktrace.h \ + $(wildcard include/config/STACKTRACE) \ + $(wildcard include/config/ARCH_STACKWALK) \ + $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ + include/linux/stackdepot.h \ + $(wildcard include/config/STACKDEPOT) \ + include/linux/page_ref.h \ + $(wildcard include/config/DEBUG_PAGE_REF) \ + include/linux/memremap.h \ + include/linux/pgtable.h \ + $(wildcard include/config/HIGHPTE) \ + $(wildcard include/config/GUP_GET_PTE_LOW_HIGH) \ + $(wildcard include/config/HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD) \ + $(wildcard include/config/HAVE_ARCH_SOFT_DIRTY) \ + $(wildcard include/config/ARCH_ENABLE_THP_MIGRATION) \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMAP) \ + $(wildcard include/config/X86_ESPFIX64) \ + arch/x86/include/asm/pgtable.h \ + $(wildcard include/config/DEBUG_WX) \ + arch/x86/include/asm/pkru.h \ + arch/x86/include/asm/fpu/api.h \ + $(wildcard include/config/X86_DEBUG_FPU) \ + include/asm-generic/pgtable_uffd.h \ + arch/x86/include/asm/pgtable_64.h \ + arch/x86/include/asm/fixmap.h \ + $(wildcard include/config/PROVIDE_OHCI1394_DMA_INIT) \ + $(wildcard include/config/X86_IO_APIC) \ + $(wildcard include/config/PCI_MMCONFIG) \ + $(wildcard include/config/ACPI_APEI_GHES) \ + $(wildcard include/config/INTEL_TXT) \ + arch/x86/include/uapi/asm/vsyscall.h \ + include/asm-generic/fixmap.h \ + arch/x86/include/asm/pgtable-invert.h \ + include/linux/kasan.h \ + $(wildcard include/config/KASAN_STACK) \ + $(wildcard include/config/KASAN_VMALLOC) \ + $(wildcard include/config/KASAN_INLINE) \ + include/linux/huge_mm.h \ + include/linux/sched/coredump.h \ + $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ + include/linux/fs.h \ + $(wildcard include/config/READ_ONLY_THP_FOR_FS) \ + $(wildcard include/config/FS_POSIX_ACL) \ + $(wildcard include/config/CGROUP_WRITEBACK) \ + $(wildcard include/config/IMA) \ + $(wildcard include/config/FILE_LOCKING) \ + $(wildcard include/config/FSNOTIFY) \ + $(wildcard include/config/FS_ENCRYPTION) \ + $(wildcard include/config/FS_VERITY) \ + $(wildcard include/config/EPOLL) \ + $(wildcard include/config/UNICODE) \ + $(wildcard include/config/QUOTA) \ + $(wildcard include/config/BLK_DEV_LOOP) \ + $(wildcard include/config/FS_DAX) \ + include/linux/wait_bit.h \ + include/linux/dcache.h \ + include/linux/rculist_bl.h \ + include/linux/list_bl.h \ + include/linux/lockref.h \ + $(wildcard include/config/ARCH_USE_CMPXCHG_LOCKREF) \ + include/linux/stringhash.h \ + $(wildcard include/config/DCACHE_WORD_ACCESS) \ + include/linux/hash.h \ + $(wildcard include/config/HAVE_ARCH_HASH) \ + include/linux/path.h \ + include/linux/list_lru.h \ + $(wildcard include/config/MEMCG_KMEM) \ + include/linux/capability.h \ + include/uapi/linux/capability.h \ + include/linux/semaphore.h \ + include/linux/fcntl.h \ + $(wildcard include/config/ARCH_32BIT_OFF_T) \ + include/uapi/linux/fcntl.h \ + arch/x86/include/generated/uapi/asm/fcntl.h \ + include/uapi/asm-generic/fcntl.h \ + include/uapi/linux/openat2.h \ + include/linux/migrate_mode.h \ + include/linux/percpu-rwsem.h \ + include/linux/rcuwait.h \ + include/linux/sched/signal.h \ + $(wildcard include/config/SCHED_AUTOGROUP) \ + $(wildcard include/config/BSD_PROCESS_ACCT) \ + $(wildcard include/config/TASKSTATS) \ + include/linux/signal.h \ + $(wildcard include/config/DYNAMIC_SIGFRAME) \ + include/linux/sched/jobctl.h \ + include/linux/sched/task.h \ + $(wildcard include/config/HAVE_EXIT_THREAD) \ + $(wildcard include/config/ARCH_WANTS_DYNAMIC_TASK_STRUCT) \ + $(wildcard include/config/HAVE_ARCH_THREAD_STRUCT_WHITELIST) \ + include/linux/cred.h \ + $(wildcard include/config/DEBUG_CREDENTIALS) \ + include/linux/key.h \ + $(wildcard include/config/KEY_NOTIFICATIONS) \ + $(wildcard include/config/NET) \ + include/linux/assoc_array.h \ + $(wildcard include/config/ASSOCIATIVE_ARRAY) \ + include/linux/sched/user.h \ + $(wildcard include/config/WATCH_QUEUE) \ + include/linux/percpu_counter.h \ + include/linux/rcu_sync.h \ + include/linux/delayed_call.h \ + include/linux/uuid.h \ + include/uapi/linux/uuid.h \ + include/linux/errseq.h \ + include/linux/ioprio.h \ + include/linux/sched/rt.h \ + include/linux/iocontext.h \ + include/uapi/linux/ioprio.h \ + include/linux/fs_types.h \ + include/linux/mount.h \ + include/linux/mnt_idmapping.h \ + include/uapi/linux/fs.h \ + include/linux/quota.h \ + $(wildcard include/config/QUOTA_NETLINK_INTERFACE) \ + include/uapi/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/dqblk_qtree.h \ + include/linux/projid.h \ + include/uapi/linux/quota.h \ + include/linux/nfs_fs_i.h \ + include/linux/vmstat.h \ + $(wildcard include/config/VM_EVENT_COUNTERS) \ + $(wildcard include/config/DEBUG_TLBFLUSH) \ + $(wildcard include/config/DEBUG_VM_VMACACHE) \ + include/linux/vm_event_item.h \ + $(wildcard include/config/MEMORY_BALLOON) \ + $(wildcard include/config/BALLOON_COMPACTION) \ + arch/x86/include/asm/io.h \ + $(wildcard include/config/MTRR) \ + $(wildcard include/config/X86_PAT) \ + arch/x86/include/generated/asm/early_ioremap.h \ + include/asm-generic/early_ioremap.h \ + $(wildcard include/config/GENERIC_EARLY_IOREMAP) \ + include/asm-generic/iomap.h \ + $(wildcard include/config/HAS_IOPORT_MAP) \ + include/asm-generic/pci_iomap.h \ + $(wildcard include/config/PCI) \ + $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ + $(wildcard include/config/GENERIC_PCI_IOMAP) \ + include/asm-generic/io.h \ + $(wildcard include/config/GENERIC_IOMAP) \ + $(wildcard include/config/GENERIC_IOREMAP) \ + $(wildcard include/config/VIRT_TO_BUS) \ + include/linux/logic_pio.h \ + $(wildcard include/config/INDIRECT_PIO) \ + include/linux/fwnode.h \ + include/linux/vmalloc.h \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMALLOC) \ + arch/x86/include/asm/vmalloc.h \ + arch/x86/include/asm/pgtable_areas.h \ + include/linux/delay.h \ + arch/x86/include/asm/delay.h \ + include/asm-generic/delay.h \ + include/linux/fb.h \ + $(wildcard include/config/GUMSTIX_AM200EPD) \ + $(wildcard include/config/FB_NOTIFY) \ + $(wildcard include/config/FB_DEFERRED_IO) \ + $(wildcard include/config/FB_TILEBLITTING) \ + $(wildcard include/config/FB_BACKLIGHT) \ + $(wildcard include/config/FB_FOREIGN_ENDIAN) \ + $(wildcard include/config/FB_BOTH_ENDIAN) \ + $(wildcard include/config/FB_BIG_ENDIAN) \ + $(wildcard include/config/FB_LITTLE_ENDIAN) \ + include/linux/kgdb.h \ + $(wildcard include/config/HAVE_ARCH_KGDB) \ + $(wildcard include/config/KGDB) \ + $(wildcard include/config/SERIAL_KGDB_NMI) \ + $(wildcard include/config/KGDB_HONOUR_BLOCKLIST) \ + include/linux/kprobes.h \ + $(wildcard include/config/KPROBES_SANITY_TEST) \ + $(wildcard include/config/OPTPROBES) \ + $(wildcard include/config/KPROBES_ON_FTRACE) \ + include/linux/ftrace.h \ + $(wildcard include/config/FUNCTION_TRACER) \ + $(wildcard include/config/DYNAMIC_FTRACE) \ + $(wildcard include/config/HAVE_DYNAMIC_FTRACE_WITH_ARGS) \ + $(wildcard include/config/DYNAMIC_FTRACE_WITH_REGS) \ + $(wildcard include/config/DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ + $(wildcard include/config/HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ + $(wildcard include/config/STACK_TRACER) \ + $(wildcard include/config/FUNCTION_PROFILER) \ + $(wildcard include/config/FTRACE_SYSCALLS) \ + include/linux/trace_recursion.h \ + $(wildcard include/config/FTRACE_RECORD_RECURSION) \ + include/linux/interrupt.h \ + $(wildcard include/config/IRQ_FORCED_THREADING) \ + $(wildcard include/config/GENERIC_IRQ_PROBE) \ + $(wildcard include/config/IRQ_TIMINGS) \ + include/linux/irqreturn.h \ + include/linux/irqnr.h \ + include/uapi/linux/irqnr.h \ + include/linux/hardirq.h \ + include/linux/context_tracking_state.h \ + $(wildcard include/config/CONTEXT_TRACKING) \ + include/linux/ftrace_irq.h \ + $(wildcard include/config/HWLAT_TRACER) \ + $(wildcard include/config/OSNOISE_TRACER) \ + include/linux/vtime.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING) \ + $(wildcard include/config/IRQ_TIME_ACCOUNTING) \ + arch/x86/include/asm/hardirq.h \ + $(wildcard include/config/KVM_INTEL) \ + $(wildcard include/config/HAVE_KVM) \ + $(wildcard include/config/X86_THERMAL_VECTOR) \ + $(wildcard include/config/X86_MCE_THRESHOLD) \ + $(wildcard include/config/X86_MCE_AMD) \ + $(wildcard include/config/X86_HV_CALLBACK_VECTOR) \ + $(wildcard include/config/HYPERV) \ + arch/x86/include/asm/irq.h \ + arch/x86/include/asm/irq_vectors.h \ + $(wildcard include/config/PCI_MSI) \ + arch/x86/include/asm/sections.h \ + include/asm-generic/sections.h \ + include/linux/trace_clock.h \ + arch/x86/include/asm/trace_clock.h \ + include/linux/kallsyms.h \ + $(wildcard include/config/KALLSYMS_ALL) \ + include/linux/ptrace.h \ + include/linux/pid_namespace.h \ + $(wildcard include/config/PID_NS) \ + include/linux/nsproxy.h \ + include/linux/ns_common.h \ + include/uapi/linux/ptrace.h \ + arch/x86/include/asm/ftrace.h \ + include/linux/compat.h \ + $(wildcard include/config/ARCH_HAS_SYSCALL_WRAPPER) \ + $(wildcard include/config/COMPAT_OLD_SIGACTION) \ + $(wildcard include/config/ODD_RT_SIGACTION) \ + include/linux/socket.h \ + arch/x86/include/generated/uapi/asm/socket.h \ + include/uapi/asm-generic/socket.h \ + arch/x86/include/generated/uapi/asm/sockios.h \ + include/uapi/asm-generic/sockios.h \ + include/uapi/linux/sockios.h \ + include/linux/uio.h \ + include/uapi/linux/uio.h \ + include/uapi/linux/socket.h \ + include/uapi/linux/if.h \ + include/uapi/linux/libc-compat.h \ + include/uapi/linux/hdlc/ioctl.h \ + include/uapi/linux/aio_abi.h \ + arch/x86/include/asm/compat.h \ + include/linux/sched/task_stack.h \ + $(wildcard include/config/DEBUG_STACK_USAGE) \ + include/uapi/linux/magic.h \ + arch/x86/include/asm/user32.h \ + include/asm-generic/compat.h \ + $(wildcard include/config/COMPAT_FOR_U64_ALIGNMENT) \ + arch/x86/include/asm/syscall_wrapper.h \ + include/linux/freelist.h \ + arch/x86/include/asm/kprobes.h \ + include/asm-generic/kprobes.h \ + arch/x86/include/asm/text-patching.h \ + $(wildcard include/config/UML_X86) \ + arch/x86/include/asm/insn.h \ + arch/x86/include/asm/inat.h \ + arch/x86/include/asm/inat_types.h \ + arch/x86/include/asm/kgdb.h \ + include/uapi/linux/fb.h \ + include/linux/i2c.h \ + $(wildcard include/config/I2C) \ + $(wildcard include/config/I2C_SLAVE) \ + $(wildcard include/config/I2C_BOARDINFO) \ + $(wildcard include/config/I2C_MUX) \ + include/linux/acpi.h \ + $(wildcard include/config/ACPI_DEBUGGER) \ + $(wildcard include/config/LOONGARCH) \ + $(wildcard include/config/ACPI_PROCESSOR_CSTATE) \ + $(wildcard include/config/ACPI_HOTPLUG_CPU) \ + $(wildcard include/config/ACPI_HOTPLUG_IOAPIC) \ + $(wildcard include/config/ACPI_WMI) \ + $(wildcard include/config/ACPI_NUMA) \ + $(wildcard include/config/HIBERNATION) \ + $(wildcard include/config/ACPI_HOTPLUG_MEMORY) \ + $(wildcard include/config/ACPI_CONTAINER) \ + $(wildcard include/config/ACPI_GTDT) \ + $(wildcard include/config/GPIOLIB) \ + $(wildcard include/config/ACPI_TABLE_UPGRADE) \ + $(wildcard include/config/ACPI_WATCHDOG) \ + $(wildcard include/config/ACPI_SPCR_TABLE) \ + $(wildcard include/config/ACPI_GENERIC_GSI) \ + $(wildcard include/config/ACPI_LPIT) \ + $(wildcard include/config/ACPI_PPTT) \ + include/linux/irqdomain.h \ + $(wildcard include/config/IRQ_DOMAIN_HIERARCHY) \ + $(wildcard include/config/GENERIC_IRQ_DEBUGFS) \ + $(wildcard include/config/IRQ_DOMAIN) \ + $(wildcard include/config/IRQ_DOMAIN_NOMAP) \ + include/linux/irqhandler.h \ + include/linux/of.h \ + $(wildcard include/config/OF_DYNAMIC) \ + $(wildcard include/config/SPARC) \ + $(wildcard include/config/OF_PROMTREE) \ + $(wildcard include/config/OF_KOBJ) \ + $(wildcard include/config/OF_NUMA) \ + $(wildcard include/config/OF_OVERLAY) \ + include/linux/mod_devicetable.h \ + include/linux/property.h \ + include/linux/resource_ext.h \ + include/linux/slab.h \ + $(wildcard include/config/DEBUG_SLAB) \ + $(wildcard include/config/FAILSLAB) \ + $(wildcard include/config/HAVE_HARDENED_USERCOPY_ALLOCATOR) \ + $(wildcard include/config/SLAB) \ + $(wildcard include/config/SLUB) \ + $(wildcard include/config/SLOB) \ + $(wildcard include/config/CC_IS_GCC) \ + $(wildcard include/config/CLANG_VERSION) \ + include/acpi/acpi.h \ + include/acpi/platform/acenv.h \ + include/acpi/platform/acgcc.h \ + include/acpi/platform/aclinux.h \ + $(wildcard include/config/ACPI_REDUCED_HARDWARE_ONLY) \ + $(wildcard include/config/ACPI_DEBUG) \ + include/linux/ctype.h \ + arch/x86/include/asm/acenv.h \ + include/acpi/acnames.h \ + include/acpi/actypes.h \ + include/acpi/acexcep.h \ + include/acpi/actbl.h \ + include/acpi/actbl1.h \ + include/acpi/actbl2.h \ + include/acpi/actbl3.h \ + include/acpi/acrestyp.h \ + include/acpi/platform/acenvex.h \ + include/acpi/platform/aclinuxex.h \ + include/acpi/platform/acgccex.h \ + include/acpi/acoutput.h \ + include/acpi/acpiosxf.h \ + include/acpi/acpixf.h \ + include/acpi/acconfig.h \ + include/acpi/acbuffer.h \ + include/acpi/acpi_bus.h \ + $(wildcard include/config/ACPI_SYSTEM_POWER_STATES_SUPPORT) \ + $(wildcard include/config/ACPI_SLEEP) \ + include/acpi/acpi_drivers.h \ + $(wildcard include/config/ACPI_DOCK) \ + include/acpi/acpi_numa.h \ + $(wildcard include/config/ACPI_HMAT) \ + include/acpi/acpi_io.h \ + include/linux/io.h \ + arch/x86/include/asm/acpi.h \ + $(wildcard include/config/ACPI_APEI) \ + include/acpi/pdc_intel.h \ + arch/x86/include/asm/numa.h \ + $(wildcard include/config/NUMA_EMU) \ + include/linux/regulator/consumer.h \ + $(wildcard include/config/REGULATOR) \ + include/linux/suspend.h \ + $(wildcard include/config/VT) \ + $(wildcard include/config/SUSPEND) \ + $(wildcard include/config/HIBERNATION_SNAPSHOT_DEV) \ + $(wildcard include/config/PM_SLEEP_DEBUG) \ + $(wildcard include/config/PM_AUTOSLEEP) \ + include/linux/swap.h \ + $(wildcard include/config/FRONTSWAP) \ + $(wildcard include/config/MEMCG_SWAP) \ + include/linux/memcontrol.h \ + include/linux/cgroup.h \ + $(wildcard include/config/CGROUP_CPUACCT) \ + $(wildcard include/config/SOCK_CGROUP_DATA) \ + $(wildcard include/config/CGROUP_DATA) \ + $(wildcard include/config/CGROUP_BPF) \ + include/uapi/linux/cgroupstats.h \ + include/uapi/linux/taskstats.h \ + include/linux/seq_file.h \ + include/linux/user_namespace.h \ + $(wildcard include/config/INOTIFY_USER) \ + $(wildcard include/config/FANOTIFY) \ + $(wildcard include/config/PERSISTENT_KEYRINGS) \ + include/linux/kernel_stat.h \ + include/linux/cgroup-defs.h \ + $(wildcard include/config/CGROUP_NET_CLASSID) \ + $(wildcard include/config/CGROUP_NET_PRIO) \ + include/linux/u64_stats_sync.h \ + arch/x86/include/generated/asm/local64.h \ + include/asm-generic/local64.h \ + arch/x86/include/asm/local.h \ + include/linux/bpf-cgroup.h \ + include/linux/bpf.h \ + $(wildcard include/config/BPF_JIT_ALWAYS_ON) \ + $(wildcard include/config/INET) \ + include/uapi/linux/bpf.h \ + $(wildcard include/config/BPF_LIRC_MODE2) \ + $(wildcard include/config/EFFICIENT_UNALIGNED_ACCESS) \ + $(wildcard include/config/IP_ROUTE_CLASSID) \ + $(wildcard include/config/BPF_KPROBE_OVERRIDE) \ + $(wildcard include/config/XFRM) \ + include/uapi/linux/bpf_common.h \ + include/linux/file.h \ + include/linux/sched/mm.h \ + $(wildcard include/config/ARCH_HAS_MEMBARRIER_CALLBACKS) \ + include/linux/sync_core.h \ + $(wildcard include/config/ARCH_HAS_SYNC_CORE_BEFORE_USERMODE) \ + arch/x86/include/asm/sync_core.h \ + include/linux/bpfptr.h \ + include/linux/sockptr.h \ + include/linux/bpf_types.h \ + $(wildcard include/config/BPF_LSM) \ + $(wildcard include/config/XDP_SOCKETS) \ + include/linux/psi_types.h \ + include/linux/kthread.h \ + include/linux/cgroup_subsys.h \ + $(wildcard include/config/CGROUP_DEVICE) \ + $(wildcard include/config/CGROUP_FREEZER) \ + $(wildcard include/config/CGROUP_PERF) \ + $(wildcard include/config/CGROUP_HUGETLB) \ + $(wildcard include/config/CGROUP_PIDS) \ + $(wildcard include/config/CGROUP_RDMA) \ + $(wildcard include/config/CGROUP_MISC) \ + $(wildcard include/config/CGROUP_DEBUG) \ + include/linux/page_counter.h \ + include/linux/vmpressure.h \ + include/linux/eventfd.h \ + include/linux/writeback.h \ + include/linux/flex_proportions.h \ + include/linux/backing-dev-defs.h \ + $(wildcard include/config/DEBUG_FS) \ + include/linux/blk_types.h \ + $(wildcard include/config/FAIL_MAKE_REQUEST) \ + $(wildcard include/config/BLK_CGROUP_IOCOST) \ + $(wildcard include/config/BLK_INLINE_ENCRYPTION) \ + $(wildcard include/config/BLK_DEV_INTEGRITY) \ + include/linux/bvec.h \ + include/linux/highmem.h \ + arch/x86/include/asm/cacheflush.h \ + include/asm-generic/cacheflush.h \ + include/linux/highmem-internal.h \ + include/linux/blk-cgroup.h \ + $(wildcard include/config/BLK_CGROUP_FC_APPID) \ + include/linux/blkdev.h \ + $(wildcard include/config/BLK_RQ_ALLOC_TIME) \ + $(wildcard include/config/BLK_WBT) \ + $(wildcard include/config/BLK_DEV_ZONED) \ + $(wildcard include/config/BLK_DEV_THROTTLING) \ + $(wildcard include/config/BLK_DEBUG_FS) \ + include/linux/sched/clock.h \ + $(wildcard include/config/HAVE_UNSTABLE_SCHED_CLOCK) \ + include/uapi/linux/major.h \ + include/linux/genhd.h \ + $(wildcard include/config/BLOCK_HOLDER_DEPRECATED) \ + $(wildcard include/config/CDROM) \ + include/linux/mempool.h \ + include/linux/bio.h \ + include/uapi/linux/blkzoned.h \ + include/linux/sbitmap.h \ + include/linux/elevator.h \ + include/linux/hashtable.h \ + include/linux/blk-mq.h \ + $(wildcard include/config/FAIL_IO_TIMEOUT) \ + include/linux/node.h \ + $(wildcard include/config/HMEM_REPORTING) \ + $(wildcard include/config/MEMORY_HOTPLUG_SPARSE) \ + include/linux/pagemap.h \ + include/linux/hugetlb_inline.h \ + include/uapi/linux/mempolicy.h \ + include/linux/freezer.h \ + include/uapi/linux/i2c.h \ + include/linux/backlight.h \ + $(wildcard include/config/BACKLIGHT_CLASS_DEVICE) \ + include/linux/poll.h \ + include/uapi/linux/poll.h \ + arch/x86/include/generated/uapi/asm/poll.h \ + include/uapi/asm-generic/poll.h \ + include/uapi/linux/eventpoll.h \ + include/linux/pci.h \ + $(wildcard include/config/PCI_IOV) \ + $(wildcard include/config/PCIEAER) \ + $(wildcard include/config/PCIEPORTBUS) \ + $(wildcard include/config/PCIEASPM) \ + $(wildcard include/config/HOTPLUG_PCI_PCIE) \ + $(wildcard include/config/PCIE_PTM) \ + $(wildcard include/config/PCIE_DPC) \ + $(wildcard include/config/PCI_ATS) \ + $(wildcard include/config/PCI_PRI) \ + $(wildcard include/config/PCI_PASID) \ + $(wildcard include/config/PCI_DOMAINS_GENERIC) \ + $(wildcard include/config/PCI_DOMAINS) \ + $(wildcard include/config/PCI_QUIRKS) \ + $(wildcard include/config/ACPI_MCFG) \ + $(wildcard include/config/HOTPLUG_PCI) \ + $(wildcard include/config/EEH) \ + include/uapi/linux/pci.h \ + include/uapi/linux/pci_regs.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + arch/x86/include/asm/pci.h \ + $(wildcard include/config/PCI_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/VMD) \ + arch/x86/include/asm/memtype.h \ + include/asm-generic/pci.h \ + include/linux/pci-dma-compat.h \ + include/linux/aio.h \ + include/linux/splice.h \ + include/linux/pipe_fs_i.h \ + include/generated/uapi/linux/version.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.h \ + $(wildcard include/config/BLOCK_ID) \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.h \ + include/linux/cpuset.h \ + include/linux/mmu_context.h \ + arch/x86/include/asm/mmu_context.h \ + arch/x86/include/asm/desc.h \ + arch/x86/include/asm/cpu_entry_area.h \ + arch/x86/include/asm/intel_ds.h \ + include/linux/pkeys.h \ + arch/x86/include/asm/pkeys.h \ + include/trace/events/tlb.h \ + include/linux/tracepoint.h \ + $(wildcard include/config/HAVE_SYSCALL_TRACEPOINTS) \ + $(wildcard include/config/TRACEPOINT) \ + include/linux/static_call.h \ + include/linux/cpu.h \ + $(wildcard include/config/PM_SLEEP_SMP) \ + $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ + $(wildcard include/config/HOTPLUG_SMT) \ + include/linux/cpuhotplug.h \ + arch/x86/include/asm/static_call.h \ + include/trace/define_trace.h \ + arch/x86/include/asm/tlbflush.h \ + arch/x86/include/asm/invpcid.h \ + arch/x86/include/asm/pti.h \ + arch/x86/include/asm/debugreg.h \ + arch/x86/include/uapi/asm/debugreg.h \ + include/asm-generic/mmu_context.h \ + +/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.o: $(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.o) + +$(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.o): diff --git a/host_software/driver/XDMA/linux-kernel/xdma/.xdma_mod.o.cmd b/host_software/driver/XDMA/linux-kernel/xdma/.xdma_mod.o.cmd new file mode 100644 index 0000000..a11ce3a --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/.xdma_mod.o.cmd @@ -0,0 +1,1429 @@ +cmd_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.o := gcc -Wp,-MMD,/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/.xdma_mod.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/9/include -I./arch/x86/include -I./arch/x86/include/generated -I./include -I./arch/x86/include/uapi -I./arch/x86/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -I./ubuntu/include -include ./include/linux/compiler_types.h -D__KERNEL__ -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu89 -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fcf-protection=none -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -DCONFIG_X86_X32_ABI -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mfunction-return=thunk-extern -fno-jump-tables -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fstack-protector-strong -Wimplicit-fallthrough=5 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-stack-clash-protection -g -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wno-stringop-truncation -Wno-array-bounds -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -I/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/include -fsanitize=bounds -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"xdma_mod"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.c + +source_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.o := /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.c + +deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.o := \ + include/linux/compiler-version.h \ + $(wildcard include/config/CC_VERSION_TEXT) \ + include/linux/kconfig.h \ + $(wildcard include/config/CPU_BIG_ENDIAN) \ + $(wildcard include/config/BOOGER) \ + $(wildcard include/config/FOO) \ + include/linux/compiler_types.h \ + $(wildcard include/config/HAVE_ARCH_COMPILER_H) \ + $(wildcard include/config/CC_HAS_ASM_INLINE) \ + include/linux/compiler_attributes.h \ + include/linux/compiler-gcc.h \ + $(wildcard include/config/RETPOLINE) \ + $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ + $(wildcard include/config/KCOV) \ + include/uapi/linux/ioctl.h \ + arch/x86/include/generated/uapi/asm/ioctl.h \ + include/asm-generic/ioctl.h \ + include/uapi/asm-generic/ioctl.h \ + include/linux/types.h \ + $(wildcard include/config/HAVE_UID16) \ + $(wildcard include/config/UID16) \ + $(wildcard include/config/ARCH_DMA_ADDR_T_64BIT) \ + $(wildcard include/config/PHYS_ADDR_T_64BIT) \ + $(wildcard include/config/64BIT) \ + $(wildcard include/config/ARCH_32BIT_USTAT_F_TINODE) \ + include/uapi/linux/types.h \ + arch/x86/include/generated/uapi/asm/types.h \ + include/uapi/asm-generic/types.h \ + include/asm-generic/int-ll64.h \ + include/uapi/asm-generic/int-ll64.h \ + arch/x86/include/uapi/asm/bitsperlong.h \ + include/asm-generic/bitsperlong.h \ + include/uapi/asm-generic/bitsperlong.h \ + include/uapi/linux/posix_types.h \ + include/linux/stddef.h \ + include/uapi/linux/stddef.h \ + include/linux/compiler_types.h \ + arch/x86/include/asm/posix_types.h \ + $(wildcard include/config/X86_32) \ + arch/x86/include/uapi/asm/posix_types_64.h \ + include/uapi/asm-generic/posix_types.h \ + include/linux/errno.h \ + include/uapi/linux/errno.h \ + arch/x86/include/generated/uapi/asm/errno.h \ + include/uapi/asm-generic/errno.h \ + include/uapi/asm-generic/errno-base.h \ + include/linux/aer.h \ + $(wildcard include/config/PCIEAER) \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/include/libxdma_api.h \ + include/linux/scatterlist.h \ + $(wildcard include/config/NEED_SG_DMA_LENGTH) \ + $(wildcard include/config/DEBUG_SG) \ + $(wildcard include/config/SGL_ALLOC) \ + $(wildcard include/config/ARCH_NO_SG_CHAIN) \ + $(wildcard include/config/SG_POOL) \ + include/linux/string.h \ + $(wildcard include/config/BINARY_PRINTF) \ + $(wildcard include/config/FORTIFY_SOURCE) \ + include/linux/compiler.h \ + $(wildcard include/config/TRACE_BRANCH_PROFILING) \ + $(wildcard include/config/PROFILE_ALL_BRANCHES) \ + $(wildcard include/config/STACK_VALIDATION) \ + $(wildcard include/config/CFI_CLANG) \ + arch/x86/include/generated/asm/rwonce.h \ + include/asm-generic/rwonce.h \ + include/linux/kasan-checks.h \ + $(wildcard include/config/KASAN_GENERIC) \ + $(wildcard include/config/KASAN_SW_TAGS) \ + include/linux/kcsan-checks.h \ + $(wildcard include/config/KCSAN) \ + $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ + include/linux/stdarg.h \ + include/uapi/linux/string.h \ + arch/x86/include/asm/string.h \ + arch/x86/include/asm/string_64.h \ + $(wildcard include/config/KASAN) \ + $(wildcard include/config/ARCH_HAS_UACCESS_FLUSHCACHE) \ + include/linux/jump_label.h \ + $(wildcard include/config/JUMP_LABEL) \ + $(wildcard include/config/HAVE_ARCH_JUMP_LABEL_RELATIVE) \ + arch/x86/include/asm/jump_label.h \ + arch/x86/include/asm/asm.h \ + $(wildcard include/config/KPROBES) \ + include/linux/stringify.h \ + arch/x86/include/asm/extable_fixup_types.h \ + arch/x86/include/asm/nops.h \ + include/linux/fortify-string.h \ + include/linux/bug.h \ + $(wildcard include/config/GENERIC_BUG) \ + $(wildcard include/config/BUG_ON_DATA_CORRUPTION) \ + arch/x86/include/asm/bug.h \ + $(wildcard include/config/DEBUG_BUGVERBOSE) \ + include/linux/instrumentation.h \ + $(wildcard include/config/DEBUG_ENTRY) \ + include/asm-generic/bug.h \ + $(wildcard include/config/BUG) \ + $(wildcard include/config/GENERIC_BUG_RELATIVE_POINTERS) \ + $(wildcard include/config/SMP) \ + $(wildcard include/config/MODULES) \ + include/linux/once_lite.h \ + include/linux/panic.h \ + $(wildcard include/config/PANIC_TIMEOUT) \ + include/linux/printk.h \ + $(wildcard include/config/MESSAGE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_QUIET) \ + $(wildcard include/config/EARLY_PRINTK) \ + $(wildcard include/config/PRINTK) \ + $(wildcard include/config/PRINTK_INDEX) \ + $(wildcard include/config/DYNAMIC_DEBUG) \ + $(wildcard include/config/DYNAMIC_DEBUG_CORE) \ + include/linux/init.h \ + $(wildcard include/config/HAVE_ARCH_PREL32_RELOCATIONS) \ + $(wildcard include/config/STRICT_KERNEL_RWX) \ + $(wildcard include/config/STRICT_MODULE_RWX) \ + $(wildcard include/config/LTO_CLANG) \ + include/linux/kern_levels.h \ + include/linux/linkage.h \ + $(wildcard include/config/ARCH_USE_SYM_ANNOTATIONS) \ + include/linux/export.h \ + $(wildcard include/config/MODVERSIONS) \ + $(wildcard include/config/MODULE_REL_CRCS) \ + $(wildcard include/config/TRIM_UNUSED_KSYMS) \ + arch/x86/include/asm/linkage.h \ + $(wildcard include/config/X86_64) \ + $(wildcard include/config/X86_ALIGNMENT_16) \ + $(wildcard include/config/RETHUNK) \ + $(wildcard include/config/SLS) \ + include/linux/cache.h \ + $(wildcard include/config/ARCH_HAS_CACHE_LINE_SIZE) \ + include/uapi/linux/kernel.h \ + include/uapi/linux/sysinfo.h \ + include/linux/const.h \ + include/vdso/const.h \ + include/uapi/linux/const.h \ + arch/x86/include/asm/cache.h \ + $(wildcard include/config/X86_L1_CACHE_SHIFT) \ + $(wildcard include/config/X86_INTERNODE_CACHE_SHIFT) \ + $(wildcard include/config/X86_VSMP) \ + include/linux/ratelimit_types.h \ + include/linux/bits.h \ + include/vdso/bits.h \ + include/linux/build_bug.h \ + include/uapi/linux/param.h \ + arch/x86/include/generated/uapi/asm/param.h \ + include/asm-generic/param.h \ + $(wildcard include/config/HZ) \ + include/uapi/asm-generic/param.h \ + include/linux/spinlock_types.h \ + $(wildcard include/config/PREEMPT_RT) \ + $(wildcard include/config/DEBUG_LOCK_ALLOC) \ + include/linux/spinlock_types_raw.h \ + $(wildcard include/config/DEBUG_SPINLOCK) \ + arch/x86/include/asm/spinlock_types.h \ + include/asm-generic/qspinlock_types.h \ + $(wildcard include/config/NR_CPUS) \ + include/asm-generic/qrwlock_types.h \ + arch/x86/include/uapi/asm/byteorder.h \ + include/linux/byteorder/little_endian.h \ + include/uapi/linux/byteorder/little_endian.h \ + include/linux/swab.h \ + include/uapi/linux/swab.h \ + arch/x86/include/uapi/asm/swab.h \ + include/linux/byteorder/generic.h \ + include/linux/lockdep_types.h \ + $(wildcard include/config/PROVE_RAW_LOCK_NESTING) \ + $(wildcard include/config/PREEMPT_LOCK) \ + $(wildcard include/config/LOCKDEP) \ + $(wildcard include/config/LOCK_STAT) \ + include/linux/rwlock_types.h \ + include/linux/dynamic_debug.h \ + include/linux/mm.h \ + $(wildcard include/config/NUMA) \ + $(wildcard include/config/SYSCTL) \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_BITS) \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_COMPAT_BITS) \ + $(wildcard include/config/DEBUG_INFO_BTF) \ + $(wildcard include/config/SPARSEMEM) \ + $(wildcard include/config/SPARSEMEM_VMEMMAP) \ + $(wildcard include/config/MMU) \ + $(wildcard include/config/MEM_SOFT_DIRTY) \ + $(wildcard include/config/ARCH_USES_HIGH_VMA_FLAGS) \ + $(wildcard include/config/ARCH_HAS_PKEYS) \ + $(wildcard include/config/PPC) \ + $(wildcard include/config/X86) \ + $(wildcard include/config/PARISC) \ + $(wildcard include/config/IA64) \ + $(wildcard include/config/SPARC64) \ + $(wildcard include/config/ARM64) \ + $(wildcard include/config/ARM64_MTE) \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ + $(wildcard include/config/STACK_GROWSUP) \ + $(wildcard include/config/SHMEM) \ + $(wildcard include/config/TRANSPARENT_HUGEPAGE) \ + $(wildcard include/config/HUGETLB_PAGE) \ + $(wildcard include/config/ZONE_DEVICE) \ + $(wildcard include/config/DEV_PAGEMAP_OPS) \ + $(wildcard include/config/DEVICE_PRIVATE) \ + $(wildcard include/config/PCI_P2PDMA) \ + $(wildcard include/config/NUMA_BALANCING) \ + $(wildcard include/config/KASAN_HW_TAGS) \ + $(wildcard include/config/MIGRATION) \ + $(wildcard include/config/HIGHMEM) \ + $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ + $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ + $(wildcard include/config/DEBUG_VM_RB) \ + $(wildcard include/config/PAGE_POISONING) \ + $(wildcard include/config/INIT_ON_ALLOC_DEFAULT_ON) \ + $(wildcard include/config/INIT_ON_FREE_DEFAULT_ON) \ + $(wildcard include/config/DEBUG_PAGEALLOC) \ + $(wildcard include/config/MEMORY_HOTPLUG) \ + $(wildcard include/config/MEMORY_FAILURE) \ + $(wildcard include/config/HUGETLBFS) \ + $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ + include/linux/mmdebug.h \ + $(wildcard include/config/DEBUG_VM) \ + $(wildcard include/config/DEBUG_VIRTUAL) \ + $(wildcard include/config/DEBUG_VM_PGFLAGS) \ + include/linux/gfp.h \ + $(wildcard include/config/ZONE_DMA) \ + $(wildcard include/config/ZONE_DMA32) \ + $(wildcard include/config/PM_SLEEP) \ + $(wildcard include/config/CONTIG_ALLOC) \ + $(wildcard include/config/CMA) \ + include/linux/mmzone.h \ + $(wildcard include/config/FORCE_MAX_ZONEORDER) \ + $(wildcard include/config/MEMORY_ISOLATION) \ + $(wildcard include/config/ZSMALLOC) \ + $(wildcard include/config/SHADOW_CALL_STACK) \ + $(wildcard include/config/SWAP) \ + $(wildcard include/config/MEMCG) \ + $(wildcard include/config/COMPACTION) \ + $(wildcard include/config/FLATMEM) \ + $(wildcard include/config/PAGE_EXTENSION) \ + $(wildcard include/config/DEFERRED_STRUCT_PAGE_INIT) \ + $(wildcard include/config/HAVE_MEMORYLESS_NODES) \ + $(wildcard include/config/SPARSEMEM_EXTREME) \ + $(wildcard include/config/HAVE_ARCH_PFN_VALID) \ + include/linux/spinlock.h \ + $(wildcard include/config/PREEMPTION) \ + include/linux/typecheck.h \ + include/linux/preempt.h \ + $(wildcard include/config/PREEMPT_COUNT) \ + $(wildcard include/config/DEBUG_PREEMPT) \ + $(wildcard include/config/TRACE_PREEMPT_TOGGLE) \ + $(wildcard include/config/PREEMPT_NOTIFIERS) \ + include/linux/list.h \ + $(wildcard include/config/DEBUG_LIST) \ + include/linux/poison.h \ + $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ + include/linux/kernel.h \ + $(wildcard include/config/PREEMPT_VOLUNTARY) \ + $(wildcard include/config/PREEMPT_DYNAMIC) \ + $(wildcard include/config/PREEMPT_) \ + $(wildcard include/config/DEBUG_ATOMIC_SLEEP) \ + $(wildcard include/config/PROVE_LOCKING) \ + $(wildcard include/config/TRACING) \ + $(wildcard include/config/FTRACE_MCOUNT_RECORD) \ + include/linux/align.h \ + include/linux/limits.h \ + include/uapi/linux/limits.h \ + include/vdso/limits.h \ + include/linux/bitops.h \ + arch/x86/include/asm/bitops.h \ + $(wildcard include/config/X86_CMOV) \ + arch/x86/include/asm/alternative.h \ + arch/x86/include/asm/rmwcc.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO) \ + arch/x86/include/asm/barrier.h \ + include/asm-generic/barrier.h \ + include/asm-generic/bitops/find.h \ + $(wildcard include/config/GENERIC_FIND_FIRST_BIT) \ + include/asm-generic/bitops/sched.h \ + arch/x86/include/asm/arch_hweight.h \ + arch/x86/include/asm/cpufeatures.h \ + arch/x86/include/asm/required-features.h \ + $(wildcard include/config/X86_MINIMUM_CPU_FAMILY) \ + $(wildcard include/config/MATH_EMULATION) \ + $(wildcard include/config/X86_PAE) \ + $(wildcard include/config/X86_CMPXCHG64) \ + $(wildcard include/config/X86_USE_3DNOW) \ + $(wildcard include/config/X86_P6_NOP) \ + $(wildcard include/config/MATOM) \ + $(wildcard include/config/PARAVIRT_XXL) \ + arch/x86/include/asm/disabled-features.h \ + $(wildcard include/config/X86_SMAP) \ + $(wildcard include/config/X86_UMIP) \ + $(wildcard include/config/X86_INTEL_MEMORY_PROTECTION_KEYS) \ + $(wildcard include/config/X86_5LEVEL) \ + $(wildcard include/config/PAGE_TABLE_ISOLATION) \ + $(wildcard include/config/CPU_UNRET_ENTRY) \ + $(wildcard include/config/X86_SGX) \ + include/asm-generic/bitops/const_hweight.h \ + include/asm-generic/bitops/instrumented-atomic.h \ + include/linux/instrumented.h \ + include/asm-generic/bitops/instrumented-non-atomic.h \ + $(wildcard include/config/KCSAN_ASSUME_PLAIN_WRITES_ATOMIC) \ + include/asm-generic/bitops/instrumented-lock.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic-setbit.h \ + include/linux/kstrtox.h \ + include/linux/log2.h \ + $(wildcard include/config/ARCH_HAS_ILOG2_U32) \ + $(wildcard include/config/ARCH_HAS_ILOG2_U64) \ + include/linux/math.h \ + arch/x86/include/asm/div64.h \ + include/asm-generic/div64.h \ + include/linux/minmax.h \ + include/linux/static_call_types.h \ + $(wildcard include/config/HAVE_STATIC_CALL) \ + $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ + arch/x86/include/asm/preempt.h \ + arch/x86/include/asm/percpu.h \ + $(wildcard include/config/X86_64_SMP) \ + include/asm-generic/percpu.h \ + $(wildcard include/config/HAVE_SETUP_PER_CPU_AREA) \ + include/linux/threads.h \ + $(wildcard include/config/BASE_SMALL) \ + include/linux/percpu-defs.h \ + $(wildcard include/config/DEBUG_FORCE_WEAK_PER_CPU) \ + $(wildcard include/config/AMD_MEM_ENCRYPT) \ + include/linux/thread_info.h \ + $(wildcard include/config/THREAD_INFO_IN_TASK) \ + $(wildcard include/config/GENERIC_ENTRY) \ + $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ + $(wildcard include/config/HARDENED_USERCOPY) \ + include/linux/restart_block.h \ + include/linux/time64.h \ + include/linux/math64.h \ + $(wildcard include/config/ARCH_SUPPORTS_INT128) \ + include/vdso/math64.h \ + include/vdso/time64.h \ + include/uapi/linux/time.h \ + include/uapi/linux/time_types.h \ + arch/x86/include/asm/current.h \ + arch/x86/include/asm/thread_info.h \ + $(wildcard include/config/VM86) \ + $(wildcard include/config/X86_IOPL_IOPERM) \ + $(wildcard include/config/FRAME_POINTER) \ + $(wildcard include/config/COMPAT) \ + $(wildcard include/config/IA32_EMULATION) \ + arch/x86/include/asm/page.h \ + arch/x86/include/asm/page_types.h \ + $(wildcard include/config/PHYSICAL_START) \ + $(wildcard include/config/PHYSICAL_ALIGN) \ + $(wildcard include/config/DYNAMIC_PHYSICAL_MASK) \ + include/linux/mem_encrypt.h \ + $(wildcard include/config/ARCH_HAS_MEM_ENCRYPT) \ + arch/x86/include/asm/mem_encrypt.h \ + include/linux/cc_platform.h \ + $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ + arch/x86/include/uapi/asm/bootparam.h \ + include/linux/screen_info.h \ + include/uapi/linux/screen_info.h \ + include/linux/apm_bios.h \ + include/uapi/linux/apm_bios.h \ + include/linux/edd.h \ + include/uapi/linux/edd.h \ + arch/x86/include/asm/ist.h \ + arch/x86/include/uapi/asm/ist.h \ + include/video/edid.h \ + include/uapi/video/edid.h \ + arch/x86/include/asm/page_64_types.h \ + $(wildcard include/config/DYNAMIC_MEMORY_LAYOUT) \ + $(wildcard include/config/RANDOMIZE_BASE) \ + arch/x86/include/asm/kaslr.h \ + $(wildcard include/config/RANDOMIZE_MEMORY) \ + arch/x86/include/asm/page_64.h \ + $(wildcard include/config/X86_VSYSCALL_EMULATION) \ + include/linux/range.h \ + include/asm-generic/memory_model.h \ + include/linux/pfn.h \ + include/asm-generic/getorder.h \ + arch/x86/include/asm/cpufeature.h \ + $(wildcard include/config/X86_FEATURE_NAMES) \ + arch/x86/include/asm/processor.h \ + $(wildcard include/config/X86_VMX_FEATURE_NAMES) \ + $(wildcard include/config/STACKPROTECTOR) \ + $(wildcard include/config/X86_DEBUGCTLMSR) \ + $(wildcard include/config/CPU_SUP_AMD) \ + $(wildcard include/config/XEN) \ + arch/x86/include/asm/processor-flags.h \ + arch/x86/include/uapi/asm/processor-flags.h \ + arch/x86/include/asm/math_emu.h \ + arch/x86/include/asm/ptrace.h \ + $(wildcard include/config/PARAVIRT) \ + arch/x86/include/asm/segment.h \ + $(wildcard include/config/XEN_PV) \ + arch/x86/include/uapi/asm/ptrace.h \ + arch/x86/include/uapi/asm/ptrace-abi.h \ + arch/x86/include/asm/paravirt_types.h \ + $(wildcard include/config/PGTABLE_LEVELS) \ + $(wildcard include/config/PARAVIRT_DEBUG) \ + arch/x86/include/asm/desc_defs.h \ + arch/x86/include/asm/pgtable_types.h \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_WP) \ + $(wildcard include/config/PROC_FS) \ + arch/x86/include/asm/pgtable_64_types.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL_FORCE_MAP) \ + arch/x86/include/asm/sparsemem.h \ + $(wildcard include/config/NUMA_KEEP_MEMINFO) \ + arch/x86/include/asm/nospec-branch.h \ + $(wildcard include/config/CPU_IBPB_ENTRY) \ + include/linux/static_key.h \ + include/linux/objtool.h \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/unwind_hints.h \ + arch/x86/include/asm/orc_types.h \ + arch/x86/include/asm/GEN-for-each-reg.h \ + arch/x86/include/asm/proto.h \ + arch/x86/include/uapi/asm/ldt.h \ + arch/x86/include/uapi/asm/sigcontext.h \ + arch/x86/include/asm/msr.h \ + $(wildcard include/config/TRACEPOINTS) \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/cpumask.h \ + include/linux/cpumask.h \ + $(wildcard include/config/CPUMASK_OFFSTACK) \ + $(wildcard include/config/HOTPLUG_CPU) \ + $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ + include/linux/bitmap.h \ + include/linux/atomic.h \ + arch/x86/include/asm/atomic.h \ + arch/x86/include/asm/cmpxchg.h \ + arch/x86/include/asm/cmpxchg_64.h \ + arch/x86/include/asm/atomic64_64.h \ + include/linux/atomic/atomic-arch-fallback.h \ + $(wildcard include/config/GENERIC_ATOMIC64) \ + include/linux/atomic/atomic-long.h \ + include/linux/atomic/atomic-instrumented.h \ + arch/x86/include/uapi/asm/msr.h \ + include/linux/tracepoint-defs.h \ + arch/x86/include/asm/paravirt.h \ + $(wildcard include/config/PARAVIRT_SPINLOCKS) \ + arch/x86/include/asm/frame.h \ + arch/x86/include/asm/special_insns.h \ + include/linux/irqflags.h \ + $(wildcard include/config/TRACE_IRQFLAGS) \ + $(wildcard include/config/IRQSOFF_TRACER) \ + $(wildcard include/config/PREEMPT_TRACER) \ + $(wildcard include/config/DEBUG_IRQFLAGS) \ + $(wildcard include/config/TRACE_IRQFLAGS_SUPPORT) \ + arch/x86/include/asm/irqflags.h \ + arch/x86/include/asm/fpu/types.h \ + arch/x86/include/asm/vmxfeatures.h \ + arch/x86/include/asm/vdso/processor.h \ + include/linux/personality.h \ + include/uapi/linux/personality.h \ + include/linux/err.h \ + include/linux/bottom_half.h \ + include/linux/lockdep.h \ + $(wildcard include/config/DEBUG_LOCKING_API_SELFTESTS) \ + include/linux/smp.h \ + $(wildcard include/config/UP_LATE_INIT) \ + include/linux/smp_types.h \ + include/linux/llist.h \ + $(wildcard include/config/ARCH_HAVE_NMI_SAFE_CMPXCHG) \ + arch/x86/include/asm/smp.h \ + $(wildcard include/config/X86_LOCAL_APIC) \ + $(wildcard include/config/DEBUG_NMI_SELFTEST) \ + arch/x86/include/generated/asm/mmiowb.h \ + include/asm-generic/mmiowb.h \ + $(wildcard include/config/MMIOWB) \ + arch/x86/include/asm/spinlock.h \ + arch/x86/include/asm/qspinlock.h \ + include/asm-generic/qspinlock.h \ + arch/x86/include/asm/qrwlock.h \ + include/asm-generic/qrwlock.h \ + include/linux/rwlock.h \ + $(wildcard include/config/PREEMPT) \ + include/linux/spinlock_api_smp.h \ + $(wildcard include/config/INLINE_SPIN_LOCK) \ + $(wildcard include/config/INLINE_SPIN_LOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK_BH) \ + $(wildcard include/config/UNINLINE_SPIN_UNLOCK) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/GENERIC_LOCKBREAK) \ + include/linux/rwlock_api_smp.h \ + $(wildcard include/config/INLINE_READ_LOCK) \ + $(wildcard include/config/INLINE_WRITE_LOCK) \ + $(wildcard include/config/INLINE_READ_LOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_LOCK_BH) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_READ_TRYLOCK) \ + $(wildcard include/config/INLINE_WRITE_TRYLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_BH) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQRESTORE) \ + include/linux/wait.h \ + include/uapi/linux/wait.h \ + include/linux/numa.h \ + $(wildcard include/config/NODES_SHIFT) \ + include/linux/seqlock.h \ + include/linux/mutex.h \ + $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ + $(wildcard include/config/DEBUG_MUTEXES) \ + include/linux/osq_lock.h \ + include/linux/debug_locks.h \ + include/linux/ww_mutex.h \ + $(wildcard include/config/DEBUG_RT_MUTEXES) \ + $(wildcard include/config/DEBUG_WW_MUTEX_SLOWPATH) \ + include/linux/rtmutex.h \ + include/linux/rbtree_types.h \ + include/linux/nodemask.h \ + include/linux/pageblock-flags.h \ + $(wildcard include/config/HUGETLB_PAGE_SIZE_VARIABLE) \ + include/linux/page-flags-layout.h \ + include/generated/bounds.h \ + include/linux/mm_types.h \ + $(wildcard include/config/HAVE_ALIGNED_STRUCT_PAGE) \ + $(wildcard include/config/USERFAULTFD) \ + $(wildcard include/config/HAVE_ARCH_COMPAT_MMAP_BASES) \ + $(wildcard include/config/MEMBARRIER) \ + $(wildcard include/config/AIO) \ + $(wildcard include/config/MMU_NOTIFIER) \ + $(wildcard include/config/ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH) \ + $(wildcard include/config/IOMMU_SUPPORT) \ + include/linux/mm_types_task.h \ + $(wildcard include/config/SPLIT_PTLOCK_CPUS) \ + $(wildcard include/config/ARCH_ENABLE_SPLIT_PMD_PTLOCK) \ + arch/x86/include/asm/tlbbatch.h \ + include/linux/auxvec.h \ + include/uapi/linux/auxvec.h \ + arch/x86/include/uapi/asm/auxvec.h \ + include/linux/rbtree.h \ + include/linux/rcupdate.h \ + $(wildcard include/config/PREEMPT_RCU) \ + $(wildcard include/config/TINY_RCU) \ + $(wildcard include/config/TASKS_RCU_GENERIC) \ + $(wildcard include/config/RCU_STALL_COMMON) \ + $(wildcard include/config/NO_HZ_FULL) \ + $(wildcard include/config/RCU_NOCB_CPU) \ + $(wildcard include/config/TASKS_RCU) \ + $(wildcard include/config/TASKS_TRACE_RCU) \ + $(wildcard include/config/TASKS_RUDE_RCU) \ + $(wildcard include/config/TREE_RCU) \ + $(wildcard include/config/DEBUG_OBJECTS_RCU_HEAD) \ + $(wildcard include/config/PROVE_RCU) \ + $(wildcard include/config/ARCH_WEAK_RELEASE_ACQUIRE) \ + include/linux/rcutree.h \ + include/linux/rwsem.h \ + $(wildcard include/config/RWSEM_SPIN_ON_OWNER) \ + $(wildcard include/config/DEBUG_RWSEMS) \ + include/linux/completion.h \ + include/linux/swait.h \ + include/linux/uprobes.h \ + $(wildcard include/config/UPROBES) \ + arch/x86/include/asm/uprobes.h \ + include/linux/notifier.h \ + $(wildcard include/config/TREE_SRCU) \ + include/linux/srcu.h \ + $(wildcard include/config/TINY_SRCU) \ + $(wildcard include/config/SRCU) \ + include/linux/workqueue.h \ + $(wildcard include/config/DEBUG_OBJECTS_WORK) \ + $(wildcard include/config/FREEZER) \ + $(wildcard include/config/SYSFS) \ + $(wildcard include/config/WQ_WATCHDOG) \ + include/linux/timer.h \ + $(wildcard include/config/DEBUG_OBJECTS_TIMERS) \ + $(wildcard include/config/NO_HZ_COMMON) \ + include/linux/ktime.h \ + include/linux/time.h \ + $(wildcard include/config/POSIX_TIMERS) \ + include/linux/time32.h \ + include/linux/timex.h \ + include/uapi/linux/timex.h \ + arch/x86/include/asm/timex.h \ + $(wildcard include/config/X86_TSC) \ + arch/x86/include/asm/tsc.h \ + include/vdso/time32.h \ + include/vdso/time.h \ + include/linux/jiffies.h \ + include/vdso/jiffies.h \ + include/generated/timeconst.h \ + include/vdso/ktime.h \ + include/linux/timekeeping.h \ + $(wildcard include/config/GENERIC_CMOS_UPDATE) \ + include/linux/clocksource_ids.h \ + include/linux/debugobjects.h \ + $(wildcard include/config/DEBUG_OBJECTS) \ + $(wildcard include/config/DEBUG_OBJECTS_FREE) \ + include/linux/rcu_segcblist.h \ + include/linux/srcutree.h \ + include/linux/rcu_node_tree.h \ + $(wildcard include/config/RCU_FANOUT) \ + $(wildcard include/config/RCU_FANOUT_LEAF) \ + arch/x86/include/asm/mmu.h \ + $(wildcard include/config/MODIFY_LDT_SYSCALL) \ + include/linux/page-flags.h \ + $(wildcard include/config/ARCH_USES_PG_UNCACHED) \ + $(wildcard include/config/PAGE_IDLE_FLAG) \ + $(wildcard include/config/THP_SWAP) \ + $(wildcard include/config/KSM) \ + include/linux/local_lock.h \ + include/linux/local_lock_internal.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ + $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ + $(wildcard include/config/MEMORY_HOTREMOVE) \ + arch/x86/include/asm/mmzone.h \ + arch/x86/include/asm/mmzone_64.h \ + include/linux/topology.h \ + $(wildcard include/config/USE_PERCPU_NUMA_NODE_ID) \ + $(wildcard include/config/SCHED_SMT) \ + include/linux/arch_topology.h \ + $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ + include/linux/percpu.h \ + $(wildcard include/config/NEED_PER_CPU_EMBED_FIRST_CHUNK) \ + $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ + arch/x86/include/asm/topology.h \ + $(wildcard include/config/SCHED_MC_PRIO) \ + $(wildcard include/config/ACPI_CPPC_LIB) \ + arch/x86/include/asm/mpspec.h \ + $(wildcard include/config/EISA) \ + $(wildcard include/config/X86_MPPARSE) \ + arch/x86/include/asm/mpspec_def.h \ + arch/x86/include/asm/x86_init.h \ + arch/x86/include/asm/apicdef.h \ + include/asm-generic/topology.h \ + include/linux/mmap_lock.h \ + include/linux/percpu-refcount.h \ + include/linux/bit_spinlock.h \ + include/linux/shrinker.h \ + include/linux/resource.h \ + include/uapi/linux/resource.h \ + arch/x86/include/generated/uapi/asm/resource.h \ + include/asm-generic/resource.h \ + include/uapi/asm-generic/resource.h \ + include/linux/page_ext.h \ + include/linux/stacktrace.h \ + $(wildcard include/config/STACKTRACE) \ + $(wildcard include/config/ARCH_STACKWALK) \ + $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ + include/linux/stackdepot.h \ + $(wildcard include/config/STACKDEPOT) \ + include/linux/page_ref.h \ + $(wildcard include/config/DEBUG_PAGE_REF) \ + include/linux/memremap.h \ + include/linux/ioport.h \ + include/linux/overflow.h \ + include/linux/sizes.h \ + include/linux/sched.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_NATIVE) \ + $(wildcard include/config/SCHED_INFO) \ + $(wildcard include/config/SCHEDSTATS) \ + $(wildcard include/config/FAIR_GROUP_SCHED) \ + $(wildcard include/config/RT_GROUP_SCHED) \ + $(wildcard include/config/RT_MUTEXES) \ + $(wildcard include/config/UCLAMP_TASK) \ + $(wildcard include/config/UCLAMP_BUCKETS_COUNT) \ + $(wildcard include/config/KMAP_LOCAL) \ + $(wildcard include/config/SCHED_CORE) \ + $(wildcard include/config/CGROUP_SCHED) \ + $(wildcard include/config/BLK_DEV_IO_TRACE) \ + $(wildcard include/config/PSI) \ + $(wildcard include/config/COMPAT_BRK) \ + $(wildcard include/config/CGROUPS) \ + $(wildcard include/config/BLK_CGROUP) \ + $(wildcard include/config/PAGE_OWNER) \ + $(wildcard include/config/EVENTFD) \ + $(wildcard include/config/ARCH_HAS_SCALED_CPUTIME) \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_GEN) \ + $(wildcard include/config/POSIX_CPUTIMERS) \ + $(wildcard include/config/POSIX_CPU_TIMERS_TASK_WORK) \ + $(wildcard include/config/KEYS) \ + $(wildcard include/config/SYSVIPC) \ + $(wildcard include/config/DETECT_HUNG_TASK) \ + $(wildcard include/config/IO_URING) \ + $(wildcard include/config/AUDIT) \ + $(wildcard include/config/AUDITSYSCALL) \ + $(wildcard include/config/UBSAN) \ + $(wildcard include/config/UBSAN_TRAP) \ + $(wildcard include/config/BLOCK) \ + $(wildcard include/config/TASK_XACCT) \ + $(wildcard include/config/CPUSETS) \ + $(wildcard include/config/X86_CPU_RESCTRL) \ + $(wildcard include/config/FUTEX) \ + $(wildcard include/config/PERF_EVENTS) \ + $(wildcard include/config/RSEQ) \ + $(wildcard include/config/TASK_DELAY_ACCT) \ + $(wildcard include/config/FAULT_INJECTION) \ + $(wildcard include/config/LATENCYTOP) \ + $(wildcard include/config/KUNIT) \ + $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ + $(wildcard include/config/BCACHE) \ + $(wildcard include/config/VMAP_STACK) \ + $(wildcard include/config/LIVEPATCH) \ + $(wildcard include/config/SECURITY) \ + $(wildcard include/config/BPF_SYSCALL) \ + $(wildcard include/config/GCC_PLUGIN_STACKLEAK) \ + $(wildcard include/config/X86_MCE) \ + $(wildcard include/config/KRETPROBES) \ + $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ + $(wildcard include/config/ARCH_TASK_STRUCT_ON_STACK) \ + $(wildcard include/config/DEBUG_RSEQ) \ + include/uapi/linux/sched.h \ + include/linux/pid.h \ + include/linux/rculist.h \ + $(wildcard include/config/PROVE_RCU_LIST) \ + include/linux/refcount.h \ + include/linux/sem.h \ + include/uapi/linux/sem.h \ + include/linux/ipc.h \ + include/linux/uidgid.h \ + $(wildcard include/config/MULTIUSER) \ + $(wildcard include/config/USER_NS) \ + include/linux/highuid.h \ + include/linux/rhashtable-types.h \ + include/uapi/linux/ipc.h \ + arch/x86/include/generated/uapi/asm/ipcbuf.h \ + include/uapi/asm-generic/ipcbuf.h \ + arch/x86/include/uapi/asm/sembuf.h \ + include/linux/shm.h \ + include/uapi/linux/shm.h \ + include/uapi/asm-generic/hugetlb_encode.h \ + arch/x86/include/uapi/asm/shmbuf.h \ + include/uapi/asm-generic/shmbuf.h \ + arch/x86/include/asm/shmparam.h \ + include/linux/plist.h \ + $(wildcard include/config/DEBUG_PLIST) \ + include/linux/hrtimer.h \ + $(wildcard include/config/HIGH_RES_TIMERS) \ + $(wildcard include/config/TIME_LOW_RES) \ + $(wildcard include/config/TIMERFD) \ + include/linux/hrtimer_defs.h \ + include/linux/timerqueue.h \ + include/linux/seccomp.h \ + $(wildcard include/config/SECCOMP) \ + $(wildcard include/config/HAVE_ARCH_SECCOMP_FILTER) \ + $(wildcard include/config/SECCOMP_FILTER) \ + $(wildcard include/config/CHECKPOINT_RESTORE) \ + $(wildcard include/config/SECCOMP_CACHE_DEBUG) \ + include/uapi/linux/seccomp.h \ + arch/x86/include/asm/seccomp.h \ + arch/x86/include/asm/unistd.h \ + arch/x86/include/uapi/asm/unistd.h \ + arch/x86/include/generated/uapi/asm/unistd_64.h \ + arch/x86/include/generated/asm/unistd_64_x32.h \ + arch/x86/include/generated/asm/unistd_32_ia32.h \ + arch/x86/include/asm/ia32_unistd.h \ + include/asm-generic/seccomp.h \ + include/uapi/linux/unistd.h \ + include/linux/latencytop.h \ + include/linux/sched/prio.h \ + include/linux/sched/types.h \ + include/linux/signal_types.h \ + $(wildcard include/config/OLD_SIGACTION) \ + include/uapi/linux/signal.h \ + arch/x86/include/asm/signal.h \ + arch/x86/include/uapi/asm/signal.h \ + include/uapi/asm-generic/signal-defs.h \ + arch/x86/include/uapi/asm/siginfo.h \ + include/uapi/asm-generic/siginfo.h \ + include/linux/syscall_user_dispatch.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/TASK_IO_ACCOUNTING) \ + include/linux/posix-timers.h \ + include/linux/alarmtimer.h \ + $(wildcard include/config/RTC_CLASS) \ + include/linux/task_work.h \ + include/uapi/linux/rseq.h \ + include/linux/kcsan.h \ + arch/x86/include/generated/asm/kmap_size.h \ + include/asm-generic/kmap_size.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL) \ + include/linux/pgtable.h \ + $(wildcard include/config/HIGHPTE) \ + $(wildcard include/config/GUP_GET_PTE_LOW_HIGH) \ + $(wildcard include/config/HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD) \ + $(wildcard include/config/HAVE_ARCH_SOFT_DIRTY) \ + $(wildcard include/config/ARCH_ENABLE_THP_MIGRATION) \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMAP) \ + $(wildcard include/config/X86_ESPFIX64) \ + arch/x86/include/asm/pgtable.h \ + $(wildcard include/config/DEBUG_WX) \ + arch/x86/include/asm/pkru.h \ + arch/x86/include/asm/fpu/api.h \ + $(wildcard include/config/X86_DEBUG_FPU) \ + include/asm-generic/pgtable_uffd.h \ + arch/x86/include/asm/pgtable_64.h \ + arch/x86/include/asm/fixmap.h \ + $(wildcard include/config/PROVIDE_OHCI1394_DMA_INIT) \ + $(wildcard include/config/X86_IO_APIC) \ + $(wildcard include/config/PCI_MMCONFIG) \ + $(wildcard include/config/ACPI_APEI_GHES) \ + $(wildcard include/config/INTEL_TXT) \ + arch/x86/include/uapi/asm/vsyscall.h \ + include/asm-generic/fixmap.h \ + arch/x86/include/asm/pgtable-invert.h \ + include/linux/kasan.h \ + $(wildcard include/config/KASAN_STACK) \ + $(wildcard include/config/KASAN_VMALLOC) \ + $(wildcard include/config/KASAN_INLINE) \ + include/linux/huge_mm.h \ + include/linux/sched/coredump.h \ + $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ + include/linux/fs.h \ + $(wildcard include/config/READ_ONLY_THP_FOR_FS) \ + $(wildcard include/config/FS_POSIX_ACL) \ + $(wildcard include/config/CGROUP_WRITEBACK) \ + $(wildcard include/config/IMA) \ + $(wildcard include/config/FILE_LOCKING) \ + $(wildcard include/config/FSNOTIFY) \ + $(wildcard include/config/FS_ENCRYPTION) \ + $(wildcard include/config/FS_VERITY) \ + $(wildcard include/config/EPOLL) \ + $(wildcard include/config/UNICODE) \ + $(wildcard include/config/QUOTA) \ + $(wildcard include/config/BLK_DEV_LOOP) \ + $(wildcard include/config/FS_DAX) \ + include/linux/wait_bit.h \ + include/linux/kdev_t.h \ + include/uapi/linux/kdev_t.h \ + include/linux/dcache.h \ + include/linux/rculist_bl.h \ + include/linux/list_bl.h \ + include/linux/lockref.h \ + $(wildcard include/config/ARCH_USE_CMPXCHG_LOCKREF) \ + include/linux/stringhash.h \ + $(wildcard include/config/DCACHE_WORD_ACCESS) \ + include/linux/hash.h \ + $(wildcard include/config/HAVE_ARCH_HASH) \ + include/linux/path.h \ + include/linux/stat.h \ + arch/x86/include/uapi/asm/stat.h \ + include/uapi/linux/stat.h \ + include/linux/list_lru.h \ + $(wildcard include/config/MEMCG_KMEM) \ + include/linux/radix-tree.h \ + include/linux/xarray.h \ + $(wildcard include/config/XARRAY_MULTI) \ + include/linux/kconfig.h \ + include/linux/capability.h \ + include/uapi/linux/capability.h \ + include/linux/semaphore.h \ + include/linux/fcntl.h \ + $(wildcard include/config/ARCH_32BIT_OFF_T) \ + include/uapi/linux/fcntl.h \ + arch/x86/include/generated/uapi/asm/fcntl.h \ + include/uapi/asm-generic/fcntl.h \ + include/uapi/linux/openat2.h \ + include/linux/migrate_mode.h \ + include/linux/percpu-rwsem.h \ + include/linux/rcuwait.h \ + include/linux/sched/signal.h \ + $(wildcard include/config/SCHED_AUTOGROUP) \ + $(wildcard include/config/BSD_PROCESS_ACCT) \ + $(wildcard include/config/TASKSTATS) \ + include/linux/signal.h \ + $(wildcard include/config/DYNAMIC_SIGFRAME) \ + include/linux/sched/jobctl.h \ + include/linux/sched/task.h \ + $(wildcard include/config/HAVE_EXIT_THREAD) \ + $(wildcard include/config/ARCH_WANTS_DYNAMIC_TASK_STRUCT) \ + $(wildcard include/config/HAVE_ARCH_THREAD_STRUCT_WHITELIST) \ + include/linux/uaccess.h \ + $(wildcard include/config/SET_FS) \ + include/linux/fault-inject-usercopy.h \ + $(wildcard include/config/FAULT_INJECTION_USERCOPY) \ + arch/x86/include/asm/uaccess.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_HAS_ASM_GOTO_TIED_OUTPUT) \ + $(wildcard include/config/ARCH_HAS_COPY_MC) \ + $(wildcard include/config/X86_INTEL_USERCOPY) \ + arch/x86/include/asm/smap.h \ + arch/x86/include/asm/extable.h \ + $(wildcard include/config/BPF_JIT) \ + arch/x86/include/asm/uaccess_64.h \ + include/linux/cred.h \ + $(wildcard include/config/DEBUG_CREDENTIALS) \ + include/linux/key.h \ + $(wildcard include/config/KEY_NOTIFICATIONS) \ + $(wildcard include/config/NET) \ + include/linux/sysctl.h \ + include/uapi/linux/sysctl.h \ + include/linux/assoc_array.h \ + $(wildcard include/config/ASSOCIATIVE_ARRAY) \ + include/linux/sched/user.h \ + $(wildcard include/config/WATCH_QUEUE) \ + include/linux/percpu_counter.h \ + include/linux/ratelimit.h \ + include/linux/rcu_sync.h \ + include/linux/delayed_call.h \ + include/linux/uuid.h \ + include/uapi/linux/uuid.h \ + include/linux/errseq.h \ + include/linux/ioprio.h \ + include/linux/sched/rt.h \ + include/linux/iocontext.h \ + include/uapi/linux/ioprio.h \ + include/linux/fs_types.h \ + include/linux/mount.h \ + include/linux/mnt_idmapping.h \ + include/uapi/linux/fs.h \ + include/linux/quota.h \ + $(wildcard include/config/QUOTA_NETLINK_INTERFACE) \ + include/uapi/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/dqblk_qtree.h \ + include/linux/projid.h \ + include/uapi/linux/quota.h \ + include/linux/nfs_fs_i.h \ + include/linux/vmstat.h \ + $(wildcard include/config/VM_EVENT_COUNTERS) \ + $(wildcard include/config/DEBUG_TLBFLUSH) \ + $(wildcard include/config/DEBUG_VM_VMACACHE) \ + include/linux/vm_event_item.h \ + $(wildcard include/config/MEMORY_BALLOON) \ + $(wildcard include/config/BALLOON_COMPACTION) \ + arch/x86/include/asm/io.h \ + $(wildcard include/config/MTRR) \ + $(wildcard include/config/X86_PAT) \ + arch/x86/include/generated/asm/early_ioremap.h \ + include/asm-generic/early_ioremap.h \ + $(wildcard include/config/GENERIC_EARLY_IOREMAP) \ + include/asm-generic/iomap.h \ + $(wildcard include/config/HAS_IOPORT_MAP) \ + include/asm-generic/pci_iomap.h \ + $(wildcard include/config/PCI) \ + $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ + $(wildcard include/config/GENERIC_PCI_IOMAP) \ + include/asm-generic/io.h \ + $(wildcard include/config/GENERIC_IOMAP) \ + $(wildcard include/config/GENERIC_IOREMAP) \ + $(wildcard include/config/VIRT_TO_BUS) \ + include/linux/logic_pio.h \ + $(wildcard include/config/INDIRECT_PIO) \ + include/linux/fwnode.h \ + include/linux/vmalloc.h \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMALLOC) \ + arch/x86/include/asm/vmalloc.h \ + arch/x86/include/asm/pgtable_areas.h \ + include/linux/interrupt.h \ + $(wildcard include/config/IRQ_FORCED_THREADING) \ + $(wildcard include/config/GENERIC_IRQ_PROBE) \ + $(wildcard include/config/IRQ_TIMINGS) \ + include/linux/irqreturn.h \ + include/linux/irqnr.h \ + include/uapi/linux/irqnr.h \ + include/linux/hardirq.h \ + include/linux/context_tracking_state.h \ + $(wildcard include/config/CONTEXT_TRACKING) \ + include/linux/ftrace_irq.h \ + $(wildcard include/config/HWLAT_TRACER) \ + $(wildcard include/config/OSNOISE_TRACER) \ + include/linux/vtime.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING) \ + $(wildcard include/config/IRQ_TIME_ACCOUNTING) \ + arch/x86/include/asm/hardirq.h \ + $(wildcard include/config/KVM_INTEL) \ + $(wildcard include/config/HAVE_KVM) \ + $(wildcard include/config/X86_THERMAL_VECTOR) \ + $(wildcard include/config/X86_MCE_THRESHOLD) \ + $(wildcard include/config/X86_MCE_AMD) \ + $(wildcard include/config/X86_HV_CALLBACK_VECTOR) \ + $(wildcard include/config/HYPERV) \ + include/linux/kref.h \ + arch/x86/include/asm/irq.h \ + arch/x86/include/asm/irq_vectors.h \ + $(wildcard include/config/PCI_MSI) \ + arch/x86/include/asm/sections.h \ + include/asm-generic/sections.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.h \ + $(wildcard include/config/BLOCK_ID) \ + include/generated/uapi/linux/version.h \ + include/linux/module.h \ + $(wildcard include/config/MODULES_TREE_LOOKUP) \ + $(wildcard include/config/STACKTRACE_BUILD_ID) \ + $(wildcard include/config/MODULE_SIG) \ + $(wildcard include/config/KALLSYMS) \ + $(wildcard include/config/BPF_EVENTS) \ + $(wildcard include/config/DEBUG_INFO_BTF_MODULES) \ + $(wildcard include/config/EVENT_TRACING) \ + $(wildcard include/config/MODULE_UNLOAD) \ + $(wildcard include/config/CONSTRUCTORS) \ + $(wildcard include/config/FUNCTION_ERROR_INJECTION) \ + include/linux/buildid.h \ + $(wildcard include/config/CRASH_CORE) \ + include/linux/kmod.h \ + include/linux/umh.h \ + include/linux/elf.h \ + $(wildcard include/config/ARCH_USE_GNU_PROPERTY) \ + $(wildcard include/config/ARCH_HAVE_ELF_PROT) \ + arch/x86/include/asm/elf.h \ + $(wildcard include/config/X86_X32_ABI) \ + arch/x86/include/asm/user.h \ + arch/x86/include/asm/user_64.h \ + arch/x86/include/asm/fsgsbase.h \ + arch/x86/include/asm/vdso.h \ + $(wildcard include/config/X86_X32) \ + include/uapi/linux/elf.h \ + include/uapi/linux/elf-em.h \ + include/linux/kobject.h \ + $(wildcard include/config/UEVENT_HELPER) \ + $(wildcard include/config/DEBUG_KOBJECT_RELEASE) \ + include/linux/sysfs.h \ + include/linux/kernfs.h \ + $(wildcard include/config/KERNFS) \ + include/linux/idr.h \ + include/linux/kobject_ns.h \ + include/linux/moduleparam.h \ + $(wildcard include/config/ALPHA) \ + $(wildcard include/config/PPC64) \ + include/linux/rbtree_latch.h \ + include/linux/error-injection.h \ + include/asm-generic/error-injection.h \ + include/linux/cfi.h \ + $(wildcard include/config/CFI_CLANG_SHADOW) \ + arch/x86/include/asm/module.h \ + $(wildcard include/config/UNWINDER_ORC) \ + include/asm-generic/module.h \ + $(wildcard include/config/HAVE_MOD_ARCH_SPECIFIC) \ + $(wildcard include/config/MODULES_USE_ELF_REL) \ + $(wildcard include/config/MODULES_USE_ELF_RELA) \ + arch/x86/include/asm/orc_types.h \ + include/linux/dma-mapping.h \ + $(wildcard include/config/DMA_API_DEBUG) \ + $(wildcard include/config/HAS_DMA) \ + $(wildcard include/config/NEED_DMA_MAP_STATE) \ + include/linux/device.h \ + $(wildcard include/config/ENERGY_MODEL) \ + $(wildcard include/config/GENERIC_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/PINCTRL) \ + $(wildcard include/config/GENERIC_MSI_IRQ) \ + $(wildcard include/config/DMA_OPS) \ + $(wildcard include/config/DMA_DECLARE_COHERENT) \ + $(wildcard include/config/DMA_CMA) \ + $(wildcard include/config/SWIOTLB) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_DEVICE) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU_ALL) \ + $(wildcard include/config/DMA_OPS_BYPASS) \ + $(wildcard include/config/OF) \ + $(wildcard include/config/DEVTMPFS) \ + $(wildcard include/config/SYSFS_DEPRECATED) \ + include/linux/dev_printk.h \ + include/linux/energy_model.h \ + include/linux/sched/cpufreq.h \ + $(wildcard include/config/CPU_FREQ) \ + include/linux/sched/topology.h \ + $(wildcard include/config/SCHED_DEBUG) \ + $(wildcard include/config/SCHED_MC) \ + $(wildcard include/config/CPU_FREQ_GOV_SCHEDUTIL) \ + include/linux/sched/idle.h \ + include/linux/sched/sd_flags.h \ + include/linux/klist.h \ + include/linux/pm.h \ + $(wildcard include/config/VT_CONSOLE_SLEEP) \ + $(wildcard include/config/PM) \ + $(wildcard include/config/PM_CLK) \ + $(wildcard include/config/PM_GENERIC_DOMAINS) \ + include/linux/device/bus.h \ + $(wildcard include/config/ACPI) \ + include/linux/device/class.h \ + include/linux/device/driver.h \ + arch/x86/include/asm/device.h \ + include/linux/pm_wakeup.h \ + include/linux/dma-direction.h \ + include/linux/pci.h \ + $(wildcard include/config/PCI_IOV) \ + $(wildcard include/config/PCIEPORTBUS) \ + $(wildcard include/config/PCIEASPM) \ + $(wildcard include/config/HOTPLUG_PCI_PCIE) \ + $(wildcard include/config/PCIE_PTM) \ + $(wildcard include/config/PCIE_DPC) \ + $(wildcard include/config/PCI_ATS) \ + $(wildcard include/config/PCI_PRI) \ + $(wildcard include/config/PCI_PASID) \ + $(wildcard include/config/PCI_DOMAINS_GENERIC) \ + $(wildcard include/config/PCI_DOMAINS) \ + $(wildcard include/config/PCI_QUIRKS) \ + $(wildcard include/config/ACPI_MCFG) \ + $(wildcard include/config/HOTPLUG_PCI) \ + $(wildcard include/config/EEH) \ + include/linux/mod_devicetable.h \ + include/linux/io.h \ + include/linux/resource_ext.h \ + include/linux/slab.h \ + $(wildcard include/config/DEBUG_SLAB) \ + $(wildcard include/config/FAILSLAB) \ + $(wildcard include/config/HAVE_HARDENED_USERCOPY_ALLOCATOR) \ + $(wildcard include/config/SLAB) \ + $(wildcard include/config/SLUB) \ + $(wildcard include/config/SLOB) \ + $(wildcard include/config/CC_IS_GCC) \ + $(wildcard include/config/CLANG_VERSION) \ + include/uapi/linux/pci.h \ + include/uapi/linux/pci_regs.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + arch/x86/include/asm/pci.h \ + $(wildcard include/config/PCI_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/VMD) \ + arch/x86/include/asm/memtype.h \ + include/asm-generic/pci.h \ + include/linux/pci-dma-compat.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.h \ + include/linux/cdev.h \ + include/linux/delay.h \ + arch/x86/include/asm/delay.h \ + include/asm-generic/delay.h \ + include/linux/fb.h \ + $(wildcard include/config/GUMSTIX_AM200EPD) \ + $(wildcard include/config/FB_NOTIFY) \ + $(wildcard include/config/FB_DEFERRED_IO) \ + $(wildcard include/config/FB_TILEBLITTING) \ + $(wildcard include/config/FB_BACKLIGHT) \ + $(wildcard include/config/FB_FOREIGN_ENDIAN) \ + $(wildcard include/config/FB_BOTH_ENDIAN) \ + $(wildcard include/config/FB_BIG_ENDIAN) \ + $(wildcard include/config/FB_LITTLE_ENDIAN) \ + include/linux/kgdb.h \ + $(wildcard include/config/HAVE_ARCH_KGDB) \ + $(wildcard include/config/KGDB) \ + $(wildcard include/config/SERIAL_KGDB_NMI) \ + $(wildcard include/config/KGDB_HONOUR_BLOCKLIST) \ + include/linux/kprobes.h \ + $(wildcard include/config/KPROBES_SANITY_TEST) \ + $(wildcard include/config/OPTPROBES) \ + $(wildcard include/config/KPROBES_ON_FTRACE) \ + include/linux/ftrace.h \ + $(wildcard include/config/FUNCTION_TRACER) \ + $(wildcard include/config/DYNAMIC_FTRACE) \ + $(wildcard include/config/HAVE_DYNAMIC_FTRACE_WITH_ARGS) \ + $(wildcard include/config/DYNAMIC_FTRACE_WITH_REGS) \ + $(wildcard include/config/DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ + $(wildcard include/config/HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ + $(wildcard include/config/STACK_TRACER) \ + $(wildcard include/config/FUNCTION_PROFILER) \ + $(wildcard include/config/FTRACE_SYSCALLS) \ + include/linux/trace_recursion.h \ + $(wildcard include/config/FTRACE_RECORD_RECURSION) \ + include/linux/trace_clock.h \ + arch/x86/include/asm/trace_clock.h \ + include/linux/kallsyms.h \ + $(wildcard include/config/KALLSYMS_ALL) \ + include/linux/ptrace.h \ + include/linux/pid_namespace.h \ + $(wildcard include/config/PID_NS) \ + include/linux/nsproxy.h \ + include/linux/ns_common.h \ + include/uapi/linux/ptrace.h \ + arch/x86/include/asm/ftrace.h \ + include/linux/compat.h \ + $(wildcard include/config/ARCH_HAS_SYSCALL_WRAPPER) \ + $(wildcard include/config/COMPAT_OLD_SIGACTION) \ + $(wildcard include/config/ODD_RT_SIGACTION) \ + include/linux/socket.h \ + arch/x86/include/generated/uapi/asm/socket.h \ + include/uapi/asm-generic/socket.h \ + arch/x86/include/generated/uapi/asm/sockios.h \ + include/uapi/asm-generic/sockios.h \ + include/uapi/linux/sockios.h \ + include/linux/uio.h \ + include/uapi/linux/uio.h \ + include/uapi/linux/socket.h \ + include/uapi/linux/if.h \ + include/uapi/linux/libc-compat.h \ + include/uapi/linux/hdlc/ioctl.h \ + include/uapi/linux/aio_abi.h \ + arch/x86/include/asm/compat.h \ + include/linux/sched/task_stack.h \ + $(wildcard include/config/DEBUG_STACK_USAGE) \ + include/uapi/linux/magic.h \ + arch/x86/include/asm/user32.h \ + include/asm-generic/compat.h \ + $(wildcard include/config/COMPAT_FOR_U64_ALIGNMENT) \ + arch/x86/include/asm/syscall_wrapper.h \ + include/linux/freelist.h \ + arch/x86/include/asm/kprobes.h \ + include/asm-generic/kprobes.h \ + arch/x86/include/asm/text-patching.h \ + $(wildcard include/config/UML_X86) \ + arch/x86/include/asm/insn.h \ + arch/x86/include/asm/inat.h \ + arch/x86/include/asm/inat_types.h \ + arch/x86/include/asm/kgdb.h \ + include/uapi/linux/fb.h \ + include/linux/i2c.h \ + $(wildcard include/config/I2C) \ + $(wildcard include/config/I2C_SLAVE) \ + $(wildcard include/config/I2C_BOARDINFO) \ + $(wildcard include/config/I2C_MUX) \ + include/linux/acpi.h \ + $(wildcard include/config/ACPI_DEBUGGER) \ + $(wildcard include/config/LOONGARCH) \ + $(wildcard include/config/ACPI_PROCESSOR_CSTATE) \ + $(wildcard include/config/ACPI_HOTPLUG_CPU) \ + $(wildcard include/config/ACPI_HOTPLUG_IOAPIC) \ + $(wildcard include/config/ACPI_WMI) \ + $(wildcard include/config/ACPI_NUMA) \ + $(wildcard include/config/HIBERNATION) \ + $(wildcard include/config/ACPI_HOTPLUG_MEMORY) \ + $(wildcard include/config/ACPI_CONTAINER) \ + $(wildcard include/config/ACPI_GTDT) \ + $(wildcard include/config/GPIOLIB) \ + $(wildcard include/config/ACPI_TABLE_UPGRADE) \ + $(wildcard include/config/ACPI_WATCHDOG) \ + $(wildcard include/config/ACPI_SPCR_TABLE) \ + $(wildcard include/config/ACPI_GENERIC_GSI) \ + $(wildcard include/config/ACPI_LPIT) \ + $(wildcard include/config/ACPI_PPTT) \ + include/linux/irqdomain.h \ + $(wildcard include/config/IRQ_DOMAIN_HIERARCHY) \ + $(wildcard include/config/GENERIC_IRQ_DEBUGFS) \ + $(wildcard include/config/IRQ_DOMAIN) \ + $(wildcard include/config/IRQ_DOMAIN_NOMAP) \ + include/linux/irqhandler.h \ + include/linux/of.h \ + $(wildcard include/config/OF_DYNAMIC) \ + $(wildcard include/config/SPARC) \ + $(wildcard include/config/OF_PROMTREE) \ + $(wildcard include/config/OF_KOBJ) \ + $(wildcard include/config/OF_NUMA) \ + $(wildcard include/config/OF_OVERLAY) \ + include/linux/property.h \ + include/acpi/acpi.h \ + include/acpi/platform/acenv.h \ + include/acpi/platform/acgcc.h \ + include/acpi/platform/aclinux.h \ + $(wildcard include/config/ACPI_REDUCED_HARDWARE_ONLY) \ + $(wildcard include/config/ACPI_DEBUG) \ + include/linux/ctype.h \ + arch/x86/include/asm/acenv.h \ + include/acpi/acnames.h \ + include/acpi/actypes.h \ + include/acpi/acexcep.h \ + include/acpi/actbl.h \ + include/acpi/actbl1.h \ + include/acpi/actbl2.h \ + include/acpi/actbl3.h \ + include/acpi/acrestyp.h \ + include/acpi/platform/acenvex.h \ + include/acpi/platform/aclinuxex.h \ + include/acpi/platform/acgccex.h \ + include/acpi/acoutput.h \ + include/acpi/acpiosxf.h \ + include/acpi/acpixf.h \ + include/acpi/acconfig.h \ + include/acpi/acbuffer.h \ + include/acpi/acpi_bus.h \ + $(wildcard include/config/ACPI_SYSTEM_POWER_STATES_SUPPORT) \ + $(wildcard include/config/ACPI_SLEEP) \ + include/acpi/acpi_drivers.h \ + $(wildcard include/config/ACPI_DOCK) \ + include/acpi/acpi_numa.h \ + $(wildcard include/config/ACPI_HMAT) \ + include/acpi/acpi_io.h \ + arch/x86/include/asm/acpi.h \ + $(wildcard include/config/ACPI_APEI) \ + include/acpi/pdc_intel.h \ + arch/x86/include/asm/numa.h \ + $(wildcard include/config/NUMA_EMU) \ + include/linux/regulator/consumer.h \ + $(wildcard include/config/REGULATOR) \ + include/linux/suspend.h \ + $(wildcard include/config/VT) \ + $(wildcard include/config/SUSPEND) \ + $(wildcard include/config/HIBERNATION_SNAPSHOT_DEV) \ + $(wildcard include/config/PM_SLEEP_DEBUG) \ + $(wildcard include/config/PM_AUTOSLEEP) \ + include/linux/swap.h \ + $(wildcard include/config/FRONTSWAP) \ + $(wildcard include/config/MEMCG_SWAP) \ + include/linux/memcontrol.h \ + include/linux/cgroup.h \ + $(wildcard include/config/CGROUP_CPUACCT) \ + $(wildcard include/config/SOCK_CGROUP_DATA) \ + $(wildcard include/config/CGROUP_DATA) \ + $(wildcard include/config/CGROUP_BPF) \ + include/uapi/linux/cgroupstats.h \ + include/uapi/linux/taskstats.h \ + include/linux/seq_file.h \ + include/linux/user_namespace.h \ + $(wildcard include/config/INOTIFY_USER) \ + $(wildcard include/config/FANOTIFY) \ + $(wildcard include/config/PERSISTENT_KEYRINGS) \ + include/linux/kernel_stat.h \ + include/linux/cgroup-defs.h \ + $(wildcard include/config/CGROUP_NET_CLASSID) \ + $(wildcard include/config/CGROUP_NET_PRIO) \ + include/linux/u64_stats_sync.h \ + arch/x86/include/generated/asm/local64.h \ + include/asm-generic/local64.h \ + arch/x86/include/asm/local.h \ + include/linux/bpf-cgroup.h \ + include/linux/bpf.h \ + $(wildcard include/config/BPF_JIT_ALWAYS_ON) \ + $(wildcard include/config/INET) \ + include/uapi/linux/bpf.h \ + $(wildcard include/config/BPF_LIRC_MODE2) \ + $(wildcard include/config/EFFICIENT_UNALIGNED_ACCESS) \ + $(wildcard include/config/IP_ROUTE_CLASSID) \ + $(wildcard include/config/BPF_KPROBE_OVERRIDE) \ + $(wildcard include/config/XFRM) \ + include/uapi/linux/bpf_common.h \ + include/linux/file.h \ + include/linux/sched/mm.h \ + $(wildcard include/config/ARCH_HAS_MEMBARRIER_CALLBACKS) \ + include/linux/sync_core.h \ + $(wildcard include/config/ARCH_HAS_SYNC_CORE_BEFORE_USERMODE) \ + arch/x86/include/asm/sync_core.h \ + include/linux/bpfptr.h \ + include/linux/sockptr.h \ + include/linux/bpf_types.h \ + $(wildcard include/config/BPF_LSM) \ + $(wildcard include/config/XDP_SOCKETS) \ + include/linux/psi_types.h \ + include/linux/kthread.h \ + include/linux/cgroup_subsys.h \ + $(wildcard include/config/CGROUP_DEVICE) \ + $(wildcard include/config/CGROUP_FREEZER) \ + $(wildcard include/config/CGROUP_PERF) \ + $(wildcard include/config/CGROUP_HUGETLB) \ + $(wildcard include/config/CGROUP_PIDS) \ + $(wildcard include/config/CGROUP_RDMA) \ + $(wildcard include/config/CGROUP_MISC) \ + $(wildcard include/config/CGROUP_DEBUG) \ + include/linux/page_counter.h \ + include/linux/vmpressure.h \ + include/linux/eventfd.h \ + include/linux/writeback.h \ + include/linux/flex_proportions.h \ + include/linux/backing-dev-defs.h \ + $(wildcard include/config/DEBUG_FS) \ + include/linux/blk_types.h \ + $(wildcard include/config/FAIL_MAKE_REQUEST) \ + $(wildcard include/config/BLK_CGROUP_IOCOST) \ + $(wildcard include/config/BLK_INLINE_ENCRYPTION) \ + $(wildcard include/config/BLK_DEV_INTEGRITY) \ + include/linux/bvec.h \ + include/linux/highmem.h \ + arch/x86/include/asm/cacheflush.h \ + include/asm-generic/cacheflush.h \ + include/linux/highmem-internal.h \ + include/linux/blk-cgroup.h \ + $(wildcard include/config/BLK_CGROUP_FC_APPID) \ + include/linux/blkdev.h \ + $(wildcard include/config/BLK_RQ_ALLOC_TIME) \ + $(wildcard include/config/BLK_WBT) \ + $(wildcard include/config/BLK_DEV_ZONED) \ + $(wildcard include/config/BLK_DEV_THROTTLING) \ + $(wildcard include/config/BLK_DEBUG_FS) \ + include/linux/sched/clock.h \ + $(wildcard include/config/HAVE_UNSTABLE_SCHED_CLOCK) \ + include/uapi/linux/major.h \ + include/linux/genhd.h \ + $(wildcard include/config/BLOCK_HOLDER_DEPRECATED) \ + $(wildcard include/config/CDROM) \ + include/linux/mempool.h \ + include/linux/bio.h \ + include/uapi/linux/blkzoned.h \ + include/linux/sbitmap.h \ + include/linux/elevator.h \ + include/linux/hashtable.h \ + include/linux/blk-mq.h \ + $(wildcard include/config/FAIL_IO_TIMEOUT) \ + include/linux/node.h \ + $(wildcard include/config/HMEM_REPORTING) \ + $(wildcard include/config/MEMORY_HOTPLUG_SPARSE) \ + include/linux/pagemap.h \ + include/linux/hugetlb_inline.h \ + include/uapi/linux/mempolicy.h \ + include/linux/freezer.h \ + include/uapi/linux/i2c.h \ + include/linux/backlight.h \ + $(wildcard include/config/BACKLIGHT_CLASS_DEVICE) \ + include/linux/poll.h \ + include/uapi/linux/poll.h \ + arch/x86/include/generated/uapi/asm/poll.h \ + include/uapi/asm-generic/poll.h \ + include/uapi/linux/eventpoll.h \ + include/linux/aio.h \ + include/linux/splice.h \ + include/linux/pipe_fs_i.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.h \ + include/linux/cpuset.h \ + include/linux/mmu_context.h \ + arch/x86/include/asm/mmu_context.h \ + arch/x86/include/asm/desc.h \ + arch/x86/include/asm/cpu_entry_area.h \ + arch/x86/include/asm/intel_ds.h \ + include/linux/pkeys.h \ + arch/x86/include/asm/pkeys.h \ + include/trace/events/tlb.h \ + include/linux/tracepoint.h \ + $(wildcard include/config/HAVE_SYSCALL_TRACEPOINTS) \ + $(wildcard include/config/TRACEPOINT) \ + include/linux/static_call.h \ + include/linux/cpu.h \ + $(wildcard include/config/PM_SLEEP_SMP) \ + $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ + $(wildcard include/config/HOTPLUG_SMT) \ + include/linux/cpuhotplug.h \ + arch/x86/include/asm/static_call.h \ + include/trace/define_trace.h \ + arch/x86/include/asm/tlbflush.h \ + arch/x86/include/asm/invpcid.h \ + arch/x86/include/asm/pti.h \ + arch/x86/include/asm/debugreg.h \ + arch/x86/include/uapi/asm/debugreg.h \ + include/asm-generic/mmu_context.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/version.h \ + +/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.o: $(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.o) + +$(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.o): diff --git a/host_software/driver/XDMA/linux-kernel/xdma/.xdma_thread.o.cmd b/host_software/driver/XDMA/linux-kernel/xdma/.xdma_thread.o.cmd new file mode 100644 index 0000000..f660431 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/.xdma_thread.o.cmd @@ -0,0 +1,1152 @@ +cmd_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.o := gcc -Wp,-MMD,/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/.xdma_thread.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/9/include -I./arch/x86/include -I./arch/x86/include/generated -I./include -I./arch/x86/include/uapi -I./arch/x86/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -I./ubuntu/include -include ./include/linux/compiler_types.h -D__KERNEL__ -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu89 -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fcf-protection=none -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -DCONFIG_X86_X32_ABI -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mfunction-return=thunk-extern -fno-jump-tables -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fstack-protector-strong -Wimplicit-fallthrough=5 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-stack-clash-protection -g -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wno-stringop-truncation -Wno-array-bounds -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -I/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/include -fsanitize=bounds -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"xdma_thread"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.c + +source_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.o := /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.c + +deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.o := \ + include/linux/compiler-version.h \ + $(wildcard include/config/CC_VERSION_TEXT) \ + include/linux/kconfig.h \ + $(wildcard include/config/CPU_BIG_ENDIAN) \ + $(wildcard include/config/BOOGER) \ + $(wildcard include/config/FOO) \ + include/linux/compiler_types.h \ + $(wildcard include/config/HAVE_ARCH_COMPILER_H) \ + $(wildcard include/config/CC_HAS_ASM_INLINE) \ + include/linux/compiler_attributes.h \ + include/linux/compiler-gcc.h \ + $(wildcard include/config/RETPOLINE) \ + $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ + $(wildcard include/config/KCOV) \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.h \ + include/generated/uapi/linux/version.h \ + include/linux/spinlock.h \ + $(wildcard include/config/SMP) \ + $(wildcard include/config/DEBUG_SPINLOCK) \ + $(wildcard include/config/PREEMPTION) \ + $(wildcard include/config/DEBUG_LOCK_ALLOC) \ + $(wildcard include/config/PREEMPT_RT) \ + include/linux/typecheck.h \ + include/linux/preempt.h \ + $(wildcard include/config/PREEMPT_COUNT) \ + $(wildcard include/config/DEBUG_PREEMPT) \ + $(wildcard include/config/TRACE_PREEMPT_TOGGLE) \ + $(wildcard include/config/PREEMPT_NOTIFIERS) \ + include/linux/linkage.h \ + $(wildcard include/config/ARCH_USE_SYM_ANNOTATIONS) \ + include/linux/compiler_types.h \ + include/linux/stringify.h \ + include/linux/export.h \ + $(wildcard include/config/MODVERSIONS) \ + $(wildcard include/config/MODULE_REL_CRCS) \ + $(wildcard include/config/HAVE_ARCH_PREL32_RELOCATIONS) \ + $(wildcard include/config/MODULES) \ + $(wildcard include/config/TRIM_UNUSED_KSYMS) \ + include/linux/compiler.h \ + $(wildcard include/config/TRACE_BRANCH_PROFILING) \ + $(wildcard include/config/PROFILE_ALL_BRANCHES) \ + $(wildcard include/config/STACK_VALIDATION) \ + $(wildcard include/config/CFI_CLANG) \ + arch/x86/include/generated/asm/rwonce.h \ + include/asm-generic/rwonce.h \ + include/linux/kasan-checks.h \ + $(wildcard include/config/KASAN_GENERIC) \ + $(wildcard include/config/KASAN_SW_TAGS) \ + include/linux/types.h \ + $(wildcard include/config/HAVE_UID16) \ + $(wildcard include/config/UID16) \ + $(wildcard include/config/ARCH_DMA_ADDR_T_64BIT) \ + $(wildcard include/config/PHYS_ADDR_T_64BIT) \ + $(wildcard include/config/64BIT) \ + $(wildcard include/config/ARCH_32BIT_USTAT_F_TINODE) \ + include/uapi/linux/types.h \ + arch/x86/include/generated/uapi/asm/types.h \ + include/uapi/asm-generic/types.h \ + include/asm-generic/int-ll64.h \ + include/uapi/asm-generic/int-ll64.h \ + arch/x86/include/uapi/asm/bitsperlong.h \ + include/asm-generic/bitsperlong.h \ + include/uapi/asm-generic/bitsperlong.h \ + include/uapi/linux/posix_types.h \ + include/linux/stddef.h \ + include/uapi/linux/stddef.h \ + arch/x86/include/asm/posix_types.h \ + $(wildcard include/config/X86_32) \ + arch/x86/include/uapi/asm/posix_types_64.h \ + include/uapi/asm-generic/posix_types.h \ + include/linux/kcsan-checks.h \ + $(wildcard include/config/KCSAN) \ + $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ + arch/x86/include/asm/linkage.h \ + $(wildcard include/config/X86_64) \ + $(wildcard include/config/X86_ALIGNMENT_16) \ + $(wildcard include/config/RETHUNK) \ + $(wildcard include/config/SLS) \ + include/linux/list.h \ + $(wildcard include/config/DEBUG_LIST) \ + include/linux/poison.h \ + $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ + include/linux/const.h \ + include/vdso/const.h \ + include/uapi/linux/const.h \ + include/linux/kernel.h \ + $(wildcard include/config/PREEMPT_VOLUNTARY) \ + $(wildcard include/config/PREEMPT_DYNAMIC) \ + $(wildcard include/config/PREEMPT_) \ + $(wildcard include/config/DEBUG_ATOMIC_SLEEP) \ + $(wildcard include/config/MMU) \ + $(wildcard include/config/PROVE_LOCKING) \ + $(wildcard include/config/TRACING) \ + $(wildcard include/config/FTRACE_MCOUNT_RECORD) \ + include/linux/stdarg.h \ + include/linux/align.h \ + include/linux/limits.h \ + include/uapi/linux/limits.h \ + include/vdso/limits.h \ + include/linux/bitops.h \ + include/linux/bits.h \ + include/vdso/bits.h \ + include/linux/build_bug.h \ + include/uapi/linux/kernel.h \ + include/uapi/linux/sysinfo.h \ + arch/x86/include/asm/bitops.h \ + $(wildcard include/config/X86_CMOV) \ + arch/x86/include/asm/alternative.h \ + arch/x86/include/asm/asm.h \ + $(wildcard include/config/KPROBES) \ + arch/x86/include/asm/extable_fixup_types.h \ + arch/x86/include/asm/rmwcc.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO) \ + arch/x86/include/asm/barrier.h \ + arch/x86/include/asm/nops.h \ + include/asm-generic/barrier.h \ + include/asm-generic/bitops/find.h \ + $(wildcard include/config/GENERIC_FIND_FIRST_BIT) \ + include/asm-generic/bitops/sched.h \ + arch/x86/include/asm/arch_hweight.h \ + arch/x86/include/asm/cpufeatures.h \ + arch/x86/include/asm/required-features.h \ + $(wildcard include/config/X86_MINIMUM_CPU_FAMILY) \ + $(wildcard include/config/MATH_EMULATION) \ + $(wildcard include/config/X86_PAE) \ + $(wildcard include/config/X86_CMPXCHG64) \ + $(wildcard include/config/X86_USE_3DNOW) \ + $(wildcard include/config/X86_P6_NOP) \ + $(wildcard include/config/MATOM) \ + $(wildcard include/config/PARAVIRT_XXL) \ + arch/x86/include/asm/disabled-features.h \ + $(wildcard include/config/X86_SMAP) \ + $(wildcard include/config/X86_UMIP) \ + $(wildcard include/config/X86_INTEL_MEMORY_PROTECTION_KEYS) \ + $(wildcard include/config/X86_5LEVEL) \ + $(wildcard include/config/PAGE_TABLE_ISOLATION) \ + $(wildcard include/config/CPU_UNRET_ENTRY) \ + $(wildcard include/config/X86_SGX) \ + include/asm-generic/bitops/const_hweight.h \ + include/asm-generic/bitops/instrumented-atomic.h \ + include/linux/instrumented.h \ + include/asm-generic/bitops/instrumented-non-atomic.h \ + $(wildcard include/config/KCSAN_ASSUME_PLAIN_WRITES_ATOMIC) \ + include/asm-generic/bitops/instrumented-lock.h \ + include/asm-generic/bitops/le.h \ + arch/x86/include/uapi/asm/byteorder.h \ + include/linux/byteorder/little_endian.h \ + include/uapi/linux/byteorder/little_endian.h \ + include/linux/swab.h \ + include/uapi/linux/swab.h \ + arch/x86/include/uapi/asm/swab.h \ + include/linux/byteorder/generic.h \ + include/asm-generic/bitops/ext2-atomic-setbit.h \ + include/linux/kstrtox.h \ + include/linux/log2.h \ + $(wildcard include/config/ARCH_HAS_ILOG2_U32) \ + $(wildcard include/config/ARCH_HAS_ILOG2_U64) \ + include/linux/math.h \ + arch/x86/include/asm/div64.h \ + include/asm-generic/div64.h \ + include/linux/minmax.h \ + include/linux/panic.h \ + $(wildcard include/config/PANIC_TIMEOUT) \ + include/linux/printk.h \ + $(wildcard include/config/MESSAGE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_DEFAULT) \ + $(wildcard include/config/CONSOLE_LOGLEVEL_QUIET) \ + $(wildcard include/config/EARLY_PRINTK) \ + $(wildcard include/config/PRINTK) \ + $(wildcard include/config/PRINTK_INDEX) \ + $(wildcard include/config/DYNAMIC_DEBUG) \ + $(wildcard include/config/DYNAMIC_DEBUG_CORE) \ + include/linux/init.h \ + $(wildcard include/config/STRICT_KERNEL_RWX) \ + $(wildcard include/config/STRICT_MODULE_RWX) \ + $(wildcard include/config/LTO_CLANG) \ + include/linux/kern_levels.h \ + include/linux/cache.h \ + $(wildcard include/config/ARCH_HAS_CACHE_LINE_SIZE) \ + arch/x86/include/asm/cache.h \ + $(wildcard include/config/X86_L1_CACHE_SHIFT) \ + $(wildcard include/config/X86_INTERNODE_CACHE_SHIFT) \ + $(wildcard include/config/X86_VSMP) \ + include/linux/ratelimit_types.h \ + include/uapi/linux/param.h \ + arch/x86/include/generated/uapi/asm/param.h \ + include/asm-generic/param.h \ + $(wildcard include/config/HZ) \ + include/uapi/asm-generic/param.h \ + include/linux/spinlock_types.h \ + include/linux/spinlock_types_raw.h \ + arch/x86/include/asm/spinlock_types.h \ + include/asm-generic/qspinlock_types.h \ + $(wildcard include/config/NR_CPUS) \ + include/asm-generic/qrwlock_types.h \ + include/linux/lockdep_types.h \ + $(wildcard include/config/PROVE_RAW_LOCK_NESTING) \ + $(wildcard include/config/PREEMPT_LOCK) \ + $(wildcard include/config/LOCKDEP) \ + $(wildcard include/config/LOCK_STAT) \ + include/linux/rwlock_types.h \ + include/linux/once_lite.h \ + include/linux/dynamic_debug.h \ + $(wildcard include/config/JUMP_LABEL) \ + include/linux/jump_label.h \ + $(wildcard include/config/HAVE_ARCH_JUMP_LABEL_RELATIVE) \ + arch/x86/include/asm/jump_label.h \ + include/linux/static_call_types.h \ + $(wildcard include/config/HAVE_STATIC_CALL) \ + $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ + arch/x86/include/asm/preempt.h \ + arch/x86/include/asm/percpu.h \ + $(wildcard include/config/X86_64_SMP) \ + include/asm-generic/percpu.h \ + $(wildcard include/config/HAVE_SETUP_PER_CPU_AREA) \ + include/linux/threads.h \ + $(wildcard include/config/BASE_SMALL) \ + include/linux/percpu-defs.h \ + $(wildcard include/config/DEBUG_FORCE_WEAK_PER_CPU) \ + $(wildcard include/config/AMD_MEM_ENCRYPT) \ + include/linux/thread_info.h \ + $(wildcard include/config/THREAD_INFO_IN_TASK) \ + $(wildcard include/config/GENERIC_ENTRY) \ + $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ + $(wildcard include/config/HARDENED_USERCOPY) \ + include/linux/bug.h \ + $(wildcard include/config/GENERIC_BUG) \ + $(wildcard include/config/BUG_ON_DATA_CORRUPTION) \ + arch/x86/include/asm/bug.h \ + $(wildcard include/config/DEBUG_BUGVERBOSE) \ + include/linux/instrumentation.h \ + $(wildcard include/config/DEBUG_ENTRY) \ + include/asm-generic/bug.h \ + $(wildcard include/config/BUG) \ + $(wildcard include/config/GENERIC_BUG_RELATIVE_POINTERS) \ + include/linux/restart_block.h \ + include/linux/time64.h \ + include/linux/math64.h \ + $(wildcard include/config/ARCH_SUPPORTS_INT128) \ + include/vdso/math64.h \ + include/vdso/time64.h \ + include/uapi/linux/time.h \ + include/uapi/linux/time_types.h \ + include/linux/errno.h \ + include/uapi/linux/errno.h \ + arch/x86/include/generated/uapi/asm/errno.h \ + include/uapi/asm-generic/errno.h \ + include/uapi/asm-generic/errno-base.h \ + arch/x86/include/asm/current.h \ + arch/x86/include/asm/thread_info.h \ + $(wildcard include/config/VM86) \ + $(wildcard include/config/X86_IOPL_IOPERM) \ + $(wildcard include/config/FRAME_POINTER) \ + $(wildcard include/config/COMPAT) \ + $(wildcard include/config/IA32_EMULATION) \ + arch/x86/include/asm/page.h \ + arch/x86/include/asm/page_types.h \ + $(wildcard include/config/PHYSICAL_START) \ + $(wildcard include/config/PHYSICAL_ALIGN) \ + $(wildcard include/config/DYNAMIC_PHYSICAL_MASK) \ + include/linux/mem_encrypt.h \ + $(wildcard include/config/ARCH_HAS_MEM_ENCRYPT) \ + arch/x86/include/asm/mem_encrypt.h \ + include/linux/cc_platform.h \ + $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ + arch/x86/include/uapi/asm/bootparam.h \ + include/linux/screen_info.h \ + include/uapi/linux/screen_info.h \ + include/linux/apm_bios.h \ + include/uapi/linux/apm_bios.h \ + include/uapi/linux/ioctl.h \ + arch/x86/include/generated/uapi/asm/ioctl.h \ + include/asm-generic/ioctl.h \ + include/uapi/asm-generic/ioctl.h \ + include/linux/edd.h \ + include/uapi/linux/edd.h \ + arch/x86/include/asm/ist.h \ + arch/x86/include/uapi/asm/ist.h \ + include/video/edid.h \ + $(wildcard include/config/X86) \ + include/uapi/video/edid.h \ + arch/x86/include/asm/page_64_types.h \ + $(wildcard include/config/KASAN) \ + $(wildcard include/config/DYNAMIC_MEMORY_LAYOUT) \ + $(wildcard include/config/RANDOMIZE_BASE) \ + arch/x86/include/asm/kaslr.h \ + $(wildcard include/config/RANDOMIZE_MEMORY) \ + arch/x86/include/asm/page_64.h \ + $(wildcard include/config/DEBUG_VIRTUAL) \ + $(wildcard include/config/FLATMEM) \ + $(wildcard include/config/X86_VSYSCALL_EMULATION) \ + include/linux/range.h \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/SPARSEMEM_VMEMMAP) \ + $(wildcard include/config/SPARSEMEM) \ + include/linux/pfn.h \ + include/asm-generic/getorder.h \ + arch/x86/include/asm/cpufeature.h \ + $(wildcard include/config/X86_FEATURE_NAMES) \ + arch/x86/include/asm/processor.h \ + $(wildcard include/config/X86_VMX_FEATURE_NAMES) \ + $(wildcard include/config/STACKPROTECTOR) \ + $(wildcard include/config/X86_DEBUGCTLMSR) \ + $(wildcard include/config/CPU_SUP_AMD) \ + $(wildcard include/config/XEN) \ + arch/x86/include/asm/processor-flags.h \ + arch/x86/include/uapi/asm/processor-flags.h \ + arch/x86/include/asm/math_emu.h \ + arch/x86/include/asm/ptrace.h \ + $(wildcard include/config/PARAVIRT) \ + arch/x86/include/asm/segment.h \ + $(wildcard include/config/XEN_PV) \ + arch/x86/include/uapi/asm/ptrace.h \ + arch/x86/include/uapi/asm/ptrace-abi.h \ + arch/x86/include/asm/paravirt_types.h \ + $(wildcard include/config/PGTABLE_LEVELS) \ + $(wildcard include/config/PARAVIRT_DEBUG) \ + arch/x86/include/asm/desc_defs.h \ + arch/x86/include/asm/pgtable_types.h \ + $(wildcard include/config/MEM_SOFT_DIRTY) \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_WP) \ + $(wildcard include/config/PROC_FS) \ + arch/x86/include/asm/pgtable_64_types.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL_FORCE_MAP) \ + arch/x86/include/asm/sparsemem.h \ + $(wildcard include/config/NUMA_KEEP_MEMINFO) \ + arch/x86/include/asm/nospec-branch.h \ + $(wildcard include/config/CPU_IBPB_ENTRY) \ + include/linux/static_key.h \ + include/linux/objtool.h \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/unwind_hints.h \ + arch/x86/include/asm/orc_types.h \ + arch/x86/include/asm/GEN-for-each-reg.h \ + arch/x86/include/asm/proto.h \ + arch/x86/include/uapi/asm/ldt.h \ + arch/x86/include/uapi/asm/sigcontext.h \ + arch/x86/include/asm/msr.h \ + $(wildcard include/config/TRACEPOINTS) \ + arch/x86/include/asm/msr-index.h \ + arch/x86/include/asm/cpumask.h \ + include/linux/cpumask.h \ + $(wildcard include/config/CPUMASK_OFFSTACK) \ + $(wildcard include/config/HOTPLUG_CPU) \ + $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ + include/linux/bitmap.h \ + include/linux/string.h \ + $(wildcard include/config/BINARY_PRINTF) \ + $(wildcard include/config/FORTIFY_SOURCE) \ + include/uapi/linux/string.h \ + arch/x86/include/asm/string.h \ + arch/x86/include/asm/string_64.h \ + $(wildcard include/config/ARCH_HAS_UACCESS_FLUSHCACHE) \ + include/linux/fortify-string.h \ + include/linux/atomic.h \ + arch/x86/include/asm/atomic.h \ + arch/x86/include/asm/cmpxchg.h \ + arch/x86/include/asm/cmpxchg_64.h \ + arch/x86/include/asm/atomic64_64.h \ + include/linux/atomic/atomic-arch-fallback.h \ + $(wildcard include/config/GENERIC_ATOMIC64) \ + include/linux/atomic/atomic-long.h \ + include/linux/atomic/atomic-instrumented.h \ + arch/x86/include/uapi/asm/msr.h \ + include/linux/tracepoint-defs.h \ + arch/x86/include/asm/paravirt.h \ + $(wildcard include/config/PARAVIRT_SPINLOCKS) \ + arch/x86/include/asm/frame.h \ + arch/x86/include/asm/special_insns.h \ + include/linux/irqflags.h \ + $(wildcard include/config/TRACE_IRQFLAGS) \ + $(wildcard include/config/IRQSOFF_TRACER) \ + $(wildcard include/config/PREEMPT_TRACER) \ + $(wildcard include/config/DEBUG_IRQFLAGS) \ + $(wildcard include/config/TRACE_IRQFLAGS_SUPPORT) \ + arch/x86/include/asm/irqflags.h \ + arch/x86/include/asm/fpu/types.h \ + arch/x86/include/asm/vmxfeatures.h \ + arch/x86/include/asm/vdso/processor.h \ + include/linux/personality.h \ + include/uapi/linux/personality.h \ + include/linux/err.h \ + include/linux/bottom_half.h \ + include/linux/lockdep.h \ + $(wildcard include/config/DEBUG_LOCKING_API_SELFTESTS) \ + include/linux/smp.h \ + $(wildcard include/config/UP_LATE_INIT) \ + include/linux/smp_types.h \ + include/linux/llist.h \ + $(wildcard include/config/ARCH_HAVE_NMI_SAFE_CMPXCHG) \ + arch/x86/include/asm/smp.h \ + $(wildcard include/config/X86_LOCAL_APIC) \ + $(wildcard include/config/DEBUG_NMI_SELFTEST) \ + arch/x86/include/generated/asm/mmiowb.h \ + include/asm-generic/mmiowb.h \ + $(wildcard include/config/MMIOWB) \ + arch/x86/include/asm/spinlock.h \ + arch/x86/include/asm/qspinlock.h \ + include/asm-generic/qspinlock.h \ + arch/x86/include/asm/qrwlock.h \ + include/asm-generic/qrwlock.h \ + include/linux/rwlock.h \ + $(wildcard include/config/PREEMPT) \ + include/linux/spinlock_api_smp.h \ + $(wildcard include/config/INLINE_SPIN_LOCK) \ + $(wildcard include/config/INLINE_SPIN_LOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK) \ + $(wildcard include/config/INLINE_SPIN_TRYLOCK_BH) \ + $(wildcard include/config/UNINLINE_SPIN_UNLOCK) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_BH) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_SPIN_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/GENERIC_LOCKBREAK) \ + include/linux/rwlock_api_smp.h \ + $(wildcard include/config/INLINE_READ_LOCK) \ + $(wildcard include/config/INLINE_WRITE_LOCK) \ + $(wildcard include/config/INLINE_READ_LOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_LOCK_BH) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_WRITE_LOCK_IRQSAVE) \ + $(wildcard include/config/INLINE_READ_TRYLOCK) \ + $(wildcard include/config/INLINE_WRITE_TRYLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK) \ + $(wildcard include/config/INLINE_READ_UNLOCK_BH) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_BH) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQ) \ + $(wildcard include/config/INLINE_READ_UNLOCK_IRQRESTORE) \ + $(wildcard include/config/INLINE_WRITE_UNLOCK_IRQRESTORE) \ + include/linux/kthread.h \ + $(wildcard include/config/BLK_CGROUP) \ + include/linux/sched.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_NATIVE) \ + $(wildcard include/config/SCHED_INFO) \ + $(wildcard include/config/SCHEDSTATS) \ + $(wildcard include/config/FAIR_GROUP_SCHED) \ + $(wildcard include/config/RT_GROUP_SCHED) \ + $(wildcard include/config/RT_MUTEXES) \ + $(wildcard include/config/UCLAMP_TASK) \ + $(wildcard include/config/UCLAMP_BUCKETS_COUNT) \ + $(wildcard include/config/KMAP_LOCAL) \ + $(wildcard include/config/SCHED_CORE) \ + $(wildcard include/config/CGROUP_SCHED) \ + $(wildcard include/config/BLK_DEV_IO_TRACE) \ + $(wildcard include/config/PREEMPT_RCU) \ + $(wildcard include/config/TASKS_RCU) \ + $(wildcard include/config/TASKS_TRACE_RCU) \ + $(wildcard include/config/PSI) \ + $(wildcard include/config/MEMCG) \ + $(wildcard include/config/COMPAT_BRK) \ + $(wildcard include/config/CGROUPS) \ + $(wildcard include/config/PAGE_OWNER) \ + $(wildcard include/config/EVENTFD) \ + $(wildcard include/config/ARCH_HAS_SCALED_CPUTIME) \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING_GEN) \ + $(wildcard include/config/NO_HZ_FULL) \ + $(wildcard include/config/POSIX_CPUTIMERS) \ + $(wildcard include/config/POSIX_CPU_TIMERS_TASK_WORK) \ + $(wildcard include/config/KEYS) \ + $(wildcard include/config/SYSVIPC) \ + $(wildcard include/config/DETECT_HUNG_TASK) \ + $(wildcard include/config/IO_URING) \ + $(wildcard include/config/AUDIT) \ + $(wildcard include/config/AUDITSYSCALL) \ + $(wildcard include/config/DEBUG_MUTEXES) \ + $(wildcard include/config/UBSAN) \ + $(wildcard include/config/UBSAN_TRAP) \ + $(wildcard include/config/BLOCK) \ + $(wildcard include/config/COMPACTION) \ + $(wildcard include/config/TASK_XACCT) \ + $(wildcard include/config/CPUSETS) \ + $(wildcard include/config/X86_CPU_RESCTRL) \ + $(wildcard include/config/FUTEX) \ + $(wildcard include/config/PERF_EVENTS) \ + $(wildcard include/config/NUMA) \ + $(wildcard include/config/NUMA_BALANCING) \ + $(wildcard include/config/RSEQ) \ + $(wildcard include/config/TASK_DELAY_ACCT) \ + $(wildcard include/config/FAULT_INJECTION) \ + $(wildcard include/config/LATENCYTOP) \ + $(wildcard include/config/KUNIT) \ + $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ + $(wildcard include/config/UPROBES) \ + $(wildcard include/config/BCACHE) \ + $(wildcard include/config/VMAP_STACK) \ + $(wildcard include/config/LIVEPATCH) \ + $(wildcard include/config/SECURITY) \ + $(wildcard include/config/BPF_SYSCALL) \ + $(wildcard include/config/GCC_PLUGIN_STACKLEAK) \ + $(wildcard include/config/X86_MCE) \ + $(wildcard include/config/KRETPROBES) \ + $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ + $(wildcard include/config/ARCH_TASK_STRUCT_ON_STACK) \ + $(wildcard include/config/DEBUG_RSEQ) \ + include/uapi/linux/sched.h \ + include/linux/pid.h \ + include/linux/rculist.h \ + $(wildcard include/config/PROVE_RCU_LIST) \ + include/linux/rcupdate.h \ + $(wildcard include/config/TINY_RCU) \ + $(wildcard include/config/TASKS_RCU_GENERIC) \ + $(wildcard include/config/RCU_STALL_COMMON) \ + $(wildcard include/config/RCU_NOCB_CPU) \ + $(wildcard include/config/TASKS_RUDE_RCU) \ + $(wildcard include/config/TREE_RCU) \ + $(wildcard include/config/DEBUG_OBJECTS_RCU_HEAD) \ + $(wildcard include/config/PROVE_RCU) \ + $(wildcard include/config/ARCH_WEAK_RELEASE_ACQUIRE) \ + include/linux/rcutree.h \ + include/linux/wait.h \ + include/uapi/linux/wait.h \ + include/linux/refcount.h \ + include/linux/sem.h \ + include/uapi/linux/sem.h \ + include/linux/ipc.h \ + include/linux/uidgid.h \ + $(wildcard include/config/MULTIUSER) \ + $(wildcard include/config/USER_NS) \ + include/linux/highuid.h \ + include/linux/rhashtable-types.h \ + include/linux/mutex.h \ + $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ + include/linux/osq_lock.h \ + include/linux/debug_locks.h \ + include/linux/workqueue.h \ + $(wildcard include/config/DEBUG_OBJECTS_WORK) \ + $(wildcard include/config/FREEZER) \ + $(wildcard include/config/SYSFS) \ + $(wildcard include/config/WQ_WATCHDOG) \ + include/linux/timer.h \ + $(wildcard include/config/DEBUG_OBJECTS_TIMERS) \ + $(wildcard include/config/NO_HZ_COMMON) \ + include/linux/ktime.h \ + include/linux/time.h \ + $(wildcard include/config/POSIX_TIMERS) \ + include/linux/time32.h \ + include/linux/timex.h \ + include/uapi/linux/timex.h \ + arch/x86/include/asm/timex.h \ + $(wildcard include/config/X86_TSC) \ + arch/x86/include/asm/tsc.h \ + include/vdso/time32.h \ + include/vdso/time.h \ + include/linux/jiffies.h \ + include/vdso/jiffies.h \ + include/generated/timeconst.h \ + include/vdso/ktime.h \ + include/linux/timekeeping.h \ + $(wildcard include/config/GENERIC_CMOS_UPDATE) \ + include/linux/clocksource_ids.h \ + include/linux/debugobjects.h \ + $(wildcard include/config/DEBUG_OBJECTS) \ + $(wildcard include/config/DEBUG_OBJECTS_FREE) \ + include/uapi/linux/ipc.h \ + arch/x86/include/generated/uapi/asm/ipcbuf.h \ + include/uapi/asm-generic/ipcbuf.h \ + arch/x86/include/uapi/asm/sembuf.h \ + include/linux/shm.h \ + include/uapi/linux/shm.h \ + include/uapi/asm-generic/hugetlb_encode.h \ + arch/x86/include/uapi/asm/shmbuf.h \ + include/uapi/asm-generic/shmbuf.h \ + arch/x86/include/asm/shmparam.h \ + include/linux/plist.h \ + $(wildcard include/config/DEBUG_PLIST) \ + include/linux/hrtimer.h \ + $(wildcard include/config/HIGH_RES_TIMERS) \ + $(wildcard include/config/TIME_LOW_RES) \ + $(wildcard include/config/TIMERFD) \ + include/linux/hrtimer_defs.h \ + include/linux/rbtree.h \ + include/linux/rbtree_types.h \ + include/linux/percpu.h \ + $(wildcard include/config/NEED_PER_CPU_EMBED_FIRST_CHUNK) \ + $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ + include/linux/mmdebug.h \ + $(wildcard include/config/DEBUG_VM) \ + $(wildcard include/config/DEBUG_VM_PGFLAGS) \ + include/linux/seqlock.h \ + include/linux/ww_mutex.h \ + $(wildcard include/config/DEBUG_RT_MUTEXES) \ + $(wildcard include/config/DEBUG_WW_MUTEX_SLOWPATH) \ + include/linux/rtmutex.h \ + include/linux/timerqueue.h \ + include/linux/seccomp.h \ + $(wildcard include/config/SECCOMP) \ + $(wildcard include/config/HAVE_ARCH_SECCOMP_FILTER) \ + $(wildcard include/config/SECCOMP_FILTER) \ + $(wildcard include/config/CHECKPOINT_RESTORE) \ + $(wildcard include/config/SECCOMP_CACHE_DEBUG) \ + include/uapi/linux/seccomp.h \ + arch/x86/include/asm/seccomp.h \ + arch/x86/include/asm/unistd.h \ + arch/x86/include/uapi/asm/unistd.h \ + arch/x86/include/generated/uapi/asm/unistd_64.h \ + arch/x86/include/generated/asm/unistd_64_x32.h \ + arch/x86/include/generated/asm/unistd_32_ia32.h \ + arch/x86/include/asm/ia32_unistd.h \ + include/asm-generic/seccomp.h \ + include/uapi/linux/unistd.h \ + include/linux/nodemask.h \ + $(wildcard include/config/HIGHMEM) \ + include/linux/numa.h \ + $(wildcard include/config/NODES_SHIFT) \ + include/linux/resource.h \ + include/uapi/linux/resource.h \ + arch/x86/include/generated/uapi/asm/resource.h \ + include/asm-generic/resource.h \ + include/uapi/asm-generic/resource.h \ + include/linux/latencytop.h \ + include/linux/sched/prio.h \ + include/linux/sched/types.h \ + include/linux/signal_types.h \ + $(wildcard include/config/OLD_SIGACTION) \ + include/uapi/linux/signal.h \ + arch/x86/include/asm/signal.h \ + arch/x86/include/uapi/asm/signal.h \ + include/uapi/asm-generic/signal-defs.h \ + arch/x86/include/uapi/asm/siginfo.h \ + include/uapi/asm-generic/siginfo.h \ + include/linux/syscall_user_dispatch.h \ + include/linux/mm_types_task.h \ + $(wildcard include/config/ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH) \ + $(wildcard include/config/SPLIT_PTLOCK_CPUS) \ + $(wildcard include/config/ARCH_ENABLE_SPLIT_PMD_PTLOCK) \ + arch/x86/include/asm/tlbbatch.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/TASK_IO_ACCOUNTING) \ + include/linux/posix-timers.h \ + include/linux/alarmtimer.h \ + $(wildcard include/config/RTC_CLASS) \ + include/linux/task_work.h \ + include/uapi/linux/rseq.h \ + include/linux/kcsan.h \ + arch/x86/include/generated/asm/kmap_size.h \ + include/asm-generic/kmap_size.h \ + $(wildcard include/config/DEBUG_KMAP_LOCAL) \ + include/linux/cpuset.h \ + include/linux/sched/topology.h \ + $(wildcard include/config/SCHED_DEBUG) \ + $(wildcard include/config/SCHED_SMT) \ + $(wildcard include/config/SCHED_MC) \ + $(wildcard include/config/ENERGY_MODEL) \ + $(wildcard include/config/CPU_FREQ_GOV_SCHEDUTIL) \ + include/linux/topology.h \ + $(wildcard include/config/USE_PERCPU_NUMA_NODE_ID) \ + $(wildcard include/config/HAVE_MEMORYLESS_NODES) \ + include/linux/arch_topology.h \ + $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ + include/linux/mmzone.h \ + $(wildcard include/config/FORCE_MAX_ZONEORDER) \ + $(wildcard include/config/CMA) \ + $(wildcard include/config/MEMORY_ISOLATION) \ + $(wildcard include/config/ZSMALLOC) \ + $(wildcard include/config/SHADOW_CALL_STACK) \ + $(wildcard include/config/SWAP) \ + $(wildcard include/config/TRANSPARENT_HUGEPAGE) \ + $(wildcard include/config/ZONE_DMA) \ + $(wildcard include/config/ZONE_DMA32) \ + $(wildcard include/config/ZONE_DEVICE) \ + $(wildcard include/config/MEMORY_HOTPLUG) \ + $(wildcard include/config/PAGE_EXTENSION) \ + $(wildcard include/config/DEFERRED_STRUCT_PAGE_INIT) \ + $(wildcard include/config/SPARSEMEM_EXTREME) \ + $(wildcard include/config/HAVE_ARCH_PFN_VALID) \ + include/linux/pageblock-flags.h \ + $(wildcard include/config/HUGETLB_PAGE) \ + $(wildcard include/config/HUGETLB_PAGE_SIZE_VARIABLE) \ + include/linux/page-flags-layout.h \ + $(wildcard include/config/KASAN_HW_TAGS) \ + include/generated/bounds.h \ + include/linux/mm_types.h \ + $(wildcard include/config/HAVE_ALIGNED_STRUCT_PAGE) \ + $(wildcard include/config/USERFAULTFD) \ + $(wildcard include/config/HAVE_ARCH_COMPAT_MMAP_BASES) \ + $(wildcard include/config/MEMBARRIER) \ + $(wildcard include/config/AIO) \ + $(wildcard include/config/MMU_NOTIFIER) \ + $(wildcard include/config/IOMMU_SUPPORT) \ + include/linux/auxvec.h \ + include/uapi/linux/auxvec.h \ + arch/x86/include/uapi/asm/auxvec.h \ + include/linux/rwsem.h \ + $(wildcard include/config/RWSEM_SPIN_ON_OWNER) \ + $(wildcard include/config/DEBUG_RWSEMS) \ + include/linux/completion.h \ + include/linux/swait.h \ + include/linux/uprobes.h \ + arch/x86/include/asm/uprobes.h \ + include/linux/notifier.h \ + $(wildcard include/config/TREE_SRCU) \ + include/linux/srcu.h \ + $(wildcard include/config/TINY_SRCU) \ + $(wildcard include/config/SRCU) \ + include/linux/rcu_segcblist.h \ + include/linux/srcutree.h \ + include/linux/rcu_node_tree.h \ + $(wildcard include/config/RCU_FANOUT) \ + $(wildcard include/config/RCU_FANOUT_LEAF) \ + arch/x86/include/asm/mmu.h \ + $(wildcard include/config/MODIFY_LDT_SYSCALL) \ + include/linux/page-flags.h \ + $(wildcard include/config/ARCH_USES_PG_UNCACHED) \ + $(wildcard include/config/MEMORY_FAILURE) \ + $(wildcard include/config/PAGE_IDLE_FLAG) \ + $(wildcard include/config/THP_SWAP) \ + $(wildcard include/config/KSM) \ + include/linux/local_lock.h \ + include/linux/local_lock_internal.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ + $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ + $(wildcard include/config/MEMORY_HOTREMOVE) \ + arch/x86/include/asm/mmzone.h \ + arch/x86/include/asm/mmzone_64.h \ + arch/x86/include/asm/topology.h \ + $(wildcard include/config/SCHED_MC_PRIO) \ + $(wildcard include/config/ACPI_CPPC_LIB) \ + arch/x86/include/asm/mpspec.h \ + $(wildcard include/config/EISA) \ + $(wildcard include/config/X86_MPPARSE) \ + arch/x86/include/asm/mpspec_def.h \ + arch/x86/include/asm/x86_init.h \ + arch/x86/include/asm/apicdef.h \ + include/asm-generic/topology.h \ + include/linux/sched/idle.h \ + include/linux/sched/sd_flags.h \ + include/linux/sched/task.h \ + $(wildcard include/config/HAVE_EXIT_THREAD) \ + $(wildcard include/config/ARCH_WANTS_DYNAMIC_TASK_STRUCT) \ + $(wildcard include/config/HAVE_ARCH_THREAD_STRUCT_WHITELIST) \ + include/linux/uaccess.h \ + $(wildcard include/config/SET_FS) \ + include/linux/fault-inject-usercopy.h \ + $(wildcard include/config/FAULT_INJECTION_USERCOPY) \ + arch/x86/include/asm/uaccess.h \ + $(wildcard include/config/CC_HAS_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_ASM_GOTO_OUTPUT) \ + $(wildcard include/config/CC_HAS_ASM_GOTO_TIED_OUTPUT) \ + $(wildcard include/config/ARCH_HAS_COPY_MC) \ + $(wildcard include/config/X86_INTEL_USERCOPY) \ + arch/x86/include/asm/smap.h \ + arch/x86/include/asm/extable.h \ + $(wildcard include/config/BPF_JIT) \ + arch/x86/include/asm/uaccess_64.h \ + include/linux/mm.h \ + $(wildcard include/config/SYSCTL) \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_BITS) \ + $(wildcard include/config/HAVE_ARCH_MMAP_RND_COMPAT_BITS) \ + $(wildcard include/config/DEBUG_INFO_BTF) \ + $(wildcard include/config/ARCH_USES_HIGH_VMA_FLAGS) \ + $(wildcard include/config/ARCH_HAS_PKEYS) \ + $(wildcard include/config/PPC) \ + $(wildcard include/config/PARISC) \ + $(wildcard include/config/IA64) \ + $(wildcard include/config/SPARC64) \ + $(wildcard include/config/ARM64) \ + $(wildcard include/config/ARM64_MTE) \ + $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ + $(wildcard include/config/STACK_GROWSUP) \ + $(wildcard include/config/SHMEM) \ + $(wildcard include/config/DEV_PAGEMAP_OPS) \ + $(wildcard include/config/DEVICE_PRIVATE) \ + $(wildcard include/config/PCI_P2PDMA) \ + $(wildcard include/config/MIGRATION) \ + $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ + $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ + $(wildcard include/config/DEBUG_VM_RB) \ + $(wildcard include/config/PAGE_POISONING) \ + $(wildcard include/config/INIT_ON_ALLOC_DEFAULT_ON) \ + $(wildcard include/config/INIT_ON_FREE_DEFAULT_ON) \ + $(wildcard include/config/DEBUG_PAGEALLOC) \ + $(wildcard include/config/HUGETLBFS) \ + $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ + include/linux/gfp.h \ + $(wildcard include/config/PM_SLEEP) \ + $(wildcard include/config/CONTIG_ALLOC) \ + include/linux/mmap_lock.h \ + include/linux/percpu-refcount.h \ + include/linux/bit_spinlock.h \ + include/linux/shrinker.h \ + include/linux/page_ext.h \ + include/linux/stacktrace.h \ + $(wildcard include/config/STACKTRACE) \ + $(wildcard include/config/ARCH_STACKWALK) \ + $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ + include/linux/stackdepot.h \ + $(wildcard include/config/STACKDEPOT) \ + include/linux/page_ref.h \ + $(wildcard include/config/DEBUG_PAGE_REF) \ + include/linux/memremap.h \ + include/linux/ioport.h \ + include/linux/overflow.h \ + include/linux/sizes.h \ + include/linux/pgtable.h \ + $(wildcard include/config/HIGHPTE) \ + $(wildcard include/config/GUP_GET_PTE_LOW_HIGH) \ + $(wildcard include/config/HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD) \ + $(wildcard include/config/HAVE_ARCH_SOFT_DIRTY) \ + $(wildcard include/config/ARCH_ENABLE_THP_MIGRATION) \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMAP) \ + $(wildcard include/config/X86_ESPFIX64) \ + arch/x86/include/asm/pgtable.h \ + $(wildcard include/config/DEBUG_WX) \ + arch/x86/include/asm/pkru.h \ + arch/x86/include/asm/fpu/api.h \ + $(wildcard include/config/X86_DEBUG_FPU) \ + include/asm-generic/pgtable_uffd.h \ + arch/x86/include/asm/pgtable_64.h \ + arch/x86/include/asm/fixmap.h \ + $(wildcard include/config/PROVIDE_OHCI1394_DMA_INIT) \ + $(wildcard include/config/X86_IO_APIC) \ + $(wildcard include/config/PCI_MMCONFIG) \ + $(wildcard include/config/ACPI_APEI_GHES) \ + $(wildcard include/config/INTEL_TXT) \ + arch/x86/include/uapi/asm/vsyscall.h \ + include/asm-generic/fixmap.h \ + arch/x86/include/asm/pgtable-invert.h \ + include/linux/kasan.h \ + $(wildcard include/config/KASAN_STACK) \ + $(wildcard include/config/KASAN_VMALLOC) \ + $(wildcard include/config/KASAN_INLINE) \ + include/linux/huge_mm.h \ + include/linux/sched/coredump.h \ + $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ + include/linux/fs.h \ + $(wildcard include/config/READ_ONLY_THP_FOR_FS) \ + $(wildcard include/config/FS_POSIX_ACL) \ + $(wildcard include/config/CGROUP_WRITEBACK) \ + $(wildcard include/config/IMA) \ + $(wildcard include/config/FILE_LOCKING) \ + $(wildcard include/config/FSNOTIFY) \ + $(wildcard include/config/FS_ENCRYPTION) \ + $(wildcard include/config/FS_VERITY) \ + $(wildcard include/config/EPOLL) \ + $(wildcard include/config/UNICODE) \ + $(wildcard include/config/QUOTA) \ + $(wildcard include/config/BLK_DEV_LOOP) \ + $(wildcard include/config/FS_DAX) \ + include/linux/wait_bit.h \ + include/linux/kdev_t.h \ + include/uapi/linux/kdev_t.h \ + include/linux/dcache.h \ + include/linux/rculist_bl.h \ + include/linux/list_bl.h \ + include/linux/lockref.h \ + $(wildcard include/config/ARCH_USE_CMPXCHG_LOCKREF) \ + include/linux/stringhash.h \ + $(wildcard include/config/DCACHE_WORD_ACCESS) \ + include/linux/hash.h \ + $(wildcard include/config/HAVE_ARCH_HASH) \ + include/linux/path.h \ + include/linux/stat.h \ + arch/x86/include/uapi/asm/stat.h \ + include/uapi/linux/stat.h \ + include/linux/list_lru.h \ + $(wildcard include/config/MEMCG_KMEM) \ + include/linux/radix-tree.h \ + include/linux/xarray.h \ + $(wildcard include/config/XARRAY_MULTI) \ + include/linux/kconfig.h \ + include/linux/capability.h \ + include/uapi/linux/capability.h \ + include/linux/semaphore.h \ + include/linux/fcntl.h \ + $(wildcard include/config/ARCH_32BIT_OFF_T) \ + include/uapi/linux/fcntl.h \ + arch/x86/include/generated/uapi/asm/fcntl.h \ + include/uapi/asm-generic/fcntl.h \ + include/uapi/linux/openat2.h \ + include/linux/migrate_mode.h \ + include/linux/percpu-rwsem.h \ + include/linux/rcuwait.h \ + include/linux/sched/signal.h \ + $(wildcard include/config/SCHED_AUTOGROUP) \ + $(wildcard include/config/BSD_PROCESS_ACCT) \ + $(wildcard include/config/TASKSTATS) \ + include/linux/signal.h \ + $(wildcard include/config/DYNAMIC_SIGFRAME) \ + include/linux/sched/jobctl.h \ + include/linux/cred.h \ + $(wildcard include/config/DEBUG_CREDENTIALS) \ + include/linux/key.h \ + $(wildcard include/config/KEY_NOTIFICATIONS) \ + $(wildcard include/config/NET) \ + include/linux/sysctl.h \ + include/uapi/linux/sysctl.h \ + include/linux/assoc_array.h \ + $(wildcard include/config/ASSOCIATIVE_ARRAY) \ + include/linux/sched/user.h \ + $(wildcard include/config/WATCH_QUEUE) \ + include/linux/percpu_counter.h \ + include/linux/ratelimit.h \ + include/linux/rcu_sync.h \ + include/linux/delayed_call.h \ + include/linux/uuid.h \ + include/uapi/linux/uuid.h \ + include/linux/errseq.h \ + include/linux/ioprio.h \ + include/linux/sched/rt.h \ + include/linux/iocontext.h \ + include/uapi/linux/ioprio.h \ + include/linux/fs_types.h \ + include/linux/mount.h \ + include/linux/mnt_idmapping.h \ + include/uapi/linux/fs.h \ + include/linux/quota.h \ + $(wildcard include/config/QUOTA_NETLINK_INTERFACE) \ + include/uapi/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/dqblk_qtree.h \ + include/linux/projid.h \ + include/uapi/linux/quota.h \ + include/linux/nfs_fs_i.h \ + include/linux/vmstat.h \ + $(wildcard include/config/VM_EVENT_COUNTERS) \ + $(wildcard include/config/DEBUG_TLBFLUSH) \ + $(wildcard include/config/DEBUG_VM_VMACACHE) \ + include/linux/vm_event_item.h \ + $(wildcard include/config/MEMORY_BALLOON) \ + $(wildcard include/config/BALLOON_COMPACTION) \ + include/linux/mmu_context.h \ + arch/x86/include/asm/mmu_context.h \ + arch/x86/include/asm/desc.h \ + arch/x86/include/asm/irq_vectors.h \ + $(wildcard include/config/HAVE_KVM) \ + $(wildcard include/config/HYPERV) \ + $(wildcard include/config/PCI_MSI) \ + arch/x86/include/asm/cpu_entry_area.h \ + arch/x86/include/asm/intel_ds.h \ + arch/x86/include/asm/pgtable_areas.h \ + include/linux/pkeys.h \ + arch/x86/include/asm/pkeys.h \ + include/trace/events/tlb.h \ + include/linux/tracepoint.h \ + $(wildcard include/config/HAVE_SYSCALL_TRACEPOINTS) \ + $(wildcard include/config/TRACEPOINT) \ + include/linux/static_call.h \ + include/linux/cpu.h \ + $(wildcard include/config/PM_SLEEP_SMP) \ + $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ + $(wildcard include/config/HOTPLUG_SMT) \ + include/linux/node.h \ + $(wildcard include/config/HMEM_REPORTING) \ + $(wildcard include/config/MEMORY_HOTPLUG_SPARSE) \ + include/linux/device.h \ + $(wildcard include/config/GENERIC_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/PINCTRL) \ + $(wildcard include/config/GENERIC_MSI_IRQ) \ + $(wildcard include/config/DMA_OPS) \ + $(wildcard include/config/DMA_DECLARE_COHERENT) \ + $(wildcard include/config/DMA_CMA) \ + $(wildcard include/config/SWIOTLB) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_DEVICE) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU) \ + $(wildcard include/config/ARCH_HAS_SYNC_DMA_FOR_CPU_ALL) \ + $(wildcard include/config/DMA_OPS_BYPASS) \ + $(wildcard include/config/OF) \ + $(wildcard include/config/DEVTMPFS) \ + $(wildcard include/config/SYSFS_DEPRECATED) \ + include/linux/dev_printk.h \ + include/linux/energy_model.h \ + include/linux/kobject.h \ + $(wildcard include/config/UEVENT_HELPER) \ + $(wildcard include/config/DEBUG_KOBJECT_RELEASE) \ + include/linux/sysfs.h \ + include/linux/kernfs.h \ + $(wildcard include/config/KERNFS) \ + include/linux/idr.h \ + include/linux/kobject_ns.h \ + include/linux/kref.h \ + include/linux/sched/cpufreq.h \ + $(wildcard include/config/CPU_FREQ) \ + include/linux/klist.h \ + include/linux/pm.h \ + $(wildcard include/config/VT_CONSOLE_SLEEP) \ + $(wildcard include/config/PM) \ + $(wildcard include/config/PM_CLK) \ + $(wildcard include/config/PM_GENERIC_DOMAINS) \ + include/linux/device/bus.h \ + $(wildcard include/config/ACPI) \ + include/linux/device/class.h \ + include/linux/device/driver.h \ + arch/x86/include/asm/device.h \ + include/linux/pm_wakeup.h \ + include/linux/cpuhotplug.h \ + arch/x86/include/asm/static_call.h \ + arch/x86/include/asm/text-patching.h \ + $(wildcard include/config/UML_X86) \ + include/trace/define_trace.h \ + arch/x86/include/asm/tlbflush.h \ + arch/x86/include/asm/invpcid.h \ + arch/x86/include/asm/pti.h \ + arch/x86/include/asm/debugreg.h \ + arch/x86/include/uapi/asm/debugreg.h \ + include/asm-generic/mmu_context.h \ + /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.h \ + $(wildcard include/config/BLOCK_ID) \ + include/linux/module.h \ + $(wildcard include/config/MODULES_TREE_LOOKUP) \ + $(wildcard include/config/STACKTRACE_BUILD_ID) \ + $(wildcard include/config/MODULE_SIG) \ + $(wildcard include/config/KALLSYMS) \ + $(wildcard include/config/BPF_EVENTS) \ + $(wildcard include/config/DEBUG_INFO_BTF_MODULES) \ + $(wildcard include/config/EVENT_TRACING) \ + $(wildcard include/config/MODULE_UNLOAD) \ + $(wildcard include/config/CONSTRUCTORS) \ + $(wildcard include/config/FUNCTION_ERROR_INJECTION) \ + include/linux/buildid.h \ + $(wildcard include/config/CRASH_CORE) \ + include/linux/kmod.h \ + include/linux/umh.h \ + include/linux/elf.h \ + $(wildcard include/config/ARCH_USE_GNU_PROPERTY) \ + $(wildcard include/config/ARCH_HAVE_ELF_PROT) \ + arch/x86/include/asm/elf.h \ + $(wildcard include/config/X86_X32_ABI) \ + arch/x86/include/asm/user.h \ + arch/x86/include/asm/user_64.h \ + arch/x86/include/asm/fsgsbase.h \ + arch/x86/include/asm/vdso.h \ + $(wildcard include/config/X86_X32) \ + include/uapi/linux/elf.h \ + include/uapi/linux/elf-em.h \ + include/linux/moduleparam.h \ + $(wildcard include/config/ALPHA) \ + $(wildcard include/config/PPC64) \ + include/linux/rbtree_latch.h \ + include/linux/error-injection.h \ + include/asm-generic/error-injection.h \ + include/linux/cfi.h \ + $(wildcard include/config/CFI_CLANG_SHADOW) \ + arch/x86/include/asm/module.h \ + $(wildcard include/config/UNWINDER_ORC) \ + include/asm-generic/module.h \ + $(wildcard include/config/HAVE_MOD_ARCH_SPECIFIC) \ + $(wildcard include/config/MODULES_USE_ELF_REL) \ + $(wildcard include/config/MODULES_USE_ELF_RELA) \ + arch/x86/include/asm/orc_types.h \ + include/linux/dma-mapping.h \ + $(wildcard include/config/DMA_API_DEBUG) \ + $(wildcard include/config/HAS_DMA) \ + $(wildcard include/config/NEED_DMA_MAP_STATE) \ + include/linux/dma-direction.h \ + include/linux/scatterlist.h \ + $(wildcard include/config/NEED_SG_DMA_LENGTH) \ + $(wildcard include/config/DEBUG_SG) \ + $(wildcard include/config/SGL_ALLOC) \ + $(wildcard include/config/ARCH_NO_SG_CHAIN) \ + $(wildcard include/config/SG_POOL) \ + arch/x86/include/asm/io.h \ + $(wildcard include/config/MTRR) \ + $(wildcard include/config/X86_PAT) \ + arch/x86/include/generated/asm/early_ioremap.h \ + include/asm-generic/early_ioremap.h \ + $(wildcard include/config/GENERIC_EARLY_IOREMAP) \ + include/asm-generic/iomap.h \ + $(wildcard include/config/HAS_IOPORT_MAP) \ + include/asm-generic/pci_iomap.h \ + $(wildcard include/config/PCI) \ + $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ + $(wildcard include/config/GENERIC_PCI_IOMAP) \ + include/asm-generic/io.h \ + $(wildcard include/config/GENERIC_IOMAP) \ + $(wildcard include/config/GENERIC_IOREMAP) \ + $(wildcard include/config/VIRT_TO_BUS) \ + include/linux/logic_pio.h \ + $(wildcard include/config/INDIRECT_PIO) \ + include/linux/fwnode.h \ + include/linux/vmalloc.h \ + $(wildcard include/config/HAVE_ARCH_HUGE_VMALLOC) \ + arch/x86/include/asm/vmalloc.h \ + include/linux/interrupt.h \ + $(wildcard include/config/IRQ_FORCED_THREADING) \ + $(wildcard include/config/GENERIC_IRQ_PROBE) \ + $(wildcard include/config/IRQ_TIMINGS) \ + include/linux/irqreturn.h \ + include/linux/irqnr.h \ + include/uapi/linux/irqnr.h \ + include/linux/hardirq.h \ + include/linux/context_tracking_state.h \ + $(wildcard include/config/CONTEXT_TRACKING) \ + include/linux/ftrace_irq.h \ + $(wildcard include/config/HWLAT_TRACER) \ + $(wildcard include/config/OSNOISE_TRACER) \ + include/linux/vtime.h \ + $(wildcard include/config/VIRT_CPU_ACCOUNTING) \ + $(wildcard include/config/IRQ_TIME_ACCOUNTING) \ + arch/x86/include/asm/hardirq.h \ + $(wildcard include/config/KVM_INTEL) \ + $(wildcard include/config/X86_THERMAL_VECTOR) \ + $(wildcard include/config/X86_MCE_THRESHOLD) \ + $(wildcard include/config/X86_MCE_AMD) \ + $(wildcard include/config/X86_HV_CALLBACK_VECTOR) \ + arch/x86/include/asm/irq.h \ + arch/x86/include/asm/sections.h \ + include/asm-generic/sections.h \ + include/linux/pci.h \ + $(wildcard include/config/PCI_IOV) \ + $(wildcard include/config/PCIEAER) \ + $(wildcard include/config/PCIEPORTBUS) \ + $(wildcard include/config/PCIEASPM) \ + $(wildcard include/config/HOTPLUG_PCI_PCIE) \ + $(wildcard include/config/PCIE_PTM) \ + $(wildcard include/config/PCIE_DPC) \ + $(wildcard include/config/PCI_ATS) \ + $(wildcard include/config/PCI_PRI) \ + $(wildcard include/config/PCI_PASID) \ + $(wildcard include/config/PCI_DOMAINS_GENERIC) \ + $(wildcard include/config/PCI_DOMAINS) \ + $(wildcard include/config/PCI_QUIRKS) \ + $(wildcard include/config/ACPI_MCFG) \ + $(wildcard include/config/HOTPLUG_PCI) \ + $(wildcard include/config/EEH) \ + include/linux/mod_devicetable.h \ + include/linux/io.h \ + include/linux/resource_ext.h \ + include/linux/slab.h \ + $(wildcard include/config/DEBUG_SLAB) \ + $(wildcard include/config/FAILSLAB) \ + $(wildcard include/config/HAVE_HARDENED_USERCOPY_ALLOCATOR) \ + $(wildcard include/config/SLAB) \ + $(wildcard include/config/SLUB) \ + $(wildcard include/config/SLOB) \ + $(wildcard include/config/CC_IS_GCC) \ + $(wildcard include/config/CLANG_VERSION) \ + include/uapi/linux/pci.h \ + include/uapi/linux/pci_regs.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + arch/x86/include/asm/pci.h \ + $(wildcard include/config/PCI_MSI_IRQ_DOMAIN) \ + $(wildcard include/config/VMD) \ + arch/x86/include/asm/memtype.h \ + include/asm-generic/pci.h \ + include/linux/pci-dma-compat.h \ + +/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.o: $(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.o) + +$(deps_/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.o): diff --git a/host_software/driver/xdma/Makefile b/host_software/driver/XDMA/linux-kernel/xdma/Makefile similarity index 51% rename from host_software/driver/xdma/Makefile rename to host_software/driver/XDMA/linux-kernel/xdma/Makefile index e362da3..68c0d77 100644 --- a/host_software/driver/xdma/Makefile +++ b/host_software/driver/XDMA/linux-kernel/xdma/Makefile @@ -1,4 +1,11 @@ SHELL = /bin/bash +# +# optional makefile parameters: +# - DEBUG=<0|1>, enable verbose debug print-out in the driver +# - config_bar_num=, xdma pci config bar number +# - xvc_bar_num=, xvc pci bar # +# - xvc_bar_offset=, xvc register base offset +# ifneq ($(xvc_bar_num),) XVC_FLAGS += -D__XVC_BAR_NUM__=$(xvc_bar_num) endif @@ -9,28 +16,33 @@ endif $(warning XVC_FLAGS: $(XVC_FLAGS).) -#topdir := $(shell cd $(src)/.. && pwd) +topdir := $(shell cd $(src)/.. && pwd) TARGET_MODULE:=xdma -#EXTRA_CFLAGS := -I$(topdir)/include $(XVC_FLAGS) -#EXTRA_CFLAGS += -D__LIBXDMA_DEBUG__ +EXTRA_CFLAGS := -I$(topdir)/include $(XVC_FLAGS) +ifeq ($(DEBUG),1) + EXTRA_CFLAGS += -D__LIBXDMA_DEBUG__ +endif +ifneq ($(config_bar_num),) + EXTRA_CFLAGS += -DXDMA_CONFIG_BAR_NUM=$(config_bar_num) +endif #EXTRA_CFLAGS += -DINTERNAL_TESTING ifneq ($(KERNELRELEASE),) - $(TARGET_MODULE)-objs := libxdma.o xdma_cdev.o cdev_ctrl.o cdev_events.o cdev_sgdma.o cdev_xvc.o cdev_bypass.o xdma_mod.o + $(TARGET_MODULE)-objs := libxdma.o xdma_cdev.o cdev_ctrl.o cdev_events.o cdev_sgdma.o cdev_xvc.o cdev_bypass.o xdma_mod.o xdma_thread.o obj-m := $(TARGET_MODULE).o else BUILDSYSTEM_DIR:=/lib/modules/$(shell uname -r)/build PWD:=$(shell pwd) -all : +all : $(MAKE) -C $(BUILDSYSTEM_DIR) M=$(PWD) modules clean: $(MAKE) -C $(BUILDSYSTEM_DIR) M=$(PWD) clean + @/bin/rm -f *.ko modules.order *.mod.c *.o *.o.ur-safe .*.o.cmd install: all $(MAKE) -C $(BUILDSYSTEM_DIR) M=$(PWD) modules_install endif - diff --git a/host_software/driver/XDMA/linux-kernel/xdma/Module.symvers b/host_software/driver/XDMA/linux-kernel/xdma/Module.symvers new file mode 100644 index 0000000..e69de29 diff --git a/host_software/driver/xdma/cdev_bypass.c b/host_software/driver/XDMA/linux-kernel/xdma/cdev_bypass.c similarity index 73% rename from host_software/driver/xdma/cdev_bypass.c rename to host_software/driver/XDMA/linux-kernel/xdma/cdev_bypass.c index 4b84526..4040ee0 100644 --- a/host_software/driver/xdma/cdev_bypass.c +++ b/host_software/driver/XDMA/linux-kernel/xdma/cdev_bypass.c @@ -4,16 +4,24 @@ * Copyright (c) 2016-present, Xilinx, Inc. * All rights reserved. * - * This source code is licensed under both the BSD-style license (found in the - * LICENSE file in the root directory of this source tree) and the GPLv2 (found - * in the COPYING file in the root directory of this source tree). - * You may select, at your option, one of the above-listed licenses. + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". */ +#define pr_fmt(fmt) KBUILD_MODNAME ":%s: " fmt, __func__ #include "libxdma_api.h" #include "xdma_cdev.h" -#define write_register(v,mem,off) iowrite32(v, mem) +#define write_register(v, mem, off) iowrite32(v, mem) static int copy_desc_data(struct xdma_transfer *transfer, char __user *buf, size_t *buf_offset, size_t buf_size) @@ -22,8 +30,15 @@ static int copy_desc_data(struct xdma_transfer *transfer, char __user *buf, int copy_err; int rc = 0; - BUG_ON(!buf); - BUG_ON(!buf_offset); + if (!buf) { + pr_err("Invalid user buffer\n"); + return -EINVAL; + } + + if (!buf_offset) { + pr_err("Invalid user buffer offset\n"); + return -EINVAL; + } /* Fill user buffer with descriptor data */ for (i = 0; i < transfer->desc_num; i++) { @@ -64,7 +79,7 @@ static ssize_t char_bypass_read(struct file *file, char __user *buf, xdev = xcdev->xdev; engine = xcdev->engine; - dbg_sg("In char_bypass_read()\n"); + dbg_sg("In %s()\n", __func__); if (count & 3) { dbg_sg("Buffer size must be a multiple of 4 bytes\n"); @@ -107,7 +122,7 @@ static ssize_t char_bypass_write(struct file *file, const char __user *buf, struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data; u32 desc_data; - u32 *bypass_addr; + void __iomem *bypass_addr; size_t buf_offset = 0; int rc = 0; int copy_err; @@ -133,18 +148,21 @@ static ssize_t char_bypass_write(struct file *file, const char __user *buf, return -ENODEV; } - dbg_sg("In char_bypass_write()\n"); + dbg_sg("In %s()\n", __func__); spin_lock(&engine->lock); /* Write descriptor data to the bypass BAR */ - bypass_addr = (u32 *)xdev->bar[xdev->bypass_bar_idx]; - bypass_addr += engine->bypass_offset; + bypass_addr = xdev->bar[xdev->bypass_bar_idx]; + bypass_addr = (void __iomem *)( + (u32 __iomem *)bypass_addr + engine->bypass_offset + ); while (buf_offset < count) { copy_err = copy_from_user(&desc_data, &buf[buf_offset], sizeof(u32)); if (!copy_err) { - write_register(desc_data, bypass_addr, bypass_addr - engine->bypass_offset); + write_register(desc_data, bypass_addr, + bypass_addr - engine->bypass_offset); buf_offset += sizeof(u32); rc = buf_offset; } else { @@ -176,5 +194,5 @@ static const struct file_operations bypass_fops = { void cdev_bypass_init(struct xdma_cdev *xcdev) { - cdev_init(&xcdev->cdev, &bypass_fops); + cdev_init(&xcdev->cdev, &bypass_fops); } diff --git a/host_software/driver/xdma/cdev_ctrl.c b/host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.c similarity index 81% rename from host_software/driver/xdma/cdev_ctrl.c rename to host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.c index 2de5c5e..dbc41ef 100644 --- a/host_software/driver/xdma/cdev_ctrl.c +++ b/host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.c @@ -4,10 +4,17 @@ * Copyright (c) 2016-present, Xilinx, Inc. * All rights reserved. * - * This source code is licensed under both the BSD-style license (found in the - * LICENSE file in the root directory of this source tree) and the GPLv2 (found - * in the COPYING file in the root directory of this source tree). - * You may select, at your option, one of the above-listed licenses. + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". */ #define pr_fmt(fmt) KBUILD_MODNAME ":%s: " fmt, __func__ @@ -17,6 +24,12 @@ #include "xdma_cdev.h" #include "cdev_ctrl.h" +#if ACCESS_OK_2_ARGS +#define xlx_access_ok(X, Y, Z) access_ok(Y, Z) +#else +#define xlx_access_ok(X, Y, Z) access_ok(X, Y, Z) +#endif + /* * character device file operations for control bus (through control bridge) */ @@ -25,13 +38,13 @@ static ssize_t char_ctrl_read(struct file *fp, char __user *buf, size_t count, { struct xdma_cdev *xcdev = (struct xdma_cdev *)fp->private_data; struct xdma_dev *xdev; - void *reg; + void __iomem *reg; u32 w; int rv; rv = xcdev_check(__func__, xcdev, 0); if (rv < 0) - return rv; + return rv; xdev = xcdev->xdev; /* only 32-bit aligned and 32-bit multiples */ @@ -41,8 +54,8 @@ static ssize_t char_ctrl_read(struct file *fp, char __user *buf, size_t count, reg = xdev->bar[xcdev->bar] + *pos; //w = read_register(reg); w = ioread32(reg); - dbg_sg("char_ctrl_read(@%p, count=%ld, pos=%d) value = 0x%08x\n", reg, - (long)count, (int)*pos, w); + dbg_sg("%s(@%p, count=%ld, pos=%d) value = 0x%08x\n", + __func__, reg, (long)count, (int)*pos, w); rv = copy_to_user(buf, &w, 4); if (rv) dbg_sg("Copy to userspace failed but continuing\n"); @@ -56,13 +69,13 @@ static ssize_t char_ctrl_write(struct file *file, const char __user *buf, { struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data; struct xdma_dev *xdev; - void *reg; + void __iomem *reg; u32 w; int rv; rv = xcdev_check(__func__, xcdev, 0); if (rv < 0) - return rv; + return rv; xdev = xcdev->xdev; /* only 32-bit aligned and 32-bit multiples */ @@ -72,12 +85,11 @@ static ssize_t char_ctrl_write(struct file *file, const char __user *buf, /* first address is BAR base plus file position offset */ reg = xdev->bar[xcdev->bar] + *pos; rv = copy_from_user(&w, buf, 4); - if (rv) { + if (rv) pr_info("copy from user failed %d/4, but continuing.\n", rv); - } - dbg_sg("char_ctrl_write(0x%08x @%p, count=%ld, pos=%d)\n", w, reg, - (long)count, (int)*pos); + dbg_sg("%s(0x%08x @%p, count=%ld, pos=%d)\n", + __func__, w, reg, (long)count, (int)*pos); //write_register(w, reg); iowrite32(w, reg); *pos += 4; @@ -122,9 +134,13 @@ long char_ctrl_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) rv = xcdev_check(__func__, xcdev, 0); if (rv < 0) - return rv; - xdev = xcdev->xdev; + return rv; + xdev = xcdev->xdev; + if (!xdev) { + pr_info("cmd %u, xdev NULL.\n", cmd); + return -EINVAL; + } pr_info("cmd 0x%x, xdev 0x%p, pdev 0x%p.\n", cmd, xdev, xdev->pdev); if (_IOC_TYPE(cmd) != XDMA_IOC_MAGIC) { @@ -134,10 +150,10 @@ long char_ctrl_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) } if (_IOC_DIR(cmd) & _IOC_READ) - result = !access_ok(VERIFY_WRITE, (void __user *)arg, + result = !xlx_access_ok(VERIFY_WRITE, (void __user *)arg, _IOC_SIZE(cmd)); else if (_IOC_DIR(cmd) & _IOC_WRITE) - result = !access_ok(VERIFY_READ, (void __user *)arg, + result = !xlx_access_ok(VERIFY_READ, (void __user *)arg, _IOC_SIZE(cmd)); if (result) { @@ -147,7 +163,7 @@ long char_ctrl_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) switch (cmd) { case XDMA_IOCINFO: - if (copy_from_user((void *)&ioctl_obj, (void *) arg, + if (copy_from_user((void *)&ioctl_obj, (void __user *) arg, sizeof(struct xdma_ioc_base))) { pr_err("copy_from_user failed.\n"); return -EFAULT; @@ -158,20 +174,11 @@ long char_ctrl_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) ioctl_obj.magic, XDMA_XCL_MAGIC); return -ENOTTY; } - return version_ioctl(xcdev, (void __user *)arg); case XDMA_IOCOFFLINE: - if (!xdev) { - pr_info("cmd %u, xdev NULL.\n", cmd); - return -EINVAL; - } xdma_device_offline(xdev->pdev, xdev); break; case XDMA_IOCONLINE: - if (!xdev) { - pr_info("cmd %u, xdev NULL.\n", cmd); - return -EINVAL; - } xdma_device_online(xdev->pdev, xdev); break; default: @@ -194,7 +201,7 @@ int bridge_mmap(struct file *file, struct vm_area_struct *vma) rv = xcdev_check(__func__, xcdev, 0); if (rv < 0) - return rv; + return rv; xdev = xcdev->xdev; off = vma->vm_pgoff << PAGE_SHIFT; @@ -209,8 +216,7 @@ int bridge_mmap(struct file *file, struct vm_area_struct *vma) dbg_sg("mmap(): cdev->bar = %d\n", xcdev->bar); dbg_sg("mmap(): xdev = 0x%p\n", xdev); dbg_sg("mmap(): pci_dev = 0x%08lx\n", (unsigned long)xdev->pdev); - - dbg_sg("off = 0x%lx\n", off); + dbg_sg("off = 0x%lx, vsize 0x%lu, psize 0x%lu.\n", off, vsize, psize); dbg_sg("start = 0x%llx\n", (unsigned long long)pci_resource_start(xdev->pdev, xcdev->bar)); diff --git a/host_software/driver/xdma/cdev_ctrl.h b/host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.h similarity index 67% rename from host_software/driver/xdma/cdev_ctrl.h rename to host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.h index cb8ef6d..61d5cd1 100644 --- a/host_software/driver/xdma/cdev_ctrl.h +++ b/host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.h @@ -4,10 +4,17 @@ * Copyright (c) 2016-present, Xilinx, Inc. * All rights reserved. * - * This source code is licensed under both the BSD-style license (found in the - * LICENSE file in the root directory of this source tree) and the GPLv2 (found - * in the COPYING file in the root directory of this source tree). - * You may select, at your option, one of the above-listed licenses. + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". */ #ifndef _XDMA_IOCALLS_POSIX_H_ @@ -53,14 +60,14 @@ struct xdma_ioc_base { }; struct xdma_ioc_info { - struct xdma_ioc_base base; - unsigned short vendor; - unsigned short device; - unsigned short subsystem_vendor; - unsigned short subsystem_device; - unsigned int dma_engine_version; - unsigned int driver_version; - unsigned long long feature_id; + struct xdma_ioc_base base; + unsigned short vendor; + unsigned short device; + unsigned short subsystem_vendor; + unsigned short subsystem_device; + unsigned int dma_engine_version; + unsigned int driver_version; + unsigned long long feature_id; unsigned short domain; unsigned char bus; unsigned char dev; diff --git a/host_software/driver/xdma/cdev_events.c b/host_software/driver/XDMA/linux-kernel/xdma/cdev_events.c similarity index 80% rename from host_software/driver/xdma/cdev_events.c rename to host_software/driver/XDMA/linux-kernel/xdma/cdev_events.c index 3ada7db..4942d96 100644 --- a/host_software/driver/xdma/cdev_events.c +++ b/host_software/driver/XDMA/linux-kernel/xdma/cdev_events.c @@ -4,10 +4,17 @@ * Copyright (c) 2016-present, Xilinx, Inc. * All rights reserved. * - * This source code is licensed under both the BSD-style license (found in the - * LICENSE file in the root directory of this source tree) and the GPLv2 (found - * in the COPYING file in the root directory of this source tree). - * You may select, at your option, one of the above-listed licenses. + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". */ #define pr_fmt(fmt) KBUILD_MODNAME ":%s: " fmt, __func__ @@ -28,7 +35,7 @@ static ssize_t char_events_read(struct file *file, char __user *buf, rv = xcdev_check(__func__, xcdev, 0); if (rv < 0) - return rv; + return rv; user_irq = xcdev->user_irq; if (!user_irq) { pr_info("xcdev 0x%p, user_irq NULL.\n", xcdev); @@ -77,7 +84,7 @@ static unsigned int char_events_poll(struct file *file, poll_table *wait) rv = xcdev_check(__func__, xcdev, 0); if (rv < 0) - return rv; + return rv; user_irq = xcdev->user_irq; if (!user_irq) { pr_info("xcdev 0x%p, user_irq NULL.\n", xcdev); diff --git a/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.c b/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.c new file mode 100644 index 0000000..2b13000 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.c @@ -0,0 +1,910 @@ +/* + * This file is part of the Xilinx DMA IP Core driver for Linux + * + * Copyright (c) 2016-present, Xilinx, Inc. + * All rights reserved. + * + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". + */ + +#define pr_fmt(fmt) KBUILD_MODNAME ":%s: " fmt, __func__ + +#include +#include +#include +#include +#include +#include +#include +#include +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 16, 0) +#include +#endif +#include "libxdma_api.h" +#include "xdma_cdev.h" +#include "cdev_sgdma.h" +#include "xdma_thread.h" + +/* Module Parameters */ +unsigned int h2c_timeout = 10; +module_param(h2c_timeout, uint, 0644); +MODULE_PARM_DESC(h2c_timeout, "H2C sgdma timeout in seconds, default is 10 sec."); + +unsigned int c2h_timeout = 10; +module_param(c2h_timeout, uint, 0644); +MODULE_PARM_DESC(c2h_timeout, "C2H sgdma timeout in seconds, default is 10 sec."); + +extern struct kmem_cache *cdev_cache; +static void char_sgdma_unmap_user_buf(struct xdma_io_cb *cb, bool write); + + +static void async_io_handler(unsigned long cb_hndl, int err) +{ + struct xdma_cdev *xcdev; + struct xdma_engine *engine; + struct xdma_dev *xdev; + struct xdma_io_cb *cb = (struct xdma_io_cb *)cb_hndl; + struct cdev_async_io *caio = (struct cdev_async_io *)cb->private; + ssize_t numbytes = 0; + ssize_t res, res2; + int lock_stat; + int rv; + + if (caio == NULL) { + pr_err("Invalid work struct\n"); + return; + } + + xcdev = (struct xdma_cdev *)caio->iocb->ki_filp->private_data; + rv = xcdev_check(__func__, xcdev, 1); + if (rv < 0) + return; + + /* Safeguarding for cancel requests */ + lock_stat = spin_trylock(&caio->lock); + if (!lock_stat) { + pr_err("caio lock not acquired\n"); + goto skip_dev_lock; + } + + if (false != caio->cancel) { + pr_err("skipping aio\n"); + goto skip_tran; + } + + engine = xcdev->engine; + xdev = xcdev->xdev; + + if (!err) + numbytes = xdma_xfer_completion((void *)cb, xdev, + engine->channel, cb->write, cb->ep_addr, + &cb->sgt, 0, + cb->write ? h2c_timeout * 1000 : + c2h_timeout * 1000); + + char_sgdma_unmap_user_buf(cb, cb->write); + + caio->res2 |= (err < 0) ? err : 0; + if (caio->res2) + caio->err_cnt++; + + caio->cmpl_cnt++; + caio->res += numbytes; + + if (caio->cmpl_cnt == caio->req_cnt) { + res = caio->res; + res2 = caio->res2; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 1, 0) + caio->iocb->ki_complete(caio->iocb, res, res2); +#else + aio_complete(caio->iocb, res, res2); +#endif +skip_tran: + spin_unlock(&caio->lock); + kmem_cache_free(cdev_cache, caio); + kfree(cb); + return; + } + spin_unlock(&caio->lock); + return; + +skip_dev_lock: +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 1, 0) + caio->iocb->ki_complete(caio->iocb, numbytes, -EBUSY); +#else + aio_complete(caio->iocb, numbytes, -EBUSY); +#endif + kmem_cache_free(cdev_cache, caio); +} + + +/* + * character device file operations for SG DMA engine + */ +static loff_t char_sgdma_llseek(struct file *file, loff_t off, int whence) +{ + loff_t newpos = 0; + + switch (whence) { + case 0: /* SEEK_SET */ + newpos = off; + break; + case 1: /* SEEK_CUR */ + newpos = file->f_pos + off; + break; + case 2: /* SEEK_END, @TODO should work from end of address space */ + newpos = UINT_MAX + off; + break; + default: /* can't happen */ + return -EINVAL; + } + if (newpos < 0) + return -EINVAL; + file->f_pos = newpos; + dbg_fops("%s: pos=%lld\n", __func__, (signed long long)newpos); + +#if 0 + pr_err("0x%p, off %lld, whence %d -> pos %lld.\n", + file, (signed long long)off, whence, (signed long long)off); +#endif + + return newpos; +} + +/* char_sgdma_read_write() -- Read from or write to the device + * + * @buf userspace buffer + * @count number of bytes in the userspace buffer + * @pos byte-address in device + * @dir_to_device If !0, a write to the device is performed + * + * Iterate over the userspace buffer, taking at most 255 * PAGE_SIZE bytes for + * each DMA transfer. + * + * For each transfer, get the user pages, build a sglist, map, build a + * descriptor table. submit the transfer. wait for the interrupt handler + * to wake us on completion. + */ + +static int check_transfer_align(struct xdma_engine *engine, + const char __user *buf, size_t count, loff_t pos, int sync) +{ + if (!engine) { + pr_err("Invalid DMA engine\n"); + return -EINVAL; + } + + /* AXI ST or AXI MM non-incremental addressing mode? */ + if (engine->non_incr_addr) { + int buf_lsb = (int)((uintptr_t)buf) & (engine->addr_align - 1); + size_t len_lsb = count & ((size_t)engine->len_granularity - 1); + int pos_lsb = (int)pos & (engine->addr_align - 1); + + dbg_tfr("AXI ST or MM non-incremental\n"); + dbg_tfr("buf_lsb = %d, pos_lsb = %d, len_lsb = %ld\n", buf_lsb, + pos_lsb, len_lsb); + + if (buf_lsb != 0) { + dbg_tfr("FAIL: non-aligned buffer address %p\n", buf); + return -EINVAL; + } + + if ((pos_lsb != 0) && (sync)) { + dbg_tfr("FAIL: non-aligned AXI MM FPGA addr 0x%llx\n", + (unsigned long long)pos); + return -EINVAL; + } + + if (len_lsb != 0) { + dbg_tfr("FAIL: len %d is not a multiple of %d\n", + (int)count, + (int)engine->len_granularity); + return -EINVAL; + } + /* AXI MM incremental addressing mode */ + } else { + int buf_lsb = (int)((uintptr_t)buf) & (engine->addr_align - 1); + int pos_lsb = (int)pos & (engine->addr_align - 1); + + if (buf_lsb != pos_lsb) { + dbg_tfr("FAIL: Misalignment error\n"); + dbg_tfr("host addr %p, FPGA addr 0x%llx\n", buf, pos); + return -EINVAL; + } + } + + return 0; +} + +/* + * Map a user memory range into a scatterlist + * inspired by vhost_scsi_map_to_sgl() + * Returns the number of scatterlist entries used or -errno on error. + */ +static inline void xdma_io_cb_release(struct xdma_io_cb *cb) +{ + int i; + + for (i = 0; i < cb->pages_nr; i++) + put_page(cb->pages[i]); + + sg_free_table(&cb->sgt); + kfree(cb->pages); + + memset(cb, 0, sizeof(*cb)); +} + +static void char_sgdma_unmap_user_buf(struct xdma_io_cb *cb, bool write) +{ + int i; + + sg_free_table(&cb->sgt); + + if (!cb->pages || !cb->pages_nr) + return; + + for (i = 0; i < cb->pages_nr; i++) { + if (cb->pages[i]) { + if (!write) + set_page_dirty_lock(cb->pages[i]); + put_page(cb->pages[i]); + } else + break; + } + + if (i != cb->pages_nr) + pr_info("sgl pages %d/%u.\n", i, cb->pages_nr); + + kfree(cb->pages); + cb->pages = NULL; +} + +static int char_sgdma_map_user_buf_to_sgl(struct xdma_io_cb *cb, bool write) +{ + struct sg_table *sgt = &cb->sgt; + unsigned long len = cb->len; + void __user *buf = cb->buf; + struct scatterlist *sg; + unsigned int pages_nr = (((unsigned long)buf + len + PAGE_SIZE - 1) - + ((unsigned long)buf & PAGE_MASK)) + >> PAGE_SHIFT; + int i; + int rv; + + if (pages_nr == 0) + return -EINVAL; + + if (sg_alloc_table(sgt, pages_nr, GFP_KERNEL)) { + pr_err("sgl OOM.\n"); + return -ENOMEM; + } + + cb->pages = kcalloc(pages_nr, sizeof(struct page *), GFP_KERNEL); + if (!cb->pages) { + pr_err("pages OOM.\n"); + rv = -ENOMEM; + goto err_out; + } + + rv = get_user_pages_fast((unsigned long)buf, pages_nr, 1/* write */, + cb->pages); + /* No pages were pinned */ + if (rv < 0) { + pr_err("unable to pin down %u user pages, %d.\n", + pages_nr, rv); + goto err_out; + } + /* Less pages pinned than wanted */ + if (rv != pages_nr) { + pr_err("unable to pin down all %u user pages, %d.\n", + pages_nr, rv); + cb->pages_nr = rv; + rv = -EFAULT; + goto err_out; + } + + for (i = 1; i < pages_nr; i++) { + if (cb->pages[i - 1] == cb->pages[i]) { + pr_err("duplicate pages, %d, %d.\n", + i - 1, i); + rv = -EFAULT; + cb->pages_nr = pages_nr; + goto err_out; + } + } + + sg = sgt->sgl; + for (i = 0; i < pages_nr; i++, sg = sg_next(sg)) { + unsigned int offset = offset_in_page(buf); + unsigned int nbytes = + min_t(unsigned int, PAGE_SIZE - offset, len); + + flush_dcache_page(cb->pages[i]); + sg_set_page(sg, cb->pages[i], nbytes, offset); + + buf += nbytes; + len -= nbytes; + } + + if (len) { + pr_err("Invalid user buffer length. Cannot map to sgl\n"); + return -EINVAL; + } + cb->pages_nr = pages_nr; + return 0; + +err_out: + char_sgdma_unmap_user_buf(cb, write); + + return rv; +} + +static ssize_t char_sgdma_read_write(struct file *file, const char __user *buf, + size_t count, loff_t *pos, bool write) +{ + int rv; + ssize_t res = 0; + struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data; + struct xdma_dev *xdev; + struct xdma_engine *engine; + struct xdma_io_cb cb; + + rv = xcdev_check(__func__, xcdev, 1); + if (rv < 0) + return rv; + xdev = xcdev->xdev; + engine = xcdev->engine; + + dbg_tfr("file 0x%p, priv 0x%p, buf 0x%p,%llu, pos %llu, W %d, %s.\n", + file, file->private_data, buf, (u64)count, (u64)*pos, write, + engine->name); + + if ((write && engine->dir != DMA_TO_DEVICE) || + (!write && engine->dir != DMA_FROM_DEVICE)) { + pr_err("r/w mismatch. W %d, dir %d.\n", + write, engine->dir); + return -EINVAL; + } + + rv = check_transfer_align(engine, buf, count, *pos, 1); + if (rv) { + pr_info("Invalid transfer alignment detected\n"); + return rv; + } + + memset(&cb, 0, sizeof(struct xdma_io_cb)); + cb.buf = (char __user *)buf; + cb.len = count; + cb.ep_addr = (u64)*pos; + cb.write = write; + rv = char_sgdma_map_user_buf_to_sgl(&cb, write); + if (rv < 0) + return rv; + + res = xdma_xfer_submit(xdev, engine->channel, write, *pos, &cb.sgt, + 0, write ? h2c_timeout * 1000 : + c2h_timeout * 1000); + + char_sgdma_unmap_user_buf(&cb, write); + + return res; +} + + +static ssize_t char_sgdma_write(struct file *file, const char __user *buf, + size_t count, loff_t *pos) +{ + return char_sgdma_read_write(file, buf, count, pos, 1); +} + +static ssize_t char_sgdma_read(struct file *file, char __user *buf, + size_t count, loff_t *pos) +{ + return char_sgdma_read_write(file, buf, count, pos, 0); +} + +static ssize_t cdev_aio_write(struct kiocb *iocb, const struct iovec *io, + unsigned long count, loff_t pos) +{ + struct xdma_cdev *xcdev = (struct xdma_cdev *) + iocb->ki_filp->private_data; + struct cdev_async_io *caio; + struct xdma_engine *engine; + struct xdma_dev *xdev; + int rv; + unsigned long i; + + if (!xcdev) { + pr_info("file 0x%p, xcdev NULL, %llu, pos %llu, W %d.\n", + iocb->ki_filp, (u64)count, (u64)pos, 1); + return -EINVAL; + } + + engine = xcdev->engine; + xdev = xcdev->xdev; + + if (engine->dir != DMA_TO_DEVICE) { + pr_err("r/w mismatch. WRITE, dir %d.\n", + engine->dir); + return -EINVAL; + } + + caio = kmem_cache_alloc(cdev_cache, GFP_KERNEL); + memset(caio, 0, sizeof(struct cdev_async_io)); + + caio->cb = kzalloc(count * (sizeof(struct xdma_io_cb)), GFP_KERNEL); + + spin_lock_init(&caio->lock); + iocb->private = caio; + caio->iocb = iocb; + caio->write = true; + caio->cancel = false; + caio->req_cnt = count; + + for (i = 0; i < count; i++) { + + memset(&(caio->cb[i]), 0, sizeof(struct xdma_io_cb)); + + caio->cb[i].buf = io[i].iov_base; + caio->cb[i].len = io[i].iov_len; + caio->cb[i].ep_addr = (u64)pos; + caio->cb[i].write = true; + caio->cb[i].private = caio; + caio->cb[i].io_done = async_io_handler; + rv = check_transfer_align(engine, caio->cb[i].buf, + caio->cb[i].len, pos, 1); + if (rv) { + pr_info("Invalid transfer alignment detected\n"); + kmem_cache_free(cdev_cache, caio); + return rv; + } + + rv = char_sgdma_map_user_buf_to_sgl(&caio->cb[i], true); + if (rv < 0) + return rv; + + rv = xdma_xfer_submit_nowait((void *)&caio->cb[i], xdev, + engine->channel, caio->cb[i].write, + caio->cb[i].ep_addr, &caio->cb[i].sgt, + 0, h2c_timeout * 1000); + } + + if (engine->cmplthp) + xdma_kthread_wakeup(engine->cmplthp); + + return -EIOCBQUEUED; +} + +static ssize_t cdev_aio_read(struct kiocb *iocb, const struct iovec *io, + unsigned long count, loff_t pos) +{ + + struct xdma_cdev *xcdev = (struct xdma_cdev *) + iocb->ki_filp->private_data; + struct cdev_async_io *caio; + struct xdma_engine *engine; + struct xdma_dev *xdev; + int rv; + unsigned long i; + + if (!xcdev) { + pr_info("file 0x%p, xcdev NULL, %llu, pos %llu, W %d.\n", + iocb->ki_filp, (u64)count, (u64)pos, 1); + return -EINVAL; + } + + engine = xcdev->engine; + xdev = xcdev->xdev; + + if (engine->dir != DMA_FROM_DEVICE) { + pr_err("r/w mismatch. READ, dir %d.\n", + engine->dir); + return -EINVAL; + } + + caio = kmem_cache_alloc(cdev_cache, GFP_KERNEL); + memset(caio, 0, sizeof(struct cdev_async_io)); + + caio->cb = kzalloc(count * (sizeof(struct xdma_io_cb)), GFP_KERNEL); + + spin_lock_init(&caio->lock); + iocb->private = caio; + caio->iocb = iocb; + caio->write = false; + caio->cancel = false; + caio->req_cnt = count; + + for (i = 0; i < count; i++) { + + memset(&(caio->cb[i]), 0, sizeof(struct xdma_io_cb)); + + caio->cb[i].buf = io[i].iov_base; + caio->cb[i].len = io[i].iov_len; + caio->cb[i].ep_addr = (u64)pos; + caio->cb[i].write = false; + caio->cb[i].private = caio; + caio->cb[i].io_done = async_io_handler; + + rv = check_transfer_align(engine, caio->cb[i].buf, + caio->cb[i].len, pos, 1); + if (rv) { + pr_info("Invalid transfer alignment detected\n"); + kmem_cache_free(cdev_cache, caio); + return rv; + } + + rv = char_sgdma_map_user_buf_to_sgl(&caio->cb[i], true); + if (rv < 0) + return rv; + + rv = xdma_xfer_submit_nowait((void *)&caio->cb[i], xdev, + engine->channel, caio->cb[i].write, + caio->cb[i].ep_addr, &caio->cb[i].sgt, + 0, c2h_timeout * 1000); + } + + if (engine->cmplthp) + xdma_kthread_wakeup(engine->cmplthp); + + return -EIOCBQUEUED; +} + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 16, 0) +static ssize_t cdev_write_iter(struct kiocb *iocb, struct iov_iter *io) +{ + return cdev_aio_write(iocb, io->iov, io->nr_segs, io->iov_offset); +} + +static ssize_t cdev_read_iter(struct kiocb *iocb, struct iov_iter *io) +{ + return cdev_aio_read(iocb, io->iov, io->nr_segs, io->iov_offset); +} +#endif + +static int ioctl_do_perf_start(struct xdma_engine *engine, unsigned long arg) +{ + int rv; + struct xdma_dev *xdev; + + if (!engine) { + pr_err("Invalid DMA engine\n"); + return -EINVAL; + } + + xdev = engine->xdev; + if (!xdev) { + pr_err("Invalid xdev\n"); + return -EINVAL; + } + + /* performance measurement already running on this engine? */ + if (engine->xdma_perf) { + dbg_perf("IOCTL_XDMA_PERF_START failed!\n"); + dbg_perf("Perf measurement already seems to be running!\n"); + return -EBUSY; + } + engine->xdma_perf = kzalloc(sizeof(struct xdma_performance_ioctl), + GFP_KERNEL); + + if (!engine->xdma_perf) + return -ENOMEM; + + rv = copy_from_user(engine->xdma_perf, + (struct xdma_performance_ioctl __user *)arg, + sizeof(struct xdma_performance_ioctl)); + + if (rv < 0) { + dbg_perf("Failed to copy from user space 0x%lx\n", arg); + return -EINVAL; + } + if (engine->xdma_perf->version != IOCTL_XDMA_PERF_V1) { + dbg_perf("Unsupported IOCTL version %d\n", + engine->xdma_perf->version); + return -EINVAL; + } + + enable_perf(engine); + dbg_perf("transfer_size = %d\n", engine->xdma_perf->transfer_size); + /* initialize wait queue */ +#if HAS_SWAKE_UP + init_swait_queue_head(&engine->xdma_perf_wq); +#else + init_waitqueue_head(&engine->xdma_perf_wq); +#endif + rv = xdma_performance_submit(xdev, engine); + if (rv < 0) + pr_err("Failed to submit dma performance\n"); + return rv; +} + +static int ioctl_do_perf_stop(struct xdma_engine *engine, unsigned long arg) +{ + struct xdma_transfer *transfer = NULL; + int rv; + + if (!engine) { + pr_err("Invalid DMA engine\n"); + return -EINVAL; + } + + dbg_perf("IOCTL_XDMA_PERF_STOP\n"); + + /* no performance measurement running on this engine? */ + if (!engine->xdma_perf) { + dbg_perf("No measurement in progress\n"); + return -EINVAL; + } + + /* stop measurement */ + transfer = engine_cyclic_stop(engine); + if (!transfer) { + pr_err("Failed to stop cyclic transfer\n"); + return -EINVAL; + } + dbg_perf("Waiting for measurement to stop\n"); + + get_perf_stats(engine); + + rv = copy_to_user((void __user *)arg, engine->xdma_perf, + sizeof(struct xdma_performance_ioctl)); + if (rv) { + dbg_perf("Error copying result to user\n"); + return rv; + } + + kfree(transfer); + + kfree(engine->xdma_perf); + engine->xdma_perf = NULL; + + return 0; +} + +static int ioctl_do_perf_get(struct xdma_engine *engine, unsigned long arg) +{ + int rc; + + if (!engine) { + pr_err("Invalid DMA engine\n"); + return -EINVAL; + } + + dbg_perf("IOCTL_XDMA_PERF_GET\n"); + + if (engine->xdma_perf) { + get_perf_stats(engine); + + rc = copy_to_user((void __user *)arg, engine->xdma_perf, + sizeof(struct xdma_performance_ioctl)); + if (rc) { + dbg_perf("Error copying result to user\n"); + return rc; + } + } else { + dbg_perf("engine->xdma_perf == NULL?\n"); + return -EPROTO; + } + + return 0; +} + +static int ioctl_do_addrmode_set(struct xdma_engine *engine, unsigned long arg) +{ + return engine_addrmode_set(engine, arg); +} + +static int ioctl_do_addrmode_get(struct xdma_engine *engine, unsigned long arg) +{ + int rv; + unsigned long src; + + if (!engine) { + pr_err("Invalid DMA engine\n"); + return -EINVAL; + } + src = !!engine->non_incr_addr; + + dbg_perf("IOCTL_XDMA_ADDRMODE_GET\n"); + rv = put_user(src, (int __user *)arg); + + return rv; +} + +static int ioctl_do_align_get(struct xdma_engine *engine, unsigned long arg) +{ + if (!engine) { + pr_err("Invalid DMA engine\n"); + return -EINVAL; + } + + dbg_perf("IOCTL_XDMA_ALIGN_GET\n"); + return put_user(engine->addr_align, (int __user *)arg); +} + + +static int ioctl_do_aperture_dma(struct xdma_engine *engine, unsigned long arg, + bool write) +{ + struct xdma_aperture_ioctl io; + struct xdma_io_cb cb; + ssize_t res; + int rv; + + rv = copy_from_user(&io, (struct xdma_aperture_ioctl __user *)arg, + sizeof(struct xdma_aperture_ioctl)); + if (rv < 0) { + dbg_tfr("%s failed to copy from user space 0x%lx\n", + engine->name, arg); + return -EINVAL; + } + + dbg_tfr("%s, W %d, buf 0x%lx,%lu, ep %llu, aperture %u.\n", + engine->name, write, io.buffer, io.len, io.ep_addr, + io.aperture); + + if ((write && engine->dir != DMA_TO_DEVICE) || + (!write && engine->dir != DMA_FROM_DEVICE)) { + pr_err("r/w mismatch. W %d, dir %d.\n", write, engine->dir); + return -EINVAL; + } + + rv = check_transfer_align(engine, (char *)io.buffer, io.len, + io.ep_addr, 1); + if (rv) { + pr_info("Invalid transfer alignment detected\n"); + return rv; + } + + memset(&cb, 0, sizeof(struct xdma_io_cb)); + cb.buf = (char __user *)io.buffer; + cb.len = io.len; + cb.ep_addr = io.ep_addr; + cb.write = write; + rv = char_sgdma_map_user_buf_to_sgl(&cb, write); + if (rv < 0) + return rv; + + io.error = 0; + res = xdma_xfer_aperture(engine, write, io.ep_addr, io.aperture, + &cb.sgt, 0, write ? h2c_timeout * 1000 : + c2h_timeout * 1000); + + char_sgdma_unmap_user_buf(&cb, write); + if (res < 0) + io.error = res; + else + io.done = res; + + rv = copy_to_user((struct xdma_aperture_ioctl __user *)arg, &io, + sizeof(struct xdma_aperture_ioctl)); + if (rv < 0) { + dbg_tfr("%s failed to copy to user space 0x%lx, %ld\n", + engine->name, arg, res); + return -EINVAL; + } + + return io.error; +} + +static long char_sgdma_ioctl(struct file *file, unsigned int cmd, + unsigned long arg) +{ + struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data; + struct xdma_dev *xdev; + struct xdma_engine *engine; + + int rv = 0; + + rv = xcdev_check(__func__, xcdev, 1); + if (rv < 0) + return rv; + + xdev = xcdev->xdev; + engine = xcdev->engine; + + switch (cmd) { + case IOCTL_XDMA_PERF_START: + rv = ioctl_do_perf_start(engine, arg); + break; + case IOCTL_XDMA_PERF_STOP: + rv = ioctl_do_perf_stop(engine, arg); + break; + case IOCTL_XDMA_PERF_GET: + rv = ioctl_do_perf_get(engine, arg); + break; + case IOCTL_XDMA_ADDRMODE_SET: + rv = ioctl_do_addrmode_set(engine, arg); + break; + case IOCTL_XDMA_ADDRMODE_GET: + rv = ioctl_do_addrmode_get(engine, arg); + break; + case IOCTL_XDMA_ALIGN_GET: + rv = ioctl_do_align_get(engine, arg); + break; + case IOCTL_XDMA_APERTURE_R: + rv = ioctl_do_aperture_dma(engine, arg, 0); + break; + case IOCTL_XDMA_APERTURE_W: + rv = ioctl_do_aperture_dma(engine, arg, 1); + break; + default: + dbg_perf("Unsupported operation\n"); + rv = -EINVAL; + break; + } + + return rv; +} + +static int char_sgdma_open(struct inode *inode, struct file *file) +{ + struct xdma_cdev *xcdev; + struct xdma_engine *engine; + + char_open(inode, file); + + xcdev = (struct xdma_cdev *)file->private_data; + engine = xcdev->engine; + + if (engine->streaming && engine->dir == DMA_FROM_DEVICE) { + if (engine->device_open == 1) + return -EBUSY; + engine->device_open = 1; + + engine->eop_flush = (file->f_flags & O_TRUNC) ? 1 : 0; + } + + return 0; +} + +static int char_sgdma_close(struct inode *inode, struct file *file) +{ + struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data; + struct xdma_engine *engine; + int rv; + + rv = xcdev_check(__func__, xcdev, 1); + if (rv < 0) + return rv; + + engine = xcdev->engine; + + if (engine->streaming && engine->dir == DMA_FROM_DEVICE) + engine->device_open = 0; + + return 0; +} +static const struct file_operations sgdma_fops = { + .owner = THIS_MODULE, + .open = char_sgdma_open, + .release = char_sgdma_close, + .write = char_sgdma_write, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 16, 0) + .write_iter = cdev_write_iter, +#else + .aio_write = cdev_aio_write, +#endif + .read = char_sgdma_read, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 16, 0) + .read_iter = cdev_read_iter, +#else + .aio_read = cdev_aio_read, +#endif + .unlocked_ioctl = char_sgdma_ioctl, + .llseek = char_sgdma_llseek, +}; + +void cdev_sgdma_init(struct xdma_cdev *xcdev) +{ + cdev_init(&xcdev->cdev, &sgdma_fops); +} diff --git a/host_software/driver/xdma/cdev_sgdma.h b/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.h similarity index 53% rename from host_software/driver/xdma/cdev_sgdma.h rename to host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.h index 7781fae..6f7ae15 100644 --- a/host_software/driver/xdma/cdev_sgdma.h +++ b/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.h @@ -4,10 +4,17 @@ * Copyright (c) 2016-present, Xilinx, Inc. * All rights reserved. * - * This source code is licensed under both the BSD-style license (found in the - * LICENSE file in the root directory of this source tree) and the GPLv2 (found - * in the COPYING file in the root directory of this source tree). - * You may select, at your option, one of the above-listed licenses. + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". */ #ifndef _XDMA_IOCALLS_POSIX_H_ @@ -30,7 +37,7 @@ * * _IO(type,nr) no arguments * _IOR(type,nr,datatype) read data from driver - * _IOW(type,nr.datatype) write data to driver + * _IOW(type,nr,datatype) write data to driver * _IORW(type,nr,datatype) read/write data * * _IOC_DIR(nr) returns direction @@ -39,19 +46,26 @@ * _IOC_SIZE(nr) returns size */ -struct xdma_performance_ioctl -{ - /* IOCTL_XDMA_IOCTL_Vx */ - uint32_t version; - uint32_t transfer_size; - /* measurement */ - uint32_t stopped; - uint32_t iterations; - uint64_t clock_cycle_count; - uint64_t data_cycle_count; - uint64_t pending_count; +struct xdma_performance_ioctl { + /* IOCTL_XDMA_IOCTL_Vx */ + uint32_t version; + uint32_t transfer_size; + /* measurement */ + uint32_t stopped; + uint32_t iterations; + uint64_t clock_cycle_count; + uint64_t data_cycle_count; + uint64_t pending_count; }; +struct xdma_aperture_ioctl { + uint64_t ep_addr; + unsigned int aperture; + unsigned long buffer; + unsigned long len; + int error; + unsigned long done; +}; /* IOCTL codes */ @@ -62,5 +76,7 @@ struct xdma_performance_ioctl #define IOCTL_XDMA_ADDRMODE_SET _IOW('q', 4, int) #define IOCTL_XDMA_ADDRMODE_GET _IOR('q', 5, int) #define IOCTL_XDMA_ALIGN_GET _IOR('q', 6, int) +#define IOCTL_XDMA_APERTURE_R _IOW('q', 7, struct xdma_aperture_ioctl *) +#define IOCTL_XDMA_APERTURE_W _IOW('q', 8, struct xdma_aperture_ioctl *) #endif /* _XDMA_IOCALLS_POSIX_H_ */ diff --git a/host_software/driver/xdma/cdev_xvc.c b/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.c similarity index 70% rename from host_software/driver/xdma/cdev_xvc.c rename to host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.c index 20ebde9..df5a5e8 100644 --- a/host_software/driver/xdma/cdev_xvc.c +++ b/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.c @@ -4,10 +4,17 @@ * Copyright (c) 2016-present, Xilinx, Inc. * All rights reserved. * - * This source code is licensed under both the BSD-style license (found in the - * LICENSE file in the root directory of this source tree) and the GPLv2 (found - * in the COPYING file in the root directory of this source tree). - * You may select, at your option, one of the above-listed licenses. + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". */ #define pr_fmt(fmt) KBUILD_MODNAME ":%s: " fmt, __func__ @@ -25,30 +32,30 @@ #ifdef __REG_DEBUG__ /* SECTION: Function definitions */ -inline void __write_register(const char *fn, u32 value, void *base, +inline void __write_register(const char *fn, u32 value, void __iomem *base, unsigned int off) { - pr_info("%s: 0x%p, W reg 0x%lx, 0x%x.\n", fn, base, off, value); - iowrite32(value, base + off); + pr_info("%s: 0x%p, W reg 0x%lx, 0x%x.\n", fn, base, off, value); + iowrite32(value, base + off); } -inline u32 __read_register(const char *fn, void *base, unsigned int off) +inline u32 __read_register(const char *fn, void __iomem *base, unsigned int off) { u32 v = ioread32(base + off); - pr_info("%s: 0x%p, R reg 0x%lx, 0x%x.\n", fn, base, off, v); - return v; + pr_info("%s: 0x%p, R reg 0x%lx, 0x%x.\n", fn, base, off, v); + return v; } -#define write_register(v,base,off) __write_register(__func__, v, base, off) -#define read_register(base,off) __read_register(__func__, base, off) +#define write_register(v, base, off) __write_register(__func__, v, base, off) +#define read_register(base, off) __read_register(__func__, base, off) #else -#define write_register(v,base,off) iowrite32(v, (base) + (off)) -#define read_register(base,off) ioread32((base) + (off)) +#define write_register(v, base, off) iowrite32(v, (base) + (off)) +#define read_register(base, off) ioread32((base) + (off)) #endif /* #ifdef __REG_DEBUG__ */ -static int xvc_shift_bits(void *base, u32 tms_bits, u32 tdi_bits, +static int xvc_shift_bits(void __iomem *base, u32 tms_bits, u32 tdi_bits, u32 *tdo_bits) { u32 control; @@ -85,7 +92,7 @@ static int xvc_shift_bits(void *base, u32 tms_bits, u32 tdi_bits, static long xvc_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) { - struct xdma_cdev *xcdev = (struct xdma_cdev *)filp->private_data; + struct xdma_cdev *xcdev = (struct xdma_cdev *)filp->private_data; struct xdma_dev *xdev; struct xvc_ioc xvc_obj; unsigned int opcode; @@ -102,6 +109,7 @@ static long xvc_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) rv = xcdev_check(__func__, xcdev, 0); if (rv < 0) return rv; + xdev = xcdev->xdev; if (cmd != XDMA_IOCXVC) { @@ -128,7 +136,7 @@ static long xvc_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) total_bits = xvc_obj.length; total_bytes = (total_bits + 7) >> 3; - buffer = (char *)kmalloc(total_bytes * 3, GFP_KERNEL); + buffer = kmalloc(total_bytes * 3, GFP_KERNEL); if (!buffer) { pr_info("OOM %u, op 0x%x, len %u bits, %u bytes.\n", 3 * total_bytes, opcode, total_bits, total_bytes); @@ -139,12 +147,16 @@ static long xvc_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) tdi_buf = tms_buf + total_bytes; tdo_buf = tdi_buf + total_bytes; - rv = copy_from_user((void *)tms_buf, xvc_obj.tms_buf, total_bytes); + rv = copy_from_user((void *)tms_buf, + (const char __user *)xvc_obj.tms_buf, + total_bytes); if (rv) { pr_info("copy tmfs_buf failed: %d/%u.\n", rv, total_bytes); goto cleanup; } - rv = copy_from_user((void *)tdi_buf, xvc_obj.tdi_buf, total_bytes); + rv = copy_from_user((void *)tdi_buf, + (const char __user *)xvc_obj.tdi_buf, + total_bytes); if (rv) { pr_info("copy tdi_buf failed: %d/%u.\n", rv, total_bytes); goto cleanup; @@ -155,7 +167,8 @@ static long xvc_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) iobase = xdev->bar[xcdev->bar] + xcdev->base; /* set length register to 32 initially if more than one - * word-transaction is to be done */ + * word-transaction is to be done + */ if (total_bits >= 32) write_register(0x20, iobase, XVC_BAR_LENGTH_REG); @@ -166,7 +179,7 @@ static long xvc_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) u32 tms_store = 0; u32 tdi_store = 0; u32 tdo_store = 0; - + if (bits_left < 32) { /* set number of bits to shift out */ write_register(bits_left, iobase, XVC_BAR_LENGTH_REG); @@ -179,33 +192,35 @@ static long xvc_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) /* Shift data out and copy to output buffer */ rv = xvc_shift_bits(iobase, tms_store, tdi_store, &tdo_store); if (rv < 0) - goto cleanup; + break; memcpy(tdo_buf + bytes, &tdo_store, shift_bytes); } + if (rv < 0) + goto unlock; + /* if testing bar access swap tdi and tdo bufferes to "loopback" */ if (opcode == 0x2) { - char *tmp = tdo_buf; + unsigned char *tmp = tdo_buf; tdo_buf = tdi_buf; tdi_buf = tmp; } - rv = copy_to_user((void *)xvc_obj.tdo_buf, tdo_buf, total_bytes); - if (rv) { + rv = copy_to_user(xvc_obj.tdo_buf, (const void *)tdo_buf, total_bytes); + if (rv) pr_info("copy back tdo_buf failed: %d/%u.\n", rv, total_bytes); - rv = -EFAULT; - goto cleanup; - } - -cleanup: - if (buffer) - kfree(buffer); +unlock: +#if HAS_MMIOWB mmiowb(); +#endif spin_unlock(&xcdev->lock); +cleanup: + kfree(buffer); + return rv; } @@ -213,10 +228,10 @@ static long xvc_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) * character device file operations for the XVC */ static const struct file_operations xvc_fops = { - .owner = THIS_MODULE, - .open = char_open, - .release = char_close, - .unlocked_ioctl = xvc_ioctl, + .owner = THIS_MODULE, + .open = char_open, + .release = char_close, + .unlocked_ioctl = xvc_ioctl, }; void cdev_xvc_init(struct xdma_cdev *xcdev) diff --git a/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.h b/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.h new file mode 100644 index 0000000..a2a543a --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.h @@ -0,0 +1,42 @@ +/* + * This file is part of the Xilinx DMA IP Core driver for Linux + * + * Copyright (c) 2016-present, Xilinx, Inc. + * All rights reserved. + * + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". + */ + +#ifndef __XVC_IOCTL_H__ +#define __XVC_IOCTL_H__ + +#include + +/* + * the bar offset can be changed at compile time + */ +#define XVC_BAR_OFFSET_DFLT 0x40000 /* DSA 4.0 */ + +#define XVC_MAGIC 0x58564344 // "XVCD" + +struct xvc_ioc { + unsigned int opcode; + unsigned int length; + const char __user *tms_buf; + const char __user *tdi_buf; + void __user *tdo_buf; +}; + +#define XDMA_IOCXVC _IOWR(XVC_MAGIC, 1, struct xvc_ioc) + +#endif /* __XVC_IOCTL_H__ */ diff --git a/host_software/driver/xdma/libxdma.c b/host_software/driver/XDMA/linux-kernel/xdma/libxdma.c similarity index 58% rename from host_software/driver/xdma/libxdma.c rename to host_software/driver/XDMA/linux-kernel/xdma/libxdma.c index b9884d7..4342b79 100644 --- a/host_software/driver/xdma/libxdma.c +++ b/host_software/driver/XDMA/linux-kernel/xdma/libxdma.c @@ -4,13 +4,20 @@ * Copyright (c) 2016-present, Xilinx, Inc. * All rights reserved. * - * This source code is licensed under both the BSD-style license (found in the - * LICENSE file in the root directory of this source tree) and the GPLv2 (found - * in the COPYING file in the root directory of this source tree). - * You may select, at your option, one of the above-listed licenses. + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". */ -#define pr_fmt(fmt) KBUILD_MODNAME ":%s: " fmt, __func__ +#define pr_fmt(fmt) KBUILD_MODNAME ":%s: " fmt, __func__ #include #include @@ -23,23 +30,8 @@ #include "libxdma.h" #include "libxdma_api.h" #include "cdev_sgdma.h" +#include "xdma_thread.h" -/* SECTION: Module licensing */ - -#ifdef __LIBXDMA_MOD__ -#include "version.h" -#define DRV_MODULE_NAME "libxdma" -#define DRV_MODULE_DESC "Xilinx XDMA Base Driver" -#define DRV_MODULE_RELDATE "Feb. 2018" - -static char version[] = - DRV_MODULE_DESC " " DRV_MODULE_NAME " v" DRV_MODULE_VERSION "\n"; - -MODULE_AUTHOR("Xilinx, Inc."); -MODULE_DESCRIPTION(DRV_MODULE_DESC); -MODULE_VERSION(DRV_MODULE_VERSION); -MODULE_LICENSE("Dual BSD/GPL"); -#endif /* Module Parameters */ static unsigned int poll_mode; @@ -48,15 +40,55 @@ MODULE_PARM_DESC(poll_mode, "Set 1 for hw polling, default is 0 (interrupts)"); static unsigned int interrupt_mode; module_param(interrupt_mode, uint, 0644); -MODULE_PARM_DESC(interrupt_mode, "0 - MSI-x , 1 - MSI, 2 - Legacy"); +MODULE_PARM_DESC(interrupt_mode, "0 - Auto , 1 - MSI, 2 - Legacy, 3 - MSI-x"); -static unsigned int enable_credit_mp; -module_param(enable_credit_mp, uint, 0644); -MODULE_PARM_DESC(enable_credit_mp, "Set 1 to enable creidt feature, default is 0 (no credit control)"); +static unsigned int enable_st_c2h_credit = 0; +module_param(enable_st_c2h_credit, uint, 0644); +MODULE_PARM_DESC(enable_st_c2h_credit, + "Set 1 to enable ST C2H engine credit feature, default is 0 ( credit control disabled)"); unsigned int desc_blen_max = XDMA_DESC_BLEN_MAX; module_param(desc_blen_max, uint, 0644); -MODULE_PARM_DESC(desc_blen_max, "per descriptor max. buffer length, default is (1 << 28) - 1"); +MODULE_PARM_DESC(desc_blen_max, + "per descriptor max. buffer length, default is (1 << 28) - 1"); + +#define XDMA_PERF_NUM_DESC 128 + +/* Kernel version adaptative code */ +#if HAS_SWAKE_UP_ONE +/* since 4.18, using simple wait queues is not recommended + * except for realtime constraint (see swait.h comments) + * and will likely be removed in future kernel versions + */ +#define xlx_wake_up swake_up_one +#define xlx_wait_event_interruptible_timeout \ + swait_event_interruptible_timeout_exclusive +#define xlx_wait_event_interruptible \ + swait_event_interruptible_exclusive +#elif HAS_SWAKE_UP +#define xlx_wake_up swake_up +#define xlx_wait_event_interruptible_timeout \ + swait_event_interruptible_timeout +#define xlx_wait_event_interruptible \ + swait_event_interruptible +#else +#define xlx_wake_up wake_up_interruptible +/* wait_event_interruptible_timeout() could return prematurely (-ERESTARTSYS) + * if it is interrupted by a signal */ +#define xlx_wait_event_interruptible_timeout(wq, condition, timeout) \ +({\ + int __ret = 0; \ + unsigned long expire = timeout + jiffies; \ + do { \ + __ret = wait_event_interruptible_timeout(wq, condition, \ + timeout); \ + } while ((__ret < 0) && (jiffies < expire)); \ + __ret; \ +}) +#define xlx_wait_event_interruptible \ + wait_event_interruptible +#endif + /* * xdma device management @@ -69,16 +101,23 @@ static LIST_HEAD(xdev_rcu_list); static DEFINE_SPINLOCK(xdev_rcu_lock); #ifndef list_last_entry -#define list_last_entry(ptr, type, member) \ - list_entry((ptr)->prev, type, member) +#define list_last_entry(ptr, type, member) list_entry((ptr)->prev, type, member) #endif -static inline void xdev_list_add(struct xdma_dev *xdev) +static inline int xdev_list_add(struct xdma_dev *xdev) { mutex_lock(&xdev_mutex); - if (list_empty(&xdev_list)) + if (list_empty(&xdev_list)) { xdev->idx = 0; - else { + if (poll_mode) { + int rv = xdma_threads_create(xdev->h2c_channel_max + + xdev->c2h_channel_max); + if (rv < 0) { + mutex_unlock(&xdev_mutex); + return rv; + } + } + } else { struct xdma_dev *last; last = list_last_entry(&xdev_list, struct xdma_dev, list_head); @@ -88,11 +127,13 @@ static inline void xdev_list_add(struct xdma_dev *xdev) mutex_unlock(&xdev_mutex); dbg_init("dev %s, xdev 0x%p, xdma idx %d.\n", - dev_name(&xdev->pdev->dev), xdev, xdev->idx); + dev_name(&xdev->pdev->dev), xdev, xdev->idx); spin_lock(&xdev_rcu_lock); list_add_tail_rcu(&xdev->rcu_node, &xdev_rcu_list); spin_unlock(&xdev_rcu_lock); + + return 0; } #undef list_last_entry @@ -101,6 +142,8 @@ static inline void xdev_list_remove(struct xdma_dev *xdev) { mutex_lock(&xdev_mutex); list_del(&xdev->list_head); + if (poll_mode && list_empty(&xdev_list)) + xdma_threads_destroy(); mutex_unlock(&xdev_mutex); spin_lock(&xdev_rcu_lock); @@ -111,22 +154,21 @@ static inline void xdev_list_remove(struct xdma_dev *xdev) struct xdma_dev *xdev_find_by_pdev(struct pci_dev *pdev) { - struct xdma_dev *xdev, *tmp; - - mutex_lock(&xdev_mutex); - list_for_each_entry_safe(xdev, tmp, &xdev_list, list_head) { - if (xdev->pdev == pdev) { - mutex_unlock(&xdev_mutex); - return xdev; - } - } - mutex_unlock(&xdev_mutex); - return NULL; + struct xdma_dev *xdev, *tmp; + + mutex_lock(&xdev_mutex); + list_for_each_entry_safe(xdev, tmp, &xdev_list, list_head) { + if (xdev->pdev == pdev) { + mutex_unlock(&xdev_mutex); + return xdev; + } + } + mutex_unlock(&xdev_mutex); + return NULL; } -EXPORT_SYMBOL_GPL(xdev_find_by_pdev); static inline int debug_check_dev_hndl(const char *fname, struct pci_dev *pdev, - void *hndl) + void *hndl) { struct xdma_dev *xdev; @@ -135,13 +177,13 @@ static inline int debug_check_dev_hndl(const char *fname, struct pci_dev *pdev, xdev = xdev_find_by_pdev(pdev); if (!xdev) { - pr_info("%s pdev 0x%p, hndl 0x%p, NO match found!\n", - fname, pdev, hndl); + pr_info("%s pdev 0x%p, hndl 0x%p, NO match found!\n", fname, + pdev, hndl); return -EINVAL; } if (xdev != hndl) { - pr_err("%s pdev 0x%p, hndl 0x%p != 0x%p!\n", - fname, pdev, hndl, xdev); + pr_err("%s pdev 0x%p, hndl 0x%p != 0x%p!\n", fname, pdev, hndl, + xdev); return -EINVAL; } @@ -150,14 +192,15 @@ static inline int debug_check_dev_hndl(const char *fname, struct pci_dev *pdev, #ifdef __LIBXDMA_DEBUG__ /* SECTION: Function definitions */ -inline void __write_register(const char *fn, u32 value, void *iomem, unsigned long off) +inline void __write_register(const char *fn, u32 value, void *iomem, + unsigned long off) { pr_err("%s: w reg 0x%lx(0x%p), 0x%x.\n", fn, off, iomem, value); iowrite32(value, iomem); } -#define write_register(v,mem,off) __write_register(__func__, v, mem, off) +#define write_register(v, mem, off) __write_register(__func__, v, mem, off) #else -#define write_register(v,mem,off) iowrite32(v, mem) +#define write_register(v, mem, off) iowrite32(v, mem) #endif inline u32 read_register(void *iomem) @@ -177,8 +220,9 @@ static inline u64 build_u64(u64 hi, u64 lo) static void check_nonzero_interrupt_status(struct xdma_dev *xdev) { - struct interrupt_regs *reg = (struct interrupt_regs *) - (xdev->bar[xdev->config_bar_idx] + XDMA_OFS_INT_CTRL); + struct interrupt_regs *reg = + (struct interrupt_regs *)(xdev->bar[xdev->config_bar_idx] + + XDMA_OFS_INT_CTRL); u32 w; w = read_register(®->user_int_enable); @@ -188,7 +232,7 @@ static void check_nonzero_interrupt_status(struct xdma_dev *xdev) w = read_register(®->channel_int_enable); if (w) - pr_info("%s xdma%d channel_int_enable = 0x%08x\n", + pr_info("%s xdma%d channel_int_enable = 0x%08x\n", dev_name(&xdev->pdev->dev), xdev->idx, w); w = read_register(®->user_int_request); @@ -213,8 +257,9 @@ static void check_nonzero_interrupt_status(struct xdma_dev *xdev) /* channel_interrupts_enable -- Enable interrupts we are interested in */ static void channel_interrupts_enable(struct xdma_dev *xdev, u32 mask) { - struct interrupt_regs *reg = (struct interrupt_regs *) - (xdev->bar[xdev->config_bar_idx] + XDMA_OFS_INT_CTRL); + struct interrupt_regs *reg = + (struct interrupt_regs *)(xdev->bar[xdev->config_bar_idx] + + XDMA_OFS_INT_CTRL); write_register(mask, ®->channel_int_enable_w1s, XDMA_OFS_INT_CTRL); } @@ -222,8 +267,9 @@ static void channel_interrupts_enable(struct xdma_dev *xdev, u32 mask) /* channel_interrupts_disable -- Disable interrupts we not interested in */ static void channel_interrupts_disable(struct xdma_dev *xdev, u32 mask) { - struct interrupt_regs *reg = (struct interrupt_regs *) - (xdev->bar[xdev->config_bar_idx] + XDMA_OFS_INT_CTRL); + struct interrupt_regs *reg = + (struct interrupt_regs *)(xdev->bar[xdev->config_bar_idx] + + XDMA_OFS_INT_CTRL); write_register(mask, ®->channel_int_enable_w1c, XDMA_OFS_INT_CTRL); } @@ -231,8 +277,9 @@ static void channel_interrupts_disable(struct xdma_dev *xdev, u32 mask) /* user_interrupts_enable -- Enable interrupts we are interested in */ static void user_interrupts_enable(struct xdma_dev *xdev, u32 mask) { - struct interrupt_regs *reg = (struct interrupt_regs *) - (xdev->bar[xdev->config_bar_idx] + XDMA_OFS_INT_CTRL); + struct interrupt_regs *reg = + (struct interrupt_regs *)(xdev->bar[xdev->config_bar_idx] + + XDMA_OFS_INT_CTRL); write_register(mask, ®->user_int_enable_w1s, XDMA_OFS_INT_CTRL); } @@ -240,8 +287,9 @@ static void user_interrupts_enable(struct xdma_dev *xdev, u32 mask) /* user_interrupts_disable -- Disable interrupts we not interested in */ static void user_interrupts_disable(struct xdma_dev *xdev, u32 mask) { - struct interrupt_regs *reg = (struct interrupt_regs *) - (xdev->bar[xdev->config_bar_idx] + XDMA_OFS_INT_CTRL); + struct interrupt_regs *reg = + (struct interrupt_regs *)(xdev->bar[xdev->config_bar_idx] + + XDMA_OFS_INT_CTRL); write_register(mask, ®->user_int_enable_w1c, XDMA_OFS_INT_CTRL); } @@ -249,18 +297,19 @@ static void user_interrupts_disable(struct xdma_dev *xdev, u32 mask) /* read_interrupts -- Print the interrupt controller status */ static u32 read_interrupts(struct xdma_dev *xdev) { - struct interrupt_regs *reg = (struct interrupt_regs *) - (xdev->bar[xdev->config_bar_idx] + XDMA_OFS_INT_CTRL); + struct interrupt_regs *reg = + (struct interrupt_regs *)(xdev->bar[xdev->config_bar_idx] + + XDMA_OFS_INT_CTRL); u32 lo; u32 hi; /* extra debugging; inspect complete engine set of registers */ hi = read_register(®->user_int_request); dbg_io("ioread32(0x%p) returned 0x%08x (user_int_request).\n", - ®->user_int_request, hi); + ®->user_int_request, hi); lo = read_register(®->channel_int_request); dbg_io("ioread32(0x%p) returned 0x%08x (channel_int_request)\n", - ®->channel_int_request, lo); + ®->channel_int_request, lo); /* return interrupts: user in upper 16-bits, channel in lower 16-bits */ return build_u32(hi, lo); @@ -272,26 +321,27 @@ void enable_perf(struct xdma_engine *engine) w = XDMA_PERF_CLEAR; write_register(w, &engine->regs->perf_ctrl, - (unsigned long)(&engine->regs->perf_ctrl) - - (unsigned long)(&engine->regs)); + (unsigned long)(&engine->regs->perf_ctrl) - + (unsigned long)(&engine->regs)); read_register(&engine->regs->identifier); w = XDMA_PERF_AUTO | XDMA_PERF_RUN; write_register(w, &engine->regs->perf_ctrl, - (unsigned long)(&engine->regs->perf_ctrl) - - (unsigned long)(&engine->regs)); + (unsigned long)(&engine->regs->perf_ctrl) - + (unsigned long)(&engine->regs)); read_register(&engine->regs->identifier); dbg_perf("IOCTL_XDMA_PERF_START\n"); - } -EXPORT_SYMBOL_GPL(enable_perf); void get_perf_stats(struct xdma_engine *engine) { u32 hi; u32 lo; - BUG_ON(!engine); + if (!engine) { + pr_err("dma engine NULL\n"); + return; + } if (!engine->xdma_perf) { pr_info("%s perf struct not set up.\n", engine->name); @@ -315,36 +365,38 @@ void get_perf_stats(struct xdma_engine *engine) lo = read_register(&engine->regs->perf_pnd_lo); engine->xdma_perf->pending_count = build_u64(hi, lo); } -EXPORT_SYMBOL_GPL(get_perf_stats); -static void engine_reg_dump(struct xdma_engine *engine) +static int engine_reg_dump(struct xdma_engine *engine) { u32 w; - BUG_ON(!engine); + if (!engine) { + pr_err("dma engine NULL\n"); + return -EINVAL; + } w = read_register(&engine->regs->identifier); - pr_info("%s: ioread32(0x%p) = 0x%08x (id).\n", - engine->name, &engine->regs->identifier, w); + pr_info("%s: ioread32(0x%p) = 0x%08x (id).\n", engine->name, + &engine->regs->identifier, w); w &= BLOCK_ID_MASK; if (w != BLOCK_ID_HEAD) { - pr_info("%s: engine id missing, 0x%08x exp. & 0x%x = 0x%x\n", - engine->name, w, BLOCK_ID_MASK, BLOCK_ID_HEAD); - return; + pr_err("%s: engine id missing, 0x%08x exp. & 0x%x = 0x%x\n", + engine->name, w, BLOCK_ID_MASK, BLOCK_ID_HEAD); + return -EINVAL; } /* extra debugging; inspect complete engine set of registers */ w = read_register(&engine->regs->status); - pr_info("%s: ioread32(0x%p) = 0x%08x (status).\n", - engine->name, &engine->regs->status, w); + pr_info("%s: ioread32(0x%p) = 0x%08x (status).\n", engine->name, + &engine->regs->status, w); w = read_register(&engine->regs->control); - pr_info("%s: ioread32(0x%p) = 0x%08x (control)\n", - engine->name, &engine->regs->control, w); + pr_info("%s: ioread32(0x%p) = 0x%08x (control)\n", engine->name, + &engine->regs->control, w); w = read_register(&engine->sgdma_regs->first_desc_lo); - pr_info("%s: ioread32(0x%p) = 0x%08x (first_desc_lo)\n", - engine->name, &engine->sgdma_regs->first_desc_lo, w); + pr_info("%s: ioread32(0x%p) = 0x%08x (first_desc_lo)\n", engine->name, + &engine->sgdma_regs->first_desc_lo, w); w = read_register(&engine->sgdma_regs->first_desc_hi); - pr_info("%s: ioread32(0x%p) = 0x%08x (first_desc_hi)\n", - engine->name, &engine->sgdma_regs->first_desc_hi, w); + pr_info("%s: ioread32(0x%p) = 0x%08x (first_desc_hi)\n", engine->name, + &engine->sgdma_regs->first_desc_hi, w); w = read_register(&engine->sgdma_regs->first_desc_adjacent); pr_info("%s: ioread32(0x%p) = 0x%08x (first_desc_adjacent).\n", engine->name, &engine->sgdma_regs->first_desc_adjacent, w); @@ -354,15 +406,10 @@ static void engine_reg_dump(struct xdma_engine *engine) w = read_register(&engine->regs->interrupt_enable_mask); pr_info("%s: ioread32(0x%p) = 0x%08x (interrupt_enable_mask)\n", engine->name, &engine->regs->interrupt_enable_mask, w); + + return 0; } -/** - * engine_status_read() - read status of SG DMA engine (optionally reset) - * - * Stores status in engine->status. - * - * @return -1 on failure, status register otherwise - */ static void engine_status_dump(struct xdma_engine *engine) { u32 v = engine->status; @@ -371,7 +418,7 @@ static void engine_status_dump(struct xdma_engine *engine) int len = 0; len = sprintf(buf, "SG engine %s status: 0x%08x: ", engine->name, v); - + if ((v & XDMA_STAT_BUSY)) len += sprintf(buf + len, "BUSY,"); if ((v & XDMA_STAT_DESC_STOPPED)) @@ -379,8 +426,8 @@ static void engine_status_dump(struct xdma_engine *engine) if ((v & XDMA_STAT_DESC_COMPLETED)) len += sprintf(buf + len, "DESC_COMPL,"); - /* common H2C & C2H */ - if ((v & XDMA_STAT_COMMON_ERR_MASK)) { + /* common H2C & C2H */ + if ((v & XDMA_STAT_COMMON_ERR_MASK)) { if ((v & XDMA_STAT_ALIGN_MISMATCH)) len += sprintf(buf + len, "ALIGN_MISMATCH "); if ((v & XDMA_STAT_MAGIC_STOPPED)) @@ -392,7 +439,7 @@ static void engine_status_dump(struct xdma_engine *engine) buf[len - 1] = ','; } - if ((engine->dir == DMA_TO_DEVICE)) { + if (engine->dir == DMA_TO_DEVICE) { /* H2C only */ if ((v & XDMA_STAT_H2C_R_ERR_MASK)) { len += sprintf(buf + len, "R:"); @@ -417,7 +464,7 @@ static void engine_status_dump(struct xdma_engine *engine) len += sprintf(buf + len, "SLAVE_ERR "); buf[len - 1] = ','; } - + } else { /* C2H only */ if ((v & XDMA_STAT_C2H_R_ERR_MASK)) { @@ -430,8 +477,8 @@ static void engine_status_dump(struct xdma_engine *engine) } } - /* common H2C & C2H */ - if ((v & XDMA_STAT_DESC_ERR_MASK)) { + /* common H2C & C2H */ + if ((v & XDMA_STAT_DESC_ERR_MASK)) { len += sprintf(buf + len, "DESC_ERR:"); if ((v & XDMA_STAT_DESC_UNSUPP_REQ)) len += sprintf(buf + len, "UNSUPP_REQ "); @@ -450,38 +497,59 @@ static void engine_status_dump(struct xdma_engine *engine) pr_info("%s\n", buffer); } -static u32 engine_status_read(struct xdma_engine *engine, bool clear, bool dump) +/** + * engine_status_read() - read status of SG DMA engine (optionally reset) + * + * Stores status in engine->status. + * + * @return error value on failure, 0 otherwise + */ +static int engine_status_read(struct xdma_engine *engine, bool clear, bool dump) { - u32 value; + int rv = 0; - BUG_ON(!engine); + if (!engine) { + pr_err("dma engine NULL\n"); + return -EINVAL; + } - if (dump) - engine_reg_dump(engine); + if (dump) { + rv = engine_reg_dump(engine); + if (rv < 0) { + pr_err("Failed to dump register\n"); + return rv; + } + } /* read status register */ if (clear) - value = engine->status = - read_register(&engine->regs->status_rc); + engine->status = read_register(&engine->regs->status_rc); else - value = engine->status = read_register(&engine->regs->status); + engine->status = read_register(&engine->regs->status); if (dump) engine_status_dump(engine); - return value; + return rv; } /** * xdma_engine_stop() - stop an SG DMA engine * */ -static void xdma_engine_stop(struct xdma_engine *engine) +static int xdma_engine_stop(struct xdma_engine *engine) { u32 w; - BUG_ON(!engine); - dbg_tfr("xdma_engine_stop(engine=%p)\n", engine); + if (!engine) { + pr_err("dma engine NULL\n"); + return -EINVAL; + } + dbg_tfr("%s(engine=%p)\n", __func__, engine); + + if (enable_st_c2h_credit && engine->streaming && + engine->dir == DMA_FROM_DEVICE) + write_register(0, &engine->sgdma_regs->credits, 0); w = 0; w |= (u32)XDMA_CTRL_IE_DESC_ALIGN_MISMATCH; @@ -490,31 +558,31 @@ static void xdma_engine_stop(struct xdma_engine *engine) w |= (u32)XDMA_CTRL_IE_DESC_ERROR; if (poll_mode) { - w |= (u32) XDMA_CTRL_POLL_MODE_WB; + w |= (u32)XDMA_CTRL_POLL_MODE_WB; } else { w |= (u32)XDMA_CTRL_IE_DESC_STOPPED; w |= (u32)XDMA_CTRL_IE_DESC_COMPLETED; - - /* Disable IDLE STOPPED for MM */ - if ((engine->streaming && (engine->dir == DMA_FROM_DEVICE)) || - (engine->xdma_perf)) - w |= (u32)XDMA_CTRL_IE_IDLE_STOPPED; } dbg_tfr("Stopping SG DMA %s engine; writing 0x%08x to 0x%p.\n", - engine->name, w, (u32 *)&engine->regs->control); + engine->name, w, (u32 *)&engine->regs->control); write_register(w, &engine->regs->control, (unsigned long)(&engine->regs->control) - - (unsigned long)(&engine->regs)); + (unsigned long)(&engine->regs)); /* dummy read of status register to flush all previous writes */ - dbg_tfr("xdma_engine_stop(%s) done\n", engine->name); + dbg_tfr("%s(%s) done\n", __func__, engine->name); + engine->running = 0; + return 0; } -static void engine_start_mode_config(struct xdma_engine *engine) +static int engine_start_mode_config(struct xdma_engine *engine) { u32 w; - BUG_ON(!engine); + if (!engine) { + pr_err("dma engine NULL\n"); + return -EINVAL; + } /* If a perf test is running, enable the engine interrupts */ if (engine->xdma_perf) { @@ -526,9 +594,10 @@ static void engine_start_mode_config(struct xdma_engine *engine) w |= XDMA_CTRL_IE_READ_ERROR; w |= XDMA_CTRL_IE_DESC_ERROR; - write_register(w, &engine->regs->interrupt_enable_mask, + write_register( + w, &engine->regs->interrupt_enable_mask, (unsigned long)(&engine->regs->interrupt_enable_mask) - - (unsigned long)(&engine->regs)); + (unsigned long)(&engine->regs)); } /* write control register of SG DMA engine */ @@ -540,30 +609,57 @@ static void engine_start_mode_config(struct xdma_engine *engine) if (poll_mode) { w |= (u32)XDMA_CTRL_POLL_MODE_WB; - } else { + } else { w |= (u32)XDMA_CTRL_IE_DESC_STOPPED; w |= (u32)XDMA_CTRL_IE_DESC_COMPLETED; - - if ((engine->streaming && (engine->dir == DMA_FROM_DEVICE)) || - (engine->xdma_perf)) - w |= (u32)XDMA_CTRL_IE_IDLE_STOPPED; - - /* set non-incremental addressing mode */ - if (engine->non_incr_addr) - w |= (u32)XDMA_CTRL_NON_INCR_ADDR; } + /* set non-incremental addressing mode */ + if (engine->non_incr_addr) + w |= (u32)XDMA_CTRL_NON_INCR_ADDR; + dbg_tfr("iowrite32(0x%08x to 0x%p) (control)\n", w, - (void *)&engine->regs->control); + (void *)&engine->regs->control); + /* start the engine */ write_register(w, &engine->regs->control, - (unsigned long)(&engine->regs->control) - - (unsigned long)(&engine->regs)); + (unsigned long)(&engine->regs->control) - + (unsigned long)(&engine->regs)); /* dummy read of status register to flush all previous writes */ w = read_register(&engine->regs->status); dbg_tfr("ioread32(0x%p) = 0x%08x (dummy read flushes writes).\n", - &engine->regs->status, w); + &engine->regs->status, w); + return 0; +} + +/** + * xdma_get_next_adj() + * + * Get the number for adjacent descriptors to set in a descriptor, based on the + * remaining number of descriptors and the lower bits of the address of the + * next descriptor. + * Since the number of descriptors in a page (XDMA_PAGE_SIZE) is 128 and the + * maximum size of a block of adjacent descriptors is 64 (63 max adjacent + * descriptors for any descriptor), align the blocks of adjacent descriptors + * to the block size. + */ +static u32 xdma_get_next_adj(unsigned int remaining, u32 next_lo) +{ + unsigned int next_index; + + dbg_desc("%s: remaining_desc %u, next_lo 0x%x\n",__func__, remaining, + next_lo); + + if (remaining <= 1) + return 0; + + /* shift right 5 times corresponds to a division by + * sizeof(xdma_desc) = 32 + */ + next_index = ((next_lo & (XDMA_PAGE_SIZE - 1)) >> 5) % + XDMA_MAX_ADJ_BLOCK_SIZE; + return min(XDMA_MAX_ADJ_BLOCK_SIZE - next_index - 1, remaining - 1); } /** @@ -585,22 +681,46 @@ static void engine_start_mode_config(struct xdma_engine *engine) static struct xdma_transfer *engine_start(struct xdma_engine *engine) { struct xdma_transfer *transfer; - u32 w; - int extra_adj = 0; + u32 w, next_adj; + int rv; + + if (!engine) { + pr_err("dma engine NULL\n"); + return NULL; + } /* engine must be idle */ - BUG_ON(engine->running); + if (engine->running) { + pr_info("%s engine is not in idle state to start\n", + engine->name); + return NULL; + } + /* engine transfer queue must not be empty */ - BUG_ON(list_empty(&engine->transfer_list)); + if (list_empty(&engine->transfer_list)) { + pr_debug("%s engine transfer queue must not be empty\n", + engine->name); + return NULL; + } /* inspect first transfer queued on the engine */ transfer = list_entry(engine->transfer_list.next, struct xdma_transfer, - entry); - BUG_ON(!transfer); + entry); + if (!transfer) { + pr_debug("%s queued transfer must not be empty\n", + engine->name); + return NULL; + } /* engine is no longer shutdown */ engine->shutdown = ENGINE_SHUTDOWN_NONE; - dbg_tfr("engine_start(%s): transfer=0x%p.\n", engine->name, transfer); + dbg_tfr("%s(%s): transfer=0x%p.\n", __func__, engine->name, transfer); + + /* Add credits for Streaming mode C2H */ + if (enable_st_c2h_credit && engine->streaming && + engine->dir == DMA_FROM_DEVICE) + write_register(engine->desc_used, + &engine->sgdma_regs->credits, 0); /* initialize number of descriptors of dequeued transfers */ engine->desc_dequeued = 0; @@ -608,37 +728,47 @@ static struct xdma_transfer *engine_start(struct xdma_engine *engine) /* write lower 32-bit of bus address of transfer first descriptor */ w = cpu_to_le32(PCI_DMA_L(transfer->desc_bus)); dbg_tfr("iowrite32(0x%08x to 0x%p) (first_desc_lo)\n", w, - (void *)&engine->sgdma_regs->first_desc_lo); + (void *)&engine->sgdma_regs->first_desc_lo); write_register(w, &engine->sgdma_regs->first_desc_lo, - (unsigned long)(&engine->sgdma_regs->first_desc_lo) - - (unsigned long)(&engine->sgdma_regs)); + (unsigned long)(&engine->sgdma_regs->first_desc_lo) - + (unsigned long)(&engine->sgdma_regs)); /* write upper 32-bit of bus address of transfer first descriptor */ w = cpu_to_le32(PCI_DMA_H(transfer->desc_bus)); dbg_tfr("iowrite32(0x%08x to 0x%p) (first_desc_hi)\n", w, - (void *)&engine->sgdma_regs->first_desc_hi); + (void *)&engine->sgdma_regs->first_desc_hi); write_register(w, &engine->sgdma_regs->first_desc_hi, - (unsigned long)(&engine->sgdma_regs->first_desc_hi) - - (unsigned long)(&engine->sgdma_regs)); + (unsigned long)(&engine->sgdma_regs->first_desc_hi) - + (unsigned long)(&engine->sgdma_regs)); - if (transfer->desc_adjacent > 0) { - extra_adj = transfer->desc_adjacent - 1; - if (extra_adj > MAX_EXTRA_ADJ) - extra_adj = MAX_EXTRA_ADJ; - } - dbg_tfr("iowrite32(0x%08x to 0x%p) (first_desc_adjacent)\n", - extra_adj, (void *)&engine->sgdma_regs->first_desc_adjacent); - write_register(extra_adj, &engine->sgdma_regs->first_desc_adjacent, - (unsigned long)(&engine->sgdma_regs->first_desc_adjacent) - + next_adj = xdma_get_next_adj(transfer->desc_adjacent, + cpu_to_le32(PCI_DMA_L(transfer->desc_bus))); + + dbg_tfr("iowrite32(0x%08x to 0x%p) (first_desc_adjacent)\n", next_adj, + (void *)&engine->sgdma_regs->first_desc_adjacent); + + write_register( + next_adj, &engine->sgdma_regs->first_desc_adjacent, + (unsigned long)(&engine->sgdma_regs->first_desc_adjacent) - (unsigned long)(&engine->sgdma_regs)); dbg_tfr("ioread32(0x%p) (dummy read flushes writes).\n", &engine->regs->status); - mmiowb(); - engine_start_mode_config(engine); +#if HAS_MMIOWB + mmiowb(); +#endif - engine_status_read(engine, 0, 0); + rv = engine_start_mode_config(engine); + if (rv < 0) { + pr_err("Failed to start engine mode config\n"); + return NULL; + } + rv = engine_status_read(engine, 0, 0); + if (rv < 0) { + pr_err("Failed to read engine status\n"); + return NULL; + } dbg_tfr("%s engine 0x%p now running\n", engine->name, engine); /* remember the engine is running */ engine->running = 1; @@ -653,21 +783,30 @@ static struct xdma_transfer *engine_start(struct xdma_engine *engine) * @engine pointer to struct xdma_engine * */ -static void engine_service_shutdown(struct xdma_engine *engine) +static int engine_service_shutdown(struct xdma_engine *engine) { + int rv; /* if the engine stopped with RUN still asserted, de-assert RUN now */ dbg_tfr("engine just went idle, resetting RUN_STOP.\n"); - xdma_engine_stop(engine); - engine->running = 0; + rv = xdma_engine_stop(engine); + if (rv < 0) { + pr_err("Failed to stop engine\n"); + return rv; + } /* awake task on engine's shutdown wait queue */ - wake_up_interruptible(&engine->shutdown_wq); + xlx_wake_up(&engine->shutdown_wq); + return 0; } -struct xdma_transfer *engine_transfer_completion(struct xdma_engine *engine, +static struct xdma_transfer *engine_transfer_completion( + struct xdma_engine *engine, struct xdma_transfer *transfer) { - BUG_ON(!engine); + if (!engine) { + pr_err("dma engine NULL\n"); + return NULL; + } if (unlikely(!transfer)) { pr_info("%s: xfer empty.\n", engine->name); @@ -676,20 +815,33 @@ struct xdma_transfer *engine_transfer_completion(struct xdma_engine *engine, /* synchronous I/O? */ /* awake task on transfer's wait queue */ - wake_up_interruptible(&transfer->wq); + xlx_wake_up(&transfer->wq); + + /* Send completion notification for Last transfer */ + if (transfer->cb && transfer->last_in_request) + transfer->cb->io_done((unsigned long)transfer->cb, 0); return transfer; } -struct xdma_transfer *engine_service_transfer_list(struct xdma_engine *engine, - struct xdma_transfer *transfer, u32 *pdesc_completed) +static struct xdma_transfer * +engine_service_transfer_list(struct xdma_engine *engine, + struct xdma_transfer *transfer, + u32 *pdesc_completed) { - BUG_ON(!engine); - BUG_ON(!pdesc_completed); + if (!engine) { + pr_err("dma engine NULL\n"); + return NULL; + } + + if (!pdesc_completed) { + pr_err("%s completed descriptors are null.\n", engine->name); + return NULL; + } if (unlikely(!transfer)) { - pr_info("%s xfer empty, pdesc completed %u.\n", - engine->name, *pdesc_completed); + pr_info("%s xfer empty, pdesc completed %u.\n", engine->name, + *pdesc_completed); return NULL; } @@ -698,11 +850,12 @@ struct xdma_transfer *engine_service_transfer_list(struct xdma_engine *engine, * except for the last (i.e. use > instead of >=). */ while (transfer && (!transfer->cyclic) && - (*pdesc_completed > transfer->desc_num)) { + (*pdesc_completed > transfer->desc_num)) { /* remove this transfer from pdesc_completed */ *pdesc_completed -= transfer->desc_num; dbg_tfr("%s engine completed non-cyclic xfer 0x%p (%d desc)\n", engine->name, transfer, transfer->desc_num); + /* remove completed transfer from list */ list_del(engine->transfer_list.next); /* add to dequeued number of descriptors during this run */ @@ -710,14 +863,16 @@ struct xdma_transfer *engine_service_transfer_list(struct xdma_engine *engine, /* mark transfer as succesfully completed */ transfer->state = TRANSFER_STATE_COMPLETED; - /* Complete transfer - sets transfer to NULL if an async - * transfer has completed */ + /* + * Complete transfer - sets transfer to NULL if an async + * transfer has completed + */ transfer = engine_transfer_completion(engine, transfer); /* if exists, get the next transfer on the list */ if (!list_empty(&engine->transfer_list)) { transfer = list_entry(engine->transfer_list.next, - struct xdma_transfer, entry); + struct xdma_transfer, entry); dbg_tfr("Non-completed transfer %p\n", transfer); } else { /* no further transfers? */ @@ -728,11 +883,11 @@ struct xdma_transfer *engine_service_transfer_list(struct xdma_engine *engine, return transfer; } -static void engine_err_handle(struct xdma_engine *engine, - struct xdma_transfer *transfer, u32 desc_completed) +static int engine_err_handle(struct xdma_engine *engine, + struct xdma_transfer *transfer, u32 desc_completed) { u32 value; - + int rv = 0; /* * The BUSY bit is expected to be clear now but older HW has a race * condition which could cause it to be still set. If it's set, re-read @@ -740,91 +895,138 @@ static void engine_err_handle(struct xdma_engine *engine, */ if (engine->status & XDMA_STAT_BUSY) { value = read_register(&engine->regs->status); - if ((value & XDMA_STAT_BUSY) && printk_ratelimit()) - pr_info("%s has errors but is still BUSY\n", - engine->name); + if ((value & XDMA_STAT_BUSY)) + printk_ratelimited(KERN_INFO + "%s has errors but is still BUSY\n", + engine->name); } - if (printk_ratelimit()) { - pr_info("%s, s 0x%x, aborted xfer 0x%p, cmpl %d/%d\n", + printk_ratelimited(KERN_INFO "%s, s 0x%x, aborted xfer 0x%p, cmpl %d/%d\n", engine->name, engine->status, transfer, desc_completed, transfer->desc_num); - } - + /* mark transfer as failed */ transfer->state = TRANSFER_STATE_FAILED; - xdma_engine_stop(engine); + rv = xdma_engine_stop(engine); + if (rv < 0) + pr_err("Failed to stop engine\n"); + return rv; } -struct xdma_transfer *engine_service_final_transfer(struct xdma_engine *engine, - struct xdma_transfer *transfer, u32 *pdesc_completed) +static struct xdma_transfer * +engine_service_final_transfer(struct xdma_engine *engine, + struct xdma_transfer *transfer, + u32 *pdesc_completed) { - BUG_ON(!engine); - BUG_ON(!pdesc_completed); + if (!engine) { + pr_err("dma engine NULL\n"); + return NULL; + } + + if (!pdesc_completed) { + pr_err("%s completed descriptors are null.\n", engine->name); + return NULL; + } /* inspect the current transfer */ if (unlikely(!transfer)) { - pr_info("%s xfer empty, pdesc completed %u.\n", - engine->name, *pdesc_completed); + pr_info("%s xfer empty, pdesc completed %u.\n", engine->name, + *pdesc_completed); return NULL; - } else { - if (((engine->dir == DMA_FROM_DEVICE) && - (engine->status & XDMA_STAT_C2H_ERR_MASK)) || - ((engine->dir == DMA_TO_DEVICE) && - (engine->status & XDMA_STAT_H2C_ERR_MASK))) { - pr_info("engine %s, status error 0x%x.\n", - engine->name, engine->status); - engine_status_dump(engine); - engine_err_handle(engine, transfer, *pdesc_completed); - goto transfer_del; - } + } - if (engine->status & XDMA_STAT_BUSY) - pr_debug("engine %s is unexpectedly busy - ignoring\n", - engine->name); + if (((engine->dir == DMA_FROM_DEVICE) && + (engine->status & XDMA_STAT_C2H_ERR_MASK)) || + ((engine->dir == DMA_TO_DEVICE) && + (engine->status & XDMA_STAT_H2C_ERR_MASK))) { + pr_info("engine %s, status error 0x%x.\n", engine->name, + engine->status); + engine_status_dump(engine); + engine_err_handle(engine, transfer, *pdesc_completed); + goto transfer_del; + } + + if (engine->status & XDMA_STAT_BUSY) + pr_debug("engine %s is unexpectedly busy - ignoring\n", + engine->name); + + /* the engine stopped on current transfer? */ + if (*pdesc_completed < transfer->desc_num) { + if (engine->eop_flush) { + /* check if eop received */ + struct xdma_result *result = transfer->res_virt; + int i; + int max = *pdesc_completed; + + for (i = 0; i < max; i++) { + if ((result[i].status & RX_STATUS_EOP) != 0) { + transfer->flags |= + XFER_FLAG_ST_C2H_EOP_RCVED; + break; + } + } + + transfer->desc_cmpl += *pdesc_completed; + if (!(transfer->flags & XFER_FLAG_ST_C2H_EOP_RCVED)) { + return NULL; + } + + /* mark transfer as successfully completed */ + engine_service_shutdown(engine); + + transfer->state = TRANSFER_STATE_COMPLETED; + + engine->desc_dequeued += transfer->desc_cmpl; - /* the engine stopped on current transfer? */ - if (*pdesc_completed < transfer->desc_num) { + } else { transfer->state = TRANSFER_STATE_FAILED; pr_info("%s, xfer 0x%p, stopped half-way, %d/%d.\n", engine->name, transfer, *pdesc_completed, transfer->desc_num); - } else { - dbg_tfr("engine %s completed transfer\n", engine->name); - dbg_tfr("Completed transfer ID = 0x%p\n", transfer); - dbg_tfr("*pdesc_completed=%d, transfer->desc_num=%d", - *pdesc_completed, transfer->desc_num); - - if (!transfer->cyclic) { - /* - * if the engine stopped on this transfer, - * it should be the last - */ - WARN_ON(*pdesc_completed > transfer->desc_num); - } - /* mark transfer as succesfully completed */ - transfer->state = TRANSFER_STATE_COMPLETED; + + /* add dequeued number of descriptors during this run */ + engine->desc_dequeued += transfer->desc_num; + transfer->desc_cmpl = *pdesc_completed; } + } else { + dbg_tfr("engine %s completed transfer\n", engine->name); + dbg_tfr("Completed transfer ID = 0x%p\n", transfer); + dbg_tfr("*pdesc_completed=%d, transfer->desc_num=%d", + *pdesc_completed, transfer->desc_num); -transfer_del: - /* remove completed transfer from list */ - list_del(engine->transfer_list.next); - /* add to dequeued number of descriptors during this run */ + if (!transfer->cyclic) { + /* + * if the engine stopped on this transfer, + * it should be the last + */ + WARN_ON(*pdesc_completed > transfer->desc_num); + } + /* mark transfer as successfully completed */ + transfer->state = TRANSFER_STATE_COMPLETED; + transfer->desc_cmpl = transfer->desc_num; + /* add dequeued number of descriptors during this run */ engine->desc_dequeued += transfer->desc_num; + } - /* - * Complete transfer - sets transfer to NULL if an asynchronous - * transfer has completed - */ - transfer = engine_transfer_completion(engine, transfer); - } +transfer_del: + /* remove completed transfer from list */ + list_del(engine->transfer_list.next); + + /* + * Complete transfer - sets transfer to NULL if an asynchronous + * transfer has completed + */ + transfer = engine_transfer_completion(engine, transfer); return transfer; } -static void engine_service_perf(struct xdma_engine *engine, u32 desc_completed) +static int engine_service_perf(struct xdma_engine *engine, u32 desc_completed) { - BUG_ON(!engine); + if (!engine) { + pr_err("dma engine NULL\n"); + return -EINVAL; + } /* performance measurement is running? */ if (engine->xdma_perf) { @@ -832,7 +1034,7 @@ static void engine_service_perf(struct xdma_engine *engine, u32 desc_completed) if (engine->status & XDMA_STAT_DESC_COMPLETED) { engine->xdma_perf->iterations = desc_completed; dbg_perf("transfer->xdma_perf->iterations=%d\n", - engine->xdma_perf->iterations); + engine->xdma_perf->iterations); } /* a descriptor stopped the engine? */ @@ -842,237 +1044,78 @@ static void engine_service_perf(struct xdma_engine *engine, u32 desc_completed) * wake any XDMA_PERF_IOCTL_STOP waiting for * the performance run to finish */ - wake_up_interruptible(&engine->xdma_perf_wq); + xlx_wake_up(&engine->xdma_perf_wq); dbg_perf("transfer->xdma_perf stopped\n"); } } + return 0; } -static void engine_transfer_dequeue(struct xdma_engine *engine) +static int engine_service_resume(struct xdma_engine *engine) { - struct xdma_transfer *transfer; - - BUG_ON(!engine); + struct xdma_transfer *transfer_started; - /* pick first transfer on the queue (was submitted to the engine) */ - transfer = list_entry(engine->transfer_list.next, struct xdma_transfer, - entry); - if (!transfer || transfer != &engine->cyclic_req->xfer) { - pr_info("%s, xfer 0x%p != 0x%p.\n", - engine->name, transfer, &engine->cyclic_req->xfer); - return; + if (!engine) { + pr_err("dma engine NULL\n"); + return -EINVAL; } - dbg_tfr("%s engine completed cyclic transfer 0x%p (%d desc).\n", - engine->name, transfer, transfer->desc_num); - /* remove completed transfer from list */ - list_del(engine->transfer_list.next); -} - -static int engine_ring_process(struct xdma_engine *engine) -{ - struct xdma_result *result; - int start; - int eop_count = 0; - - BUG_ON(!engine); - result = engine->cyclic_result; - BUG_ON(!result); - - /* where we start receiving in the ring buffer */ - start = engine->rx_tail; - - /* iterate through all newly received RX result descriptors */ - dbg_tfr("%s, result %d, 0x%x, len 0x%x.\n", - engine->name, engine->rx_tail, result[engine->rx_tail].status, - result[engine->rx_tail].length); - while (result[engine->rx_tail].status && !engine->rx_overrun) { - /* EOP bit set in result? */ - if (result[engine->rx_tail].status & RX_STATUS_EOP){ - eop_count++; - } - - /* increment tail pointer */ - engine->rx_tail = (engine->rx_tail + 1) % CYCLIC_RX_PAGES_MAX; - dbg_tfr("%s, head %d, tail %d, 0x%x, len 0x%x.\n", - engine->name, engine->rx_head, engine->rx_tail, - result[engine->rx_tail].status, - result[engine->rx_tail].length); - - /* overrun? */ - if (engine->rx_tail == engine->rx_head) { - dbg_tfr("%s: overrun\n", engine->name); - /* flag to user space that overrun has occurred */ - engine->rx_overrun = 1; + /* engine stopped? */ + if (!engine->running) { + /* in the case of shutdown, let it finish what's in the Q */ + if (!list_empty(&engine->transfer_list)) { + /* (re)start engine */ + transfer_started = engine_start(engine); + if (!transfer_started) { + pr_err("Failed to start dma engine\n"); + return -EINVAL; + } + dbg_tfr("re-started %s engine with pending xfer 0x%p\n", + engine->name, transfer_started); + /* engine was requested to be shutdown? */ + } else if (engine->shutdown & ENGINE_SHUTDOWN_REQUEST) { + engine->shutdown |= ENGINE_SHUTDOWN_IDLE; + /* awake task on engine's shutdown wait queue */ + xlx_wake_up(&engine->shutdown_wq); + } else { + dbg_tfr("no pending transfers, %s engine stays idle.\n", + engine->name); } + } else if (list_empty(&engine->transfer_list)) { + engine_service_shutdown(engine); } - - return eop_count; + return 0; } -static int engine_service_cyclic_polled(struct xdma_engine *engine) +/** + * engine_service() - service an SG DMA engine + * + * must be called with engine->lock already acquired + * + * @engine pointer to struct xdma_engine + * + */ +static int engine_service(struct xdma_engine *engine, int desc_writeback) { - int eop_count = 0; - int rc = 0; - struct xdma_poll_wb *writeback_data; - u32 sched_limit = 0; - - BUG_ON(!engine); - BUG_ON(engine->magic != MAGIC_ENGINE); - - writeback_data = (struct xdma_poll_wb *)engine->poll_mode_addr_virt; + struct xdma_transfer *transfer = NULL; + u32 desc_count = desc_writeback & WB_COUNT_MASK; + u32 err_flag = desc_writeback & WB_ERR_MASK; + int rv = 0; - while (eop_count == 0) { - if (sched_limit != 0) { - if ((sched_limit % NUM_POLLS_PER_SCHED) == 0) - schedule(); - } - sched_limit++; + if (!engine) { + pr_err("dma engine NULL\n"); + return -EINVAL; + } - /* Monitor descriptor writeback address for errors */ - if ((writeback_data->completed_desc_count) & WB_ERR_MASK) { - rc = -1; - break; + /* Service the engine */ + if (!engine->running) { + dbg_tfr("Engine was not running!!! Clearing status\n"); + rv = engine_status_read(engine, 1, 0); + if (rv < 0) { + pr_err("%s failed to read status\n", engine->name); + return rv; } - - eop_count = engine_ring_process(engine); - } - - if (eop_count == 0) { - engine_status_read(engine, 1, 0); - if ((engine->running) && !(engine->status & XDMA_STAT_BUSY)) { - /* transfers on queue? */ - if (!list_empty(&engine->transfer_list)) - engine_transfer_dequeue(engine); - - engine_service_shutdown(engine); - } - } - - return rc; -} - -static int engine_service_cyclic_interrupt(struct xdma_engine *engine) -{ - int eop_count = 0; - struct xdma_transfer *xfer; - - BUG_ON(!engine); - BUG_ON(engine->magic != MAGIC_ENGINE); - - engine_status_read(engine, 1, 0); - - eop_count = engine_ring_process(engine); - /* - * wake any reader on EOP, as one or more packets are now in - * the RX buffer - */ - xfer = &engine->cyclic_req->xfer; - if(enable_credit_mp){ - if (eop_count > 0) { - //engine->eop_found = 1; - } - wake_up_interruptible(&xfer->wq); - }else{ - if (eop_count > 0) { - /* awake task on transfer's wait queue */ - dbg_tfr("wake_up_interruptible() due to %d EOP's\n", eop_count); - engine->eop_found = 1; - wake_up_interruptible(&xfer->wq); - } - } - - /* engine was running but is no longer busy? */ - if ((engine->running) && !(engine->status & XDMA_STAT_BUSY)) { - /* transfers on queue? */ - if (!list_empty(&engine->transfer_list)) - engine_transfer_dequeue(engine); - - engine_service_shutdown(engine); - } - - return 0; -} - -/* must be called with engine->lock already acquired */ -static int engine_service_cyclic(struct xdma_engine *engine) -{ - int rc = 0; - - dbg_tfr("engine_service_cyclic()"); - - BUG_ON(!engine); - BUG_ON(engine->magic != MAGIC_ENGINE); - - if (poll_mode) - rc = engine_service_cyclic_polled(engine); - else - rc = engine_service_cyclic_interrupt(engine); - - return rc; -} - - -static void engine_service_resume(struct xdma_engine *engine) -{ - struct xdma_transfer *transfer_started; - - BUG_ON(!engine); - - /* engine stopped? */ - if (!engine->running) { - /* in the case of shutdown, let it finish what's in the Q */ - if (!list_empty(&engine->transfer_list)) { - /* (re)start engine */ - transfer_started = engine_start(engine); - pr_info("re-started %s engine with pending xfer 0x%p\n", - engine->name, transfer_started); - /* engine was requested to be shutdown? */ - } else if (engine->shutdown & ENGINE_SHUTDOWN_REQUEST) { - engine->shutdown |= ENGINE_SHUTDOWN_IDLE; - /* awake task on engine's shutdown wait queue */ - wake_up_interruptible(&engine->shutdown_wq); - } else { - dbg_tfr("no pending transfers, %s engine stays idle.\n", - engine->name); - } - } else { - /* engine is still running? */ - if (list_empty(&engine->transfer_list)) { - pr_warn("no queued transfers but %s engine running!\n", - engine->name); - WARN_ON(1); - } - } -} - -/** - * engine_service() - service an SG DMA engine - * - * must be called with engine->lock already acquired - * - * @engine pointer to struct xdma_engine - * - */ -static int engine_service(struct xdma_engine *engine, int desc_writeback) -{ - struct xdma_transfer *transfer = NULL; - u32 desc_count = desc_writeback & WB_COUNT_MASK; - u32 err_flag = desc_writeback & WB_ERR_MASK; - int rv = 0; - struct xdma_poll_wb *wb_data; - - BUG_ON(!engine); - - /* If polling detected an error, signal to the caller */ - if (err_flag) - rv = -1; - - /* Service the engine */ - if (!engine->running) { - dbg_tfr("Engine was not running!!! Clearing status\n"); - engine_status_read(engine, 1, 0); - return 0; + return 0; } /* @@ -1080,16 +1123,26 @@ static int engine_service(struct xdma_engine *engine, int desc_writeback) * engine status. For polled mode descriptor completion, this read is * unnecessary and is skipped to reduce latency */ - if ((desc_count == 0) || (err_flag != 0)) - engine_status_read(engine, 1, 0); + if ((desc_count == 0) || (err_flag != 0)) { + rv = engine_status_read(engine, 1, 0); + if (rv < 0) { + pr_err("Failed to read engine status\n"); + return rv; + } + } /* * engine was running but is no longer busy, or writeback occurred, * shut down */ if ((engine->running && !(engine->status & XDMA_STAT_BUSY)) || - (desc_count != 0)) - engine_service_shutdown(engine); + (!engine->eop_flush && desc_count != 0)) { + rv = engine_service_shutdown(engine); + if (rv < 0) { + pr_err("Failed to shutdown engine\n"); + return rv; + } + } /* * If called from the ISR, or if an error occurred, the descriptor @@ -1099,13 +1152,18 @@ static int engine_service(struct xdma_engine *engine, int desc_writeback) */ if (!desc_count) desc_count = read_register(&engine->regs->completed_desc_count); - dbg_tfr("desc_count = %d\n", desc_count); + dbg_tfr("%s wb 0x%x, desc_count %u, err %u, dequeued %u.\n", + engine->name, desc_writeback, desc_count, err_flag, + engine->desc_dequeued); + + if (!desc_count) + goto done; /* transfers on queue? */ if (!list_empty(&engine->transfer_list)) { /* pick first transfer on queue (was submitted to the engine) */ transfer = list_entry(engine->transfer_list.next, - struct xdma_transfer, entry); + struct xdma_transfer, entry); dbg_tfr("head of queue transfer 0x%p has %d descriptors\n", transfer, (int)transfer->desc_num); @@ -1114,7 +1172,11 @@ static int engine_service(struct xdma_engine *engine, int desc_writeback) (int)desc_count, (int)desc_count - engine->desc_dequeued); - engine_service_perf(engine, desc_count); + rv = engine_service_perf(engine, desc_count); + if (rv < 0) { + pr_err("Failed to service descriptors\n"); + return rv; + } } /* account for already dequeued transfers during this engine run */ @@ -1129,16 +1191,16 @@ static int engine_service(struct xdma_engine *engine, int desc_writeback) */ transfer = engine_service_final_transfer(engine, transfer, &desc_count); - /* Before starting engine again, clear the writeback data */ - if (poll_mode) { - wb_data = (struct xdma_poll_wb *)engine->poll_mode_addr_virt; - wb_data->completed_desc_count = 0; - } - /* Restart the engine following the servicing */ - engine_service_resume(engine); + if (!engine->eop_flush) { + rv = engine_service_resume(engine); + if (rv < 0) + pr_err("Failed to resume engine\n"); + } - return 0; +done: + /* If polling detected an error, signal to the caller */ + return err_flag ? -1 : 0; } /* engine_service_work */ @@ -1146,61 +1208,75 @@ static void engine_service_work(struct work_struct *work) { struct xdma_engine *engine; unsigned long flags; + int rv; engine = container_of(work, struct xdma_engine, work); - BUG_ON(engine->magic != MAGIC_ENGINE); + if (engine->magic != MAGIC_ENGINE) { + pr_err("%s has invalid magic number %lx\n", engine->name, + engine->magic); + return; + } /* lock the engine */ spin_lock_irqsave(&engine->lock, flags); - dbg_tfr("engine_service() for %s engine %p\n", - engine->name, engine); - if (engine->cyclic_req) - engine_service_cyclic(engine); - else - engine_service(engine, 0); + dbg_tfr("engine_service() for %s engine %p\n", engine->name, engine); + rv = engine_service(engine, 0); + if (rv < 0) { + pr_err("Failed to service engine\n"); + goto unlock; + } /* re-enable interrupts for this engine */ - if (engine->xdev->msix_enabled){ - write_register(engine->interrupt_enable_mask_value, - &engine->regs->interrupt_enable_mask_w1s, - (unsigned long)(&engine->regs->interrupt_enable_mask_w1s) - - (unsigned long)(&engine->regs)); + if (engine->xdev->msix_enabled) { + write_register( + engine->interrupt_enable_mask_value, + &engine->regs->interrupt_enable_mask_w1s, + (unsigned long)(&engine->regs + ->interrupt_enable_mask_w1s) - + (unsigned long)(&engine->regs)); } else channel_interrupts_enable(engine->xdev, engine->irq_bitmask); - + /* unlock the engine */ +unlock: spin_unlock_irqrestore(&engine->lock, flags); } static u32 engine_service_wb_monitor(struct xdma_engine *engine, - u32 expected_wb) + u32 expected_wb) { struct xdma_poll_wb *wb_data; u32 desc_wb = 0; u32 sched_limit = 0; unsigned long timeout; - BUG_ON(!engine); + if (!engine) { + pr_err("dma engine NULL\n"); + return -EINVAL; + } wb_data = (struct xdma_poll_wb *)engine->poll_mode_addr_virt; /* - * Poll the writeback location for the expected number of - * descriptors / error events This loop is skipped for cyclic mode, - * where the expected_desc_count passed in is zero, since it cannot be - * determined before the function is called - */ + * Poll the writeback location for the expected number of + * descriptors / error events This loop is skipped for cyclic mode, + * where the expected_desc_count passed in is zero, since it cannot be + * determined before the function is called + */ timeout = jiffies + (POLL_TIMEOUT_SECONDS * HZ); while (expected_wb != 0) { desc_wb = wb_data->completed_desc_count; + if (desc_wb) + wb_data->completed_desc_count = 0; + if (desc_wb & WB_ERR_MASK) break; - else if (desc_wb == expected_wb) + else if (desc_wb >= expected_wb) break; - - /* RTO - prevent system from hanging in polled mode */ + + /* prevent system from hanging in polled mode */ if (time_after(jiffies, timeout)) { dbg_tfr("Polling timeout occurred"); dbg_tfr("desc_wb = 0x%08x, expected 0x%08x\n", desc_wb, @@ -1212,9 +1288,9 @@ static u32 engine_service_wb_monitor(struct xdma_engine *engine, } /* - * Define NUM_POLLS_PER_SCHED to limit how much time is spent - * in the scheduler - */ + * Define NUM_POLLS_PER_SCHED to limit how much time is spent + * in the scheduler + */ if (sched_limit != 0) { if ((sched_limit % NUM_POLLS_PER_SCHED) == 0) @@ -1226,40 +1302,38 @@ static u32 engine_service_wb_monitor(struct xdma_engine *engine, return desc_wb; } -static int engine_service_poll(struct xdma_engine *engine, - u32 expected_desc_count) +int engine_service_poll(struct xdma_engine *engine, + u32 expected_desc_count) { - struct xdma_poll_wb *writeback_data; u32 desc_wb = 0; unsigned long flags; int rv = 0; - BUG_ON(!engine); - BUG_ON(engine->magic != MAGIC_ENGINE); - - writeback_data = (struct xdma_poll_wb *)engine->poll_mode_addr_virt; + if (!engine) { + pr_err("dma engine NULL\n"); + return -EINVAL; + } - if ((expected_desc_count & WB_COUNT_MASK) != expected_desc_count) { - dbg_tfr("Queued descriptor count is larger than supported\n"); - return -1; + if (engine->magic != MAGIC_ENGINE) { + pr_err("%s has invalid magic number %lx\n", engine->name, + engine->magic); + return -EINVAL; } /* - * Poll the writeback location for the expected number of - * descriptors / error events This loop is skipped for cyclic mode, - * where the expected_desc_count passed in is zero, since it cannot be - * determined before the function is called - */ + * Poll the writeback location for the expected number of + * descriptors / error events This loop is skipped for cyclic mode, + * where the expected_desc_count passed in is zero, since it cannot be + * determined before the function is called + */ desc_wb = engine_service_wb_monitor(engine, expected_desc_count); + if (!desc_wb) + return 0; spin_lock_irqsave(&engine->lock, flags); dbg_tfr("%s service.\n", engine->name); - if (engine->cyclic_req) { - rv = engine_service_cyclic(engine); - } else { - rv = engine_service(engine, desc_wb); - } + rv = engine_service(engine, desc_wb); spin_unlock_irqrestore(&engine->lock, flags); return rv; @@ -1269,7 +1343,10 @@ static irqreturn_t user_irq_service(int irq, struct xdma_user_irq *user_irq) { unsigned long flags; - BUG_ON(!user_irq); + if (!user_irq) { + pr_err("Invalid user_irq\n"); + return IRQ_NONE; + } if (user_irq->handler) return user_irq->handler(user_irq->user_idx, user_irq->dev); @@ -1298,17 +1375,20 @@ static irqreturn_t xdma_isr(int irq, void *dev_id) struct interrupt_regs *irq_regs; dbg_irq("(irq=%d, dev 0x%p) <<<< ISR.\n", irq, dev_id); - BUG_ON(!dev_id); + if (!dev_id) { + pr_err("Invalid dev_id on irq line %d\n", irq); + return -IRQ_NONE; + } xdev = (struct xdma_dev *)dev_id; if (!xdev) { WARN_ON(!xdev); - dbg_irq("xdma_isr(irq=%d) xdev=%p ??\n", irq, xdev); + dbg_irq("%s(irq=%d) xdev=%p ??\n", __func__, irq, xdev); return IRQ_NONE; } irq_regs = (struct interrupt_regs *)(xdev->bar[xdev->config_bar_idx] + - XDMA_OFS_INT_CTRL); + XDMA_OFS_INT_CTRL); /* read channel interrupt requests */ ch_irq = read_register(&irq_regs->channel_int_request); @@ -1327,8 +1407,8 @@ static irqreturn_t xdma_isr(int irq, void *dev_id) if (user_irq) { int user = 0; - u32 mask = 1; - int max = xdev->h2c_channel_max; + u32 mask = 1; + int max = xdev->user_max; for (; user < max && user_irq; user++, mask <<= 1) { if (user_irq & mask) { @@ -1348,8 +1428,8 @@ static irqreturn_t xdma_isr(int irq, void *dev_id) struct xdma_engine *engine = &xdev->engine_h2c[channel]; /* engine present and its interrupt fired? */ - if((engine->irq_bitmask & mask) && - (engine->magic == MAGIC_ENGINE)) { + if ((engine->irq_bitmask & mask) && + (engine->magic == MAGIC_ENGINE)) { mask &= ~engine->irq_bitmask; dbg_tfr("schedule_work, %s.\n", engine->name); schedule_work(&engine->work); @@ -1367,8 +1447,8 @@ static irqreturn_t xdma_isr(int irq, void *dev_id) struct xdma_engine *engine = &xdev->engine_c2h[channel]; /* engine present and its interrupt fired? */ - if((engine->irq_bitmask & mask) && - (engine->magic == MAGIC_ENGINE)) { + if ((engine->irq_bitmask & mask) && + (engine->magic == MAGIC_ENGINE)) { mask &= ~engine->irq_bitmask; dbg_tfr("schedule_work, %s.\n", engine->name); schedule_work(&engine->work); @@ -1391,10 +1471,13 @@ static irqreturn_t xdma_user_irq(int irq, void *dev_id) dbg_irq("(irq=%d) <<<< INTERRUPT SERVICE ROUTINE\n", irq); - BUG_ON(!dev_id); + if (!dev_id) { + pr_err("Invalid dev_id on irq line %d\n", irq); + return IRQ_NONE; + } user_irq = (struct xdma_user_irq *)dev_id; - return user_irq_service(irq, user_irq); + return user_irq_service(irq, user_irq); } /* @@ -1409,25 +1492,28 @@ static irqreturn_t xdma_channel_irq(int irq, void *dev_id) struct interrupt_regs *irq_regs; dbg_irq("(irq=%d) <<<< INTERRUPT service ROUTINE\n", irq); - BUG_ON(!dev_id); + if (!dev_id) { + pr_err("Invalid dev_id on irq line %d\n", irq); + return IRQ_NONE; + } engine = (struct xdma_engine *)dev_id; xdev = engine->xdev; if (!xdev) { WARN_ON(!xdev); - dbg_irq("xdma_channel_irq(irq=%d) xdev=%p ??\n", irq, xdev); + dbg_irq("%s(irq=%d) xdev=%p ??\n", __func__, irq, xdev); return IRQ_NONE; } irq_regs = (struct interrupt_regs *)(xdev->bar[xdev->config_bar_idx] + - XDMA_OFS_INT_CTRL); + XDMA_OFS_INT_CTRL); /* Disable the interrupt for this engine */ - write_register(engine->interrupt_enable_mask_value, - &engine->regs->interrupt_enable_mask_w1c, - (unsigned long) - (&engine->regs->interrupt_enable_mask_w1c) - + write_register( + engine->interrupt_enable_mask_value, + &engine->regs->interrupt_enable_mask_w1c, + (unsigned long)(&engine->regs->interrupt_enable_mask_w1c) - (unsigned long)(&engine->regs)); /* Dummy read to flush the above write */ read_register(&irq_regs->channel_int_pending); @@ -1435,7 +1521,7 @@ static irqreturn_t xdma_channel_irq(int irq, void *dev_id) schedule_work(&engine->work); /* - * RTO - need to protect access here if multiple MSI-X are used for + * need to protect access here if multiple MSI-X are used for * user interrupts */ xdev->irq_count++; @@ -1509,28 +1595,29 @@ static int is_config_bar(struct xdma_dev *xdev, int idx) int flag = 0; u32 mask = 0xffff0000; /* Compare only XDMA ID's not Version number */ struct interrupt_regs *irq_regs = - (struct interrupt_regs *) (xdev->bar[idx] + XDMA_OFS_INT_CTRL); + (struct interrupt_regs *)(xdev->bar[idx] + XDMA_OFS_INT_CTRL); struct config_regs *cfg_regs = (struct config_regs *)(xdev->bar[idx] + XDMA_OFS_CONFIG); irq_id = read_register(&irq_regs->identifier); cfg_id = read_register(&cfg_regs->identifier); - if (((irq_id & mask)== IRQ_BLOCK_ID) && - ((cfg_id & mask)== CONFIG_BLOCK_ID)) { + if (((irq_id & mask) == IRQ_BLOCK_ID) && + ((cfg_id & mask) == CONFIG_BLOCK_ID)) { dbg_init("BAR %d is the XDMA config BAR\n", idx); flag = 1; } else { dbg_init("BAR %d is NOT the XDMA config BAR: 0x%x, 0x%x.\n", - idx, irq_id, cfg_id); + idx, irq_id, cfg_id); flag = 0; } return flag; } -static void identify_bars(struct xdma_dev *xdev, int *bar_id_list, int num_bars, - int config_bar_pos) +#ifndef XDMA_CONFIG_BAR_NUM +static int identify_bars(struct xdma_dev *xdev, int *bar_id_list, int num_bars, + int config_bar_pos) { /* * The following logic identifies which BARs contain what functionality @@ -1546,11 +1633,18 @@ static void identify_bars(struct xdma_dev *xdev, int *bar_id_list, int num_bars, * correctly with both 32-bit and 64-bit BARs. */ - BUG_ON(!xdev); - BUG_ON(!bar_id_list); + if (!xdev) { + pr_err("Invalid xdev\n"); + return -EINVAL; + } + + if (!bar_id_list) { + pr_err("Invalid bar id list.\n"); + return -EINVAL; + } - dbg_init("xdev 0x%p, bars %d, config at %d.\n", - xdev, num_bars, config_bar_pos); + dbg_init("xdev 0x%p, bars %d, config at %d.\n", xdev, num_bars, + config_bar_pos); switch (num_bars) { case 1: @@ -1586,12 +1680,12 @@ static void identify_bars(struct xdma_dev *xdev, int *bar_id_list, int num_bars, pr_info("Unexpected # BARs (%d), XDMA config BAR only.\n", num_bars); break; - } - pr_info("%d BARs: config %d, user %d, bypass %d.\n", - num_bars, config_bar_pos, xdev->user_bar_idx, - xdev->bypass_bar_idx); + pr_info("%d BARs: config %d, user %d, bypass %d.\n", num_bars, + config_bar_pos, xdev->user_bar_idx, xdev->bypass_bar_idx); + return 0; } +#endif /* map_bars() -- map device regions into kernel virtual address space * @@ -1601,6 +1695,24 @@ static void identify_bars(struct xdma_dev *xdev, int *bar_id_list, int num_bars, static int map_bars(struct xdma_dev *xdev, struct pci_dev *dev) { int rv; + +#ifdef XDMA_CONFIG_BAR_NUM + rv = map_single_bar(xdev, dev, XDMA_CONFIG_BAR_NUM); + if (rv <= 0) { + pr_info("%s, map config bar %d failed, %d.\n", + dev_name(&dev->dev), XDMA_CONFIG_BAR_NUM, rv); + return -EINVAL; + } + + if (is_config_bar(xdev, XDMA_CONFIG_BAR_NUM) == 0) { + pr_info("%s, unable to identify config bar %d.\n", + dev_name(&dev->dev), XDMA_CONFIG_BAR_NUM); + return -EINVAL; + } + xdev->config_bar_idx = XDMA_CONFIG_BAR_NUM; + + return 0; +#else int i; int bar_id_list[XDMA_BAR_NUM]; int bar_id_idx = 0; @@ -1620,7 +1732,6 @@ static int map_bars(struct xdma_dev *xdev, struct pci_dev *dev) /* Try to identify BAR as XDMA control BAR */ if ((bar_len >= XDMA_BAR_SIZE) && (xdev->config_bar_idx < 0)) { - if (is_config_bar(xdev, i)) { xdev->config_bar_idx = i; config_bar_pos = bar_id_idx; @@ -1640,24 +1751,11 @@ static int map_bars(struct xdma_dev *xdev, struct pci_dev *dev) goto fail; } -#ifdef __LIBXDMA_CONFIG_BAR_ONLY__ - /* unmapped all other bars, except XDMA config. bar */ - for (i = 0; i < XDMA_BAR_NUM; i++) { - if (i == xdev->config_bar_idx) - continue; - - /* is this BAR mapped? */ - if (xdev->bar[i]) { - /* unmap BAR */ - pci_iounmap(dev, xdev->bar[i]); - /* mark as unmapped */ - xdev->bar[i] = NULL; - pr_info("unmap non-config bar %d.\n", i); - } + rv = identify_bars(xdev, bar_id_list, bar_id_idx, config_bar_pos); + if (rv < 0) { + pr_err("Failed to identify bars\n"); + return rv; } -#else - identify_bars(xdev, bar_id_list, bar_id_idx, config_bar_pos); -#endif /* successfully mapped all required BAR regions */ return 0; @@ -1666,20 +1764,21 @@ static int map_bars(struct xdma_dev *xdev, struct pci_dev *dev) /* unwind; unmap any BARs that we did map */ unmap_bars(xdev, dev); return rv; +#endif } /* - * MSI-X interrupt: + * MSI-X interrupt: * vectors, followed by vectors */ /* - * RTO - code to detect if MSI/MSI-X capability exists is derived + * code to detect if MSI/MSI-X capability exists is derived * from linux/pci/msi.c - pci_msi_check_device */ #ifndef arch_msi_check_device -int arch_msi_check_device(struct pci_dev *dev, int nvec, int type) +static int arch_msi_check_device(struct pci_dev *dev, int nvec, int type) { return 0; } @@ -1723,17 +1822,24 @@ static int enable_msi_msix(struct xdma_dev *xdev, struct pci_dev *pdev) { int rv = 0; - BUG_ON(!xdev); - BUG_ON(!pdev); + if (!xdev) { + pr_err("Invalid xdev\n"); + return -EINVAL; + } + + if (!pdev) { + pr_err("Invalid pdev\n"); + return -EINVAL; + } - if (!interrupt_mode && msi_msix_capable(pdev, PCI_CAP_ID_MSIX)) { + if ((interrupt_mode == 3 || !interrupt_mode) && msi_msix_capable(pdev, PCI_CAP_ID_MSIX)) { int req_nvec = xdev->c2h_channel_max + xdev->h2c_channel_max + - xdev->user_max; + xdev->user_max; -#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,12,0) +#if KERNEL_VERSION(4, 12, 0) <= LINUX_VERSION_CODE dbg_init("Enabling MSI-X\n"); rv = pci_alloc_irq_vectors(pdev, req_nvec, req_nvec, - PCI_IRQ_MSIX); + PCI_IRQ_MSIX); #else int i; @@ -1748,7 +1854,7 @@ static int enable_msi_msix(struct xdma_dev *xdev, struct pci_dev *pdev) xdev->msix_enabled = 1; - } else if (interrupt_mode == 1 && + } else if ((interrupt_mode == 1 || !interrupt_mode) && msi_msix_capable(pdev, PCI_CAP_ID_MSI)) { /* enable message signalled interrupts */ dbg_init("pci_enable_msi()\n"); @@ -1771,7 +1877,7 @@ static void pci_check_intr_pend(struct pci_dev *pdev) pci_read_config_word(pdev, PCI_STATUS, &v); if (v & PCI_STATUS_INTERRUPT) { pr_info("%s PCI STATUS Interrupt pending 0x%x.\n", - dev_name(&pdev->dev), v); + dev_name(&pdev->dev), v); pci_write_config_word(pdev, PCI_STATUS, PCI_STATUS_INTERRUPT); } } @@ -1797,9 +1903,9 @@ static void pci_keep_intx_enabled(struct pci_dev *pdev) static void prog_irq_msix_user(struct xdma_dev *xdev, bool clear) { /* user */ - struct interrupt_regs *int_regs = (struct interrupt_regs *) - (xdev->bar[xdev->config_bar_idx] + - XDMA_OFS_INT_CTRL); + struct interrupt_regs *int_regs = + (struct interrupt_regs *)(xdev->bar[xdev->config_bar_idx] + + XDMA_OFS_INT_CTRL); u32 i = xdev->c2h_channel_max + xdev->h2c_channel_max; u32 max = i + xdev->user_max; int j; @@ -1814,21 +1920,22 @@ static void prog_irq_msix_user(struct xdma_dev *xdev, bool clear) else for (k = 0; k < 4 && i < max; i++, k++, shift += 8) val |= (i & 0x1f) << shift; - - write_register(val, &int_regs->user_msi_vector[j], + + write_register( + val, &int_regs->user_msi_vector[j], XDMA_OFS_INT_CTRL + - ((unsigned long)&int_regs->user_msi_vector[j] - - (unsigned long)int_regs)); + ((unsigned long)&int_regs->user_msi_vector[j] - + (unsigned long)int_regs)); dbg_init("vector %d, 0x%x.\n", j, val); } } -static void prog_irq_msix_channel(struct xdma_dev *xdev, bool clear) +static void prog_irq_msix_channel(struct xdma_dev *xdev, bool clear) { - struct interrupt_regs *int_regs = (struct interrupt_regs *) - (xdev->bar[xdev->config_bar_idx] + - XDMA_OFS_INT_CTRL); + struct interrupt_regs *int_regs = + (struct interrupt_regs *)(xdev->bar[xdev->config_bar_idx] + + XDMA_OFS_INT_CTRL); u32 max = xdev->c2h_channel_max + xdev->h2c_channel_max; u32 i; int j; @@ -1844,11 +1951,12 @@ static void prog_irq_msix_channel(struct xdma_dev *xdev, bool clear) else for (k = 0; k < 4 && i < max; i++, k++, shift += 8) val |= (i & 0x1f) << shift; - + write_register(val, &int_regs->channel_msi_vector[j], - XDMA_OFS_INT_CTRL + - ((unsigned long)&int_regs->channel_msi_vector[j] - - (unsigned long)int_regs)); + XDMA_OFS_INT_CTRL + + ((unsigned long)&int_regs + ->channel_msi_vector[j] - + (unsigned long)int_regs)); dbg_init("vector %d, 0x%x.\n", j, val); } } @@ -1864,21 +1972,21 @@ static void irq_msix_channel_teardown(struct xdma_dev *xdev) prog_irq_msix_channel(xdev, 1); - engine = xdev->engine_h2c; + engine = xdev->engine_h2c; for (i = 0; i < xdev->h2c_channel_max; i++, j++, engine++) { if (!engine->msix_irq_line) break; dbg_sg("Release IRQ#%d for engine %p\n", engine->msix_irq_line, - engine); + engine); free_irq(engine->msix_irq_line, engine); } - engine = xdev->engine_c2h; + engine = xdev->engine_c2h; for (i = 0; i < xdev->c2h_channel_max; i++, j++, engine++) { if (!engine->msix_irq_line) break; dbg_sg("Release IRQ#%d for engine %p\n", engine->msix_irq_line, - engine); + engine); free_irq(engine->msix_irq_line, engine); } } @@ -1886,18 +1994,23 @@ static void irq_msix_channel_teardown(struct xdma_dev *xdev) static int irq_msix_channel_setup(struct xdma_dev *xdev) { int i; - int j = xdev->h2c_channel_max; + int j; int rv = 0; u32 vector; struct xdma_engine *engine; - BUG_ON(!xdev); + if (!xdev) { + pr_err("dma engine NULL\n"); + return -EINVAL; + } + if (!xdev->msix_enabled) return 0; + j = xdev->h2c_channel_max; engine = xdev->engine_h2c; for (i = 0; i < xdev->h2c_channel_max; i++, engine++) { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,12,0) +#if KERNEL_VERSION(4, 12, 0) <= LINUX_VERSION_CODE vector = pci_irq_vector(xdev->pdev, i); #else vector = xdev->entry[i].vector; @@ -1915,7 +2028,7 @@ static int irq_msix_channel_setup(struct xdma_dev *xdev) engine = xdev->engine_c2h; for (i = 0; i < xdev->c2h_channel_max; i++, j++, engine++) { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,12,0) +#if KERNEL_VERSION(4, 12, 0) <= LINUX_VERSION_CODE vector = pci_irq_vector(xdev->pdev, j); #else vector = xdev->entry[j].vector; @@ -1937,17 +2050,22 @@ static int irq_msix_channel_setup(struct xdma_dev *xdev) static void irq_msix_user_teardown(struct xdma_dev *xdev) { int i; - int j = xdev->h2c_channel_max + xdev->c2h_channel_max; + int j; - BUG_ON(!xdev); + if (!xdev) { + pr_err("Invalid xdev\n"); + return; + } if (!xdev->msix_enabled) return; + j = xdev->h2c_channel_max + xdev->c2h_channel_max; + prog_irq_msix_user(xdev, 1); for (i = 0; i < xdev->user_max; i++, j++) { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,12,0) +#if KERNEL_VERSION(4, 12, 0) <= LINUX_VERSION_CODE u32 vector = pci_irq_vector(xdev->pdev, j); #else u32 vector = xdev->entry[j].vector; @@ -1961,30 +2079,30 @@ static int irq_msix_user_setup(struct xdma_dev *xdev) { int i; int j = xdev->h2c_channel_max + xdev->c2h_channel_max; - int rv = 0; + int rv = 0; /* vectors set in probe_scan_for_msi() */ for (i = 0; i < xdev->user_max; i++, j++) { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,12,0) +#if KERNEL_VERSION(4, 12, 0) <= LINUX_VERSION_CODE u32 vector = pci_irq_vector(xdev->pdev, j); #else u32 vector = xdev->entry[j].vector; #endif rv = request_irq(vector, xdma_user_irq, 0, xdev->mod_name, - &xdev->user_irq[i]); + &xdev->user_irq[i]); if (rv) { - pr_info("user %d couldn't use IRQ#%d, %d\n", - i, vector, rv); + pr_info("user %d couldn't use IRQ#%d, %d\n", i, vector, + rv); break; } pr_info("%d-USR-%d, IRQ#%d with 0x%p\n", xdev->idx, i, vector, &xdev->user_irq[i]); - } + } /* If any errors occur, free IRQs that were successfully requested */ if (rv) { for (i--, j--; i >= 0; i--, j--) { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,12,0) +#if KERNEL_VERSION(4, 12, 0) <= LINUX_VERSION_CODE u32 vector = pci_irq_vector(xdev->pdev, j); #else u32 vector = xdev->entry[j].vector; @@ -2018,25 +2136,31 @@ static int irq_legacy_setup(struct xdma_dev *xdev, struct pci_dev *pdev) int rv; pci_read_config_byte(pdev, PCI_INTERRUPT_PIN, &val); + if (val == 0) { + dbg_init("Legacy interrupt not supported\n"); + return -EINVAL; + } + dbg_init("Legacy Interrupt register value = %d\n", val); if (val > 1) { val--; - w = (val<<24) | (val<<16) | (val<<8)| val; - /* Program IRQ Block Channel vactor and IRQ Block User vector - * with Legacy interrupt value */ - reg = xdev->bar[xdev->config_bar_idx] + 0x2080; // IRQ user + w = (val << 24) | (val << 16) | (val << 8) | val; + /* Program IRQ Block Channel vector and IRQ Block User vector + * with Legacy interrupt value + */ + reg = xdev->bar[xdev->config_bar_idx] + 0x2080; // IRQ user write_register(w, reg, 0x2080); - write_register(w, reg+0x4, 0x2084); - write_register(w, reg+0x8, 0x2088); - write_register(w, reg+0xC, 0x208C); - reg = xdev->bar[xdev->config_bar_idx] + 0x20A0; // IRQ Block + write_register(w, reg + 0x4, 0x2084); + write_register(w, reg + 0x8, 0x2088); + write_register(w, reg + 0xC, 0x208C); + reg = xdev->bar[xdev->config_bar_idx] + 0x20A0; // IRQ Block write_register(w, reg, 0x20A0); - write_register(w, reg+0x4, 0x20A4); + write_register(w, reg + 0x4, 0x20A4); } xdev->irq_line = (int)pdev->irq; rv = request_irq(pdev->irq, xdma_isr, IRQF_SHARED, xdev->mod_name, - xdev); + xdev); if (rv) dbg_init("Couldn't use IRQ#%d, %d\n", pdev->irq, rv); else @@ -2062,6 +2186,7 @@ static int irq_setup(struct xdma_dev *xdev, struct pci_dev *pdev) if (xdev->msix_enabled) { int rv = irq_msix_channel_setup(xdev); + if (rv) return rv; rv = irq_msix_user_setup(xdev); @@ -2082,19 +2207,23 @@ static void dump_desc(struct xdma_desc *desc_virt) { int j; u32 *p = (u32 *)desc_virt; - static char * const field_name[] = { - "magic|extra_adjacent|control", "bytes", "src_addr_lo", - "src_addr_hi", "dst_addr_lo", "dst_addr_hi", "next_addr", - "next_addr_pad"}; + static char *const field_name[] = { "magic|extra_adjacent|control", + "bytes", + "src_addr_lo", + "src_addr_hi", + "dst_addr_lo", + "dst_addr_hi", + "next_addr", + "next_addr_pad" }; char *dummy; /* remove warning about unused variable when debug printing is off */ dummy = field_name[0]; for (j = 0; j < 8; j += 1) { - pr_info("0x%08lx/0x%02lx: 0x%08x 0x%08x %s\n", - (uintptr_t)p, (uintptr_t)p & 15, (int)*p, - le32_to_cpu(*p), field_name[j]); + pr_info("0x%08lx/0x%02lx: 0x%08x 0x%08x %s\n", (uintptr_t)p, + (uintptr_t)p & 15, (int)*p, le32_to_cpu(*p), + field_name[j]); p++; } pr_info("\n"); @@ -2109,38 +2238,31 @@ static void transfer_dump(struct xdma_transfer *transfer) transfer, transfer->state, transfer->flags, transfer->dir, transfer->len, transfer->last_in_request); - pr_info("transfer 0x%p, desc %d, bus 0x%llx, adj %d.\n", - transfer, transfer->desc_num, (u64)transfer->desc_bus, + pr_info("transfer 0x%p, desc %d, bus 0x%llx, adj %d.\n", transfer, + transfer->desc_num, (u64)transfer->desc_bus, transfer->desc_adjacent); for (i = 0; i < transfer->desc_num; i += 1) dump_desc(desc_virt + i); } #endif /* __LIBXDMA_DEBUG__ */ -/* xdma_desc_alloc() - Allocate cache-coherent array of N descriptors. - * - * Allocates an array of 'number' descriptors in contiguous PCI bus addressable - * memory. Chains the descriptors as a singly-linked list; the descriptor's - * next * pointer specifies the bus address of the next descriptor. +/* transfer_desc_init() - Chains the descriptors as a singly-linked list * + * Each descriptor's next * pointer specifies the bus address + * of the next descriptor. + * Terminates the last descriptor to form a singly-linked list * - * @dev Pointer to pci_dev - * @number Number of descriptors to be allocated - * @desc_bus_p Pointer where to store the first descriptor bus address - * - * @return Virtual address of the first descriptor + * @transfer Pointer to SG DMA transfers + * @count Number of descriptors allocated in continuous PCI bus addressable + * memory * + * @return 0 on success, EINVAL on failure */ -static void transfer_desc_init(struct xdma_transfer *transfer, int count) +static int transfer_desc_init(struct xdma_transfer *transfer, int count) { struct xdma_desc *desc_virt = transfer->desc_virt; dma_addr_t desc_bus = transfer->desc_bus; int i; - int adj = count - 1; - int extra_adj; - u32 temp_control; - - BUG_ON(count > XDMA_TRANSFER_MAX_DESC); /* create singly-linked list for SG DMA controller */ for (i = 0; i < count - 1; i++) { @@ -2152,30 +2274,16 @@ static void transfer_desc_init(struct xdma_transfer *transfer, int count) desc_virt[i].next_hi = cpu_to_le32(PCI_DMA_H(desc_bus)); desc_virt[i].bytes = cpu_to_le32(0); - /* any adjacent descriptors? */ - if (adj > 0) { - extra_adj = adj - 1; - if (extra_adj > MAX_EXTRA_ADJ) - extra_adj = MAX_EXTRA_ADJ; - - adj--; - } else { - extra_adj = 0; - } - - temp_control = DESC_MAGIC | (extra_adj << 8); - - desc_virt[i].control = cpu_to_le32(temp_control); + desc_virt[i].control = cpu_to_le32(DESC_MAGIC); } /* { i = number - 1 } */ /* zero the last descriptor next pointer */ desc_virt[i].next_lo = cpu_to_le32(0); desc_virt[i].next_hi = cpu_to_le32(0); desc_virt[i].bytes = cpu_to_le32(0); + desc_virt[i].control = cpu_to_le32(DESC_MAGIC); - temp_control = DESC_MAGIC; - - desc_virt[i].control = cpu_to_le32(temp_control); + return 0; } /* xdma_desc_link() - Link two descriptors @@ -2187,14 +2295,13 @@ static void transfer_desc_init(struct xdma_transfer *transfer, int count) * @second_bus bus address of second descriptor */ static void xdma_desc_link(struct xdma_desc *first, struct xdma_desc *second, - dma_addr_t second_bus) + dma_addr_t second_bus) { /* * remember reserved control in first descriptor, but zero * extra_adjacent! */ - /* RTO - what's this about? Shouldn't it be 0x0000c0ffUL? */ - u32 control = le32_to_cpu(first->control) & 0x0000f0ffUL; + u32 control = le32_to_cpu(first->control) & 0x00FFC0ffUL; /* second descriptor given? */ if (second) { /* @@ -2218,58 +2325,31 @@ static void xdma_desc_link(struct xdma_desc *first, struct xdma_desc *second, } /* xdma_desc_adjacent -- Set how many descriptors are adjacent to this one */ -static void xdma_desc_adjacent(struct xdma_desc *desc, int next_adjacent) +static void xdma_desc_adjacent(struct xdma_desc *desc, u32 next_adjacent) { - int extra_adj = 0; /* remember reserved and control bits */ u32 control = le32_to_cpu(desc->control) & 0x0000f0ffUL; - u32 max_adj_4k = 0; - - if (next_adjacent > 0) { - extra_adj = next_adjacent - 1; - if (extra_adj > MAX_EXTRA_ADJ){ - extra_adj = MAX_EXTRA_ADJ; - } - max_adj_4k = (0x1000 - ((le32_to_cpu(desc->next_lo))&0xFFF))/32 - 1; - if (extra_adj>max_adj_4k) { - extra_adj = max_adj_4k; - } - if(extra_adj<0){ - printk("Warning: extra_adj<0, converting it to 0\n"); - extra_adj = 0; - } - } /* merge adjacent and control field */ - control |= 0xAD4B0000UL | (extra_adj << 8); + control |= 0xAD4B0000UL | (next_adjacent << 8); /* write control and next_adjacent */ desc->control = cpu_to_le32(control); } /* xdma_desc_control -- Set complete control field of a descriptor. */ -static void xdma_desc_control_set(struct xdma_desc *first, u32 control_field) +static int xdma_desc_control_set(struct xdma_desc *first, u32 control_field) { /* remember magic and adjacent number */ u32 control = le32_to_cpu(first->control) & ~(LS_BYTE_MASK); - BUG_ON(control_field & ~(LS_BYTE_MASK)); + if (control_field & ~(LS_BYTE_MASK)) { + pr_err("Invalid control field\n"); + return -EINVAL; + } /* merge adjacent and control field */ control |= control_field; /* write control and next_adjacent */ first->control = cpu_to_le32(control); -} - -/* xdma_desc_clear -- Clear bits in control field of a descriptor. */ -static void xdma_desc_control_clear(struct xdma_desc *first, u32 clear_mask) -{ - /* remember magic and adjacent number */ - u32 control = le32_to_cpu(first->control); - - BUG_ON(clear_mask & ~(LS_BYTE_MASK)); - - /* merge adjacent and control field */ - control &= (~clear_mask); - /* write control and next_adjacent */ - first->control = cpu_to_le32(control); + return 0; } /* xdma_desc_done - recycle cache-coherent linked list of descriptors. @@ -2279,9 +2359,9 @@ static void xdma_desc_control_clear(struct xdma_desc *first, u32 clear_mask) * @desc_virt Pointer to (i.e. virtual address of) first descriptor in list * @desc_bus Bus address of first descriptor in list */ -static inline void xdma_desc_done(struct xdma_desc *desc_virt) +static inline void xdma_desc_done(struct xdma_desc *desc_virt, int count) { - memset(desc_virt, 0, XDMA_TRANSFER_MAX_DESC * sizeof(struct xdma_desc)); + memset(desc_virt, 0, count * sizeof(struct xdma_desc)); } /* xdma_desc() - Fill a descriptor with the transfer details @@ -2296,7 +2376,7 @@ static inline void xdma_desc_done(struct xdma_desc *desc_virt) * Does not modify the next pointer */ static void xdma_desc_set(struct xdma_desc *desc, dma_addr_t rc_bus_addr, - u64 ep_addr, int len, int dir) + u64 ep_addr, int len, int dir) { /* transfer length */ desc->bytes = cpu_to_le32(len); @@ -2320,28 +2400,41 @@ static void xdma_desc_set(struct xdma_desc *desc, dma_addr_t rc_bus_addr, /* * should hold the engine->lock; */ -static void transfer_abort(struct xdma_engine *engine, - struct xdma_transfer *transfer) +static int transfer_abort(struct xdma_engine *engine, + struct xdma_transfer *transfer) { struct xdma_transfer *head; - BUG_ON(!engine); - BUG_ON(!transfer); - BUG_ON(transfer->desc_num == 0); + if (!engine) { + pr_err("dma engine NULL\n"); + return -EINVAL; + } + + if (!transfer) { + pr_err("Invalid DMA transfer\n"); + return -EINVAL; + } + + if (transfer->desc_num == 0) { + pr_err("%s void descriptors in the transfer list\n", + engine->name); + return -EINVAL; + } pr_info("abort transfer 0x%p, desc %d, engine desc queued %d.\n", transfer, transfer->desc_num, engine->desc_dequeued); head = list_entry(engine->transfer_list.next, struct xdma_transfer, - entry); + entry); if (head == transfer) list_del(engine->transfer_list.next); - else + else pr_info("engine %s, transfer 0x%p NOT found, 0x%p.\n", engine->name, transfer, head); if (transfer->state == TRANSFER_STATE_SUBMITTED) transfer->state = TRANSFER_STATE_ABORTED; + return 0; } /* transfer_queue() - Queue a DMA transfer on the engine @@ -2352,23 +2445,39 @@ static void transfer_abort(struct xdma_engine *engine, * Takes and releases the engine spinlock */ static int transfer_queue(struct xdma_engine *engine, - struct xdma_transfer *transfer) + struct xdma_transfer *transfer) { int rv = 0; struct xdma_transfer *transfer_started; struct xdma_dev *xdev; unsigned long flags; - BUG_ON(!engine); - BUG_ON(!engine->xdev); - BUG_ON(!transfer); - BUG_ON(transfer->desc_num == 0); - dbg_tfr("transfer_queue(transfer=0x%p).\n", transfer); + if (!engine) { + pr_err("dma engine NULL\n"); + return -EINVAL; + } + + if (!engine->xdev) { + pr_err("Invalid xdev\n"); + return -EINVAL; + } + + if (!transfer) { + pr_err("%s Invalid DMA transfer\n", engine->name); + return -EINVAL; + } + + if (transfer->desc_num == 0) { + pr_err("%s void descriptors in the transfer list\n", + engine->name); + return -EINVAL; + } + dbg_tfr("%s (transfer=0x%p).\n", __func__, transfer); xdev = engine->xdev; if (xdma_device_flag_check(xdev, XDEV_FLAG_OFFLINE)) { - pr_info("dev 0x%p offline, transfer 0x%p not queued.\n", - xdev, transfer); + pr_info("dev 0x%p offline, transfer 0x%p not queued.\n", xdev, + transfer); return -EBUSY; } @@ -2394,9 +2503,12 @@ static int transfer_queue(struct xdma_engine *engine, /* engine is idle? */ if (!engine->running) { /* start engine */ - dbg_tfr("transfer_queue(): starting %s engine.\n", - engine->name); + dbg_tfr("%s(): starting %s engine.\n", __func__, engine->name); transfer_started = engine_start(engine); + if (!transfer_started) { + pr_err("Failed to start dma engine\n"); + goto shutdown; + } dbg_tfr("transfer=0x%p started %s engine with transfer 0x%p.\n", transfer, engine->name, transfer_started); } else { @@ -2419,10 +2531,9 @@ static void engine_alignments(struct xdma_engine *engine) u32 address_bits; w = read_register(&engine->regs->alignments); - dbg_init("engine %p name %s alignments=0x%08x\n", engine, - engine->name, (int)w); + dbg_init("engine %p name %s alignments=0x%08x\n", engine, engine->name, + (int)w); - /* RTO - add some macros to extract these fields */ align_bytes = (w & 0x00ff0000U) >> 16; granularity_bytes = (w & 0x0000ff00U) >> 8; address_bits = (w & 0x000000ffU); @@ -2450,59 +2561,71 @@ static void engine_free_resource(struct xdma_engine *engine) /* Release memory use for descriptor writebacks */ if (engine->poll_mode_addr_virt) { dbg_sg("Releasing memory for descriptor writeback\n"); - dma_free_coherent(&xdev->pdev->dev, - sizeof(struct xdma_poll_wb), - engine->poll_mode_addr_virt, - engine->poll_mode_bus); + dma_free_coherent(&xdev->pdev->dev, sizeof(struct xdma_poll_wb), + engine->poll_mode_addr_virt, + engine->poll_mode_bus); dbg_sg("Released memory for descriptor writeback\n"); engine->poll_mode_addr_virt = NULL; } if (engine->desc) { dbg_init("device %s, engine %s pre-alloc desc 0x%p,0x%llx.\n", - dev_name(&xdev->pdev->dev), engine->name, - engine->desc, engine->desc_bus); + dev_name(&xdev->pdev->dev), engine->name, engine->desc, + engine->desc_bus); dma_free_coherent(&xdev->pdev->dev, - XDMA_TRANSFER_MAX_DESC * sizeof(struct xdma_desc), - engine->desc, engine->desc_bus); + engine->desc_max * sizeof(struct xdma_desc), + engine->desc, engine->desc_bus); engine->desc = NULL; } if (engine->cyclic_result) { - dma_free_coherent(&xdev->pdev->dev, - CYCLIC_RX_PAGES_MAX * sizeof(struct xdma_result), + dma_free_coherent( + &xdev->pdev->dev, + engine->desc_max * sizeof(struct xdma_result), engine->cyclic_result, engine->cyclic_result_bus); engine->cyclic_result = NULL; } } -static void engine_destroy(struct xdma_dev *xdev, struct xdma_engine *engine) +static int engine_destroy(struct xdma_dev *xdev, struct xdma_engine *engine) { - BUG_ON(!xdev); - BUG_ON(!engine); - - dbg_sg("Shutting down engine %s%d", engine->name, engine->channel); + if (!xdev) { + pr_err("Invalid xdev\n"); + return -EINVAL; + } + + if (!engine) { + pr_err("dma engine NULL\n"); + return -EINVAL; + } + + dbg_sg("Shutting down engine %s%d", engine->name, engine->channel); /* Disable interrupts to stop processing new events during shutdown */ write_register(0x0, &engine->regs->interrupt_enable_mask, - (unsigned long)(&engine->regs->interrupt_enable_mask) - - (unsigned long)(&engine->regs)); + (unsigned long)(&engine->regs->interrupt_enable_mask) - + (unsigned long)(&engine->regs)); - if (enable_credit_mp && engine->streaming && - engine->dir == DMA_FROM_DEVICE) { + if (enable_st_c2h_credit && engine->streaming && + engine->dir == DMA_FROM_DEVICE) { u32 reg_value = (0x1 << engine->channel) << 16; - struct sgdma_common_regs *reg = (struct sgdma_common_regs *) - (xdev->bar[xdev->config_bar_idx] + - (0x6*TARGET_SPACING)); + struct sgdma_common_regs *reg = + (struct sgdma_common_regs + *)(xdev->bar[xdev->config_bar_idx] + + (0x6 * TARGET_SPACING)); write_register(reg_value, ®->credit_mode_enable_w1c, 0); } + if (poll_mode) + xdma_thread_remove_work(engine); + /* Release memory use for descriptor writebacks */ engine_free_resource(engine); memset(engine, 0, sizeof(struct xdma_engine)); /* Decrement the number of engines available */ xdev->engines_num--; + return 0; } /** @@ -2512,43 +2635,49 @@ static void engine_destroy(struct xdma_dev *xdev, struct xdma_engine *engine) */ struct xdma_transfer *engine_cyclic_stop(struct xdma_engine *engine) { + int rv; struct xdma_transfer *transfer = 0; + int size = engine->xdma_perf->transfer_size; /* transfers on queue? */ if (!list_empty(&engine->transfer_list)) { /* pick first transfer on the queue (was submitted to engine) */ transfer = list_entry(engine->transfer_list.next, - struct xdma_transfer, entry); - BUG_ON(!transfer); - - xdma_engine_stop(engine); + struct xdma_transfer, entry); + if (!transfer) { + pr_err("(engine=%s) has void transfer in queue.\n", + engine->name); + return NULL; + } + rv = xdma_engine_stop(engine); + if (rv < 0) { + pr_err("Failed to stop engine\n"); + return NULL; + } if (transfer->cyclic) { if (engine->xdma_perf) dbg_perf("Stopping perf transfer on %s\n", - engine->name); + engine->name); else dbg_perf("Stopping cyclic transfer on %s\n", - engine->name); - /* make sure the handler sees correct transfer state */ - transfer->cyclic = 1; - /* - * set STOP flag and interrupt on completion, on the - * last descriptor - */ - xdma_desc_control_set( - transfer->desc_virt + transfer->desc_num - 1, - XDMA_DESC_COMPLETED | XDMA_DESC_STOPPED); + engine->name); + /* free up the buffer allocated for perf run */ + if (engine->perf_buf_virt) + dma_free_coherent(&engine->xdev->pdev->dev, + size, engine->perf_buf_virt, + engine->perf_buf_bus); + engine->perf_buf_virt = NULL; + list_del(&transfer->entry); } else { dbg_sg("(engine=%p) running transfer is not cyclic\n", - engine); + engine); } } else { dbg_sg("(engine=%p) found not running transfer.\n", engine); } return transfer; } -EXPORT_SYMBOL_GPL(engine_cyclic_stop); static int engine_writeback_setup(struct xdma_engine *engine) { @@ -2556,33 +2685,38 @@ static int engine_writeback_setup(struct xdma_engine *engine) struct xdma_dev *xdev; struct xdma_poll_wb *writeback; - BUG_ON(!engine); + if (!engine) { + pr_err("dma engine NULL\n"); + return -EINVAL; + } + xdev = engine->xdev; - BUG_ON(!xdev); + if (!xdev) { + pr_err("Invalid xdev\n"); + return -EINVAL; + } /* - * RTO - doing the allocation per engine is wasteful since a full page - * is allocated each time - better to allocate one page for the whole - * device during probe() and set per-engine offsets here + * better to allocate one page for the whole device during probe() + * and set per-engine offsets here */ writeback = (struct xdma_poll_wb *)engine->poll_mode_addr_virt; writeback->completed_desc_count = 0; dbg_init("Setting writeback location to 0x%llx for engine %p", - engine->poll_mode_bus, engine); + engine->poll_mode_bus, engine); w = cpu_to_le32(PCI_DMA_L(engine->poll_mode_bus)); - write_register(w, &engine->regs->poll_mode_wb_lo, - (unsigned long)(&engine->regs->poll_mode_wb_lo) - - (unsigned long)(&engine->regs)); + write_register(w, &engine->regs->poll_mode_wb_lo, + (unsigned long)(&engine->regs->poll_mode_wb_lo) - + (unsigned long)(&engine->regs)); w = cpu_to_le32(PCI_DMA_H(engine->poll_mode_bus)); - write_register(w, &engine->regs->poll_mode_wb_hi, - (unsigned long)(&engine->regs->poll_mode_wb_hi) - - (unsigned long)(&engine->regs)); + write_register(w, &engine->regs->poll_mode_wb_hi, + (unsigned long)(&engine->regs->poll_mode_wb_hi) - + (unsigned long)(&engine->regs)); return 0; } - /* engine_create() - Create an SG DMA engine bookkeeping data structure * * An SG DMA engine consists of the resources for a single-direction transfer @@ -2600,8 +2734,8 @@ static int engine_init_regs(struct xdma_engine *engine) int rv = 0; write_register(XDMA_CTRL_NON_INCR_ADDR, &engine->regs->control_w1c, - (unsigned long)(&engine->regs->control_w1c) - - (unsigned long)(&engine->regs)); + (unsigned long)(&engine->regs->control_w1c) - + (unsigned long)(&engine->regs)); engine_alignments(engine); @@ -2617,34 +2751,31 @@ static int engine_init_regs(struct xdma_engine *engine) rv = engine_writeback_setup(engine); if (rv) { dbg_init("%s descr writeback setup failed.\n", - engine->name); + engine->name); goto fail_wb; } } else { /* enable the relevant completion interrupts */ reg_value |= XDMA_CTRL_IE_DESC_STOPPED; reg_value |= XDMA_CTRL_IE_DESC_COMPLETED; - - if (engine->streaming && engine->dir == DMA_FROM_DEVICE) - reg_value |= XDMA_CTRL_IE_IDLE_STOPPED; } /* Apply engine configurations */ write_register(reg_value, &engine->regs->interrupt_enable_mask, - (unsigned long)(&engine->regs->interrupt_enable_mask) - - (unsigned long)(&engine->regs)); + (unsigned long)(&engine->regs->interrupt_enable_mask) - + (unsigned long)(&engine->regs)); engine->interrupt_enable_mask_value = reg_value; /* only enable credit mode for AXI-ST C2H */ - if (enable_credit_mp && engine->streaming && - engine->dir == DMA_FROM_DEVICE) { - + if (enable_st_c2h_credit && engine->streaming && + engine->dir == DMA_FROM_DEVICE) { struct xdma_dev *xdev = engine->xdev; u32 reg_value = (0x1 << engine->channel) << 16; - struct sgdma_common_regs *reg = (struct sgdma_common_regs *) - (xdev->bar[xdev->config_bar_idx] + - (0x6*TARGET_SPACING)); + struct sgdma_common_regs *reg = + (struct sgdma_common_regs + *)(xdev->bar[xdev->config_bar_idx] + + (0x6 * TARGET_SPACING)); write_register(reg_value, ®->credit_mode_enable_w1s, 0); } @@ -2660,8 +2791,9 @@ static int engine_alloc_resource(struct xdma_engine *engine) struct xdma_dev *xdev = engine->xdev; engine->desc = dma_alloc_coherent(&xdev->pdev->dev, - XDMA_TRANSFER_MAX_DESC * sizeof(struct xdma_desc), - &engine->desc_bus, GFP_KERNEL); + engine->desc_max * + sizeof(struct xdma_desc), + &engine->desc_bus, GFP_KERNEL); if (!engine->desc) { pr_warn("dev %s, %s pre-alloc desc OOM.\n", dev_name(&xdev->pdev->dev), engine->name); @@ -2669,24 +2801,25 @@ static int engine_alloc_resource(struct xdma_engine *engine) } if (poll_mode) { - engine->poll_mode_addr_virt = dma_alloc_coherent( - &xdev->pdev->dev, - sizeof(struct xdma_poll_wb), - &engine->poll_mode_bus, GFP_KERNEL); + engine->poll_mode_addr_virt = + dma_alloc_coherent(&xdev->pdev->dev, + sizeof(struct xdma_poll_wb), + &engine->poll_mode_bus, GFP_KERNEL); if (!engine->poll_mode_addr_virt) { - pr_warn("%s, %s poll pre-alloc writeback OOM.\n", + pr_warn("%s, %s poll pre-alloc writeback OOM.\n", dev_name(&xdev->pdev->dev), engine->name); goto err_out; } } if (engine->streaming && engine->dir == DMA_FROM_DEVICE) { - engine->cyclic_result = dma_alloc_coherent(&xdev->pdev->dev, - CYCLIC_RX_PAGES_MAX * sizeof(struct xdma_result), + engine->cyclic_result = dma_alloc_coherent( + &xdev->pdev->dev, + engine->desc_max * sizeof(struct xdma_result), &engine->cyclic_result_bus, GFP_KERNEL); if (!engine->cyclic_result) { - pr_warn("%s, %s pre-alloc result OOM.\n", + pr_warn("%s, %s pre-alloc result OOM.\n", dev_name(&xdev->pdev->dev), engine->name); goto err_out; } @@ -2700,7 +2833,7 @@ static int engine_alloc_resource(struct xdma_engine *engine) } static int engine_init(struct xdma_engine *engine, struct xdma_dev *xdev, - int offset, enum dma_data_direction dir, int channel) + int offset, enum dma_data_direction dir, int channel) { int rv; u32 val; @@ -2722,19 +2855,25 @@ static int engine_init(struct xdma_engine *engine, struct xdma_dev *xdev, /* register address */ engine->regs = (xdev->bar[xdev->config_bar_idx] + offset); engine->sgdma_regs = xdev->bar[xdev->config_bar_idx] + offset + - SGDMA_OFFSET_FROM_CHANNEL; + SGDMA_OFFSET_FROM_CHANNEL; val = read_register(&engine->regs->identifier); - if (val & 0x8000U) + if (val & 0x8000U) engine->streaming = 1; /* remember SG DMA direction */ engine->dir = dir; - sprintf(engine->name, "%d-%s%d-%s", xdev->idx, + snprintf(engine->name, sizeof(engine->name), "%d-%s%d-%s", xdev->idx, (dir == DMA_TO_DEVICE) ? "H2C" : "C2H", channel, engine->streaming ? "ST" : "MM"); + if (enable_st_c2h_credit && engine->streaming && + engine->dir == DMA_FROM_DEVICE) + engine->desc_max = XDMA_ENGINE_CREDIT_XFER_MAX_DESC; + else + engine->desc_max = XDMA_ENGINE_XFER_MAX_DESC; + dbg_init("engine %p name %s irq_bitmask=0x%08x\n", engine, engine->name, - (int)engine->irq_bitmask); + (int)engine->irq_bitmask); /* initialize the deferred work for transfer completion */ INIT_WORK(&engine->work, engine_service_work); @@ -2753,95 +2892,143 @@ static int engine_init(struct xdma_engine *engine, struct xdma_dev *xdev, if (rv) return rv; + if (poll_mode) + xdma_thread_add_work(engine); + return 0; } /* transfer_destroy() - free transfer */ static void transfer_destroy(struct xdma_dev *xdev, struct xdma_transfer *xfer) { - /* free descriptors */ - xdma_desc_done(xfer->desc_virt); + /* free descriptors */ + xdma_desc_done(xfer->desc_virt, xfer->desc_num); if (xfer->last_in_request && (xfer->flags & XFER_FLAG_NEED_UNMAP)) { - struct sg_table *sgt = xfer->sgt; + struct sg_table *sgt = xfer->sgt; if (sgt->nents) { pci_unmap_sg(xdev->pdev, sgt->sgl, sgt->nents, - xfer->dir); + xfer->dir); sgt->nents = 0; } } } static int transfer_build(struct xdma_engine *engine, - struct xdma_request_cb *req, unsigned int desc_max) + struct xdma_request_cb *req, struct xdma_transfer *xfer, + unsigned int desc_max) { - struct xdma_transfer *xfer = &req->xfer; struct sw_desc *sdesc = &(req->sdesc[req->sw_desc_idx]); int i = 0; int j = 0; + dma_addr_t bus = xfer->res_bus; for (; i < desc_max; i++, j++, sdesc++) { dbg_desc("sw desc %d/%u: 0x%llx, 0x%x, ep 0x%llx.\n", - i + req->sw_desc_idx, req->sw_desc_cnt, - sdesc->addr, sdesc->len, req->ep_addr); + i + req->sw_desc_idx, req->sw_desc_cnt, sdesc->addr, + sdesc->len, req->ep_addr); /* fill in descriptor entry j with transfer details */ xdma_desc_set(xfer->desc_virt + j, sdesc->addr, req->ep_addr, - sdesc->len, xfer->dir); + sdesc->len, xfer->dir); xfer->len += sdesc->len; /* for non-inc-add mode don't increment ep_addr */ if (!engine->non_incr_addr) req->ep_addr += sdesc->len; + + if (engine->streaming && engine->dir == DMA_FROM_DEVICE) { + memset(xfer->res_virt + j, 0, + sizeof(struct xdma_result)); + xfer->desc_virt[j].src_addr_lo = + cpu_to_le32(PCI_DMA_L(bus)); + xfer->desc_virt[j].src_addr_hi = + cpu_to_le32(PCI_DMA_H(bus)); + bus += sizeof(struct xdma_result); + } + } - req->sw_desc_idx += desc_max; + req->sw_desc_idx += desc_max; return 0; } -static int transfer_init(struct xdma_engine *engine, struct xdma_request_cb *req) + +static int transfer_init(struct xdma_engine *engine, + struct xdma_request_cb *req, struct xdma_transfer *xfer) { - struct xdma_transfer *xfer = &req->xfer; unsigned int desc_max = min_t(unsigned int, req->sw_desc_cnt - req->sw_desc_idx, - XDMA_TRANSFER_MAX_DESC); + engine->desc_max); int i = 0; int last = 0; u32 control; + unsigned long flags; memset(xfer, 0, sizeof(*xfer)); + /* lock the engine state */ + spin_lock_irqsave(&engine->lock, flags); /* initialize wait queue */ +#if HAS_SWAKE_UP + init_swait_queue_head(&xfer->wq); +#else init_waitqueue_head(&xfer->wq); +#endif /* remember direction of transfer */ xfer->dir = engine->dir; + xfer->desc_virt = engine->desc + engine->desc_idx; + xfer->res_virt = engine->cyclic_result + engine->desc_idx; + xfer->desc_bus = engine->desc_bus + + (sizeof(struct xdma_desc) * engine->desc_idx); + xfer->res_bus = engine->cyclic_result_bus + + (sizeof(struct xdma_result) * engine->desc_idx); + xfer->desc_index = engine->desc_idx; - xfer->desc_virt = engine->desc; - xfer->desc_bus = engine->desc_bus; + /* Need to handle desc_used >= engine->desc_max */ + + if ((engine->desc_idx + desc_max) >= engine->desc_max) + desc_max = engine->desc_max - engine->desc_idx; transfer_desc_init(xfer, desc_max); - - dbg_sg("transfer->desc_bus = 0x%llx.\n", (u64)xfer->desc_bus); - transfer_build(engine, req, desc_max); + dbg_sg("xfer= %p transfer->desc_bus = 0x%llx.\n", + xfer, (u64)xfer->desc_bus); + transfer_build(engine, req, xfer, desc_max); + + xfer->desc_adjacent = desc_max; /* terminate last descriptor */ last = desc_max - 1; - xdma_desc_link(xfer->desc_virt + last, 0, 0); /* stop engine, EOP for AXI ST, req IRQ on last descriptor */ control = XDMA_DESC_STOPPED; control |= XDMA_DESC_EOP; control |= XDMA_DESC_COMPLETED; xdma_desc_control_set(xfer->desc_virt + last, control); - xfer->desc_num = xfer->desc_adjacent = desc_max; + if (engine->eop_flush) { + for (i = 0; i < last; i++) + xdma_desc_control_set(xfer->desc_virt + i, + XDMA_DESC_COMPLETED); + xfer->desc_cmpl_th = 1; + } else + xfer->desc_cmpl_th = desc_max; + + xfer->desc_num = desc_max; + engine->desc_idx = (engine->desc_idx + desc_max) % engine->desc_max; + engine->desc_used += desc_max; - dbg_sg("transfer 0x%p has %d descriptors\n", xfer, xfer->desc_num); /* fill in adjacent numbers */ - for (i = 0; i < xfer->desc_num; i++) - xdma_desc_adjacent(xfer->desc_virt + i, xfer->desc_num - i - 1); + for (i = 0; i < xfer->desc_num; i++) { + u32 next_adj = xdma_get_next_adj(xfer->desc_num - i - 1, + (xfer->desc_virt + i)->next_lo); + + dbg_desc("set next adj at index %d to %u\n", i, next_adj); + xdma_desc_adjacent(xfer->desc_virt + i, next_adj); + } + spin_unlock_irqrestore(&engine->lock, flags); return 0; } @@ -2851,13 +3038,13 @@ static void sgt_dump(struct sg_table *sgt) int i; struct scatterlist *sg = sgt->sgl; - pr_info("sgt 0x%p, sgl 0x%p, nents %u/%u.\n", - sgt, sgt->sgl, sgt->nents, sgt->orig_nents); + pr_info("sgt 0x%p, sgl 0x%p, nents %u/%u.\n", sgt, sgt->sgl, sgt->nents, + sgt->orig_nents); for (i = 0; i < sgt->orig_nents; i++, sg = sg_next(sg)) - pr_info("%d, 0x%p, pg 0x%p,%u+%u, dma 0x%llx,%u.\n", - i, sg, sg_page(sg), sg->offset, sg->length, - sg_dma_address(sg), sg_dma_len(sg)); + pr_info("%d, 0x%p, pg 0x%p,%u+%u, dma 0x%llx,%u.\n", i, sg, + sg_page(sg), sg->offset, sg->length, sg_dma_address(sg), + sg_dma_len(sg)); } static void xdma_request_cb_dump(struct xdma_request_cb *req) @@ -2868,9 +3055,8 @@ static void xdma_request_cb_dump(struct xdma_request_cb *req) req, req->total_len, req->ep_addr, req->sw_desc_cnt, req->sgt); sgt_dump(req->sgt); for (i = 0; i < req->sw_desc_cnt; i++) - pr_info("%d/%u, 0x%llx, %u.\n", - i, req->sw_desc_cnt, req->sdesc[i].addr, - req->sdesc[i].len); + pr_info("%d/%u, 0x%llx, %u.\n", i, req->sw_desc_cnt, + req->sdesc[i].addr, req->sdesc[i].len); } #endif @@ -2883,11 +3069,11 @@ static void xdma_request_free(struct xdma_request_cb *req) kfree(req); } -static struct xdma_request_cb * xdma_request_alloc(unsigned int sdesc_nr) +static struct xdma_request_cb *xdma_request_alloc(unsigned int sdesc_nr) { struct xdma_request_cb *req; unsigned int size = sizeof(struct xdma_request_cb) + - sdesc_nr * sizeof(struct sw_desc); + sdesc_nr * sizeof(struct sw_desc); req = kzalloc(size, GFP_KERNEL); if (!req) { @@ -2903,8 +3089,8 @@ static struct xdma_request_cb * xdma_request_alloc(unsigned int sdesc_nr) return req; } -static struct xdma_request_cb * xdma_init_request(struct sg_table *sgt, - u64 ep_addr) +static struct xdma_request_cb *xdma_init_request(struct sg_table *sgt, + u64 ep_addr) { struct xdma_request_cb *req; struct scatterlist *sg = sgt->sgl; @@ -2912,26 +3098,26 @@ static struct xdma_request_cb * xdma_init_request(struct sg_table *sgt, int extra = 0; int i, j = 0; - for (i = 0; i < max; i++, sg = sg_next(sg)) { + for (i = 0; i < max; i++, sg = sg_next(sg)) { unsigned int len = sg_dma_len(sg); if (unlikely(len > desc_blen_max)) extra += (len + desc_blen_max - 1) / desc_blen_max; } -//pr_info("ep 0x%llx, desc %u+%u.\n", ep_addr, max, extra); + dbg_tfr("ep 0x%llx, desc %u+%u.\n", ep_addr, max, extra); max += extra; req = xdma_request_alloc(max); if (!req) return NULL; - req->sgt = sgt; + req->sgt = sgt; req->ep_addr = ep_addr; - for (i = 0, sg = sgt->sgl; i < sgt->nents; i++, sg = sg_next(sg)) { + for (i = 0, sg = sgt->sgl; i < sgt->nents; i++, sg = sg_next(sg)) { unsigned int tlen = sg_dma_len(sg); - dma_addr_t addr = sg_dma_address(sg); + dma_addr_t addr = sg_dma_address(sg); req->total_len += tlen; while (tlen) { @@ -2939,7 +3125,7 @@ static struct xdma_request_cb * xdma_init_request(struct sg_table *sgt, if (tlen > desc_blen_max) { req->sdesc[j].len = desc_blen_max; addr += desc_blen_max; - tlen -= desc_blen_max; + tlen -= desc_blen_max; } else { req->sdesc[j].len = tlen; tlen = 0; @@ -2947,8 +3133,13 @@ static struct xdma_request_cb * xdma_init_request(struct sg_table *sgt, j++; } } - BUG_ON(j > max); + if (j > max) { + pr_err("Cannot transfer more than supported length %d\n", + desc_blen_max); + xdma_request_free(req); + return NULL; + } req->sw_desc_cnt = j; #ifdef __LIBXDMA_DEBUG__ xdma_request_cb_dump(req); @@ -2956,12 +3147,310 @@ static struct xdma_request_cb * xdma_init_request(struct sg_table *sgt, return req; } +ssize_t xdma_xfer_aperture(struct xdma_engine *engine, bool write, u64 ep_addr, + unsigned int aperture, struct sg_table *sgt, + bool dma_mapped, int timeout_ms) +{ + struct xdma_dev *xdev; + struct xdma_request_cb *req = NULL; + struct scatterlist *sg; + enum dma_data_direction dir = write ? DMA_TO_DEVICE : DMA_FROM_DEVICE; + unsigned int maxlen = min_t(unsigned int, aperture, desc_blen_max); + unsigned int sg_max; + unsigned int tlen = 0; + u64 ep_addr_max = ep_addr + aperture - 1; + ssize_t done = 0; + int i, rv = 0; + + if (!engine) { + pr_err("dma engine NULL\n"); + return -EINVAL; + } + + if (engine->magic != MAGIC_ENGINE) { + pr_err("%s has invalid magic number %lx\n", engine->name, + engine->magic); + return -EINVAL; + } + + xdev = engine->xdev; + if (xdma_device_flag_check(xdev, XDEV_FLAG_OFFLINE)) { + pr_info("xdev 0x%p, offline.\n", xdev); + return -EBUSY; + } + + /* check the direction */ + if (engine->dir != dir) { + pr_info("0x%p, %s, W %d, 0x%x/0x%x mismatch.\n", engine, + engine->name, write, engine->dir, dir); + return -EINVAL; + } + + if (engine->streaming) { + pr_info("%s aperture not supported in ST.\n", engine->name); + return -EINVAL; + } + + if (!dma_mapped) { + sgt->nents = pci_map_sg(xdev->pdev, sgt->sgl, sgt->orig_nents, + dir); + if (!sgt->nents) { + pr_info("map sgl failed, sgt 0x%p.\n", sgt); + return -EIO; + } + } else if (!sgt->nents) { + pr_err("sg table has invalid number of entries 0x%p.\n", sgt); + return -EIO; + } + sg_max = sgt->nents; + + req = kzalloc(sizeof(struct xdma_request_cb), GFP_KERNEL); + if (!req) { + rv = -ENOMEM; + goto unmap_sgl; + } + memset(req, 0, sizeof(struct xdma_request_cb)); + req->sgt = sgt; + req->ep_addr = ep_addr; + req->aperture = aperture; + req->sg = sgt->sgl; + + for (i = 0, sg = sgt->sgl; i < sgt->nents; i++, sg = sg_next(sg)) + tlen += sg_dma_len(sg); + req->total_len = tlen; + + dbg_tfr("%s, aperture: sg cnt %u.\n", engine->name, sgt->nents); + + mutex_lock(&engine->desc_lock); + + while (req->offset < req->total_len) { + unsigned long flags; + struct xdma_transfer *xfer = &req->tfer[0]; + unsigned int sg_offset = req->sg_offset; + unsigned int desc_idx, desc_max, desc_cnt = 0; + struct xdma_desc *desc_virt; + dma_addr_t desc_bus; + + /* initialize transfer */ + memset(xfer, 0, sizeof(struct xdma_transfer)); +#if HAS_SWAKE_UP + init_swait_queue_head(&xfer->wq); +#else + init_waitqueue_head(&xfer->wq); +#endif + xfer->dir = engine->dir; + if (!dma_mapped) + xfer->flags = XFER_FLAG_NEED_UNMAP; + + spin_lock_irqsave(&engine->lock, flags); + + desc_idx = engine->desc_idx; + desc_max = engine->desc_max; + + xfer->desc_virt = desc_virt = engine->desc + desc_idx; + xfer->res_virt = engine->cyclic_result + desc_idx; + xfer->desc_bus = desc_bus = engine->desc_bus + + (sizeof(struct xdma_desc) * desc_idx); + xfer->res_bus = engine->cyclic_result_bus + + (sizeof(struct xdma_result) * desc_idx); + xfer->desc_index = desc_idx; + + /* build transfer */ + sg = req->sg; + ep_addr = req->ep_addr + (req->offset & (aperture - 1)); + i = req->sg_idx; + + for (sg = req->sg; i < sg_max && desc_idx < desc_max; + i++, sg = sg_next(sg)) { + dma_addr_t addr = sg_dma_address(sg); + + tlen = sg_dma_len(sg); + if (sg_offset) { + tlen -= sg_offset; + addr += sg_offset; + } + + while (tlen) { + unsigned int len = min_t(unsigned int, tlen, + maxlen); + + if (ep_addr > ep_addr_max) + ep_addr = req->ep_addr; + + if ((ep_addr + len) > ep_addr_max) + len = ep_addr_max - ep_addr + 1; + + xdma_desc_set(engine->desc + desc_idx, addr, + ep_addr, len, dir); + + dbg_desc("sg %d -> desc %u: ep 0x%llx, 0x%llx + %u \n", + i, desc_idx, ep_addr, addr, len); + + sg_offset += len; + req->offset += len; + xfer->len += len; + ep_addr += len; + addr += len; + tlen -= len; + + desc_idx++; + desc_cnt++; + if (desc_idx == desc_max) + break; + } + + if (!tlen) + sg_offset = 0; + else + break; + } + + req->sg_offset = sg_offset; + req->sg_idx = i; + + xfer->desc_adjacent = desc_cnt; + xfer->desc_num = desc_cnt; + engine->desc_used += desc_cnt; + + /* create the desc linked list */ + for (i = 0; i < (desc_cnt - 1); i++, desc_virt++) { + desc_bus += sizeof(struct xdma_desc); + /* singly-linked list uses bus addresses */ + desc_virt->next_lo = cpu_to_le32(PCI_DMA_L(desc_bus)); + desc_virt->next_hi = cpu_to_le32(PCI_DMA_H(desc_bus)); + desc_virt->control = cpu_to_le32(DESC_MAGIC); + } + /* terminate the last descriptor next pointer */ + desc_virt->next_lo = cpu_to_le32(0); + desc_virt->next_hi = cpu_to_le32(0); + desc_virt->control = cpu_to_le32(DESC_MAGIC | + XDMA_DESC_STOPPED | XDMA_DESC_EOP | + XDMA_DESC_COMPLETED); + + xfer->desc_cmpl_th = desc_cnt; + + /* fill in adjacent numbers */ + for (i = 0; i < desc_cnt; i++) { + u32 next_adj = xdma_get_next_adj(desc_cnt - i - 1, + (xfer->desc_virt + i)->next_lo); + + dbg_desc("set next adj at idx %d to %u\n", i, next_adj); + xdma_desc_adjacent(xfer->desc_virt + i, next_adj); + } + + engine->desc_idx = (engine->desc_idx + desc_cnt) % desc_max; + spin_unlock_irqrestore(&engine->lock, flags); + + /* last transfer for the given request? */ + if (req->offset == req->total_len) { + xfer->last_in_request = 1; + xfer->sgt = sgt; + } + + dbg_tfr("xfer %u,%u/%u, ep 0x%llx/0x%x, done %ld, sg %u/%u, desc %u.\n", + xfer->len, req->offset, req->total_len, req->ep_addr, + req->aperture, done, req->sg_idx, sg_max, desc_cnt); + + rv = transfer_queue(engine, xfer); + if (rv < 0) { + mutex_unlock(&engine->desc_lock); + pr_info("unable to submit %s, %d.\n", engine->name, rv); + goto unmap_sgl; + } + + if (engine->cmplthp) + xdma_kthread_wakeup(engine->cmplthp); + + if (timeout_ms > 0) + xlx_wait_event_interruptible_timeout(xfer->wq, + (xfer->state != TRANSFER_STATE_SUBMITTED), + msecs_to_jiffies(timeout_ms)); + else + xlx_wait_event_interruptible(xfer->wq, + (xfer->state != TRANSFER_STATE_SUBMITTED)); + + spin_lock_irqsave(&engine->lock, flags); + + switch (xfer->state) { + case TRANSFER_STATE_COMPLETED: + spin_unlock_irqrestore(&engine->lock, flags); + + rv = 0; + dbg_tfr("transfer %p, %u, ep 0x%llx compl, +%lu.\n", + xfer, xfer->len, req->ep_addr - xfer->len, + done); + + done += xfer->len; + + break; + case TRANSFER_STATE_FAILED: + pr_info("xfer 0x%p,%u, failed, ep 0x%llx.\n", xfer, + xfer->len, req->ep_addr - xfer->len); + spin_unlock_irqrestore(&engine->lock, flags); + +#ifdef __LIBXDMA_DEBUG__ + transfer_dump(xfer); + sgt_dump(sgt); +#endif + rv = -EIO; + break; + default: + /* transfer can still be in-flight */ + pr_info("xfer 0x%p,%u, s 0x%x timed out, ep 0x%llx.\n", + xfer, xfer->len, xfer->state, req->ep_addr); + rv = engine_status_read(engine, 0, 1); + if (rv < 0) { + pr_err("Failed to read engine status\n"); + } else if (rv == 0) { + //engine_status_dump(engine); + rv = transfer_abort(engine, xfer); + if (rv < 0) { + pr_err("Failed to stop engine\n"); + } else if (rv == 0) { + rv = xdma_engine_stop(engine); + if (rv < 0) + pr_err("Failed to stop engine\n"); + } + } + spin_unlock_irqrestore(&engine->lock, flags); + +#ifdef __LIBXDMA_DEBUG__ + transfer_dump(xfer); + sgt_dump(sgt); +#endif + rv = -ERESTARTSYS; + break; + } + + engine->desc_used -= xfer->desc_num; + transfer_destroy(xdev, xfer); + + if (rv < 0) { + mutex_unlock(&engine->desc_lock); + goto unmap_sgl; + } + } /* while (sg) */ + mutex_unlock(&engine->desc_lock); + +unmap_sgl: + if (!dma_mapped && sgt->nents) { + pci_unmap_sg(xdev->pdev, sgt->sgl, sgt->orig_nents, dir); + sgt->nents = 0; + } + + if (req) + xdma_request_free(req); + + /* as long as some data is processed, return the count */ + return done ? done : rv; +} + ssize_t xdma_xfer_submit(void *dev_hndl, int channel, bool write, u64 ep_addr, - struct sg_table *sgt, bool dma_mapped, int timeout_ms) + struct sg_table *sgt, bool dma_mapped, int timeout_ms) { struct xdma_dev *xdev = (struct xdma_dev *)dev_hndl; struct xdma_engine *engine; - int rv = 0; + int rv = 0, tfer_idx = 0, i; ssize_t done = 0; struct scatterlist *sg = sgt->sgl; int nents; @@ -2976,25 +3465,30 @@ ssize_t xdma_xfer_submit(void *dev_hndl, int channel, bool write, u64 ep_addr, if (write == 1) { if (channel >= xdev->h2c_channel_max) { - pr_warn("H2C channel %d >= %d.\n", - channel, xdev->h2c_channel_max); + pr_err("H2C channel %d >= %d.\n", channel, + xdev->h2c_channel_max); return -EINVAL; } engine = &xdev->engine_h2c[channel]; } else if (write == 0) { if (channel >= xdev->c2h_channel_max) { - pr_warn("C2H channel %d >= %d.\n", - channel, xdev->c2h_channel_max); + pr_err("C2H channel %d >= %d.\n", channel, + xdev->c2h_channel_max); return -EINVAL; } engine = &xdev->engine_c2h[channel]; - } else { - pr_warn("write %d, exp. 0|1.\n", write); + } + + if (!engine) { + pr_err("dma engine NULL\n"); return -EINVAL; } - BUG_ON(!engine); - BUG_ON(engine->magic != MAGIC_ENGINE); + if (engine->magic != MAGIC_ENGINE) { + pr_err("%s has invalid magic number %lx\n", engine->name, + engine->magic); + return -EINVAL; + } xdev = engine->xdev; if (xdma_device_flag_check(xdev, XDEV_FLAG_OFFLINE)) { @@ -3004,8 +3498,8 @@ ssize_t xdma_xfer_submit(void *dev_hndl, int channel, bool write, u64 ep_addr, /* check the direction */ if (engine->dir != dir) { - pr_info("0x%p, %s, %d, W %d, 0x%x/0x%x mismatch.\n", - engine, engine->name, channel, write, engine->dir, dir); + pr_info("0x%p, %s, %d, W %d, 0x%x/0x%x mismatch.\n", engine, + engine->name, channel, write, engine->dir, dir); return -EINVAL; } @@ -3017,7 +3511,11 @@ ssize_t xdma_xfer_submit(void *dev_hndl, int channel, bool write, u64 ep_addr, } sgt->nents = nents; } else { - BUG_ON(!sgt->nents); + if (!sgt->nents) { + pr_err("sg table has invalid number of entries 0x%p.\n", + sgt); + return -EIO; + } } req = xdma_init_request(sgt, ep_addr); @@ -3026,25 +3524,24 @@ ssize_t xdma_xfer_submit(void *dev_hndl, int channel, bool write, u64 ep_addr, goto unmap_sgl; } - dbg_tfr("%s, len %u sg cnt %u.\n", - engine->name, req->total_len, req->sw_desc_cnt); + dbg_tfr("%s, len %u sg cnt %u.\n", engine->name, req->total_len, + req->sw_desc_cnt); sg = sgt->sgl; nents = req->sw_desc_cnt; + mutex_lock(&engine->desc_lock); + while (nents) { unsigned long flags; struct xdma_transfer *xfer; - /* one transfer at a time */ - spin_lock(&engine->desc_lock); - - /* build transfer */ - rv = transfer_init(engine, req); + /* build transfer */ + rv = transfer_init(engine, req, &req->tfer[0]); if (rv < 0) { - spin_unlock(&engine->desc_lock); + mutex_unlock(&engine->desc_lock); goto unmap_sgl; } - xfer = &req->xfer; + xfer = &req->tfer[0]; if (!dma_mapped) xfer->flags = XFER_FLAG_NEED_UNMAP; @@ -3056,9 +3553,8 @@ ssize_t xdma_xfer_submit(void *dev_hndl, int channel, bool write, u64 ep_addr, xfer->sgt = sgt; } - dbg_tfr("xfer, %u, ep 0x%llx, done %lu, sg %u/%u.\n", - xfer->len, req->ep_addr, done, req->sw_desc_idx, - req->sw_desc_cnt); + dbg_tfr("xfer, %u, ep 0x%llx, done %lu, sg %u/%u.\n", xfer->len, + req->ep_addr, done, req->sw_desc_idx, req->sw_desc_cnt); #ifdef __LIBXDMA_DEBUG__ transfer_dump(xfer); @@ -3066,45 +3562,51 @@ ssize_t xdma_xfer_submit(void *dev_hndl, int channel, bool write, u64 ep_addr, rv = transfer_queue(engine, xfer); if (rv < 0) { - spin_unlock(&engine->desc_lock); + mutex_unlock(&engine->desc_lock); pr_info("unable to submit %s, %d.\n", engine->name, rv); goto unmap_sgl; } - /* - * When polling, determine how many descriptors have been queued * on the engine to determine the writeback value expected - */ - if (poll_mode) { - unsigned int desc_count; - - spin_lock_irqsave(&engine->lock, flags); - desc_count = xfer->desc_num; - spin_unlock_irqrestore(&engine->lock, flags); - - dbg_tfr("%s poll desc_count=%d\n", - engine->name, desc_count); - rv = engine_service_poll(engine, desc_count); + if (engine->cmplthp) + xdma_kthread_wakeup(engine->cmplthp); - } else { - rv = wait_event_interruptible_timeout(xfer->wq, - (xfer->state != TRANSFER_STATE_SUBMITTED), + if (timeout_ms > 0) + xlx_wait_event_interruptible_timeout(xfer->wq, + (xfer->state != TRANSFER_STATE_SUBMITTED), msecs_to_jiffies(timeout_ms)); - } + else + xlx_wait_event_interruptible(xfer->wq, + (xfer->state != TRANSFER_STATE_SUBMITTED)); spin_lock_irqsave(&engine->lock, flags); - switch(xfer->state) { + switch (xfer->state) { case TRANSFER_STATE_COMPLETED: spin_unlock_irqrestore(&engine->lock, flags); - dbg_tfr("transfer %p, %u, ep 0x%llx compl, +%lu.\n", - xfer, xfer->len, req->ep_addr - xfer->len, done); - done += xfer->len; rv = 0; + dbg_tfr("transfer %p, %u, ep 0x%llx compl, +%lu.\n", + xfer, xfer->len, req->ep_addr - xfer->len, + done); + + /* For C2H streaming use writeback results */ + if (engine->streaming && + engine->dir == DMA_FROM_DEVICE) { + struct xdma_result *result = xfer->res_virt; + + for (i = 0; i < xfer->desc_cmpl; i++) + done += result[i].length; + + /* finish the whole request */ + if (engine->eop_flush) + nents = 0; + } else + done += xfer->len; + break; case TRANSFER_STATE_FAILED: - pr_info("xfer 0x%p,%u, failed, ep 0x%llx.\n", - xfer, xfer->len, req->ep_addr - xfer->len); + pr_info("xfer 0x%p,%u, failed, ep 0x%llx.\n", xfer, + xfer->len, req->ep_addr - xfer->len); spin_unlock_irqrestore(&engine->lock, flags); #ifdef __LIBXDMA_DEBUG__ @@ -3116,12 +3618,21 @@ ssize_t xdma_xfer_submit(void *dev_hndl, int channel, bool write, u64 ep_addr, default: /* transfer can still be in-flight */ pr_info("xfer 0x%p,%u, s 0x%x timed out, ep 0x%llx.\n", - xfer, xfer->len, xfer->state, req->ep_addr); - engine_status_read(engine, 0, 1); - //engine_status_dump(engine); - transfer_abort(engine, xfer); - - xdma_engine_stop(engine); + xfer, xfer->len, xfer->state, req->ep_addr); + rv = engine_status_read(engine, 0, 1); + if (rv < 0) { + pr_err("Failed to read engine status\n"); + } else if (rv == 0) { + //engine_status_dump(engine); + rv = transfer_abort(engine, xfer); + if (rv < 0) { + pr_err("Failed to stop engine\n"); + } else if (rv == 0) { + rv = xdma_engine_stop(engine); + if (rv < 0) + pr_err("Failed to stop engine\n"); + } + } spin_unlock_irqrestore(&engine->lock, flags); #ifdef __LIBXDMA_DEBUG__ @@ -3132,12 +3643,20 @@ ssize_t xdma_xfer_submit(void *dev_hndl, int channel, bool write, u64 ep_addr, break; } + engine->desc_used -= xfer->desc_num; transfer_destroy(xdev, xfer); - spin_unlock(&engine->desc_lock); - if (rv < 0) + /* use multiple transfers per request if we could not fit + * all data within single descriptor chain. + */ + tfer_idx++; + + if (rv < 0) { + mutex_unlock(&engine->desc_lock); goto unmap_sgl; + } } /* while (sg) */ + mutex_unlock(&engine->desc_lock); unmap_sgl: if (!dma_mapped && sgt->nents) { @@ -3148,39 +3667,333 @@ ssize_t xdma_xfer_submit(void *dev_hndl, int channel, bool write, u64 ep_addr, if (req) xdma_request_free(req); - if (rv < 0) - return rv; - - return done; + /* as long as some data is processed, return the count */ + return done ? done : rv; } -EXPORT_SYMBOL_GPL(xdma_xfer_submit); -int xdma_performance_submit(struct xdma_dev *xdev, struct xdma_engine *engine) +ssize_t xdma_xfer_completion(void *cb_hndl, void *dev_hndl, int channel, + bool write, u64 ep_addr, struct sg_table *sgt, + bool dma_mapped, int timeout_ms) { - u8 *buffer_virt; - u32 max_consistent_size = 128 * 32 * 1024; /* 1024 pages, 4MB */ - dma_addr_t buffer_bus; /* bus address */ - struct xdma_transfer *transfer; - u64 ep_addr = 0; - int num_desc_in_a_loop = 128; - int size_in_desc = engine->xdma_perf->transfer_size; - int size = size_in_desc * num_desc_in_a_loop; - int i; - - BUG_ON(size_in_desc > max_consistent_size); - if (size > max_consistent_size) { - size = max_consistent_size; - num_desc_in_a_loop = size / size_in_desc; - } + struct xdma_dev *xdev = (struct xdma_dev *)dev_hndl; + struct xdma_io_cb *cb = (struct xdma_io_cb *)cb_hndl; + struct xdma_engine *engine; + int rv = 0, tfer_idx = 0; + ssize_t done = 0; + int nents; + enum dma_data_direction dir = write ? DMA_TO_DEVICE : DMA_FROM_DEVICE; + struct xdma_request_cb *req = NULL; + struct xdma_transfer *xfer; + int i; + struct xdma_result *result; + + if (write == 1) { + if (channel >= xdev->h2c_channel_max) { + pr_warn("H2C channel %d >= %d.\n", + channel, xdev->h2c_channel_max); + return -EINVAL; + } + engine = &xdev->engine_h2c[channel]; + } else if (write == 0) { + if (channel >= xdev->c2h_channel_max) { + pr_warn("C2H channel %d >= %d.\n", + channel, xdev->c2h_channel_max); + return -EINVAL; + } + engine = &xdev->engine_c2h[channel]; + } else { + pr_warn("write %d, exp. 0|1.\n", write); + return -EINVAL; + } + + if (!engine) { + pr_err("dma engine NULL\n"); + return -EINVAL; + } + + if (engine->magic != MAGIC_ENGINE) { + pr_err("%s has invalid magic number %lx\n", engine->name, + engine->magic); + return -EINVAL; + } + + xdev = engine->xdev; + req = cb->req; + + nents = req->sw_desc_cnt; + while (nents) { + xfer = &req->tfer[tfer_idx]; + nents -= xfer->desc_num; + switch (xfer->state) { + case TRANSFER_STATE_COMPLETED: + dbg_tfr("transfer %p, %u, ep 0x%llx compl, +%lu.\n", + xfer, xfer->len, req->ep_addr - xfer->len, + done); + + result = xfer->res_virt; + /* For C2H streaming use writeback results */ + if (engine->streaming && + engine->dir == DMA_FROM_DEVICE) { + for (i = 0; i < xfer->desc_num; i++) + done += result[i].length; + } else + done += xfer->len; + + rv = 0; + break; + case TRANSFER_STATE_FAILED: + pr_info("xfer 0x%p,%u, failed, ep 0x%llx.\n", + xfer, xfer->len, req->ep_addr - xfer->len); + +#ifdef __LIBXDMA_DEBUG__ + transfer_dump(xfer); + sgt_dump(sgt); +#endif + rv = -EIO; + break; + default: + /* transfer can still be in-flight */ + pr_info("xfer 0x%p,%u, s 0x%x timed out, ep 0x%llx.\n", + xfer, xfer->len, xfer->state, req->ep_addr); + engine_status_read(engine, 0, 1); + engine_status_dump(engine); + transfer_abort(engine, xfer); + + xdma_engine_stop(engine); + +#ifdef __LIBXDMA_DEBUG__ + transfer_dump(xfer); + sgt_dump(sgt); +#endif + rv = -ERESTARTSYS; + break; + } + + transfer_destroy(xdev, xfer); + engine->desc_used -= xfer->desc_num; + + tfer_idx++; + + if (rv < 0) + goto unmap_sgl; + } /* while (sg) */ + +unmap_sgl: + if (!dma_mapped && sgt->nents) { + pci_unmap_sg(xdev->pdev, sgt->sgl, sgt->orig_nents, dir); + sgt->nents = 0; + } + + if (req) + xdma_request_free(req); + + return done; + +} + +ssize_t xdma_xfer_submit_nowait(void *cb_hndl, void *dev_hndl, int channel, + bool write, u64 ep_addr, struct sg_table *sgt, + bool dma_mapped, int timeout_ms) +{ + struct xdma_dev *xdev = (struct xdma_dev *)dev_hndl; + struct xdma_engine *engine; + struct xdma_io_cb *cb = (struct xdma_io_cb *)cb_hndl; + int rv = 0, tfer_idx = 0; + struct scatterlist *sg = sgt->sgl; + int nents; + enum dma_data_direction dir = write ? DMA_TO_DEVICE : DMA_FROM_DEVICE; + struct xdma_request_cb *req = NULL; + + if (!dev_hndl) + return -EINVAL; + + if (debug_check_dev_hndl(__func__, xdev->pdev, dev_hndl) < 0) + return -EINVAL; + + if (write == 1) { + if (channel >= xdev->h2c_channel_max) { + pr_warn("H2C channel %d >= %d.\n", + channel, xdev->h2c_channel_max); + return -EINVAL; + } + engine = &xdev->engine_h2c[channel]; + } else if (write == 0) { + if (channel >= xdev->c2h_channel_max) { + pr_warn("C2H channel %d >= %d.\n", + channel, xdev->c2h_channel_max); + return -EINVAL; + } + engine = &xdev->engine_c2h[channel]; + } else { + pr_warn("write %d, exp. 0|1.\n", write); + return -EINVAL; + } + + if (!engine) { + pr_err("dma engine NULL\n"); + return -EINVAL; + } + + if (engine->magic != MAGIC_ENGINE) { + pr_err("%s has invalid magic number %lx\n", + engine->name, engine->magic); + return -EINVAL; + } + + xdev = engine->xdev; + if (xdma_device_flag_check(xdev, XDEV_FLAG_OFFLINE)) { + pr_info("xdev 0x%p, offline.\n", xdev); + return -EBUSY; + } + + /* check the direction */ + if (engine->dir != dir) { + pr_info("0x%p, %s, %d, W %d, 0x%x/0x%x mismatch.\n", + engine, engine->name, channel, write, engine->dir, dir); + return -EINVAL; + } + + if (!dma_mapped) { + nents = pci_map_sg(xdev->pdev, sg, sgt->orig_nents, dir); + if (!nents) { + pr_info("map sgl failed, sgt 0x%p.\n", sgt); + return -EIO; + } + sgt->nents = nents; + } else { + if (!sgt->nents) { + pr_err("sg table has invalid number of entries 0x%p.\n", + sgt); + return -EIO; + } + } + + req = xdma_init_request(sgt, ep_addr); + if (!req) { + rv = -ENOMEM; + goto unmap_sgl; + } + + //used when doing completion. + req->cb = cb; + cb->req = req; + dbg_tfr("%s, len %u sg cnt %u.\n", + engine->name, req->total_len, req->sw_desc_cnt); + + sg = sgt->sgl; + nents = req->sw_desc_cnt; + while (nents) { + + struct xdma_transfer *xfer; + + /* one transfer at a time */ + xfer = &req->tfer[tfer_idx]; + /* build transfer */ + rv = transfer_init(engine, req, xfer); + if (rv < 0) { + pr_info("transfer_init failed\n"); + + if (!dma_mapped && sgt->nents) { + pci_unmap_sg(xdev->pdev, sgt->sgl, + sgt->orig_nents, dir); + sgt->nents = 0; + } + + /* Transfer failed return BUSY */ + if (cb->io_done) + cb->io_done((unsigned long)cb, -EBUSY); + + goto rel_req; + } + + xfer->cb = cb; - buffer_virt = dma_alloc_coherent(&xdev->pdev->dev, size, - &buffer_bus, GFP_KERNEL); + if (!dma_mapped) + xfer->flags = XFER_FLAG_NEED_UNMAP; + + /* last transfer for the given request? */ + nents -= xfer->desc_num; + if (!nents) { + xfer->last_in_request = 1; + xfer->sgt = sgt; + } + + dbg_tfr("xfer %p, len %u, ep 0x%llx, sg %u/%u. nents = %d\n", + xfer, xfer->len, req->ep_addr, req->sw_desc_idx, + req->sw_desc_cnt, nents); + +#ifdef __LIBXDMA_DEBUG__ + transfer_dump(xfer); +#endif + + rv = transfer_queue(engine, xfer); + if (rv < 0) { + pr_info("unable to submit %s, %d.\n", engine->name, rv); + goto unmap_sgl; + } + + /* use multiple transfers per request if we could not fit all + * data within single descriptor chain. + */ + tfer_idx++; + } + + return -EIOCBQUEUED; + +unmap_sgl: + if (!dma_mapped && sgt->nents) { + pci_unmap_sg(xdev->pdev, sgt->sgl, sgt->orig_nents, dir); + sgt->nents = 0; + } + +rel_req: + if (req) + xdma_request_free(req); + + return rv; +} + +int xdma_performance_submit(struct xdma_dev *xdev, struct xdma_engine *engine) +{ + u32 max_consistent_size = XDMA_PERF_NUM_DESC * 32 * 1024; /* 4MB */ + struct xdma_transfer *transfer; + u64 ep_addr = 0; + int num_desc_in_a_loop = XDMA_PERF_NUM_DESC; + int size_in_desc = engine->xdma_perf->transfer_size; + int size = size_in_desc * num_desc_in_a_loop; + int i; + int rv = -ENOMEM; + unsigned char free_desc = 0; + + if (size_in_desc > max_consistent_size) { + pr_err("%s max consistent size %d is more than supported %d\n", + engine->name, size_in_desc, max_consistent_size); + return -EINVAL; + } + + if (size > max_consistent_size) { + size = max_consistent_size; + num_desc_in_a_loop = size / size_in_desc; + } + + engine->perf_buf_virt = dma_alloc_coherent(&xdev->pdev->dev, + size_in_desc, + &engine->perf_buf_bus, + GFP_KERNEL); + if (!engine->perf_buf_virt) { + pr_err("dev %s, %s DMA allocation OOM.\n", + dev_name(&xdev->pdev->dev), engine->name); + return rv; + } /* allocate transfer data structure */ transfer = kzalloc(sizeof(struct xdma_transfer), GFP_KERNEL); - BUG_ON(!transfer); - + if (!transfer) { + pr_err("dev %s, %s transfer request OOM.\n", + dev_name(&xdev->pdev->dev), engine->name); + goto err_engine_transfer; + } /* 0 = write engine (to_dev=0) , 1 = read engine (to_dev=1) */ transfer->dir = engine->dir; /* set number of descriptors */ @@ -3188,51 +4001,89 @@ int xdma_performance_submit(struct xdma_dev *xdev, struct xdma_engine *engine) /* allocate descriptor list */ if (!engine->desc) { - engine->desc = dma_alloc_coherent(&xdev->pdev->dev, + engine->desc = dma_alloc_coherent( + &xdev->pdev->dev, num_desc_in_a_loop * sizeof(struct xdma_desc), &engine->desc_bus, GFP_KERNEL); - BUG_ON(!engine->desc); + if (!engine->desc) { + pr_err("%s DMA memory allocation for descriptors failed\n", + engine->name); + goto err_engine_desc; + } dbg_init("device %s, engine %s pre-alloc desc 0x%p,0x%llx.\n", - dev_name(&xdev->pdev->dev), engine->name, - engine->desc, engine->desc_bus); + dev_name(&xdev->pdev->dev), engine->name, engine->desc, + engine->desc_bus); + free_desc = 1; } transfer->desc_virt = engine->desc; transfer->desc_bus = engine->desc_bus; - transfer_desc_init(transfer, transfer->desc_num); + rv = transfer_desc_init(transfer, transfer->desc_num); + if (rv < 0) { + pr_err("Failed to initialize descriptors\n"); + goto err_dma_desc; + } dbg_sg("transfer->desc_bus = 0x%llx.\n", (u64)transfer->desc_bus); for (i = 0; i < transfer->desc_num; i++) { struct xdma_desc *desc = transfer->desc_virt + i; - dma_addr_t rc_bus_addr = buffer_bus + size_in_desc * i; + dma_addr_t rc_bus_addr = engine->perf_buf_bus; /* fill in descriptor entry with transfer details */ xdma_desc_set(desc, rc_bus_addr, ep_addr, size_in_desc, - engine->dir); + engine->dir); } /* stop engine and request interrupt on last descriptor */ - xdma_desc_control_set(transfer->desc_virt, 0); + rv = xdma_desc_control_set(transfer->desc_virt, 0); + if (rv < 0) { + pr_err("Failed to set desc control\n"); + goto err_dma_desc; + } /* create a linked loop */ xdma_desc_link(transfer->desc_virt + transfer->desc_num - 1, - transfer->desc_virt, transfer->desc_bus); + transfer->desc_virt, transfer->desc_bus); transfer->cyclic = 1; /* initialize wait queue */ +#if HAS_SWAKE_UP + init_swait_queue_head(&transfer->wq); +#else init_waitqueue_head(&transfer->wq); +#endif - //printk("=== Descriptor print for PERF \n"); + //printk("=== Descriptor print for PERF\n"); //transfer_dump(transfer); dbg_perf("Queueing XDMA I/O %s request for performance measurement.\n", - engine->dir ? "write (to dev)" : "read (from dev)"); - transfer_queue(engine, transfer); + engine->dir ? "write (to dev)" : "read (from dev)"); + rv = transfer_queue(engine, transfer); + if (rv < 0) { + pr_err("Failed to queue transfer\n"); + goto err_dma_desc; + } return 0; +err_dma_desc: + if (free_desc && engine->desc) + dma_free_coherent(&xdev->pdev->dev, + num_desc_in_a_loop * sizeof(struct xdma_desc), + engine->desc, engine->desc_bus); + engine->desc = NULL; +err_engine_desc: + if (transfer) + list_del(&transfer->entry); + kfree(transfer); + transfer = NULL; +err_engine_transfer: + if (engine->perf_buf_virt) + dma_free_coherent(&xdev->pdev->dev, size_in_desc, + engine->perf_buf_virt, engine->perf_buf_bus); + engine->perf_buf_virt = NULL; + return rv; } -EXPORT_SYMBOL_GPL(xdma_performance_submit); static struct xdma_dev *alloc_dev_instance(struct pci_dev *pdev) { @@ -3240,7 +4091,10 @@ static struct xdma_dev *alloc_dev_instance(struct pci_dev *pdev) struct xdma_dev *xdev; struct xdma_engine *engine; - BUG_ON(!pdev); + if (!pdev) { + pr_err("Invalid pdev\n"); + return NULL; + } /* allocate zeroed device book keeping structure */ xdev = kzalloc(sizeof(struct xdma_dev), GFP_KERNEL); @@ -3272,19 +4126,29 @@ static struct xdma_dev *alloc_dev_instance(struct pci_dev *pdev) engine = xdev->engine_h2c; for (i = 0; i < XDMA_CHANNEL_NUM_MAX; i++, engine++) { spin_lock_init(&engine->lock); - spin_lock_init(&engine->desc_lock); + mutex_init(&engine->desc_lock); INIT_LIST_HEAD(&engine->transfer_list); +#if HAS_SWAKE_UP + init_swait_queue_head(&engine->shutdown_wq); + init_swait_queue_head(&engine->xdma_perf_wq); +#else init_waitqueue_head(&engine->shutdown_wq); init_waitqueue_head(&engine->xdma_perf_wq); +#endif } engine = xdev->engine_c2h; for (i = 0; i < XDMA_CHANNEL_NUM_MAX; i++, engine++) { spin_lock_init(&engine->lock); - spin_lock_init(&engine->desc_lock); + mutex_init(&engine->desc_lock); INIT_LIST_HEAD(&engine->transfer_list); +#if HAS_SWAKE_UP + init_swait_queue_head(&engine->shutdown_wq); + init_swait_queue_head(&engine->xdma_perf_wq); +#else init_waitqueue_head(&engine->shutdown_wq); init_waitqueue_head(&engine->xdma_perf_wq); +#endif } return xdev; @@ -3294,8 +4158,15 @@ static int request_regions(struct xdma_dev *xdev, struct pci_dev *pdev) { int rv; - BUG_ON(!xdev); - BUG_ON(!pdev); + if (!xdev) { + pr_err("Invalid xdev\n"); + return -EINVAL; + } + + if (!pdev) { + pr_err("Invalid pdev\n"); + return -EINVAL; + } dbg_init("pci_request_regions()\n"); rv = pci_request_regions(pdev, xdev->mod_name); @@ -3313,7 +4184,10 @@ static int request_regions(struct xdma_dev *xdev, struct pci_dev *pdev) static int set_dma_mask(struct pci_dev *pdev) { - BUG_ON(!pdev); + if (!pdev) { + pr_err("Invalid pdev\n"); + return -EINVAL; + } dbg_init("sizeof(dma_addr_t) == %ld\n", sizeof(dma_addr_t)); /* 64-bit addressing capability for XDMA? */ @@ -3323,9 +4197,7 @@ static int set_dma_mask(struct pci_dev *pdev) dbg_init("pci_set_dma_mask()\n"); /* use 64-bit DMA */ dbg_init("Using a 64-bit DMA mask.\n"); - /* use 32-bit DMA for descriptors */ - pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32)); - /* use 64-bit DMA, 32-bit for consistent */ + pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(64)); } else if (!pci_set_dma_mask(pdev, DMA_BIT_MASK(32))) { dbg_init("Could not set 64-bit DMA mask.\n"); pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32)); @@ -3339,22 +4211,28 @@ static int set_dma_mask(struct pci_dev *pdev) return 0; } -static u32 get_engine_channel_id(struct engine_regs *regs) +static int get_engine_channel_id(struct engine_regs *regs) { - u32 value; + int value; - BUG_ON(!regs); + if (!regs) { + pr_err("Invalid engine registers\n"); + return -EINVAL; + } value = read_register(®s->identifier); return (value & 0x00000f00U) >> 8; } -static u32 get_engine_id(struct engine_regs *regs) +static int get_engine_id(struct engine_regs *regs) { - u32 value; + int value; - BUG_ON(!regs); + if (!regs) { + pr_err("Invalid engine registers\n"); + return -EINVAL; + } value = read_register(®s->identifier); return (value & 0xffff0000U) >> 16; @@ -3364,15 +4242,21 @@ static void remove_engines(struct xdma_dev *xdev) { struct xdma_engine *engine; int i; + int rv; - BUG_ON(!xdev); + if (!xdev) { + pr_err("Invalid xdev\n"); + return; + } /* iterate over channels */ for (i = 0; i < xdev->h2c_channel_max; i++) { engine = &xdev->engine_h2c[i]; if (engine->magic == MAGIC_ENGINE) { dbg_sg("Remove %s, %d", engine->name, i); - engine_destroy(xdev, engine); + rv = engine_destroy(xdev, engine); + if (rv < 0) + pr_err("Failed to destroy H2C engine %d\n", i); dbg_sg("%s, %d removed", engine->name, i); } } @@ -3381,14 +4265,16 @@ static void remove_engines(struct xdma_dev *xdev) engine = &xdev->engine_c2h[i]; if (engine->magic == MAGIC_ENGINE) { dbg_sg("Remove %s, %d", engine->name, i); - engine_destroy(xdev, engine); + rv = engine_destroy(xdev, engine); + if (rv < 0) + pr_err("Failed to destroy C2H engine %d\n", i); dbg_sg("%s, %d removed", engine->name, i); } } } static int probe_for_engine(struct xdma_dev *xdev, enum dma_data_direction dir, - int channel) + int channel) { struct engine_regs *regs; int offset = channel * CHANNEL_SPACING; @@ -3400,7 +4286,8 @@ static int probe_for_engine(struct xdma_dev *xdev, enum dma_data_direction dir, /* register offset for the engine */ /* read channels at 0x0000, write channels at 0x1000, - * channels at 0x100 interval */ + * channels at 0x100 interval + */ if (dir == DMA_TO_DEVICE) { engine_id_expected = XDMA_ID_H2C; engine = &xdev->engine_h2c[channel]; @@ -3415,24 +4302,23 @@ static int probe_for_engine(struct xdma_dev *xdev, enum dma_data_direction dir, channel_id = get_engine_channel_id(regs); if ((engine_id != engine_id_expected) || (channel_id != channel)) { - dbg_init("%s %d engine, reg off 0x%x, id mismatch 0x%x,0x%x," - "exp 0x%x,0x%x, SKIP.\n", - dir == DMA_TO_DEVICE ? "H2C" : "C2H", - channel, offset, engine_id, channel_id, - engine_id_expected, channel_id != channel); + dbg_init( + "%s %d engine, reg off 0x%x, id mismatch 0x%x,0x%x,exp 0x%x,0x%x, SKIP.\n", + dir == DMA_TO_DEVICE ? "H2C" : "C2H", channel, offset, + engine_id, channel_id, engine_id_expected, + channel_id != channel); return -EINVAL; } dbg_init("found AXI %s %d engine, reg. off 0x%x, id 0x%x,0x%x.\n", - dir == DMA_TO_DEVICE ? "H2C" : "C2H", channel, - offset, engine_id, channel_id); + dir == DMA_TO_DEVICE ? "H2C" : "C2H", channel, offset, + engine_id, channel_id); /* allocate and initialize engine */ rv = engine_init(engine, xdev, offset, dir, channel); if (rv != 0) { pr_info("failed to create AXI %s %d engine.\n", - dir == DMA_TO_DEVICE ? "H2C" : "C2H", - channel); + dir == DMA_TO_DEVICE ? "H2C" : "C2H", channel); return rv; } @@ -3444,7 +4330,10 @@ static int probe_engines(struct xdma_dev *xdev) int i; int rv = 0; - BUG_ON(!xdev); + if (!xdev) { + pr_err("Invalid xdev\n"); + return -EINVAL; + } /* iterate over channels */ for (i = 0; i < xdev->h2c_channel_max; i++) { @@ -3464,66 +4353,28 @@ static int probe_engines(struct xdma_dev *xdev) return 0; } -#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0) -static void pci_enable_relaxed_ordering(struct pci_dev *pdev) +#if KERNEL_VERSION(3, 5, 0) <= LINUX_VERSION_CODE +static void pci_enable_capability(struct pci_dev *pdev, int cap) { - pcie_capability_set_word(pdev, PCI_EXP_DEVCTL, PCI_EXP_DEVCTL_RELAX_EN); -} -#else -static void pci_enable_relaxed_ordering(struct pci_dev *pdev) -{ - u16 v; - int pos; - - pos = pci_pcie_cap(pdev); - if (pos > 0) { - pci_read_config_word(pdev, pos + PCI_EXP_DEVCTL, &v); - v |= PCI_EXP_DEVCTL_RELAX_EN; - pci_write_config_word(pdev, pos + PCI_EXP_DEVCTL, v); - } -} -#endif - -static void pci_check_extended_tag(struct xdma_dev *xdev, struct pci_dev *pdev) -{ - u16 cap; - u32 v; - void *__iomem reg; - -#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0) - pcie_capability_read_word(pdev, PCI_EXP_DEVCTL, &cap); -#else - int pos; - - pos = pci_pcie_cap(pdev); - if (pos > 0) - pci_read_config_word(pdev, pos + PCI_EXP_DEVCTL, &cap); - else { - pr_info("pdev 0x%p, unable to access pcie cap.\n", pdev); - return; - } -#endif - - if ((cap & PCI_EXP_DEVCTL_EXT_TAG)) - return; - - /* extended tag not enabled */ - pr_info("0x%p EXT_TAG disabled.\n", pdev); + pcie_capability_set_word(pdev, PCI_EXP_DEVCTL, cap); +} +#else +static void pci_enable_capability(struct pci_dev *pdev, int cap) +{ + u16 v; + int pos; - if (xdev->config_bar_idx < 0) { - pr_info("pdev 0x%p, xdev 0x%p, config bar UNKNOWN.\n", - pdev, xdev); - return; + pos = pci_pcie_cap(pdev); + if (pos > 0) { + pci_read_config_word(pdev, pos + PCI_EXP_DEVCTL, &v); + v |= cap; + pci_write_config_word(pdev, pos + PCI_EXP_DEVCTL, v); } - - reg = xdev->bar[xdev->config_bar_idx] + XDMA_OFS_CONFIG + 0x4C; - v = read_register(reg); - v = (v & 0xFF) | (((u32)32) << 8); - write_register(v, reg, XDMA_OFS_CONFIG + 0x4C); } +#endif void *xdma_device_open(const char *mname, struct pci_dev *pdev, int *user_max, - int *h2c_channel_max, int *c2h_channel_max) + int *h2c_channel_max, int *c2h_channel_max) { struct xdma_dev *xdev = NULL; int rv = 0; @@ -3540,17 +4391,20 @@ void *xdma_device_open(const char *mname, struct pci_dev *pdev, int *user_max, xdev->c2h_channel_max = *c2h_channel_max; xdma_device_flag_set(xdev, XDEV_FLAG_OFFLINE); - xdev_list_add(xdev); if (xdev->user_max == 0 || xdev->user_max > MAX_USER_IRQ) xdev->user_max = MAX_USER_IRQ; if (xdev->h2c_channel_max == 0 || - xdev->h2c_channel_max > XDMA_CHANNEL_NUM_MAX) + xdev->h2c_channel_max > XDMA_CHANNEL_NUM_MAX) xdev->h2c_channel_max = XDMA_CHANNEL_NUM_MAX; if (xdev->c2h_channel_max == 0 || - xdev->c2h_channel_max > XDMA_CHANNEL_NUM_MAX) + xdev->c2h_channel_max > XDMA_CHANNEL_NUM_MAX) xdev->c2h_channel_max = XDMA_CHANNEL_NUM_MAX; - + + rv = xdev_list_add(xdev); + if (rv < 0) + goto free_xdev; + rv = pci_enable_device(pdev); if (rv) { dbg_init("pci_enable_device() failed, %d.\n", rv); @@ -3561,9 +4415,10 @@ void *xdma_device_open(const char *mname, struct pci_dev *pdev, int *user_max, pci_check_intr_pend(pdev); /* enable relaxed ordering */ - pci_enable_relaxed_ordering(pdev); + pci_enable_capability(pdev, PCI_EXP_DEVCTL_RELAX_EN); - pci_check_extended_tag(xdev, pdev); + /* enable extended tag */ + pci_enable_capability(pdev, PCI_EXP_DEVCTL_EXT_TAG); /* force MRRS to be 512 */ rv = pcie_set_readrq(pdev, 512); @@ -3594,15 +4449,15 @@ void *xdma_device_open(const char *mname, struct pci_dev *pdev, int *user_max, rv = probe_engines(xdev); if (rv) - goto err_engines; + goto err_mask; rv = enable_msi_msix(xdev, pdev); if (rv < 0) - goto err_enable_msix; + goto err_engines; rv = irq_setup(xdev, pdev); if (rv < 0) - goto err_interrupts; + goto err_msix; if (!poll_mode) channel_interrupts_enable(xdev, ~0); @@ -3617,9 +4472,7 @@ void *xdma_device_open(const char *mname, struct pci_dev *pdev, int *user_max, xdma_device_flag_clear(xdev, XDEV_FLAG_OFFLINE); return (void *)xdev; -err_interrupts: - irq_teardown(xdev); -err_enable_msix: +err_msix: disable_msi_msix(xdev, pdev); err_engines: remove_engines(xdev); @@ -3633,10 +4486,10 @@ void *xdma_device_open(const char *mname, struct pci_dev *pdev, int *user_max, pci_disable_device(pdev); err_enable: xdev_list_remove(xdev); +free_xdev: kfree(xdev); return NULL; } -EXPORT_SYMBOL_GPL(xdma_device_open); void xdma_device_close(struct pci_dev *pdev, void *dev_hndl) { @@ -3650,11 +4503,11 @@ void xdma_device_close(struct pci_dev *pdev, void *dev_hndl) if (debug_check_dev_hndl(__func__, pdev, dev_hndl) < 0) return; - dbg_sg("remove(dev = 0x%p) where pdev->dev.driver_data = 0x%p\n", - pdev, xdev); + dbg_sg("remove(dev = 0x%p) where pdev->dev.driver_data = 0x%p\n", pdev, + xdev); if (xdev->pdev != pdev) { dbg_sg("pci_dev(0x%lx) != pdev(0x%lx)\n", - (unsigned long)xdev->pdev, (unsigned long)pdev); + (unsigned long)xdev->pdev, (unsigned long)pdev); } channel_interrupts_disable(xdev, ~0); @@ -3681,13 +4534,13 @@ void xdma_device_close(struct pci_dev *pdev, void *dev_hndl) kfree(xdev); } -EXPORT_SYMBOL_GPL(xdma_device_close); void xdma_device_offline(struct pci_dev *pdev, void *dev_hndl) { struct xdma_dev *xdev = (struct xdma_dev *)dev_hndl; struct xdma_engine *engine; int i; + int rv; if (!dev_hndl) return; @@ -3695,26 +4548,27 @@ void xdma_device_offline(struct pci_dev *pdev, void *dev_hndl) if (debug_check_dev_hndl(__func__, pdev, dev_hndl) < 0) return; -pr_info("pdev 0x%p, xdev 0x%p.\n", pdev, xdev); + pr_info("pdev 0x%p, xdev 0x%p.\n", pdev, xdev); xdma_device_flag_set(xdev, XDEV_FLAG_OFFLINE); /* wait for all engines to be idle */ - for (i = 0; i < xdev->h2c_channel_max; i++) { + for (i = 0; i < xdev->h2c_channel_max; i++) { unsigned long flags; engine = &xdev->engine_h2c[i]; - + if (engine->magic == MAGIC_ENGINE) { spin_lock_irqsave(&engine->lock, flags); engine->shutdown |= ENGINE_SHUTDOWN_REQUEST; - xdma_engine_stop(engine); - engine->running = 0; + rv = xdma_engine_stop(engine); + if (rv < 0) + pr_err("Failed to stop engine\n"); spin_unlock_irqrestore(&engine->lock, flags); } } - for (i = 0; i < xdev->c2h_channel_max; i++) { + for (i = 0; i < xdev->c2h_channel_max; i++) { unsigned long flags; engine = &xdev->engine_c2h[i]; @@ -3722,8 +4576,9 @@ pr_info("pdev 0x%p, xdev 0x%p.\n", pdev, xdev); spin_lock_irqsave(&engine->lock, flags); engine->shutdown |= ENGINE_SHUTDOWN_REQUEST; - xdma_engine_stop(engine); - engine->running = 0; + rv = xdma_engine_stop(engine); + if (rv < 0) + pr_err("Failed to stop engine\n"); spin_unlock_irqrestore(&engine->lock, flags); } } @@ -3736,7 +4591,6 @@ pr_info("pdev 0x%p, xdev 0x%p.\n", pdev, xdev); pr_info("xdev 0x%p, done.\n", xdev); } -EXPORT_SYMBOL_GPL(xdma_device_offline); void xdma_device_online(struct pci_dev *pdev, void *dev_hndl) { @@ -3751,9 +4605,9 @@ void xdma_device_online(struct pci_dev *pdev, void *dev_hndl) if (debug_check_dev_hndl(__func__, pdev, dev_hndl) < 0) return; -pr_info("pdev 0x%p, xdev 0x%p.\n", pdev, xdev); + pr_info("pdev 0x%p, xdev 0x%p.\n", pdev, xdev); - for (i = 0; i < xdev->h2c_channel_max; i++) { + for (i = 0; i < xdev->h2c_channel_max; i++) { engine = &xdev->engine_h2c[i]; if (engine->magic == MAGIC_ENGINE) { engine_init_regs(engine); @@ -3763,7 +4617,7 @@ pr_info("pdev 0x%p, xdev 0x%p.\n", pdev, xdev); } } - for (i = 0; i < xdev->c2h_channel_max; i++) { + for (i = 0; i < xdev->c2h_channel_max; i++) { engine = &xdev->engine_c2h[i]; if (engine->magic == MAGIC_ENGINE) { engine_init_regs(engine); @@ -3781,11 +4635,10 @@ pr_info("pdev 0x%p, xdev 0x%p.\n", pdev, xdev); user_interrupts_enable(xdev, xdev->mask_irq_user); read_interrupts(xdev); } - + xdma_device_flag_clear(xdev, XDEV_FLAG_OFFLINE); -pr_info("xdev 0x%p, done.\n", xdev); + pr_info("xdev 0x%p, done.\n", xdev); } -EXPORT_SYMBOL_GPL(xdma_device_online); int xdma_device_restart(struct pci_dev *pdev, void *dev_hndl) { @@ -3800,10 +4653,9 @@ int xdma_device_restart(struct pci_dev *pdev, void *dev_hndl) pr_info("NOT implemented, 0x%p.\n", xdev); return -EINVAL; } -EXPORT_SYMBOL_GPL(xdma_device_restart); int xdma_user_isr_register(void *dev_hndl, unsigned int mask, - irq_handler_t handler, void *dev) + irq_handler_t handler, void *dev) { struct xdma_dev *xdev = (struct xdma_dev *)dev_hndl; int i; @@ -3827,7 +4679,6 @@ int xdma_user_isr_register(void *dev_hndl, unsigned int mask, return 0; } -EXPORT_SYMBOL_GPL(xdma_user_isr_register); int xdma_user_isr_enable(void *dev_hndl, unsigned int mask) { @@ -3846,7 +4697,6 @@ int xdma_user_isr_enable(void *dev_hndl, unsigned int mask) return 0; } -EXPORT_SYMBOL_GPL(xdma_user_isr_enable); int xdma_user_isr_disable(void *dev_hndl, unsigned int mask) { @@ -3857,586 +4707,37 @@ int xdma_user_isr_disable(void *dev_hndl, unsigned int mask) if (debug_check_dev_hndl(__func__, xdev->pdev, dev_hndl) < 0) return -EINVAL; - + xdev->mask_irq_user &= ~mask; user_interrupts_disable(xdev, mask); read_interrupts(xdev); return 0; } -EXPORT_SYMBOL_GPL(xdma_user_isr_disable); - -#ifdef __LIBXDMA_MOD__ -static int __init xdma_base_init(void) -{ - printk(KERN_INFO "%s", version); - return 0; -} - -static void __exit xdma_base_exit(void) -{ - return; -} - -module_init(xdma_base_init); -module_exit(xdma_base_exit); -#endif -/* makes an existing transfer cyclic */ -static void xdma_transfer_cyclic(struct xdma_transfer *transfer) -{ - /* link last descriptor to first descriptor */ - xdma_desc_link(transfer->desc_virt + transfer->desc_num - 1, - transfer->desc_virt, transfer->desc_bus); - /* remember transfer is cyclic */ - transfer->cyclic = 1; -} - -static int transfer_monitor_cyclic(struct xdma_engine *engine, - struct xdma_transfer *transfer, int timeout_ms) -{ - struct xdma_result *result; - int rc = 0; - - BUG_ON(!engine); - BUG_ON(!transfer); - - result = engine->cyclic_result; - BUG_ON(!result); - - if (poll_mode) { - int i ; - for (i = 0; i < 5; i++) { - rc = engine_service_poll(engine, 0); - if (rc) { - pr_info("%s service_poll failed %d.\n", - engine->name, rc); - rc = -ERESTARTSYS; - } - if (result[engine->rx_head].status) - return 0; - } - } else { - if (enable_credit_mp){ - dbg_tfr("%s: rx_head=%d,rx_tail=%d, wait ...\n", - engine->name, engine->rx_head, engine->rx_tail); - rc = wait_event_interruptible_timeout( transfer->wq, - (engine->rx_head!=engine->rx_tail || - engine->rx_overrun), - msecs_to_jiffies(timeout_ms)); - dbg_tfr("%s: wait returns %d, rx %d/%d, overrun %d.\n", - engine->name, rc, engine->rx_head, - engine->rx_tail, engine->rx_overrun); - } else { - rc = wait_event_interruptible_timeout( transfer->wq, - engine->eop_found, - msecs_to_jiffies(timeout_ms)); - dbg_tfr("%s: wait returns %d, eop_found %d.\n", - engine->name, rc, engine->eop_found); - } - } - - return 0; -} - -struct scatterlist *sglist_index(struct sg_table *sgt, unsigned int idx) -{ - struct scatterlist *sg = sgt->sgl; - int i; - - if (idx >= sgt->orig_nents) - return NULL; - - if (!idx) - return sg; - - for (i = 0; i < idx; i++, sg = sg_next(sg)) - ; - - return sg; -} - -static int copy_cyclic_to_user(struct xdma_engine *engine, int pkt_length, - int head, char __user *buf, size_t count) -{ - struct scatterlist *sg; - int more = pkt_length; - - BUG_ON(!engine); - BUG_ON(!buf); - - dbg_tfr("%s, pkt_len %d, head %d, user buf idx %u.\n", - engine->name, pkt_length, head, engine->user_buffer_index); - - sg = sglist_index(&engine->cyclic_sgt, head); - if (!sg) { - pr_info("%s, head %d OOR, sgl %u.\n", - engine->name, head, engine->cyclic_sgt.orig_nents); - return -EIO; - } - - /* EOP found? Transfer anything from head to EOP */ - while (more) { - unsigned int copy = more > PAGE_SIZE ? PAGE_SIZE : more; - unsigned int blen = count - engine->user_buffer_index; - int rv; - - if (copy > blen) - copy = blen; - - dbg_tfr("%s sg %d, 0x%p, copy %u to user %u.\n", - engine->name, head, sg, copy, - engine->user_buffer_index); - - rv = copy_to_user(&buf[engine->user_buffer_index], - page_address(sg_page(sg)), copy); - if (rv) { - pr_info("%s copy_to_user %u failed %d\n", - engine->name, copy, rv); - return -EIO; - } - - more -= copy; - engine->user_buffer_index += copy; - - if (engine->user_buffer_index == count) { - /* user buffer used up */ - break; - } - - head++; - if (head >= CYCLIC_RX_PAGES_MAX) { - head = 0; - sg = engine->cyclic_sgt.sgl; - } else - sg = sg_next(sg); - } - - return pkt_length; -} - -static int complete_cyclic(struct xdma_engine *engine, char __user *buf, - size_t count) -{ - struct xdma_result *result; - int pkt_length = 0; - int fault = 0; - int eop = 0; - int head; - int rc = 0; - int num_credit = 0; - unsigned long flags; - - BUG_ON(!engine); - result = engine->cyclic_result; - BUG_ON(!result); - - spin_lock_irqsave(&engine->lock, flags); - - /* where the host currently is in the ring buffer */ - head = engine->rx_head; - - /* iterate over newly received results */ - while (engine->rx_head != engine->rx_tail||engine->rx_overrun) { - - WARN_ON(result[engine->rx_head].status==0); - - dbg_tfr("%s, result[%d].status = 0x%x length = 0x%x.\n", - engine->name, engine->rx_head, - result[engine->rx_head].status, - result[engine->rx_head].length); - - if ((result[engine->rx_head].status >> 16) != C2H_WB) { - pr_info("%s, result[%d].status 0x%x, no magic.\n", - engine->name, engine->rx_head, - result[engine->rx_head].status); - fault = 1; - } else if (result[engine->rx_head].length > PAGE_SIZE) { - pr_info("%s, result[%d].len 0x%x, > PAGE_SIZE 0x%lx.\n", - engine->name, engine->rx_head, - result[engine->rx_head].length, PAGE_SIZE); - fault = 1; - } else if (result[engine->rx_head].length == 0) { - pr_info("%s, result[%d].length 0x%x.\n", - engine->name, engine->rx_head, - result[engine->rx_head].length); - fault = 1; - /* valid result */ - } else { - pkt_length += result[engine->rx_head].length; - num_credit++; - /* seen eop? */ - //if (result[engine->rx_head].status & RX_STATUS_EOP) - if (result[engine->rx_head].status & RX_STATUS_EOP){ - eop = 1; - engine->eop_found = 1; - } - - dbg_tfr("%s, pkt_length=%d (%s)\n", - engine->name, pkt_length, - eop ? "with EOP" : "no EOP yet"); - } - /* clear result */ - result[engine->rx_head].status = 0; - result[engine->rx_head].length = 0; - /* proceed head pointer so we make progress, even when fault */ - engine->rx_head = (engine->rx_head + 1) % CYCLIC_RX_PAGES_MAX; - - /* stop processing if a fault/eop was detected */ - if (fault || eop){ - break; - } - } - - spin_unlock_irqrestore(&engine->lock, flags); - - if (fault) - return -EIO; - - rc = copy_cyclic_to_user(engine, pkt_length, head, buf, count); - engine->rx_overrun = 0; - /* if copy is successful, release credits */ - if(rc > 0) - write_register(num_credit,&engine->sgdma_regs->credits, 0); - - return rc; -} - -ssize_t xdma_engine_read_cyclic(struct xdma_engine *engine, char __user *buf, - size_t count, int timeout_ms) -{ - int i = 0; - int rc = 0; - int rc_len = 0; - struct xdma_transfer *transfer; - - BUG_ON(!engine); - BUG_ON(engine->magic != MAGIC_ENGINE); - - transfer = &engine->cyclic_req->xfer; - BUG_ON(!transfer); - - engine->user_buffer_index = 0; - - do { - rc = transfer_monitor_cyclic(engine, transfer, timeout_ms); - if (rc < 0) - return rc; - rc = complete_cyclic(engine, buf, count); - if (rc < 0) - return rc; - rc_len += rc; - - i++; - if (i > 10) - break; - } while (!engine->eop_found); - - if(enable_credit_mp) - engine->eop_found = 0; - - return rc_len; -} - -static void sgt_free_with_pages(struct sg_table *sgt, int dir, - struct pci_dev *pdev) -{ - struct scatterlist *sg = sgt->sgl; - int npages = sgt->orig_nents; - int i; - - for (i = 0; i < npages; i++, sg = sg_next(sg)) { - struct page *pg = sg_page(sg); - dma_addr_t bus = sg_dma_address(sg); - - if (pg) { - if (pdev) - pci_unmap_page(pdev, bus, PAGE_SIZE, dir); - __free_page(pg); - } else - break; - } - sg_free_table(sgt); - memset(sgt, 0, sizeof(struct sg_table)); -} - -static int sgt_alloc_with_pages(struct sg_table *sgt, unsigned int npages, - int dir, struct pci_dev *pdev) -{ - struct scatterlist *sg; - int i; - - if (sg_alloc_table(sgt, npages, GFP_KERNEL)) { - pr_info("sgt OOM.\n"); - return -ENOMEM; - } - - sg = sgt->sgl; - for (i = 0; i < npages; i++, sg = sg_next(sg)) { - struct page *pg = alloc_page(GFP_KERNEL); - - if (!pg) { - pr_info("%d/%u, page OOM.\n", i, npages); - goto err_out; - } - - if (pdev) { - dma_addr_t bus = pci_map_page(pdev, pg, 0, PAGE_SIZE, - dir); - if (unlikely(pci_dma_mapping_error(pdev, bus))) { - pr_info("%d/%u, page 0x%p map err.\n", - i, npages, pg); - __free_page(pg); - goto err_out; - } - sg_dma_address(sg) = bus; - sg_dma_len(sg) = PAGE_SIZE; - } - sg_set_page(sg, pg, PAGE_SIZE, 0); - } - - sgt->orig_nents = sgt->nents = npages; - - return 0; - -err_out: - sgt_free_with_pages(sgt, dir, pdev); - return -ENOMEM; -} - -/* - * !NOTE! reference/demo purpose only - * xdma_cyclic_transfer_setup is used for streaming C2H transfers: - * - A list of buffers are pre-allocated for incoming streaming data - * - the ring of the buffers is allowed to wrap around - */ -int xdma_cyclic_transfer_setup(struct xdma_engine *engine) -{ - struct xdma_dev *xdev; - struct xdma_transfer *xfer; - dma_addr_t bus; - unsigned long flags; - int i; - int rc; - - BUG_ON(!engine); - xdev = engine->xdev; - BUG_ON(!xdev); - - if (engine->cyclic_req) { - pr_info("%s: exclusive access already taken.\n", - engine->name); - return -EBUSY; - } - - spin_lock_irqsave(&engine->lock, flags); - - engine->rx_tail = 0; - engine->rx_head = 0; - engine->rx_overrun = 0; - engine->eop_found = 0; - - rc = sgt_alloc_with_pages(&engine->cyclic_sgt, CYCLIC_RX_PAGES_MAX, - engine->dir, xdev->pdev); - if (rc < 0) { - pr_info("%s cyclic pages %u OOM.\n", - engine->name, CYCLIC_RX_PAGES_MAX); - goto err_out; - } - - engine->cyclic_req = xdma_init_request(&engine->cyclic_sgt, 0); - if (!engine->cyclic_req) { - pr_info("%s cyclic request OOM.\n", engine->name); - rc = -ENOMEM; - goto err_out; - } - -#ifdef __LIBXDMA_DEBUG__ - xdma_request_cb_dump(engine->cyclic_req); -#endif - - rc = transfer_init(engine, engine->cyclic_req); - if (rc < 0) - goto err_out; - - xfer = &engine->cyclic_req->xfer; - - /* replace source addresses with result write-back addresses */ - memset(engine->cyclic_result, 0, - CYCLIC_RX_PAGES_MAX * sizeof(struct xdma_result)); - bus = engine->cyclic_result_bus; - for (i = 0; i < xfer->desc_num; i++) { - xfer->desc_virt[i].src_addr_lo = cpu_to_le32(PCI_DMA_L(bus)); - xfer->desc_virt[i].src_addr_hi = cpu_to_le32(PCI_DMA_H(bus)); - bus += sizeof(struct xdma_result); - } - /* set control of all descriptors */ - for (i = 0; i < xfer->desc_num; i++) { - xdma_desc_control_clear(xfer->desc_virt + i, LS_BYTE_MASK); - xdma_desc_control_set(xfer->desc_virt + i, - XDMA_DESC_EOP | XDMA_DESC_COMPLETED); - } - - /* make this a cyclic transfer */ - xdma_transfer_cyclic(xfer); - -#ifdef __LIBXDMA_DEBUG__ - transfer_dump(xfer); -#endif - - if(enable_credit_mp){ - //write_register(RX_BUF_PAGES,&engine->sgdma_regs->credits); - write_register(128, &engine->sgdma_regs->credits, 0); - } - - spin_unlock_irqrestore(&engine->lock, flags); - - /* start cyclic transfer */ - transfer_queue(engine, xfer); - - return 0; - - /* unwind on errors */ -err_out: - if (engine->cyclic_req) { - xdma_request_free(engine->cyclic_req); - engine->cyclic_req = NULL; - } - - if (engine->cyclic_sgt.orig_nents) { - sgt_free_with_pages(&engine->cyclic_sgt, engine->dir, - xdev->pdev); - engine->cyclic_sgt.orig_nents = 0; - engine->cyclic_sgt.nents = 0; - engine->cyclic_sgt.sgl = NULL; - } - - spin_unlock_irqrestore(&engine->lock, flags); - - return rc; -} - - -static int cyclic_shutdown_polled(struct xdma_engine *engine) -{ - BUG_ON(!engine); - - spin_lock(&engine->lock); - - dbg_tfr("Polling for shutdown completion\n"); - do { - engine_status_read(engine, 1, 0); - schedule(); - } while (engine->status & XDMA_STAT_BUSY); - - if ((engine->running) && !(engine->status & XDMA_STAT_BUSY)) { - dbg_tfr("Engine has stopped\n"); - - if (!list_empty(&engine->transfer_list)) - engine_transfer_dequeue(engine); - - engine_service_shutdown(engine); - } - - dbg_tfr("Shutdown completion polling done\n"); - spin_unlock(&engine->lock); - - return 0; -} - -static int cyclic_shutdown_interrupt(struct xdma_engine *engine) -{ - int rc; - - BUG_ON(!engine); - - rc = wait_event_interruptible_timeout(engine->shutdown_wq, - !engine->running, msecs_to_jiffies(10000)); - -#if 0 - if (rc) { - dbg_tfr("wait_event_interruptible=%d\n", rc); - return rc; - } -#endif - - if (engine->running) { - pr_info("%s still running?!, %d\n", engine->name, rc); - return -EINVAL; - } - - return rc; -} - -int xdma_cyclic_transfer_teardown(struct xdma_engine *engine) -{ - int rc; - struct xdma_dev *xdev = engine->xdev; - struct xdma_transfer *transfer; - unsigned long flags; - - transfer = engine_cyclic_stop(engine); - - spin_lock_irqsave(&engine->lock, flags); - if (transfer) { - dbg_tfr("%s: stop transfer 0x%p.\n", engine->name, transfer); - if (transfer != &engine->cyclic_req->xfer) { - pr_info("%s unexpected transfer 0x%p/0x%p\n", - engine->name, transfer, - &engine->cyclic_req->xfer); - } - } - /* allow engine to be serviced after stop request */ - spin_unlock_irqrestore(&engine->lock, flags); - - /* wait for engine to be no longer running */ - if (poll_mode) - rc = cyclic_shutdown_polled(engine); - else - rc = cyclic_shutdown_interrupt(engine); - - /* obtain spin lock to atomically remove resources */ - spin_lock_irqsave(&engine->lock, flags); - - if (engine->cyclic_req) { - xdma_request_free(engine->cyclic_req); - engine->cyclic_req = NULL; - } - - if (engine->cyclic_sgt.orig_nents) { - sgt_free_with_pages(&engine->cyclic_sgt, engine->dir, - xdev->pdev); - engine->cyclic_sgt.orig_nents = 0; - engine->cyclic_sgt.nents = 0; - engine->cyclic_sgt.sgl = NULL; - } - - spin_unlock_irqrestore(&engine->lock, flags); - - return 0; -} int engine_addrmode_set(struct xdma_engine *engine, unsigned long arg) { int rv; - unsigned long dst; + unsigned long dst; u32 w = XDMA_CTRL_NON_INCR_ADDR; dbg_perf("IOCTL_XDMA_ADDRMODE_SET\n"); rv = get_user(dst, (int __user *)arg); - if (rv == 0) { + if (rv == 0) { engine->non_incr_addr = !!dst; if (engine->non_incr_addr) - write_register(w, &engine->regs->control_w1s, + write_register( + w, &engine->regs->control_w1s, (unsigned long)(&engine->regs->control_w1s) - - (unsigned long)(&engine->regs)); + (unsigned long)(&engine->regs)); else - write_register(w, &engine->regs->control_w1c, - (unsigned long)(&engine->regs->control_w1c) - - (unsigned long)(&engine->regs)); + write_register( + w, &engine->regs->control_w1c, + (unsigned long)(&engine->regs->control_w1c) - + (unsigned long)(&engine->regs)); } engine_alignments(engine); return rv; } - diff --git a/host_software/driver/xdma/libxdma.h b/host_software/driver/XDMA/linux-kernel/xdma/libxdma.h similarity index 76% rename from host_software/driver/xdma/libxdma.h rename to host_software/driver/XDMA/linux-kernel/xdma/libxdma.h index bbf1a45..933d865 100644 --- a/host_software/driver/xdma/libxdma.h +++ b/host_software/driver/XDMA/linux-kernel/xdma/libxdma.h @@ -4,10 +4,17 @@ * Copyright (c) 2016-present, Xilinx, Inc. * All rights reserved. * - * This source code is licensed under both the BSD-style license (found in the - * LICENSE file in the root directory of this source tree) and the GPLv2 (found - * in the COPYING file in the root directory of this source tree). - * You may select, at your option, one of the above-listed licenses. + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". */ #ifndef XDMA_LIB_H @@ -25,8 +32,42 @@ #include #include -/* Switch debug printing on/off */ -#define XDMA_DEBUG 0 +/* Add compatibility checking for RHEL versions */ +#if defined(RHEL_RELEASE_CODE) +# define ACCESS_OK_2_ARGS (RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(8, 0)) +#else +# define ACCESS_OK_2_ARGS (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 0, 0)) +#endif + +#if defined(RHEL_RELEASE_CODE) +# define HAS_MMIOWB (RHEL_RELEASE_CODE <= RHEL_RELEASE_VERSION(8, 0)) +#else +# define HAS_MMIOWB (LINUX_VERSION_CODE <= KERNEL_VERSION(5, 1, 0)) +#endif + +#if defined(RHEL_RELEASE_CODE) +# define HAS_SWAKE_UP_ONE (RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(8, 0)) +# define HAS_SWAKE_UP (RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(8, 0)) +#else +# define HAS_SWAKE_UP_ONE (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 19, 0)) +# define HAS_SWAKE_UP (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 6, 0)) +#endif + +#if defined(RHEL_RELEASE_CODE) +# define PCI_AER_NAMECHANGE (RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(8, 3)) +#else +# define PCI_AER_NAMECHANGE (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 7, 0)) +#endif + +#if HAS_SWAKE_UP +#include +#endif + +/* + * if the config bar is fixed, the driver does not neeed to search through + * all of the bars + */ +//#define XDMA_CONFIG_BAR_NUM 1 /* SECTION: Preprocessor macros/constants */ #define XDMA_BAR_NUM (6) @@ -42,19 +83,21 @@ * interrupts per engine, rad2_vul.sv:237 * .REG_IRQ_OUT (reg_irq_from_ch[(channel*2) +: 2]), */ -#define XDMA_ENG_IRQ_NUM (1) -#define MAX_EXTRA_ADJ (15) -#define RX_STATUS_EOP (1) +#define XDMA_ENG_IRQ_NUM (1) +#define XDMA_MAX_ADJ_BLOCK_SIZE 0x40 +#define XDMA_PAGE_SIZE 0x1000 +#define RX_STATUS_EOP (1) /* Target internal components on XDMA control BAR */ #define XDMA_OFS_INT_CTRL (0x2000UL) #define XDMA_OFS_CONFIG (0x3000UL) /* maximum number of desc per transfer request */ -#define XDMA_TRANSFER_MAX_DESC (2048) +#define XDMA_ENGINE_XFER_MAX_DESC 0x800 +#define XDMA_ENGINE_CREDIT_XFER_MAX_DESC 0x3FF /* maximum size of a single DMA transfer descriptor */ -#define XDMA_DESC_BLEN_BITS 28 +#define XDMA_DESC_BLEN_BITS 28 #define XDMA_DESC_BLEN_MAX ((1 << (XDMA_DESC_BLEN_BITS)) - 1) /* bits of the SG DMA control register */ @@ -68,6 +111,7 @@ #define XDMA_CTRL_IE_DESC_ERROR (0x1FUL << 19) #define XDMA_CTRL_NON_INCR_ADDR (1UL << 25) #define XDMA_CTRL_POLL_MODE_WB (1UL << 26) +#define XDMA_CTRL_STM_MODE_WB (1UL << 27) /* bits of the SG DMA status register */ #define XDMA_STAT_BUSY (1UL << 0) @@ -123,7 +167,7 @@ /* all combined */ #define XDMA_STAT_H2C_ERR_MASK \ (XDMA_STAT_COMMON_ERR_MASK | XDMA_STAT_DESC_ERR_MASK | \ - XDMA_STAT_H2C_R_ERR_MASK | XDMA_STAT_H2C_W_ERR_MASK) + XDMA_STAT_H2C_R_ERR_MASK | XDMA_STAT_H2C_W_ERR_MASK) #define XDMA_STAT_C2H_ERR_MASK \ (XDMA_STAT_COMMON_ERR_MASK | XDMA_STAT_DESC_ERR_MASK | \ @@ -146,7 +190,7 @@ #define XDMA_ID_C2H 0x1fc1U /* for C2H AXI-ST mode */ -#define CYCLIC_RX_PAGES_MAX 256 +#define CYCLIC_RX_PAGES_MAX 256 #define LS_BYTE_MASK 0x000000FFUL @@ -232,6 +276,23 @@ enum dev_capabilities { /* SECTION: Structure definitions */ +struct xdma_io_cb { + void __user *buf; + size_t len; + void *private; + unsigned int pages_nr; + struct sg_table sgt; + struct page **pages; + /** total data size */ + unsigned int count; + /** MM only, DDR/BRAM memory addr */ + u64 ep_addr; + /** write: if write to the device */ + struct xdma_request_cb *req; + u8 write:1; + void (*io_done)(unsigned long cb_hndl, int err); +}; + struct config_regs { u32 identifier; u32 reserved_1[4]; @@ -374,30 +435,51 @@ struct sw_desc { }; /* Describes a (SG DMA) single transfer for the engine */ +#define XFER_FLAG_NEED_UNMAP 0x1 +#define XFER_FLAG_ST_C2H_EOP_RCVED 0x2 /* ST c2h only */ struct xdma_transfer { struct list_head entry; /* queue of non-completed transfers */ struct xdma_desc *desc_virt; /* virt addr of the 1st descriptor */ + struct xdma_result *res_virt; /* virt addr of result, c2h streaming */ + dma_addr_t res_bus; /* bus addr for result descriptors */ dma_addr_t desc_bus; /* bus addr of the first descriptor */ int desc_adjacent; /* adjacent descriptors at desc_bus */ int desc_num; /* number of descriptors in transfer */ + int desc_index; /* index for 1st desc. in transfer */ + int desc_cmpl; /* completed descriptors */ + int desc_cmpl_th; /* completed descriptor threshold */ enum dma_data_direction dir; +#if HAS_SWAKE_UP + struct swait_queue_head wq; +#else wait_queue_head_t wq; /* wait queue for transfer completion */ +#endif enum transfer_state state; /* state of the transfer */ unsigned int flags; -#define XFER_FLAG_NEED_UNMAP 0x1 int cyclic; /* flag if transfer is cyclic */ int last_in_request; /* flag if last within request */ unsigned int len; struct sg_table *sgt; + struct xdma_io_cb *cb; }; struct xdma_request_cb { struct sg_table *sgt; - unsigned int total_len; u64 ep_addr; + unsigned int aperture; + + unsigned int total_len; + unsigned int offset; + + struct scatterlist *sg; + unsigned int sg_idx; + unsigned int sg_offset; - struct xdma_transfer xfer; + /* Use two transfers in case single request needs to be split */ + struct xdma_transfer tfer[2]; + + struct xdma_io_cb *cb; unsigned int sw_desc_idx; unsigned int sw_desc_cnt; @@ -407,10 +489,8 @@ struct xdma_request_cb { struct xdma_engine { unsigned long magic; /* structure ID for sanity checks */ struct xdma_dev *xdev; /* parent device */ - char name[5]; /* name of this engine */ + char name[16]; /* name of this engine */ int version; /* version of this engine */ - //dev_t cdevno; /* character device major:minor */ - //struct cdev cdev; /* character device (embedded struct) */ /* HW register address offsets */ struct engine_regs *regs; /* Control reg BAR offset */ @@ -420,18 +500,23 @@ struct xdma_engine { /* Engine state, configuration and flags */ enum shutdown_state shutdown; /* engine shutdown mode */ enum dma_data_direction dir; - int device_open; /* flag if engine node open, ST mode only */ - int running; /* flag if the driver started engine */ - int non_incr_addr; /* flag if non-incremental addressing used */ - int streaming; - int addr_align; /* source/dest alignment in bytes */ - int len_granularity; /* transfer length multiple */ - int addr_bits; /* HW datapath address width */ - int channel; /* engine indices */ + u8 addr_align; /* source/dest alignment in bytes */ + u8 len_granularity; /* transfer length multiple */ + u8 addr_bits; /* HW datapath address width */ + u8 channel:2; /* engine indices */ + u8 streaming:1; + u8 device_open:1; /* flag if engine node open, ST mode only */ + u8 running:1; /* flag if the driver started engine */ + u8 non_incr_addr:1; /* flag if non-incremental addressing used */ + u8 eop_flush:1; /* st c2h only, flush up the data with eop */ + u8 filler:1; + int max_extra_adj; /* descriptor prefetch capability */ int desc_dequeued; /* num descriptors of completed transfers */ + u32 desc_max; /* max # descriptors per xfer */ u32 status; /* last known status of device */ - u32 interrupt_enable_mask_value;/* only used for MSIX mode to store per-engine interrupt mask value */ + /* only used for MSIX mode to store per-engine interrupt mask value */ + u32 interrupt_enable_mask_value; /* Transfer list management */ struct list_head transfer_list; /* queue of transfers */ @@ -439,36 +524,45 @@ struct xdma_engine { /* Members applicable to AXI-ST C2H (cyclic) transfers */ struct xdma_result *cyclic_result; dma_addr_t cyclic_result_bus; /* bus addr for transfer */ - struct xdma_request_cb *cyclic_req; - struct sg_table cyclic_sgt; - u8 eop_found; /* used only for cyclic(rx:c2h) */ - - int rx_tail; /* follows the HW */ - int rx_head; /* where the SW reads from */ - int rx_overrun; /* flag if overrun occured */ - - /* for copy from cyclic buffer to user buffer */ - unsigned int user_buffer_index; + u8 *perf_buf_virt; + dma_addr_t perf_buf_bus; /* bus address */ /* Members associated with polled mode support */ u8 *poll_mode_addr_virt; /* virt addr for descriptor writeback */ dma_addr_t poll_mode_bus; /* bus addr for descriptor writeback */ /* Members associated with interrupt mode support */ +#if HAS_SWAKE_UP + struct swait_queue_head shutdown_wq; +#else wait_queue_head_t shutdown_wq; /* wait queue for shutdown sync */ +#endif spinlock_t lock; /* protects concurrent access */ int prev_cpu; /* remember CPU# of (last) locker */ int msix_irq_line; /* MSI-X vector for this engine */ u32 irq_bitmask; /* IRQ bit mask for this engine */ struct work_struct work; /* Work queue for interrupt handling */ - spinlock_t desc_lock; /* protects concurrent access */ + struct mutex desc_lock; /* protects concurrent access */ dma_addr_t desc_bus; struct xdma_desc *desc; + int desc_idx; /* current descriptor index */ + int desc_used; /* total descriptors used */ /* for performance test support */ struct xdma_performance_ioctl *xdma_perf; /* perf test control */ +#if HAS_SWAKE_UP + struct swait_queue_head xdma_perf_wq; +#else wait_queue_head_t xdma_perf_wq; /* Perf test sync */ +#endif + + struct xdma_kthread *cmplthp; + /* completion status thread list for the queue */ + struct list_head cmplthp_list; + /* pending work thread list */ + /* cpu attached to intr_work */ + unsigned int intr_work_cpu; }; struct xdma_user_irq { @@ -479,14 +573,14 @@ struct xdma_user_irq { wait_queue_head_t events_wq; /* wait queue to sync waiting threads */ irq_handler_t handler; - void *dev; + void *dev; }; /* XDMA PCIe device specific book-keeping */ #define XDEV_FLAG_OFFLINE 0x1 struct xdma_dev { struct list_head list_head; - struct list_head rcu_node; + struct list_head rcu_node; unsigned long magic; /* structure ID for sanity checks */ struct pci_dev *pdev; /* pci device struct from probe() */ @@ -498,7 +592,7 @@ struct xdma_dev { unsigned int flags; /* PCIe BAR management */ - void *__iomem bar[XDMA_BAR_NUM]; /* addresses for mapped BARs */ + void __iomem *bar[XDMA_BAR_NUM]; /* addresses for mapped BARs */ int user_bar_idx; /* BAR index of user logic */ int config_bar_idx; /* BAR index of XDMA config logic */ int bypass_bar_idx; /* BAR index of XDMA bypass logic */ @@ -514,7 +608,7 @@ struct xdma_dev { int irq_line; /* flag if irq allocated successfully */ int msi_enabled; /* flag if msi was enabled for the device */ int msix_enabled; /* flag if msi-x was enabled for the device */ -#if LINUX_VERSION_CODE < KERNEL_VERSION(4,12,0) +#if KERNEL_VERSION(4, 12, 0) > LINUX_VERSION_CODE struct msix_entry entry[32]; /* msi-x vector/entry table */ #endif struct xdma_user_irq user_irq[16]; /* user IRQ management */ @@ -592,10 +686,10 @@ struct xdma_transfer *engine_cyclic_stop(struct xdma_engine *engine); void enable_perf(struct xdma_engine *engine); void get_perf_stats(struct xdma_engine *engine); -int xdma_cyclic_transfer_setup(struct xdma_engine *engine); -int xdma_cyclic_transfer_teardown(struct xdma_engine *engine); -ssize_t xdma_engine_read_cyclic(struct xdma_engine *, char __user *, size_t, - int); int engine_addrmode_set(struct xdma_engine *engine, unsigned long arg); +int engine_service_poll(struct xdma_engine *engine, u32 expected_desc_count); +ssize_t xdma_xfer_aperture(struct xdma_engine *engine, bool write, u64 ep_addr, + unsigned int aperture, struct sg_table *sgt, + bool dma_mapped, int timeout_ms); #endif /* XDMA_LIB_H */ diff --git a/host_software/driver/XDMA/linux-kernel/xdma/modules.order b/host_software/driver/XDMA/linux-kernel/xdma/modules.order new file mode 100644 index 0000000..9fb175b --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/modules.order @@ -0,0 +1 @@ +/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma.ko diff --git a/host_software/driver/XDMA/linux-kernel/xdma/version.h b/host_software/driver/XDMA/linux-kernel/xdma/version.h new file mode 100644 index 0000000..941fc79 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/version.h @@ -0,0 +1,35 @@ +/* + * This file is part of the Xilinx DMA IP Core driver for Linux + * + * Copyright (c) 2016-present, Xilinx, Inc. + * All rights reserved. + * + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". + */ + +#ifndef __XDMA_VERSION_H__ +#define __XDMA_VERSION_H__ + +#define DRV_MOD_MAJOR 2020 +#define DRV_MOD_MINOR 2 +#define DRV_MOD_PATCHLEVEL 2 + +#define DRV_MODULE_VERSION \ + __stringify(DRV_MOD_MAJOR) "." \ + __stringify(DRV_MOD_MINOR) "." \ + __stringify(DRV_MOD_PATCHLEVEL) + +#define DRV_MOD_VERSION_NUMBER \ + ((DRV_MOD_MAJOR)*1000 + (DRV_MOD_MINOR)*100 + DRV_MOD_PATCHLEVEL) + +#endif /* ifndef __XDMA_VERSION_H__ */ diff --git a/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod b/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod new file mode 100644 index 0000000..f808f38 --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod @@ -0,0 +1,2 @@ +/home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/libxdma.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_ctrl.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_events.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_sgdma.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_xvc.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/cdev_bypass.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.o /home/redlight/test/Xilinx-FPGA-PCIe-XDMA-Tutorial/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.o + diff --git a/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod.c b/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod.c new file mode 100644 index 0000000..42ac29d --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/xdma.mod.c @@ -0,0 +1,216 @@ +#include +#define INCLUDE_VERMAGIC +#include +#include +#include +#include + +BUILD_SALT; +BUILD_LTO_INFO; + +MODULE_INFO(vermagic, VERMAGIC_STRING); +MODULE_INFO(name, KBUILD_MODNAME); + +__visible struct module __this_module +__section(".gnu.linkonce.this_module") = { + .name = KBUILD_MODNAME, + .init = init_module, +#ifdef CONFIG_MODULE_UNLOAD + .exit = cleanup_module, +#endif + .arch = MODULE_ARCH_INIT, +}; + +#ifdef CONFIG_RETPOLINE +MODULE_INFO(retpoline, "Y"); +#endif + +static const struct modversion_info ____versions[] +__used __section("__versions") = { + { 0x32e21920, "module_layout" }, + { 0x2d3385d3, "system_wq" }, + { 0x19d09ac9, "dma_map_sg_attrs" }, + { 0xecea0910, "kmem_cache_destroy" }, + { 0xc7466e35, "cdev_del" }, + { 0x26087692, "kmalloc_caches" }, + { 0xeb233a45, "__kmalloc" }, + { 0x320c3a3f, "cdev_init" }, + { 0x27012063, "put_devmap_managed_page" }, + { 0x9ef55041, "pci_write_config_word" }, + { 0xd6ee688f, "vmalloc" }, + { 0x54b1fac6, "__ubsan_handle_load_invalid_value" }, + { 0x78a31f11, "pci_read_config_byte" }, + { 0x46cf10eb, "cachemode2protval" }, + { 0xbc3c631b, "dma_unmap_sg_attrs" }, + { 0x7eae295f, "dma_set_mask" }, + { 0x1e641c0a, "pcie_set_readrq" }, + { 0xa92ec74, "boot_cpu_data" }, + { 0xfb14ff3c, "pci_disable_device" }, + { 0x9c92ee14, "pci_disable_msix" }, + { 0xb7289033, "set_page_dirty_lock" }, + { 0x837b7b09, "__dynamic_pr_debug" }, + { 0xfdd66e81, "device_destroy" }, + { 0x15a66331, "kobject_set_name" }, + { 0x6729d3df, "__get_user_4" }, + { 0x87b8798d, "sg_next" }, + { 0xf288fcdc, "pci_release_regions" }, + { 0x55e50e25, "pcie_capability_clear_and_set_word" }, + { 0x3213f038, "mutex_unlock" }, + { 0x6091b333, "unregister_chrdev_region" }, + { 0x999e8297, "vfree" }, + { 0x87cec3d1, "dma_free_attrs" }, + { 0x7a2af7b4, "cpu_number" }, + { 0xa648e561, "__ubsan_handle_shift_out_of_bounds" }, + { 0x3c3ff9fd, "sprintf" }, + { 0xb3378a7b, "pv_ops" }, + { 0x35b97737, "dma_set_coherent_mask" }, + { 0x2da00799, "kthread_create_on_node" }, + { 0x15ba50a6, "jiffies" }, + { 0xaa44a707, "cpumask_next" }, + { 0x740fdc10, "kthread_bind" }, + { 0xd9a5ea54, "__init_waitqueue_head" }, + { 0x6b10bee1, "_copy_to_user" }, + { 0x17de3d5, "nr_cpu_ids" }, + { 0x5b8239ca, "__x86_return_thunk" }, + { 0x1e323c29, "pci_set_master" }, + { 0x5f49d55d, "pci_alloc_irq_vectors_affinity" }, + { 0xfb578fc5, "memset" }, + { 0x22a9e612, "pci_restore_state" }, + { 0xbd1fc1a3, "pci_iounmap" }, + { 0xd35cce70, "_raw_spin_unlock_irqrestore" }, + { 0xcefb0c9f, "__mutex_init" }, + { 0xfef216eb, "_raw_spin_trylock" }, + { 0x85c71d85, "kthread_stop" }, + { 0x5a5a2271, "__cpu_online_mask" }, + { 0x2b2ac086, "pci_aer_clear_nonfatal_status" }, + { 0x29a90398, "pci_read_config_word" }, + { 0x1d0107ac, "dma_alloc_attrs" }, + { 0x30a0594d, "kmem_cache_free" }, + { 0x4dfa8d4b, "mutex_lock" }, + { 0x3312a010, "finish_swait" }, + { 0xa94ce2a9, "device_create" }, + { 0x92d5838e, "request_threaded_irq" }, + { 0x6091797f, "synchronize_rcu" }, + { 0xc63095c, "pci_enable_msi" }, + { 0xfe487975, "init_wait_entry" }, + { 0x822b009f, "pci_find_capability" }, + { 0x6a0a71c7, "cdev_add" }, + { 0x800473f, "__cond_resched" }, + { 0x3a2f6702, "sg_alloc_table" }, + { 0x87a21cb3, "__ubsan_handle_out_of_bounds" }, + { 0xc9eb5b45, "kmem_cache_alloc" }, + { 0x6383b27c, "__x86_indirect_thunk_rdx" }, + { 0x618911fc, "numa_node" }, + { 0xb2fd5ceb, "__put_user_4" }, + { 0xd0da656b, "__stack_chk_fail" }, + { 0x9cb986f2, "vmalloc_base" }, + { 0x1000e51, "schedule" }, + { 0x8ddd8aad, "schedule_timeout" }, + { 0x1d24c881, "___ratelimit" }, + { 0xf13aba5d, "prepare_to_swait_event" }, + { 0x92997ed8, "_printk" }, + { 0x65487097, "__x86_indirect_thunk_rax" }, + { 0x45937b6f, "wake_up_process" }, + { 0xbdfb6dbb, "__fentry__" }, + { 0x233f929e, "pci_unregister_driver" }, + { 0xf35141b2, "kmem_cache_alloc_trace" }, + { 0xba8fbd64, "_raw_spin_lock" }, + { 0xb19a5453, "__per_cpu_offset" }, + { 0x34db050b, "_raw_spin_lock_irqsave" }, + { 0xa38e29b5, "kmem_cache_create" }, + { 0x696f32fb, "pci_irq_vector" }, + { 0x3eeb2322, "__wake_up" }, + { 0xb3f7646e, "kthread_should_stop" }, + { 0x8c26d495, "prepare_to_wait_event" }, + { 0x37a0cba, "kfree" }, + { 0x44a3fa19, "remap_pfn_range" }, + { 0x95b52781, "pci_request_regions" }, + { 0x6df1aaf1, "kernel_sigaction" }, + { 0xfc8d4362, "pci_disable_msi" }, + { 0xf2bb7d9, "__pci_register_driver" }, + { 0x748154da, "class_destroy" }, + { 0x92540fbf, "finish_wait" }, + { 0x608741b5, "__init_swait_queue_head" }, + { 0x7f5b4fe4, "sg_free_table" }, + { 0xc5b6f236, "queue_work_on" }, + { 0x656e4a6e, "snprintf" }, + { 0x518022d6, "pci_iomap" }, + { 0xa8528b64, "pci_enable_device_mem" }, + { 0x7f02188f, "__msecs_to_jiffies" }, + { 0x4a453f53, "iowrite32" }, + { 0x8d929026, "pci_enable_device" }, + { 0x13c49cc2, "_copy_from_user" }, + { 0x70a3a844, "param_ops_uint" }, + { 0xaf919f03, "__class_create" }, + { 0x88db9f48, "__check_object_size" }, + { 0xe3ec2f2b, "alloc_chrdev_region" }, + { 0xb915ba86, "__put_page" }, + { 0xa78af5f3, "ioread32" }, + { 0xdcc7f013, "get_user_pages_fast" }, + { 0xc80ab559, "swake_up_one" }, + { 0xc1514a3b, "free_irq" }, + { 0x6e053cc4, "pci_save_state" }, + { 0x587f22d7, "devmap_managed_key" }, + { 0x8a35b432, "sme_me_mask" }, +}; + +MODULE_INFO(depends, ""); + +MODULE_ALIAS("pci:v000010EEd00009048sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00009044sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00009042sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00009041sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd0000903Fsv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00009038sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00009028sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00009018sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00009034sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00009024sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00009014sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00009032sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00009022sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00009012sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00009031sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00009021sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00009011sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00008011sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00008012sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00008014sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00008018sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00008021sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00008022sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00008024sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00008028sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00008031sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00008032sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00008034sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00008038sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00007011sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00007012sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00007014sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00007018sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00007021sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00007022sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00007024sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00007028sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00007031sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00007032sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00007034sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00007038sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00006828sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00006830sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00006928sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00006930sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00006A28sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00006A30sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00006D30sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00004808sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00004828sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00004908sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00004A28sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00004B28sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v000010EEd00002808sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v00001D0Fd0000F000sv*sd*bc*sc*i*"); +MODULE_ALIAS("pci:v00001D0Fd0000F001sv*sd*bc*sc*i*"); + +MODULE_INFO(srcversion, "C49C31CE18C3897CFC3D332"); diff --git a/host_software/driver/xdma/xdma_cdev.c b/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.c similarity index 67% rename from host_software/driver/xdma/xdma_cdev.c rename to host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.c index b7981f6..363ffb4 100644 --- a/host_software/driver/xdma/xdma_cdev.c +++ b/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.c @@ -4,17 +4,26 @@ * Copyright (c) 2016-present, Xilinx, Inc. * All rights reserved. * - * This source code is licensed under both the BSD-style license (found in the - * LICENSE file in the root directory of this source tree) and the GPLv2 (found - * in the COPYING file in the root directory of this source tree). - * You may select, at your option, one of the above-listed licenses. + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". */ #define pr_fmt(fmt) KBUILD_MODNAME ":%s: " fmt, __func__ #include "xdma_cdev.h" -struct class *g_xdma_class; +static struct class *g_xdma_class; + +struct kmem_cache *cdev_cache; enum cdev_type { CHAR_USER, @@ -41,12 +50,12 @@ static const char * const devnode_names[] = { }; enum xpdev_flags_bits { - XDF_CDEV_USER, - XDF_CDEV_CTRL, - XDF_CDEV_XVC, - XDF_CDEV_EVENT, - XDF_CDEV_SG, - XDF_CDEV_BYPASS, + XDF_CDEV_USER, + XDF_CDEV_CTRL, + XDF_CDEV_XVC, + XDF_CDEV_EVENT, + XDF_CDEV_SG, + XDF_CDEV_BYPASS, }; static inline void xpdev_flag_set(struct xdma_pci_dev *xpdev, @@ -68,16 +77,18 @@ static inline int xpdev_flag_test(struct xdma_pci_dev *xpdev, } #ifdef __XDMA_SYSFS__ -ssize_t show_device_numbers(struct device *dev, struct device_attribute *attr, - char *buf) +ssize_t xdma_dev_instance_show(struct device *dev, + struct device_attribute *attr, + char *buf) { - struct xdma_pci_dev *xpdev = (struct xdma_pci_dev *)dev_get_drvdata(dev); + struct xdma_pci_dev *xpdev = + (struct xdma_pci_dev *)dev_get_drvdata(dev); return snprintf(buf, PAGE_SIZE, "%d\t%d\n", xpdev->major, xpdev->xdev->idx); } -static DEVICE_ATTR(xdma_dev_instance, S_IRUGO, show_device_numbers, NULL); +static DEVICE_ATTR_RO(xdma_dev_instance); #endif static int config_kobject(struct xdma_cdev *xcdev, enum cdev_type type) @@ -91,7 +102,10 @@ static int config_kobject(struct xdma_cdev *xcdev, enum cdev_type type) case CHAR_XDMA_C2H: case CHAR_BYPASS_H2C: case CHAR_BYPASS_C2H: - BUG_ON(!engine); + if (!engine) { + pr_err("Invalid DMA engine\n"); + return rv; + } rv = kobject_set_name(&xcdev->cdev.kobj, devnode_names[type], xdev->idx, engine->channel); break; @@ -122,22 +136,23 @@ int xcdev_check(const char *fname, struct xdma_cdev *xcdev, bool check_engine) if (!xcdev || xcdev->magic != MAGIC_CHAR) { pr_info("%s, xcdev 0x%p, magic 0x%lx.\n", - fname, xcdev, xcdev ? xcdev->magic : 0xFFFFFFFF); + fname, xcdev, xcdev ? xcdev->magic : 0xFFFFFFFF); return -EINVAL; } - xdev = xcdev->xdev; + xdev = xcdev->xdev; if (!xdev || xdev->magic != MAGIC_DEVICE) { pr_info("%s, xdev 0x%p, magic 0x%lx.\n", - fname, xdev, xdev ? xdev->magic : 0xFFFFFFFF); + fname, xdev, xdev ? xdev->magic : 0xFFFFFFFF); return -EINVAL; } if (check_engine) { - struct xdma_engine *engine = xcdev->engine; + struct xdma_engine *engine = xcdev->engine; + if (!engine || engine->magic != MAGIC_ENGINE) { pr_info("%s, engine 0x%p, magic 0x%lx.\n", fname, - engine, engine ? engine->magic : 0xFFFFFFFF); + engine, engine ? engine->magic : 0xFFFFFFFF); return -EINVAL; } } @@ -151,7 +166,11 @@ int char_open(struct inode *inode, struct file *file) /* pointer to containing structure of the character device inode */ xcdev = container_of(inode->i_cdev, struct xdma_cdev, cdev); - BUG_ON(xcdev->magic != MAGIC_CHAR); + if (xcdev->magic != MAGIC_CHAR) { + pr_err("xcdev 0x%p inode 0x%lx magic mismatch 0x%lx\n", + xcdev, inode->i_ino, xcdev->magic); + return -EINVAL; + } /* create a reference to our char device in the opened file */ file->private_data = xcdev; @@ -166,13 +185,30 @@ int char_close(struct inode *inode, struct file *file) struct xdma_dev *xdev; struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data; - BUG_ON(!xcdev); - BUG_ON(xcdev->magic != MAGIC_CHAR); + if (!xcdev) { + pr_err("char device with inode 0x%lx xcdev NULL\n", + inode->i_ino); + return -EINVAL; + } + + if (xcdev->magic != MAGIC_CHAR) { + pr_err("xcdev 0x%p magic mismatch 0x%lx\n", + xcdev, xcdev->magic); + return -EINVAL; + } /* fetch device specific data stored earlier during open */ xdev = xcdev->xdev; - BUG_ON(!xdev); - BUG_ON(xdev->magic != MAGIC_DEVICE); + if (!xdev) { + pr_err("char device with inode 0x%lx xdev NULL\n", + inode->i_ino); + return -EINVAL; + } + + if (xdev->magic != MAGIC_DEVICE) { + pr_err("xdev 0x%p magic mismatch 0x%lx\n", xdev, xdev->magic); + return -EINVAL; + } return 0; } @@ -186,40 +222,52 @@ int char_close(struct inode *inode, struct file *file) static int create_sys_device(struct xdma_cdev *xcdev, enum cdev_type type) { - struct xdma_dev *xdev = xcdev->xdev; - struct xdma_engine *engine = xcdev->engine; - int last_param; + struct xdma_dev *xdev = xcdev->xdev; + struct xdma_engine *engine = xcdev->engine; + int last_param; - if (type == CHAR_EVENTS) - last_param = xcdev->bar; - else - last_param = engine ? engine->channel : 0; + if (type == CHAR_EVENTS) + last_param = xcdev->bar; + else + last_param = engine ? engine->channel : 0; - xcdev->sys_device = device_create(g_xdma_class, &xdev->pdev->dev, - xcdev->cdevno, NULL, devnode_names[type], xdev->idx, - last_param); + xcdev->sys_device = device_create(g_xdma_class, &xdev->pdev->dev, + xcdev->cdevno, NULL, devnode_names[type], xdev->idx, + last_param); - if (!xcdev->sys_device) { - pr_err("device_create(%s) failed\n", devnode_names[type]); - return -1; - } + if (!xcdev->sys_device) { + pr_err("device_create(%s) failed\n", devnode_names[type]); + return -1; + } - return 0; + return 0; } static int destroy_xcdev(struct xdma_cdev *cdev) { if (!cdev) { pr_warn("cdev NULL.\n"); - return 0; + return -EINVAL; } if (cdev->magic != MAGIC_CHAR) { pr_warn("cdev 0x%p magic mismatch 0x%lx\n", cdev, cdev->magic); - return 0; + return -EINVAL; + } + + if (!cdev->xdev) { + pr_err("xdev NULL\n"); + return -EINVAL; + } + + if (!g_xdma_class) { + pr_err("g_xdma_class NULL\n"); + return -EINVAL; + } + + if (!cdev->sys_device) { + pr_err("cdev sys_device NULL\n"); + return -EINVAL; } - BUG_ON(!cdev->xdev); - BUG_ON(!g_xdma_class); - BUG_ON(!cdev->sys_device); if (cdev->sys_device) device_destroy(g_xdma_class, cdev->cdevno); @@ -330,58 +378,91 @@ static int create_xcdev(struct xdma_pci_dev *xpdev, struct xdma_cdev *xcdev, del_cdev: cdev_del(&xcdev->cdev); unregister_region: - unregister_chrdev_region(dev, XDMA_MINOR_COUNT); + unregister_chrdev_region(xcdev->cdevno, XDMA_MINOR_COUNT); return rv; } void xpdev_destroy_interfaces(struct xdma_pci_dev *xpdev) { - int i; - + int i = 0; + int rv; #ifdef __XDMA_SYSFS__ - device_remove_file(&xpdev->pdev->dev, &dev_attr_xdma_dev_instance); + device_remove_file(&xpdev->pdev->dev, &dev_attr_xdma_dev_instance); #endif if (xpdev_flag_test(xpdev, XDF_CDEV_SG)) { /* iterate over channels */ - for (i = 0; i < xpdev->h2c_channel_max; i++) + for (i = 0; i < xpdev->h2c_channel_max; i++) { /* remove SG DMA character device */ - destroy_xcdev(&xpdev->sgdma_h2c_cdev[i]); - for (i = 0; i < xpdev->c2h_channel_max; i++) - destroy_xcdev(&xpdev->sgdma_c2h_cdev[i]); + rv = destroy_xcdev(&xpdev->sgdma_h2c_cdev[i]); + if (rv < 0) + pr_err("Failed to destroy h2c xcdev %d error :0x%x\n", + i, rv); + } + for (i = 0; i < xpdev->c2h_channel_max; i++) { + rv = destroy_xcdev(&xpdev->sgdma_c2h_cdev[i]); + if (rv < 0) + pr_err("Failed to destroy c2h xcdev %d error 0x%x\n", + i, rv); + } } if (xpdev_flag_test(xpdev, XDF_CDEV_EVENT)) { - for (i = 0; i < xpdev->user_max; i++) - destroy_xcdev(&xpdev->events_cdev[i]); + for (i = 0; i < xpdev->user_max; i++) { + rv = destroy_xcdev(&xpdev->events_cdev[i]); + if (rv < 0) + pr_err("Failed to destroy cdev event %d error 0x%x\n", + i, rv); + } } /* remove control character device */ if (xpdev_flag_test(xpdev, XDF_CDEV_CTRL)) { - destroy_xcdev(&xpdev->ctrl_cdev); + rv = destroy_xcdev(&xpdev->ctrl_cdev); + if (rv < 0) + pr_err("Failed to destroy cdev ctrl event %d error 0x%x\n", + i, rv); } /* remove user character device */ if (xpdev_flag_test(xpdev, XDF_CDEV_USER)) { - destroy_xcdev(&xpdev->user_cdev); + rv = destroy_xcdev(&xpdev->user_cdev); + if (rv < 0) + pr_err("Failed to destroy user cdev %d error 0x%x\n", + i, rv); } if (xpdev_flag_test(xpdev, XDF_CDEV_XVC)) { - destroy_xcdev(&xpdev->xvc_cdev); + rv = destroy_xcdev(&xpdev->xvc_cdev); + if (rv < 0) + pr_err("Failed to destroy xvc cdev %d error 0x%x\n", + i, rv); } if (xpdev_flag_test(xpdev, XDF_CDEV_BYPASS)) { /* iterate over channels */ - for (i = 0; i < xpdev->h2c_channel_max; i++) + for (i = 0; i < xpdev->h2c_channel_max; i++) { /* remove DMA Bypass character device */ - destroy_xcdev(&xpdev->bypass_h2c_cdev[i]); - for (i = 0; i < xpdev->c2h_channel_max; i++) - destroy_xcdev(&xpdev->bypass_c2h_cdev[i]); - destroy_xcdev(&xpdev->bypass_cdev_base); + rv = destroy_xcdev(&xpdev->bypass_h2c_cdev[i]); + if (rv < 0) + pr_err("Failed to destroy bypass h2c cdev %d error 0x%x\n", + i, rv); + } + for (i = 0; i < xpdev->c2h_channel_max; i++) { + rv = destroy_xcdev(&xpdev->bypass_c2h_cdev[i]); + if (rv < 0) + pr_err("Failed to destroy bypass c2h %d error 0x%x\n", + i, rv); + } + rv = destroy_xcdev(&xpdev->bypass_cdev_base); + if (rv < 0) + pr_err("Failed to destroy base cdev\n"); } if (xpdev->major) - unregister_chrdev_region(MKDEV(xpdev->major, XDMA_MINOR_BASE), XDMA_MINOR_COUNT); + unregister_chrdev_region( + MKDEV(xpdev->major, XDMA_MINOR_BASE), + XDMA_MINOR_COUNT); } int xpdev_create_interfaces(struct xdma_pci_dev *xpdev) @@ -441,9 +522,8 @@ int xpdev_create_interfaces(struct xdma_pci_dev *xpdev) } xpdev_flag_set(xpdev, XDF_CDEV_SG); - /* ??? Bypass */ /* Initialize Bypass Character Device */ - if (xdev->bypass_bar_idx > 0){ + if (xdev->bypass_bar_idx > 0) { for (i = 0; i < xpdev->h2c_channel_max; i++) { engine = &xdev->engine_h2c[i]; @@ -508,7 +588,7 @@ int xpdev_create_interfaces(struct xdma_pci_dev *xpdev) rv = device_create_file(&xpdev->pdev->dev, &dev_attr_xdma_dev_instance); if (rv) { - pr_err("Failed to create device file \n"); + pr_err("Failed to create device file\n"); goto fail; } #endif @@ -524,16 +604,29 @@ int xpdev_create_interfaces(struct xdma_pci_dev *xpdev) int xdma_cdev_init(void) { g_xdma_class = class_create(THIS_MODULE, XDMA_NODE_NAME); - if (IS_ERR(g_xdma_class)) { - dbg_init(XDMA_NODE_NAME ": failed to create class"); - return -1; - } + if (IS_ERR(g_xdma_class)) { + dbg_init(XDMA_NODE_NAME ": failed to create class"); + return -EINVAL; + } + + /* using kmem_cache_create to enable sequential cleanup */ + cdev_cache = kmem_cache_create("cdev_cache", + sizeof(struct cdev_async_io), 0, + SLAB_HWCACHE_ALIGN, NULL); + + if (!cdev_cache) { + pr_info("memory allocation for cdev_cache failed. OOM\n"); + return -ENOMEM; + } return 0; } void xdma_cdev_cleanup(void) { + if (cdev_cache) + kmem_cache_destroy(cdev_cache); + if (g_xdma_class) class_destroy(g_xdma_class); } diff --git a/host_software/driver/xdma/xdma_cdev.h b/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.h similarity index 58% rename from host_software/driver/xdma/xdma_cdev.h rename to host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.h index 9570066..4b2fc50 100644 --- a/host_software/driver/xdma/xdma_cdev.h +++ b/host_software/driver/XDMA/linux-kernel/xdma/xdma_cdev.h @@ -4,10 +4,17 @@ * Copyright (c) 2016-present, Xilinx, Inc. * All rights reserved. * - * This source code is licensed under both the BSD-style license (found in the - * LICENSE file in the root directory of this source tree) and the GPLv2 (found - * in the COPYING file in the root directory of this source tree). - * You may select, at your option, one of the above-listed licenses. + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". */ #ifndef __XDMA_CHRDEV_H__ @@ -28,13 +35,13 @@ int xdma_cdev_init(void); int char_open(struct inode *inode, struct file *file); int char_close(struct inode *inode, struct file *file); -int xcdev_check(const char *, struct xdma_cdev *, bool); - +int xcdev_check(const char *fname, struct xdma_cdev *xcdev, bool check_engine); void cdev_ctrl_init(struct xdma_cdev *xcdev); void cdev_xvc_init(struct xdma_cdev *xcdev); void cdev_event_init(struct xdma_cdev *xcdev); void cdev_sgdma_init(struct xdma_cdev *xcdev); void cdev_bypass_init(struct xdma_cdev *xcdev); +long char_ctrl_ioctl(struct file *filp, unsigned int cmd, unsigned long arg); void xpdev_destroy_interfaces(struct xdma_pci_dev *xpdev); int xpdev_create_interfaces(struct xdma_pci_dev *xpdev); diff --git a/host_software/driver/xdma/xdma_mod.c b/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.c similarity index 71% rename from host_software/driver/xdma/xdma_mod.c rename to host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.c index 0004809..fe51eab 100644 --- a/host_software/driver/xdma/xdma_mod.c +++ b/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.c @@ -4,10 +4,17 @@ * Copyright (c) 2016-present, Xilinx, Inc. * All rights reserved. * - * This source code is licensed under both the BSD-style license (found in the - * LICENSE file in the root directory of this source tree) and the GPLv2 (found - * in the COPYING file in the root directory of this source tree). - * You may select, at your option, one of the above-listed licenses. + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". */ #define pr_fmt(fmt) KBUILD_MODNAME ":%s: " fmt, __func__ @@ -25,7 +32,6 @@ #define DRV_MODULE_NAME "xdma" #define DRV_MODULE_DESC "Xilinx XDMA Reference Driver" -#define DRV_MODULE_RELDATE "Feb. 2018" static char version[] = DRV_MODULE_DESC " " DRV_MODULE_NAME " v" DRV_MODULE_VERSION "\n"; @@ -36,48 +42,52 @@ MODULE_VERSION(DRV_MODULE_VERSION); MODULE_LICENSE("Dual BSD/GPL"); /* SECTION: Module global variables */ -static int xpdev_cnt = 0; +static int xpdev_cnt; static const struct pci_device_id pci_ids[] = { + { PCI_DEVICE(0x10ee, 0x9048), }, + { PCI_DEVICE(0x10ee, 0x9044), }, + { PCI_DEVICE(0x10ee, 0x9042), }, + { PCI_DEVICE(0x10ee, 0x9041), }, { PCI_DEVICE(0x10ee, 0x903f), }, { PCI_DEVICE(0x10ee, 0x9038), }, { PCI_DEVICE(0x10ee, 0x9028), }, - { PCI_DEVICE(0x10ee, 0x9018), }, + { PCI_DEVICE(0x10ee, 0x9018), }, { PCI_DEVICE(0x10ee, 0x9034), }, { PCI_DEVICE(0x10ee, 0x9024), }, - { PCI_DEVICE(0x10ee, 0x9014), }, + { PCI_DEVICE(0x10ee, 0x9014), }, { PCI_DEVICE(0x10ee, 0x9032), }, { PCI_DEVICE(0x10ee, 0x9022), }, - { PCI_DEVICE(0x10ee, 0x9012), }, + { PCI_DEVICE(0x10ee, 0x9012), }, { PCI_DEVICE(0x10ee, 0x9031), }, { PCI_DEVICE(0x10ee, 0x9021), }, - { PCI_DEVICE(0x10ee, 0x9011), }, + { PCI_DEVICE(0x10ee, 0x9011), }, { PCI_DEVICE(0x10ee, 0x8011), }, { PCI_DEVICE(0x10ee, 0x8012), }, - { PCI_DEVICE(0x10ee, 0x8014), }, - { PCI_DEVICE(0x10ee, 0x8018), }, - { PCI_DEVICE(0x10ee, 0x8021), }, - { PCI_DEVICE(0x10ee, 0x8022), }, - { PCI_DEVICE(0x10ee, 0x8024), }, - { PCI_DEVICE(0x10ee, 0x8028), }, - { PCI_DEVICE(0x10ee, 0x8031), }, - { PCI_DEVICE(0x10ee, 0x8032), }, - { PCI_DEVICE(0x10ee, 0x8034), }, - { PCI_DEVICE(0x10ee, 0x8038), }, - - { PCI_DEVICE(0x10ee, 0x7011), }, - { PCI_DEVICE(0x10ee, 0x7012), }, - { PCI_DEVICE(0x10ee, 0x7014), }, - { PCI_DEVICE(0x10ee, 0x7018), }, - { PCI_DEVICE(0x10ee, 0x7021), }, - { PCI_DEVICE(0x10ee, 0x7022), }, - { PCI_DEVICE(0x10ee, 0x7024), }, + { PCI_DEVICE(0x10ee, 0x8014), }, + { PCI_DEVICE(0x10ee, 0x8018), }, + { PCI_DEVICE(0x10ee, 0x8021), }, + { PCI_DEVICE(0x10ee, 0x8022), }, + { PCI_DEVICE(0x10ee, 0x8024), }, + { PCI_DEVICE(0x10ee, 0x8028), }, + { PCI_DEVICE(0x10ee, 0x8031), }, + { PCI_DEVICE(0x10ee, 0x8032), }, + { PCI_DEVICE(0x10ee, 0x8034), }, + { PCI_DEVICE(0x10ee, 0x8038), }, + + { PCI_DEVICE(0x10ee, 0x7011), }, + { PCI_DEVICE(0x10ee, 0x7012), }, + { PCI_DEVICE(0x10ee, 0x7014), }, + { PCI_DEVICE(0x10ee, 0x7018), }, + { PCI_DEVICE(0x10ee, 0x7021), }, + { PCI_DEVICE(0x10ee, 0x7022), }, + { PCI_DEVICE(0x10ee, 0x7024), }, { PCI_DEVICE(0x10ee, 0x7028), }, - { PCI_DEVICE(0x10ee, 0x7031), }, - { PCI_DEVICE(0x10ee, 0x7032), }, - { PCI_DEVICE(0x10ee, 0x7034), }, - { PCI_DEVICE(0x10ee, 0x7038), }, + { PCI_DEVICE(0x10ee, 0x7031), }, + { PCI_DEVICE(0x10ee, 0x7032), }, + { PCI_DEVICE(0x10ee, 0x7034), }, + { PCI_DEVICE(0x10ee, 0x7038), }, { PCI_DEVICE(0x10ee, 0x6828), }, { PCI_DEVICE(0x10ee, 0x6830), }, @@ -98,6 +108,10 @@ static const struct pci_device_id pci_ids[] = { #ifdef INTERNAL_TESTING { PCI_DEVICE(0x1d0f, 0x1042), 0}, #endif + /* aws */ + { PCI_DEVICE(0x1d0f, 0xf000), }, + { PCI_DEVICE(0x1d0f, 0xf001), }, + {0,} }; MODULE_DEVICE_TABLE(pci, pci_ids); @@ -118,7 +132,7 @@ static void xpdev_free(struct xdma_pci_dev *xpdev) static struct xdma_pci_dev *xpdev_alloc(struct pci_dev *pdev) { - struct xdma_pci_dev *xpdev = kmalloc(sizeof(*xpdev), GFP_KERNEL); + struct xdma_pci_dev *xpdev = kmalloc(sizeof(*xpdev), GFP_KERNEL); if (!xpdev) return NULL; @@ -147,12 +161,28 @@ static int probe_one(struct pci_dev *pdev, const struct pci_device_id *id) hndl = xdma_device_open(DRV_MODULE_NAME, pdev, &xpdev->user_max, &xpdev->h2c_channel_max, &xpdev->c2h_channel_max); - if (!hndl) - return -EINVAL; + if (!hndl) { + rv = -EINVAL; + goto err_out; + } - BUG_ON(xpdev->user_max > MAX_USER_IRQ); - BUG_ON(xpdev->h2c_channel_max > XDMA_CHANNEL_NUM_MAX); - BUG_ON(xpdev->c2h_channel_max > XDMA_CHANNEL_NUM_MAX); + if (xpdev->user_max > MAX_USER_IRQ) { + pr_err("Maximum users limit reached\n"); + rv = -EINVAL; + goto err_out; + } + + if (xpdev->h2c_channel_max > XDMA_CHANNEL_NUM_MAX) { + pr_err("Maximun H2C channel limit reached\n"); + rv = -EINVAL; + goto err_out; + } + + if (xpdev->c2h_channel_max > XDMA_CHANNEL_NUM_MAX) { + pr_err("Maximun C2H channel limit reached\n"); + rv = -EINVAL; + goto err_out; + } if (!xpdev->h2c_channel_max && !xpdev->c2h_channel_max) pr_warn("NO engine found!\n"); @@ -169,9 +199,15 @@ static int probe_one(struct pci_dev *pdev, const struct pci_device_id *id) xdev = xdev_find_by_pdev(pdev); if (!xdev) { pr_warn("NO xdev found!\n"); - return -EINVAL; + rv = -EINVAL; + goto err_out; + } + + if (hndl != xdev) { + pr_err("xdev handle mismatch\n"); + rv = -EINVAL; + goto err_out; } - BUG_ON(hndl != xdev ); pr_info("%s xdma%d, pdev 0x%p, xdev 0x%p, 0x%p, usr %d, ch %d,%d.\n", dev_name(&pdev->dev), xdev->idx, pdev, xpdev, xdev, @@ -184,11 +220,11 @@ static int probe_one(struct pci_dev *pdev, const struct pci_device_id *id) if (rv) goto err_out; - dev_set_drvdata(&pdev->dev, xpdev); + dev_set_drvdata(&pdev->dev, xpdev); return 0; -err_out: +err_out: pr_err("pdev 0x%p, err %d.\n", pdev, rv); xpdev_free(xpdev); return rv; @@ -209,7 +245,7 @@ static void remove_one(struct pci_dev *pdev) pdev, xpdev, xpdev->xdev); xpdev_free(xpdev); - dev_set_drvdata(&pdev->dev, NULL); + dev_set_drvdata(&pdev->dev, NULL); } static pci_ers_result_t xdma_error_detected(struct pci_dev *pdev, @@ -257,10 +293,15 @@ static void xdma_error_resume(struct pci_dev *pdev) struct xdma_pci_dev *xpdev = dev_get_drvdata(&pdev->dev); pr_info("dev 0x%p,0x%p.\n", pdev, xpdev); +#if PCI_AER_NAMECHANGE + pci_aer_clear_nonfatal_status(pdev); +#else pci_cleanup_aer_uncorrect_error_status(pdev); +#endif + } -#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,13,0) +#if KERNEL_VERSION(4, 13, 0) <= LINUX_VERSION_CODE static void xdma_reset_prepare(struct pci_dev *pdev) { struct xdma_pci_dev *xpdev = dev_get_drvdata(&pdev->dev); @@ -277,7 +318,7 @@ static void xdma_reset_done(struct pci_dev *pdev) xdma_device_online(pdev, xpdev->xdev); } -#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3,16,0) +#elif KERNEL_VERSION(3, 16, 0) <= LINUX_VERSION_CODE static void xdma_reset_notify(struct pci_dev *pdev, bool prepare) { struct xdma_pci_dev *xpdev = dev_get_drvdata(&pdev->dev); @@ -295,10 +336,10 @@ static const struct pci_error_handlers xdma_err_handler = { .error_detected = xdma_error_detected, .slot_reset = xdma_slot_reset, .resume = xdma_error_resume, -#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,13,0) +#if KERNEL_VERSION(4, 13, 0) <= LINUX_VERSION_CODE .reset_prepare = xdma_reset_prepare, .reset_done = xdma_reset_done, -#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3,16,0) +#elif KERNEL_VERSION(3, 16, 0) <= LINUX_VERSION_CODE .reset_notify = xdma_reset_notify, #endif }; @@ -311,18 +352,16 @@ static struct pci_driver pci_driver = { .err_handler = &xdma_err_handler, }; -static int __init xdma_mod_init(void) +static int xdma_mod_init(void) { int rv; - extern unsigned int desc_blen_max; - extern unsigned int sgdma_timeout; pr_info("%s", version); if (desc_blen_max > XDMA_DESC_BLEN_MAX) desc_blen_max = XDMA_DESC_BLEN_MAX; - pr_info("desc_blen_max: 0x%x/%u, sgdma_timeout: %u sec.\n", - desc_blen_max, desc_blen_max, sgdma_timeout); + pr_info("desc_blen_max: 0x%x/%u, timeout: h2c %u c2h %u sec.\n", + desc_blen_max, desc_blen_max, h2c_timeout, c2h_timeout); rv = xdma_cdev_init(); if (rv < 0) @@ -331,7 +370,7 @@ static int __init xdma_mod_init(void) return pci_register_driver(&pci_driver); } -static void __exit xdma_mod_exit(void) +static void xdma_mod_exit(void) { /* unregister this driver from the PCI bus driver */ dbg_init("pci_unregister_driver.\n"); diff --git a/host_software/driver/xdma/xdma_mod.h b/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.h similarity index 70% rename from host_software/driver/xdma/xdma_mod.h rename to host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.h index 93202b1..0fb7527 100644 --- a/host_software/driver/xdma/xdma_mod.h +++ b/host_software/driver/XDMA/linux-kernel/xdma/xdma_mod.h @@ -4,10 +4,17 @@ * Copyright (c) 2016-present, Xilinx, Inc. * All rights reserved. * - * This source code is licensed under both the BSD-style license (found in the - * LICENSE file in the root directory of this source tree) and the GPLv2 (found - * in the COPYING file in the root directory of this source tree). - * You may select, at your option, one of the above-listed licenses. + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". */ #ifndef __XDMA_MODULE_H__ @@ -37,14 +44,20 @@ #include #include #include +#include #include "libxdma.h" +#include "xdma_thread.h" #define MAGIC_ENGINE 0xEEEEEEEEUL #define MAGIC_DEVICE 0xDDDDDDDDUL #define MAGIC_CHAR 0xCCCCCCCCUL #define MAGIC_BITSTREAM 0xBBBBBBBBUL +extern unsigned int desc_blen_max; +extern unsigned int h2c_timeout; +extern unsigned int c2h_timeout; + struct xdma_cdev { unsigned long magic; /* structure ID for sanity checks */ struct xdma_pci_dev *xpdev; @@ -87,12 +100,19 @@ struct xdma_pci_dev { void *data; }; -struct xdma_io_cb { - void __user *buf; - size_t len; - unsigned int pages_nr; - struct sg_table sgt; - struct page **pages; +struct cdev_async_io { + struct kiocb *iocb; + struct xdma_io_cb *cb; + bool write; + bool cancel; + int cmpl_cnt; + int req_cnt; + spinlock_t lock; + struct work_struct wrk_itm; + struct cdev_async_io *next; + ssize_t res; + ssize_t res2; + int err_cnt; }; #endif /* ifndef __XDMA_MODULE_H__ */ diff --git a/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.c b/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.c new file mode 100644 index 0000000..662311f --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.c @@ -0,0 +1,339 @@ +/* + * This file is part of the Xilinx DMA IP Core driver for Linux + * + * Copyright (c) 2017-present, Xilinx, Inc. + * All rights reserved. + * + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". + */ + +#define pr_fmt(fmt) KBUILD_MODNAME ":%s: " fmt, __func__ + +#include "xdma_thread.h" + +#include +#include + + +/* ********************* global variables *********************************** */ +static struct xdma_kthread *cs_threads; +static unsigned int thread_cnt; + + +/* ********************* static function definitions ************************ */ +static int xdma_thread_cmpl_status_pend(struct list_head *work_item) +{ + struct xdma_engine *engine = list_entry(work_item, struct xdma_engine, + cmplthp_list); + int pend = 0; + unsigned long flags; + + spin_lock_irqsave(&engine->lock, flags); + pend = !list_empty(&engine->transfer_list); + spin_unlock_irqrestore(&engine->lock, flags); + + return pend; +} + +static int xdma_thread_cmpl_status_proc(struct list_head *work_item) +{ + struct xdma_engine *engine; + struct xdma_transfer * transfer; + + engine = list_entry(work_item, struct xdma_engine, cmplthp_list); + transfer = list_entry(engine->transfer_list.next, struct xdma_transfer, + entry); + if (transfer) + engine_service_poll(engine, transfer->desc_cmpl_th); + return 0; +} + +static inline int xthread_work_pending(struct xdma_kthread *thp) +{ + struct list_head *work_item, *next; + + /* any work items assigned to this thread? */ + if (list_empty(&thp->work_list)) + return 0; + + /* any work item has pending work to do? */ + list_for_each_safe(work_item, next, &thp->work_list) { + if (thp->fpending && thp->fpending(work_item)) + return 1; + + } + return 0; +} + +static inline void xthread_reschedule(struct xdma_kthread *thp) +{ + if (thp->timeout) { + pr_debug_thread("%s rescheduling for %u seconds", + thp->name, thp->timeout); + wait_event_interruptible_timeout(thp->waitq, thp->schedule, + msecs_to_jiffies(thp->timeout)); + } else { + pr_debug_thread("%s rescheduling", thp->name); + wait_event_interruptible(thp->waitq, thp->schedule); + } +} + +static int xthread_main(void *data) +{ + struct xdma_kthread *thp = (struct xdma_kthread *)data; + + pr_debug_thread("%s UP.\n", thp->name); + + disallow_signal(SIGPIPE); + + if (thp->finit) + thp->finit(thp); + + while (!kthread_should_stop()) { + + struct list_head *work_item, *next; + + pr_debug_thread("%s interruptible\n", thp->name); + + /* any work to do? */ + lock_thread(thp); + if (!xthread_work_pending(thp)) { + unlock_thread(thp); + xthread_reschedule(thp); + lock_thread(thp); + } + thp->schedule = 0; + + if (thp->work_cnt) { + pr_debug_thread("%s processing %u work items\n", + thp->name, thp->work_cnt); + /* do work */ + list_for_each_safe(work_item, next, &thp->work_list) { + thp->fproc(work_item); + } + } + unlock_thread(thp); + schedule(); + } + + pr_debug_thread("%s, work done.\n", thp->name); + + if (thp->fdone) + thp->fdone(thp); + + pr_debug_thread("%s, exit.\n", thp->name); + return 0; +} + + +int xdma_kthread_start(struct xdma_kthread *thp, char *name, int id) +{ + int len; + int node; + + if (thp->task) { + pr_warn("kthread %s task already running?\n", thp->name); + return -EINVAL; + } + + len = snprintf(thp->name, sizeof(thp->name), "%s%d", name, id); + if (len < 0) { + pr_err("thread %d, error in snprintf name %s.\n", id, name); + return -EINVAL; + } + + thp->id = id; + + spin_lock_init(&thp->lock); + INIT_LIST_HEAD(&thp->work_list); + init_waitqueue_head(&thp->waitq); + + node = cpu_to_node(thp->cpu); + pr_debug("node : %d\n", node); + + thp->task = kthread_create_on_node(xthread_main, (void *)thp, + node, "%s", thp->name); + if (IS_ERR(thp->task)) { + pr_err("kthread %s, create task failed: 0x%lx\n", + thp->name, (unsigned long)IS_ERR(thp->task)); + thp->task = NULL; + return -EFAULT; + } + + kthread_bind(thp->task, thp->cpu); + + pr_debug_thread("kthread 0x%p, %s, cpu %u, task 0x%p.\n", + thp, thp->name, thp->cpu, thp->task); + + wake_up_process(thp->task); + return 0; +} + +int xdma_kthread_stop(struct xdma_kthread *thp) +{ + int rv; + + if (!thp->task) { + pr_debug_thread("kthread %s, already stopped.\n", thp->name); + return 0; + } + + thp->schedule = 1; + rv = kthread_stop(thp->task); + if (rv < 0) { + pr_warn("kthread %s, stop err %d.\n", thp->name, rv); + return rv; + } + + pr_debug_thread("kthread %s, 0x%p, stopped.\n", thp->name, thp->task); + thp->task = NULL; + + return 0; +} + + + +void xdma_thread_remove_work(struct xdma_engine *engine) +{ + struct xdma_kthread *cmpl_thread; + unsigned long flags; + + spin_lock_irqsave(&engine->lock, flags); + cmpl_thread = engine->cmplthp; + engine->cmplthp = NULL; + +// pr_debug("%s removing from thread %s, %u.\n", +// descq->conf.name, cmpl_thread ? cmpl_thread->name : "?", +// cpu_idx); + + spin_unlock_irqrestore(&engine->lock, flags); + +#if 0 + if (cpu_idx < cpu_count) { + spin_lock(&qcnt_lock); + per_cpu_qcnt[cpu_idx]--; + spin_unlock(&qcnt_lock); + } +#endif + + if (cmpl_thread) { + lock_thread(cmpl_thread); + list_del(&engine->cmplthp_list); + cmpl_thread->work_cnt--; + unlock_thread(cmpl_thread); + } +} + +void xdma_thread_add_work(struct xdma_engine *engine) +{ + struct xdma_kthread *thp = cs_threads; + unsigned int v = 0; + int i, idx = thread_cnt; + unsigned long flags; + + + /* Polled mode only */ + for (i = 0; i < thread_cnt; i++, thp++) { + lock_thread(thp); + if (idx == thread_cnt) { + v = thp->work_cnt; + idx = i; + } else if (!thp->work_cnt) { + idx = i; + unlock_thread(thp); + break; + } else if (thp->work_cnt < v) + idx = i; + unlock_thread(thp); + } + + thp = cs_threads + idx; + lock_thread(thp); + list_add_tail(&engine->cmplthp_list, &thp->work_list); + engine->intr_work_cpu = idx; + thp->work_cnt++; + unlock_thread(thp); + + pr_info("%s 0x%p assigned to cmpl status thread %s,%u.\n", + engine->name, engine, thp->name, thp->work_cnt); + + + spin_lock_irqsave(&engine->lock, flags); + engine->cmplthp = thp; + spin_unlock_irqrestore(&engine->lock, flags); +} + +int xdma_threads_create(unsigned int num_threads) +{ + struct xdma_kthread *thp; + int rv; + int cpu; + + if (thread_cnt) { + pr_warn("threads already created!"); + return 0; + } + + cs_threads = kzalloc(num_threads * sizeof(struct xdma_kthread), + GFP_KERNEL); + if (!cs_threads) { + pr_err("OOM, # threads %u.\n", num_threads); + return -ENOMEM; + } + + /* N dma writeback monitoring threads */ + thp = cs_threads; + for_each_online_cpu(cpu) { + pr_debug("index %d cpu %d online\n", thread_cnt, cpu); + thp->cpu = cpu; + thp->timeout = 0; + thp->fproc = xdma_thread_cmpl_status_proc; + thp->fpending = xdma_thread_cmpl_status_pend; + rv = xdma_kthread_start(thp, "cmpl_status_th", thread_cnt); + if (rv < 0) + goto cleanup_threads; + + thread_cnt++; + if (thread_cnt == num_threads) + break; + thp++; + } + + return 0; + +cleanup_threads: + kfree(cs_threads); + cs_threads = NULL; + thread_cnt = 0; + + return rv; +} + +void xdma_threads_destroy(void) +{ + int i; + struct xdma_kthread *thp; + + if (!thread_cnt) + return; + + /* N dma writeback monitoring threads */ + thp = cs_threads; + for (i = 0; i < thread_cnt; i++, thp++) + if (thp->fproc) + xdma_kthread_stop(thp); + + kfree(cs_threads); + cs_threads = NULL; + thread_cnt = 0; +} diff --git a/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.h b/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.h new file mode 100644 index 0000000..c8f6dbb --- /dev/null +++ b/host_software/driver/XDMA/linux-kernel/xdma/xdma_thread.h @@ -0,0 +1,147 @@ +/* + * This file is part of the Xilinx DMA IP Core driver for Linux + * + * Copyright (c) 2017-present, Xilinx, Inc. + * All rights reserved. + * + * This source code is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in + * the file called "COPYING". + */ + +#ifndef __XDMA_KTHREAD_H__ +#define __XDMA_KTHREAD_H__ +/** + * @file + * @brief This file contains the declarations for xdma kernel threads + * + */ +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include "libxdma.h" + +#ifdef DEBUG_THREADS +#define lock_thread(thp) \ + do { \ + pr_debug("locking thp %s ...\n", (thp)->name); \ + spin_lock(&(thp)->lock); \ + } while (0) + +#define unlock_thread(thp) \ + do { \ + pr_debug("unlock thp %s ...\n", (thp)->name); \ + spin_unlock(&(thp)->lock); \ + } while (0) + +#define xdma_kthread_wakeup(thp) \ + do { \ + pr_info("signaling thp %s ...\n", (thp)->name); \ + wake_up_process((thp)->task); \ + } while (0) + +#define pr_debug_thread(fmt, ...) pr_info(fmt, __VA_ARGS__) + +#else +/** lock thread macro */ +#define lock_thread(thp) spin_lock(&(thp)->lock) +/** un lock thread macro */ +#define unlock_thread(thp) spin_unlock(&(thp)->lock) +#define xdma_kthread_wakeup(thp) \ + do { \ + thp->schedule = 1; \ + wake_up_interruptible(&thp->waitq); \ + } while (0) +/** pr_debug_thread */ +#define pr_debug_thread(fmt, ...) +#endif + +/** + * @struct - xdma_kthread + * @brief xdma thread book keeping parameters + */ +struct xdma_kthread { + /** thread lock*/ + spinlock_t lock; + /** name of the thread */ + char name[16]; + /** cpu number for which the thread associated with */ + unsigned short cpu; + /** thread id */ + unsigned short id; + /** thread sleep timeout value */ + unsigned int timeout; + /** flags for thread */ + unsigned long flag; + /** thread wait queue */ + wait_queue_head_t waitq; + /* flag to indicate scheduling of thread */ + unsigned int schedule; + /** kernel task structure associated with thread*/ + struct task_struct *task; + /** thread work list count */ + unsigned int work_cnt; + /** thread work list count */ + struct list_head work_list; + /** thread initialization handler */ + int (*finit)(struct xdma_kthread *); + /** thread pending handler */ + int (*fpending)(struct list_head *); + /** thread peocessing handler */ + int (*fproc)(struct list_head *); + /** thread done handler */ + int (*fdone)(struct xdma_kthread *); +}; + + +/*****************************************************************************/ +/** + * xdma_threads_create() - create xdma threads +*********/ +int xdma_threads_create(unsigned int num_threads); + +/*****************************************************************************/ +/** + * xdma_threads_destroy() - destroy all the xdma threads created + * during system initialization + * + * @return none + *****************************************************************************/ +void xdma_threads_destroy(void); + +/*****************************************************************************/ +/** + * xdma_thread_remove_work() - handler to remove the attached work thread + * + * @param[in] engine: pointer to xdma_engine + * + * @return none + *****************************************************************************/ +void xdma_thread_remove_work(struct xdma_engine *engine); + +/*****************************************************************************/ +/** + * xdma_thread_add_work() - handler to add a work thread + * + * @param[in] engine: pointer to xdma_engine + * + * @return none + *****************************************************************************/ +void xdma_thread_add_work(struct xdma_engine *engine); + +#endif /* #ifndef __XDMA_KTHREAD_H__ */ diff --git a/host_software/driver/load_driver.sh b/host_software/driver/load_driver.sh deleted file mode 100644 index ad7f4b1..0000000 --- a/host_software/driver/load_driver.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/bin/bash - -# Make sure only root can run our script -if [[ $EUID -ne 0 ]]; then - echo "This script must be run as root" 1>&2 - exit 1 -fi - -# Remove the existing xdma kernel module -lsmod | grep xdma -if [ $? -eq 0 ]; then - rmmod xdma -fi - -echo -n "Loading xdma driver..." -# Use the following command to Load the driver in the default -# or interrupt drive mode. This will allow the driver to use -# interrupts to signal when DMA transfers are completed. -insmod ./xdma/xdma.ko -# Use the following command to Load the driver in Polling -# mode rather than than interrupt mode. This will allow the -# driver to use polling to determ when DMA transfers are -# completed. -#insmod ../xdma/xdma.ko poll_mode=1 - -if [ ! $? == 0 ]; then - echo "Error: Kernel module did not load properly." - echo " FAILED" - exit 1 -fi - -# Check to see if the xdma devices were recognized -echo "" -cat /proc/devices | grep xdma > /dev/null -returnVal=$? -if [ $returnVal == 0 ]; then - # Installed devices were recognized. - echo "The Kernel module installed correctly and the xmda devices were recognized." -else - # No devices were installed. - echo "Error: The Kernel module installed correctly, but no devices were recognized." - echo " FAILED" - exit 1 -fi - -echo " DONE" diff --git a/host_software/driver/xdma/.cdev_bypass.o.cmd b/host_software/driver/xdma/.cdev_bypass.o.cmd deleted file mode 100644 index 4266db2..0000000 --- a/host_software/driver/xdma/.cdev_bypass.o.cmd +++ /dev/null @@ -1,995 +0,0 @@ -cmd_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_bypass.o := gcc -Wp,-MD,/home/wangxuan/pcie_xdma_host_software/driver/xdma/.cdev_bypass.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/5/include -I./arch/x86/include -Iarch/x86/include/generated/uapi -Iarch/x86/include/generated -Iinclude -I./arch/x86/include/uapi -Iarch/x86/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -Iubuntu/include -D__KERNEL__ -fno-pie -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -fno-pie -no-pie -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_X86_X32_ABI -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -DCONFIG_AS_SHA1_NI=1 -DCONFIG_AS_SHA256_NI=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -DRETPOLINE -fno-delete-null-pointer-checks -O2 --param=allow-store-data-races=0 -DCC_HAVE_ASM_GOTO -Wframe-larger-than=1024 -fstack-protector-strong -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wno-pointer-sign -Wno-array-bounds -Wno-maybe-uninitialized -fno-strict-overflow -fno-merge-all-constants -fmerge-constants -fno-stack-check -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -DMODULE -D"KBUILD_STR(s)=$(pound)s" -D"KBUILD_BASENAME=KBUILD_STR(cdev_bypass)" -D"KBUILD_MODNAME=KBUILD_STR(xdma)" -c -o /home/wangxuan/pcie_xdma_host_software/driver/xdma/.tmp_cdev_bypass.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_bypass.c - -source_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_bypass.o := /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_bypass.c - -deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_bypass.o := \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma_api.h \ - include/linux/types.h \ - $(wildcard include/config/have/uid16.h) \ - $(wildcard include/config/uid16.h) \ - $(wildcard include/config/lbdaf.h) \ - $(wildcard include/config/arch/dma/addr/t/64bit.h) \ - $(wildcard include/config/phys/addr/t/64bit.h) \ - $(wildcard include/config/64bit.h) \ - include/uapi/linux/types.h \ - arch/x86/include/uapi/asm/types.h \ - include/uapi/asm-generic/types.h \ - include/asm-generic/int-ll64.h \ - include/uapi/asm-generic/int-ll64.h \ - arch/x86/include/uapi/asm/bitsperlong.h \ - include/asm-generic/bitsperlong.h \ - include/uapi/asm-generic/bitsperlong.h \ - include/uapi/linux/posix_types.h \ - include/linux/stddef.h \ - include/uapi/linux/stddef.h \ - include/linux/compiler.h \ - $(wildcard include/config/sparse/rcu/pointer.h) \ - $(wildcard include/config/trace/branch/profiling.h) \ - $(wildcard include/config/profile/all/branches.h) \ - $(wildcard include/config/kasan.h) \ - $(wildcard include/config/enable/must/check.h) \ - $(wildcard include/config/enable/warn/deprecated.h) \ - $(wildcard include/config/kprobes.h) \ - include/linux/compiler-gcc.h \ - $(wildcard include/config/arch/supports/optimized/inlining.h) \ - $(wildcard include/config/optimize/inlining.h) \ - $(wildcard include/config/arm64.h) \ - $(wildcard include/config/gcov/kernel.h) \ - $(wildcard include/config/arch/use/builtin/bswap.h) \ - include/linux/kasan-checks.h \ - arch/x86/include/asm/posix_types.h \ - $(wildcard include/config/x86/32.h) \ - arch/x86/include/uapi/asm/posix_types_64.h \ - include/uapi/asm-generic/posix_types.h \ - include/linux/scatterlist.h \ - $(wildcard include/config/debug/sg.h) \ - $(wildcard include/config/need/sg/dma/length.h) \ - include/linux/string.h \ - $(wildcard include/config/binary/printf.h) \ - /usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h \ - include/uapi/linux/string.h \ - arch/x86/include/asm/string.h \ - arch/x86/include/asm/string_64.h \ - $(wildcard include/config/kmemcheck.h) \ - include/linux/bug.h \ - $(wildcard include/config/generic/bug.h) \ - arch/x86/include/asm/bug.h \ - $(wildcard include/config/debug/bugverbose.h) \ - include/asm-generic/bug.h \ - $(wildcard include/config/bug.h) \ - $(wildcard include/config/generic/bug/relative/pointers.h) \ - $(wildcard include/config/smp.h) \ - include/linux/kernel.h \ - $(wildcard include/config/preempt/voluntary.h) \ - $(wildcard include/config/debug/atomic/sleep.h) \ - $(wildcard include/config/mmu.h) \ - $(wildcard include/config/prove/locking.h) \ - $(wildcard include/config/panic/timeout.h) \ - $(wildcard include/config/tracing.h) \ - $(wildcard include/config/ftrace/mcount/record.h) \ - include/linux/linkage.h \ - include/linux/stringify.h \ - include/linux/export.h \ - $(wildcard include/config/have/underscore/symbol/prefix.h) \ - $(wildcard include/config/modules.h) \ - $(wildcard include/config/modversions.h) \ - $(wildcard include/config/unused/symbols.h) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/x86/64.h) \ - $(wildcard include/config/x86/alignment/16.h) \ - include/linux/bitops.h \ - include/linux/bits.h \ - arch/x86/include/asm/bitops.h \ - $(wildcard include/config/x86/cmov.h) \ - arch/x86/include/asm/alternative.h \ - arch/x86/include/asm/asm.h \ - arch/x86/include/asm/rmwcc.h \ - arch/x86/include/asm/barrier.h \ - $(wildcard include/config/x86/ppro/fence.h) \ - arch/x86/include/asm/nops.h \ - $(wildcard include/config/mk7.h) \ - $(wildcard include/config/x86/p6/nop.h) \ - include/asm-generic/barrier.h \ - include/asm-generic/bitops/find.h \ - $(wildcard include/config/generic/find/first/bit.h) \ - include/asm-generic/bitops/sched.h \ - arch/x86/include/asm/arch_hweight.h \ - arch/x86/include/asm/cpufeatures.h \ - $(wildcard include/config/page/table/isolation.h) \ - arch/x86/include/asm/required-features.h \ - $(wildcard include/config/x86/minimum/cpu/family.h) \ - $(wildcard include/config/math/emulation.h) \ - $(wildcard include/config/x86/pae.h) \ - $(wildcard include/config/x86/cmpxchg64.h) \ - $(wildcard include/config/x86/use/3dnow.h) \ - $(wildcard include/config/matom.h) \ - $(wildcard include/config/paravirt.h) \ - arch/x86/include/asm/disabled-features.h \ - $(wildcard include/config/x86/intel/mpx.h) \ - $(wildcard include/config/x86/intel/memory/protection/keys.h) \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/le.h \ - arch/x86/include/uapi/asm/byteorder.h \ - include/linux/byteorder/little_endian.h \ - include/uapi/linux/byteorder/little_endian.h \ - include/linux/swab.h \ - include/uapi/linux/swab.h \ - arch/x86/include/uapi/asm/swab.h \ - include/linux/byteorder/generic.h \ - include/asm-generic/bitops/ext2-atomic-setbit.h \ - include/linux/log2.h \ - $(wildcard include/config/arch/has/ilog2/u32.h) \ - $(wildcard include/config/arch/has/ilog2/u64.h) \ - include/linux/typecheck.h \ - include/linux/printk.h \ - $(wildcard include/config/message/loglevel/default.h) \ - $(wildcard include/config/early/printk.h) \ - $(wildcard include/config/printk.h) \ - $(wildcard include/config/dynamic/debug.h) \ - include/linux/init.h \ - $(wildcard include/config/broken/rodata.h) \ - $(wildcard include/config/lto.h) \ - include/linux/kern_levels.h \ - include/linux/cache.h \ - $(wildcard include/config/arch/has/cache/line/size.h) \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.h \ - arch/x86/include/asm/cache.h \ - $(wildcard include/config/x86/l1/cache/shift.h) \ - $(wildcard include/config/x86/internode/cache/shift.h) \ - $(wildcard include/config/x86/vsmp.h) \ - include/linux/dynamic_debug.h \ - include/linux/mm.h \ - $(wildcard include/config/need/multiple/nodes.h) \ - $(wildcard include/config/sysctl.h) \ - $(wildcard include/config/mem/soft/dirty.h) \ - $(wildcard include/config/x86.h) \ - $(wildcard include/config/ppc.h) \ - $(wildcard include/config/parisc.h) \ - $(wildcard include/config/metag.h) \ - $(wildcard include/config/ia64.h) \ - $(wildcard include/config/stack/growsup.h) \ - $(wildcard include/config/numa.h) \ - $(wildcard include/config/transparent/hugepage.h) \ - $(wildcard include/config/hugetlb/page.h) \ - $(wildcard include/config/sparsemem.h) \ - $(wildcard include/config/sparsemem/vmemmap.h) \ - $(wildcard include/config/numa/balancing.h) \ - $(wildcard include/config/memcg.h) \ - $(wildcard include/config/highmem.h) \ - $(wildcard include/config/shmem.h) \ - $(wildcard include/config/have/memblock/node/map.h) \ - $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ - $(wildcard include/config/debug/vm/rb.h) \ - $(wildcard include/config/proc/fs.h) \ - $(wildcard include/config/debug/pagealloc.h) \ - $(wildcard include/config/hibernation.h) \ - $(wildcard include/config/memory/hotplug.h) \ - $(wildcard include/config/hugetlbfs.h) \ - include/linux/errno.h \ - include/uapi/linux/errno.h \ - arch/x86/include/uapi/asm/errno.h \ - include/uapi/asm-generic/errno.h \ - include/uapi/asm-generic/errno-base.h \ - include/linux/mmdebug.h \ - $(wildcard include/config/debug/vm.h) \ - $(wildcard include/config/debug/virtual.h) \ - include/linux/gfp.h \ - $(wildcard include/config/zone/dma.h) \ - $(wildcard include/config/zone/dma32.h) \ - $(wildcard include/config/zone/device.h) \ - $(wildcard include/config/deferred/struct/page/init.h) \ - $(wildcard include/config/pm/sleep.h) \ - $(wildcard include/config/cma.h) \ - include/linux/mmzone.h \ - $(wildcard include/config/force/max/zoneorder.h) \ - $(wildcard include/config/memory/isolation.h) \ - $(wildcard include/config/compaction.h) \ - $(wildcard include/config/discontigmem.h) \ - $(wildcard include/config/flat/node/mem/map.h) \ - $(wildcard include/config/page/extension.h) \ - $(wildcard include/config/no/bootmem.h) \ - $(wildcard include/config/have/memory/present.h) \ - $(wildcard include/config/have/memoryless/nodes.h) \ - $(wildcard include/config/need/node/memmap/size.h) \ - $(wildcard include/config/flatmem.h) \ - $(wildcard include/config/sparsemem/extreme.h) \ - $(wildcard include/config/have/arch/pfn/valid.h) \ - $(wildcard include/config/holes/in/zone.h) \ - $(wildcard include/config/arch/has/holes/memorymodel.h) \ - include/linux/spinlock.h \ - $(wildcard include/config/debug/spinlock.h) \ - $(wildcard include/config/generic/lockbreak.h) \ - $(wildcard include/config/preempt.h) \ - $(wildcard include/config/debug/lock/alloc.h) \ - include/linux/preempt.h \ - $(wildcard include/config/preempt/count.h) \ - $(wildcard include/config/debug/preempt.h) \ - $(wildcard include/config/preempt/tracer.h) \ - $(wildcard include/config/preempt/notifiers.h) \ - include/linux/list.h \ - $(wildcard include/config/debug/list.h) \ - include/linux/poison.h \ - $(wildcard include/config/illegal/pointer/value.h) \ - include/uapi/linux/const.h \ - arch/x86/include/asm/preempt.h \ - arch/x86/include/asm/percpu.h \ - $(wildcard include/config/x86/64/smp.h) \ - include/asm-generic/percpu.h \ - $(wildcard include/config/have/setup/per/cpu/area.h) \ - include/linux/threads.h \ - $(wildcard include/config/nr/cpus.h) \ - $(wildcard include/config/base/small.h) \ - include/linux/percpu-defs.h \ - $(wildcard include/config/debug/force/weak/per/cpu.h) \ - include/linux/thread_info.h \ - $(wildcard include/config/thread/info/in/task.h) \ - $(wildcard include/config/compat.h) \ - arch/x86/include/asm/thread_info.h \ - $(wildcard include/config/vm86.h) \ - $(wildcard include/config/ia32/emulation.h) \ - arch/x86/include/asm/page.h \ - arch/x86/include/asm/page_types.h \ - $(wildcard include/config/physical/start.h) \ - $(wildcard include/config/physical/align.h) \ - arch/x86/include/asm/page_64_types.h \ - $(wildcard include/config/kasan/extra.h) \ - $(wildcard include/config/randomize/base.h) \ - $(wildcard include/config/randomize/base/max/offset.h) \ - arch/x86/include/asm/page_64.h \ - $(wildcard include/config/x86/vsyscall/emulation.h) \ - include/linux/range.h \ - include/asm-generic/memory_model.h \ - include/linux/pfn.h \ - include/asm-generic/getorder.h \ - arch/x86/include/asm/cpufeature.h \ - $(wildcard include/config/x86/feature/names.h) \ - $(wildcard include/config/x86/fast/feature/tests.h) \ - arch/x86/include/asm/processor.h \ - $(wildcard include/config/cc/stackprotector.h) \ - $(wildcard include/config/x86/debugctlmsr.h) \ - $(wildcard include/config/xen.h) \ - arch/x86/include/asm/processor-flags.h \ - arch/x86/include/uapi/asm/processor-flags.h \ - arch/x86/include/asm/math_emu.h \ - arch/x86/include/asm/ptrace.h \ - arch/x86/include/asm/segment.h \ - $(wildcard include/config/x86/32/lazy/gs.h) \ - arch/x86/include/uapi/asm/ptrace.h \ - arch/x86/include/uapi/asm/ptrace-abi.h \ - arch/x86/include/asm/paravirt_types.h \ - $(wildcard include/config/x86/local/apic.h) \ - $(wildcard include/config/pgtable/levels.h) \ - $(wildcard include/config/queued/spinlocks.h) \ - $(wildcard include/config/paravirt/debug.h) \ - arch/x86/include/asm/desc_defs.h \ - arch/x86/include/asm/kmap_types.h \ - $(wildcard include/config/debug/highmem.h) \ - include/asm-generic/kmap_types.h \ - arch/x86/include/asm/pgtable_types.h \ - arch/x86/include/asm/pgtable_64_types.h \ - arch/x86/include/asm/sparsemem.h \ - arch/x86/include/asm/nospec-branch.h \ - $(wildcard include/config/retpoline.h) \ - include/linux/static_key.h \ - include/linux/jump_label.h \ - $(wildcard include/config/jump/label.h) \ - arch/x86/include/asm/jump_label.h \ - include/linux/atomic.h \ - $(wildcard include/config/generic/atomic64.h) \ - arch/x86/include/asm/atomic.h \ - arch/x86/include/asm/cmpxchg.h \ - arch/x86/include/asm/cmpxchg_64.h \ - arch/x86/include/asm/atomic64_64.h \ - include/asm-generic/atomic-long.h \ - arch/x86/include/asm/alternative-asm.h \ - arch/x86/include/asm/msr-index.h \ - $(wildcard include/config/tdp/nominal.h) \ - $(wildcard include/config/tdp/level/1.h) \ - $(wildcard include/config/tdp/level/2.h) \ - $(wildcard include/config/tdp/control.h) \ - $(wildcard include/config/tdp/level1.h) \ - $(wildcard include/config/tdp/level2.h) \ - arch/x86/include/asm/spinlock_types.h \ - $(wildcard include/config/paravirt/spinlocks.h) \ - include/asm-generic/qrwlock_types.h \ - include/asm-generic/ptrace.h \ - arch/x86/include/uapi/asm/sigcontext.h \ - arch/x86/include/asm/current.h \ - arch/x86/include/asm/msr.h \ - arch/x86/include/asm/msr-index.h \ - arch/x86/include/asm/cpumask.h \ - include/linux/cpumask.h \ - $(wildcard include/config/cpumask/offstack.h) \ - $(wildcard include/config/hotplug/cpu.h) \ - $(wildcard include/config/debug/per/cpu/maps.h) \ - include/linux/bitmap.h \ - arch/x86/include/uapi/asm/msr.h \ - include/uapi/linux/ioctl.h \ - arch/x86/include/uapi/asm/ioctl.h \ - include/asm-generic/ioctl.h \ - include/uapi/asm-generic/ioctl.h \ - arch/x86/include/asm/paravirt.h \ - arch/x86/include/asm/special_insns.h \ - arch/x86/include/asm/fpu/types.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - include/linux/math64.h \ - $(wildcard include/config/arch/supports/int128.h) \ - arch/x86/include/asm/div64.h \ - include/asm-generic/div64.h \ - include/linux/err.h \ - include/linux/irqflags.h \ - $(wildcard include/config/trace/irqflags.h) \ - $(wildcard include/config/irqsoff/tracer.h) \ - $(wildcard include/config/trace/irqflags/support.h) \ - arch/x86/include/asm/irqflags.h \ - include/linux/bottom_half.h \ - include/linux/spinlock_types.h \ - include/linux/lockdep.h \ - $(wildcard include/config/lockdep.h) \ - $(wildcard include/config/lock/stat.h) \ - include/linux/rwlock_types.h \ - arch/x86/include/asm/spinlock.h \ - arch/x86/include/asm/qrwlock.h \ - include/asm-generic/qrwlock.h \ - include/linux/rwlock.h \ - include/linux/spinlock_api_smp.h \ - $(wildcard include/config/inline/spin/lock.h) \ - $(wildcard include/config/inline/spin/lock/bh.h) \ - $(wildcard include/config/inline/spin/lock/irq.h) \ - $(wildcard include/config/inline/spin/lock/irqsave.h) \ - $(wildcard include/config/inline/spin/trylock.h) \ - $(wildcard include/config/inline/spin/trylock/bh.h) \ - $(wildcard include/config/uninline/spin/unlock.h) \ - $(wildcard include/config/inline/spin/unlock/bh.h) \ - $(wildcard include/config/inline/spin/unlock/irq.h) \ - $(wildcard include/config/inline/spin/unlock/irqrestore.h) \ - include/linux/rwlock_api_smp.h \ - $(wildcard include/config/inline/read/lock.h) \ - $(wildcard include/config/inline/write/lock.h) \ - $(wildcard include/config/inline/read/lock/bh.h) \ - $(wildcard include/config/inline/write/lock/bh.h) \ - $(wildcard include/config/inline/read/lock/irq.h) \ - $(wildcard include/config/inline/write/lock/irq.h) \ - $(wildcard include/config/inline/read/lock/irqsave.h) \ - $(wildcard include/config/inline/write/lock/irqsave.h) \ - $(wildcard include/config/inline/read/trylock.h) \ - $(wildcard include/config/inline/write/trylock.h) \ - $(wildcard include/config/inline/read/unlock.h) \ - $(wildcard include/config/inline/write/unlock.h) \ - $(wildcard include/config/inline/read/unlock/bh.h) \ - $(wildcard include/config/inline/write/unlock/bh.h) \ - $(wildcard include/config/inline/read/unlock/irq.h) \ - $(wildcard include/config/inline/write/unlock/irq.h) \ - $(wildcard include/config/inline/read/unlock/irqrestore.h) \ - $(wildcard include/config/inline/write/unlock/irqrestore.h) \ - include/linux/wait.h \ - include/uapi/linux/wait.h \ - include/linux/numa.h \ - $(wildcard include/config/nodes/shift.h) \ - include/linux/seqlock.h \ - include/linux/nodemask.h \ - $(wildcard include/config/movable/node.h) \ - include/linux/pageblock-flags.h \ - $(wildcard include/config/hugetlb/page/size/variable.h) \ - include/linux/page-flags-layout.h \ - include/generated/bounds.h \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/memory/hotremove.h) \ - $(wildcard include/config/have/arch/nodedata/extension.h) \ - $(wildcard include/config/have/bootmem/info/node.h) \ - include/linux/notifier.h \ - include/linux/mutex.h \ - $(wildcard include/config/debug/mutexes.h) \ - $(wildcard include/config/mutex/spin/on/owner.h) \ - include/linux/osq_lock.h \ - include/linux/rwsem.h \ - $(wildcard include/config/rwsem/spin/on/owner.h) \ - $(wildcard include/config/rwsem/generic/spinlock.h) \ - arch/x86/include/asm/rwsem.h \ - include/linux/srcu.h \ - include/linux/rcupdate.h \ - $(wildcard include/config/tiny/rcu.h) \ - $(wildcard include/config/tree/rcu.h) \ - $(wildcard include/config/preempt/rcu.h) \ - $(wildcard include/config/rcu/trace.h) \ - $(wildcard include/config/rcu/stall/common.h) \ - $(wildcard include/config/no/hz/full.h) \ - $(wildcard include/config/rcu/nocb/cpu.h) \ - $(wildcard include/config/tasks/rcu.h) \ - $(wildcard include/config/debug/objects/rcu/head.h) \ - $(wildcard include/config/prove/rcu.h) \ - $(wildcard include/config/rcu/boost.h) \ - $(wildcard include/config/rcu/nocb/cpu/all.h) \ - $(wildcard include/config/no/hz/full/sysidle.h) \ - include/linux/completion.h \ - include/linux/debugobjects.h \ - $(wildcard include/config/debug/objects.h) \ - $(wildcard include/config/debug/objects/free.h) \ - include/linux/ktime.h \ - include/linux/time.h \ - $(wildcard include/config/arch/uses/gettimeoffset.h) \ - include/linux/time64.h \ - include/uapi/linux/time.h \ - include/linux/jiffies.h \ - include/linux/timex.h \ - include/uapi/linux/timex.h \ - include/uapi/linux/param.h \ - arch/x86/include/uapi/asm/param.h \ - include/asm-generic/param.h \ - $(wildcard include/config/hz.h) \ - include/uapi/asm-generic/param.h \ - arch/x86/include/asm/timex.h \ - arch/x86/include/asm/tsc.h \ - $(wildcard include/config/x86/tsc.h) \ - include/generated/timeconst.h \ - include/linux/timekeeping.h \ - include/linux/rcutree.h \ - include/linux/workqueue.h \ - $(wildcard include/config/debug/objects/work.h) \ - $(wildcard include/config/freezer.h) \ - $(wildcard include/config/sysfs.h) \ - include/linux/timer.h \ - $(wildcard include/config/debug/objects/timers.h) \ - $(wildcard include/config/no/hz/common.h) \ - include/linux/sysctl.h \ - include/linux/rbtree.h \ - include/uapi/linux/sysctl.h \ - arch/x86/include/asm/mmzone.h \ - arch/x86/include/asm/mmzone_64.h \ - arch/x86/include/asm/smp.h \ - $(wildcard include/config/x86/io/apic.h) \ - $(wildcard include/config/x86/32/smp.h) \ - $(wildcard include/config/debug/nmi/selftest.h) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/eisa.h) \ - $(wildcard include/config/x86/mpparse.h) \ - arch/x86/include/asm/mpspec_def.h \ - arch/x86/include/asm/x86_init.h \ - arch/x86/include/uapi/asm/bootparam.h \ - include/linux/screen_info.h \ - include/uapi/linux/screen_info.h \ - include/linux/apm_bios.h \ - include/uapi/linux/apm_bios.h \ - include/linux/edd.h \ - include/uapi/linux/edd.h \ - arch/x86/include/asm/e820.h \ - $(wildcard include/config/efi.h) \ - arch/x86/include/uapi/asm/e820.h \ - $(wildcard include/config/x86/pmem/legacy.h) \ - $(wildcard include/config/intel/txt.h) \ - include/linux/ioport.h \ - arch/x86/include/asm/ist.h \ - arch/x86/include/uapi/asm/ist.h \ - include/video/edid.h \ - include/uapi/video/edid.h \ - arch/x86/include/asm/apicdef.h \ - arch/x86/include/asm/apic.h \ - $(wildcard include/config/x86/x2apic.h) \ - include/linux/pm.h \ - $(wildcard include/config/vt/console/sleep.h) \ - $(wildcard include/config/pm.h) \ - $(wildcard include/config/pm/clk.h) \ - $(wildcard include/config/pm/generic/domains.h) \ - arch/x86/include/asm/fixmap.h \ - $(wildcard include/config/paravirt/clock.h) \ - $(wildcard include/config/provide/ohci1394/dma/init.h) \ - $(wildcard include/config/pci/mmconfig.h) \ - $(wildcard include/config/x86/intel/mid.h) \ - arch/x86/include/asm/acpi.h \ - $(wildcard include/config/acpi/apei.h) \ - $(wildcard include/config/acpi.h) \ - $(wildcard include/config/acpi/numa.h) \ - include/acpi/pdc_intel.h \ - arch/x86/include/asm/numa.h \ - $(wildcard include/config/numa/emu.h) \ - arch/x86/include/asm/topology.h \ - include/asm-generic/topology.h \ - arch/x86/include/asm/mmu.h \ - $(wildcard include/config/modify/ldt/syscall.h) \ - arch/x86/include/asm/realmode.h \ - $(wildcard include/config/acpi/sleep.h) \ - arch/x86/include/asm/io.h \ - $(wildcard include/config/mtrr.h) \ - $(wildcard include/config/x86/pat.h) \ - arch/x86/include/generated/asm/early_ioremap.h \ - include/asm-generic/early_ioremap.h \ - $(wildcard include/config/generic/early/ioremap.h) \ - include/asm-generic/iomap.h \ - $(wildcard include/config/has/ioport/map.h) \ - $(wildcard include/config/pci.h) \ - $(wildcard include/config/generic/iomap.h) \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/no/generic/pci/ioport/map.h) \ - $(wildcard include/config/generic/pci/iomap.h) \ - include/xen/xen.h \ - $(wildcard include/config/xen/dom0.h) \ - $(wildcard include/config/xen/pvh.h) \ - include/xen/interface/xen.h \ - arch/x86/include/asm/xen/interface.h \ - arch/x86/include/asm/xen/interface_64.h \ - arch/x86/include/asm/pvclock-abi.h \ - arch/x86/include/asm/xen/hypervisor.h \ - include/xen/features.h \ - include/xen/interface/features.h \ - arch/x86/include/asm/pvclock.h \ - $(wildcard include/config/kvm/guest.h) \ - include/linux/clocksource.h \ - $(wildcard include/config/arch/clocksource/data.h) \ - $(wildcard include/config/clocksource/watchdog.h) \ - $(wildcard include/config/clksrc/probe.h) \ - arch/x86/include/asm/clocksource.h \ - arch/x86/include/uapi/asm/vsyscall.h \ - include/asm-generic/fixmap.h \ - arch/x86/include/asm/hardirq.h \ - $(wildcard include/config/kvm/intel.h) \ - $(wildcard include/config/have/kvm.h) \ - $(wildcard include/config/x86/thermal/vector.h) \ - $(wildcard include/config/x86/mce/threshold.h) \ - $(wildcard include/config/x86/mce/amd.h) \ - $(wildcard include/config/hyperv.h) \ - arch/x86/include/asm/idle.h \ - arch/x86/include/asm/io_apic.h \ - arch/x86/include/asm/irq_vectors.h \ - $(wildcard include/config/pci/msi.h) \ - include/linux/topology.h \ - $(wildcard include/config/use/percpu/numa/node/id.h) \ - $(wildcard include/config/sched/smt.h) \ - include/linux/smp.h \ - $(wildcard include/config/up/late/init.h) \ - include/linux/llist.h \ - $(wildcard include/config/arch/have/nmi/safe/cmpxchg.h) \ - include/linux/percpu.h \ - $(wildcard include/config/need/per/cpu/embed/first/chunk.h) \ - $(wildcard include/config/need/per/cpu/page/first/chunk.h) \ - include/linux/debug_locks.h \ - $(wildcard include/config/debug/locking/api/selftests.h) \ - include/linux/mm_types.h \ - $(wildcard include/config/split/ptlock/cpus.h) \ - $(wildcard include/config/arch/enable/split/pmd/ptlock.h) \ - $(wildcard include/config/have/cmpxchg/double.h) \ - $(wildcard include/config/have/aligned/struct/page.h) \ - $(wildcard include/config/userfaultfd.h) \ - $(wildcard include/config/aio.h) \ - $(wildcard include/config/mmu/notifier.h) \ - $(wildcard include/config/arch/want/batched/unmap/tlb/flush.h) \ - include/linux/auxvec.h \ - include/uapi/linux/auxvec.h \ - arch/x86/include/uapi/asm/auxvec.h \ - include/linux/uprobes.h \ - $(wildcard include/config/uprobes.h) \ - arch/x86/include/asm/uprobes.h \ - include/linux/bit_spinlock.h \ - include/linux/shrinker.h \ - include/linux/resource.h \ - include/uapi/linux/resource.h \ - arch/x86/include/uapi/asm/resource.h \ - include/asm-generic/resource.h \ - include/uapi/asm-generic/resource.h \ - include/linux/page_ext.h \ - $(wildcard include/config/idle/page/tracking.h) \ - $(wildcard include/config/page/owner.h) \ - include/linux/stacktrace.h \ - $(wildcard include/config/stacktrace.h) \ - $(wildcard include/config/user/stacktrace/support.h) \ - arch/x86/include/asm/pgtable.h \ - $(wildcard include/config/debug/wx.h) \ - $(wildcard include/config/have/arch/soft/dirty.h) \ - arch/x86/include/asm/pgtable_64.h \ - arch/x86/include/asm/pgtable-invert.h \ - include/asm-generic/pgtable.h \ - $(wildcard include/config/have/arch/huge/vmap.h) \ - include/linux/page-flags.h \ - $(wildcard include/config/arch/uses/pg/uncached.h) \ - $(wildcard include/config/memory/failure.h) \ - $(wildcard include/config/swap.h) \ - $(wildcard include/config/ksm.h) \ - include/linux/huge_mm.h \ - include/linux/vmstat.h \ - $(wildcard include/config/vm/event/counters.h) \ - $(wildcard include/config/debug/tlbflush.h) \ - $(wildcard include/config/debug/vm/vmacache.h) \ - include/linux/vm_event_item.h \ - $(wildcard include/config/migration.h) \ - $(wildcard include/config/memory/balloon.h) \ - $(wildcard include/config/balloon/compaction.h) \ - include/linux/interrupt.h \ - $(wildcard include/config/irq/forced/threading.h) \ - $(wildcard include/config/generic/irq/probe.h) \ - include/linux/irqreturn.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/hardirq.h \ - include/linux/ftrace_irq.h \ - $(wildcard include/config/ftrace/nmi/enter.h) \ - include/linux/vtime.h \ - $(wildcard include/config/virt/cpu/accounting/native.h) \ - $(wildcard include/config/virt/cpu/accounting/gen.h) \ - $(wildcard include/config/virt/cpu/accounting.h) \ - $(wildcard include/config/irq/time/accounting.h) \ - include/linux/context_tracking_state.h \ - $(wildcard include/config/context/tracking.h) \ - include/linux/hrtimer.h \ - $(wildcard include/config/high/res/timers.h) \ - $(wildcard include/config/time/low/res.h) \ - $(wildcard include/config/timerfd.h) \ - include/linux/timerqueue.h \ - include/linux/kref.h \ - arch/x86/include/asm/irq.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_cdev.h \ - include/linux/uaccess.h \ - include/linux/sched.h \ - $(wildcard include/config/sched/debug.h) \ - $(wildcard include/config/lockup/detector.h) \ - $(wildcard include/config/detect/hung/task.h) \ - $(wildcard include/config/core/dump/default/elf/headers.h) \ - $(wildcard include/config/sched/autogroup.h) \ - $(wildcard include/config/bsd/process/acct.h) \ - $(wildcard include/config/taskstats.h) \ - $(wildcard include/config/audit.h) \ - $(wildcard include/config/inotify/user.h) \ - $(wildcard include/config/fanotify.h) \ - $(wildcard include/config/epoll.h) \ - $(wildcard include/config/posix/mqueue.h) \ - $(wildcard include/config/keys.h) \ - $(wildcard include/config/perf/events.h) \ - $(wildcard include/config/bpf/syscall.h) \ - $(wildcard include/config/sched/info.h) \ - $(wildcard include/config/task/delay/acct.h) \ - $(wildcard include/config/schedstats.h) \ - $(wildcard include/config/sched/mc.h) \ - $(wildcard include/config/fair/group/sched.h) \ - $(wildcard include/config/rt/group/sched.h) \ - $(wildcard include/config/cgroup/sched.h) \ - $(wildcard include/config/blk/dev/io/trace.h) \ - $(wildcard include/config/memcg/kmem.h) \ - $(wildcard include/config/compat/brk.h) \ - $(wildcard include/config/cgroups.h) \ - $(wildcard include/config/sysvipc.h) \ - $(wildcard include/config/auditsyscall.h) \ - $(wildcard include/config/rt/mutexes.h) \ - $(wildcard include/config/block.h) \ - $(wildcard include/config/task/xacct.h) \ - $(wildcard include/config/cpusets.h) \ - $(wildcard include/config/futex.h) \ - $(wildcard include/config/fault/injection.h) \ - $(wildcard include/config/latencytop.h) \ - $(wildcard include/config/function/graph/tracer.h) \ - $(wildcard include/config/bcache.h) \ - $(wildcard include/config/arch/wants/dynamic/task/struct.h) \ - $(wildcard include/config/have/unstable/sched/clock.h) \ - $(wildcard include/config/have/copy/thread/tls.h) \ - $(wildcard include/config/debug/stack/usage.h) \ - include/uapi/linux/sched.h \ - include/linux/sched/prio.h \ - include/linux/capability.h \ - $(wildcard include/config/multiuser.h) \ - include/uapi/linux/capability.h \ - include/linux/plist.h \ - $(wildcard include/config/debug/pi/list.h) \ - include/linux/cputime.h \ - arch/x86/include/generated/asm/cputime.h \ - include/asm-generic/cputime.h \ - include/asm-generic/cputime_jiffies.h \ - include/linux/sem.h \ - include/uapi/linux/sem.h \ - include/linux/ipc.h \ - include/linux/uidgid.h \ - $(wildcard include/config/user/ns.h) \ - include/linux/highuid.h \ - include/uapi/linux/ipc.h \ - arch/x86/include/uapi/asm/ipcbuf.h \ - include/uapi/asm-generic/ipcbuf.h \ - arch/x86/include/uapi/asm/sembuf.h \ - include/linux/shm.h \ - include/uapi/linux/shm.h \ - arch/x86/include/uapi/asm/shmbuf.h \ - include/uapi/asm-generic/shmbuf.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/signal.h \ - $(wildcard include/config/old/sigaction.h) \ - include/uapi/linux/signal.h \ - arch/x86/include/asm/signal.h \ - arch/x86/include/uapi/asm/signal.h \ - include/uapi/asm-generic/signal-defs.h \ - arch/x86/include/uapi/asm/siginfo.h \ - include/asm-generic/siginfo.h \ - include/uapi/asm-generic/siginfo.h \ - include/linux/pid.h \ - include/linux/proportions.h \ - include/linux/percpu_counter.h \ - include/linux/seccomp.h \ - $(wildcard include/config/seccomp.h) \ - $(wildcard include/config/have/arch/seccomp/filter.h) \ - $(wildcard include/config/seccomp/filter.h) \ - $(wildcard include/config/checkpoint/restore.h) \ - include/uapi/linux/seccomp.h \ - arch/x86/include/asm/seccomp.h \ - arch/x86/include/asm/unistd.h \ - $(wildcard include/config/x86/x32/abi.h) \ - arch/x86/include/uapi/asm/unistd.h \ - arch/x86/include/generated/uapi/asm/unistd_64.h \ - arch/x86/include/generated/asm/unistd_64_x32.h \ - arch/x86/include/asm/ia32_unistd.h \ - arch/x86/include/generated/asm/unistd_32_ia32.h \ - include/asm-generic/seccomp.h \ - include/uapi/linux/unistd.h \ - include/linux/rculist.h \ - include/linux/rtmutex.h \ - $(wildcard include/config/debug/rt/mutexes.h) \ - include/linux/task_io_accounting.h \ - $(wildcard include/config/task/io/accounting.h) \ - include/linux/latencytop.h \ - include/linux/cred.h \ - $(wildcard include/config/debug/credentials.h) \ - $(wildcard include/config/security.h) \ - include/linux/key.h \ - include/linux/assoc_array.h \ - $(wildcard include/config/associative/array.h) \ - include/linux/selinux.h \ - $(wildcard include/config/security/selinux.h) \ - include/uapi/linux/magic.h \ - include/linux/cgroup-defs.h \ - include/uapi/linux/limits.h \ - include/linux/idr.h \ - include/linux/percpu-refcount.h \ - include/linux/percpu-rwsem.h \ - include/linux/rcu_sync.h \ - include/linux/cgroup_subsys.h \ - $(wildcard include/config/cgroup/cpuacct.h) \ - $(wildcard include/config/blk/cgroup.h) \ - $(wildcard include/config/cgroup/device.h) \ - $(wildcard include/config/cgroup/freezer.h) \ - $(wildcard include/config/cgroup/net/classid.h) \ - $(wildcard include/config/cgroup/perf.h) \ - $(wildcard include/config/cgroup/net/prio.h) \ - $(wildcard include/config/cgroup/hugetlb.h) \ - $(wildcard include/config/cgroup/pids.h) \ - $(wildcard include/config/cgroup/debug.h) \ - arch/x86/include/asm/uaccess.h \ - $(wildcard include/config/x86/intel/usercopy.h) \ - $(wildcard include/config/debug/strict/user/copy/checks.h) \ - arch/x86/include/asm/smap.h \ - $(wildcard include/config/x86/smap.h) \ - arch/x86/include/asm/uaccess_64.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_mod.h \ - include/linux/module.h \ - $(wildcard include/config/module/sig.h) \ - $(wildcard include/config/modules/tree/lookup.h) \ - $(wildcard include/config/kallsyms.h) \ - $(wildcard include/config/tracepoints.h) \ - $(wildcard include/config/event/tracing.h) \ - $(wildcard include/config/livepatch.h) \ - $(wildcard include/config/module/unload.h) \ - $(wildcard include/config/constructors.h) \ - $(wildcard include/config/debug/set/module/ronx.h) \ - include/linux/stat.h \ - arch/x86/include/uapi/asm/stat.h \ - include/uapi/linux/stat.h \ - include/linux/kmod.h \ - include/linux/elf.h \ - arch/x86/include/asm/elf.h \ - arch/x86/include/asm/user.h \ - arch/x86/include/asm/user_64.h \ - arch/x86/include/asm/vdso.h \ - $(wildcard include/config/x86/x32.h) \ - include/uapi/linux/elf.h \ - include/uapi/linux/elf-em.h \ - include/linux/kobject.h \ - $(wildcard include/config/uevent/helper.h) \ - $(wildcard include/config/debug/kobject/release.h) \ - include/linux/sysfs.h \ - include/linux/kernfs.h \ - $(wildcard include/config/kernfs.h) \ - include/linux/kobject_ns.h \ - include/linux/moduleparam.h \ - $(wildcard include/config/alpha.h) \ - $(wildcard include/config/ppc64.h) \ - include/linux/rbtree_latch.h \ - arch/x86/include/asm/module.h \ - $(wildcard include/config/m486.h) \ - $(wildcard include/config/m586.h) \ - $(wildcard include/config/m586tsc.h) \ - $(wildcard include/config/m586mmx.h) \ - $(wildcard include/config/mcore2.h) \ - $(wildcard include/config/m686.h) \ - $(wildcard include/config/mpentiumii.h) \ - $(wildcard include/config/mpentiumiii.h) \ - $(wildcard include/config/mpentiumm.h) \ - $(wildcard include/config/mpentium4.h) \ - $(wildcard include/config/mk6.h) \ - $(wildcard include/config/mk8.h) \ - $(wildcard include/config/melan.h) \ - $(wildcard include/config/mcrusoe.h) \ - $(wildcard include/config/mefficeon.h) \ - $(wildcard include/config/mwinchipc6.h) \ - $(wildcard include/config/mwinchip3d.h) \ - $(wildcard include/config/mcyrixiii.h) \ - $(wildcard include/config/mviac3/2.h) \ - $(wildcard include/config/mviac7.h) \ - $(wildcard include/config/mgeodegx1.h) \ - $(wildcard include/config/mgeode/lx.h) \ - include/asm-generic/module.h \ - $(wildcard include/config/have/mod/arch/specific.h) \ - $(wildcard include/config/modules/use/elf/rel.h) \ - $(wildcard include/config/modules/use/elf/rela.h) \ - include/linux/cdev.h \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/device.h \ - $(wildcard include/config/debug/devres.h) \ - $(wildcard include/config/generic/msi/irq/domain.h) \ - $(wildcard include/config/pinctrl.h) \ - $(wildcard include/config/generic/msi/irq.h) \ - $(wildcard include/config/dma/cma.h) \ - $(wildcard include/config/of.h) \ - $(wildcard include/config/devtmpfs.h) \ - $(wildcard include/config/sysfs/deprecated.h) \ - include/linux/klist.h \ - include/linux/pinctrl/devinfo.h \ - include/linux/pinctrl/consumer.h \ - include/linux/seq_file.h \ - include/linux/fs.h \ - $(wildcard include/config/fs/posix/acl.h) \ - $(wildcard include/config/cgroup/writeback.h) \ - $(wildcard include/config/ima.h) \ - $(wildcard include/config/fsnotify.h) \ - $(wildcard include/config/file/locking.h) \ - $(wildcard include/config/quota.h) \ - $(wildcard include/config/blk/dev/loop.h) \ - $(wildcard include/config/fs/dax.h) \ - include/linux/dcache.h \ - include/linux/rculist_bl.h \ - include/linux/list_bl.h \ - include/linux/lockref.h \ - $(wildcard include/config/arch/use/cmpxchg/lockref.h) \ - include/linux/path.h \ - include/linux/list_lru.h \ - include/linux/radix-tree.h \ - include/linux/semaphore.h \ - include/uapi/linux/fiemap.h \ - include/linux/migrate_mode.h \ - include/linux/blk_types.h \ - $(wildcard include/config/blk/dev/integrity.h) \ - include/uapi/linux/fs.h \ - include/linux/quota.h \ - $(wildcard include/config/quota/netlink/interface.h) \ - include/uapi/linux/dqblk_xfs.h \ - include/linux/dqblk_v1.h \ - include/linux/dqblk_v2.h \ - include/linux/dqblk_qtree.h \ - include/linux/projid.h \ - include/uapi/linux/quota.h \ - include/linux/nfs_fs_i.h \ - include/linux/fcntl.h \ - include/uapi/linux/fcntl.h \ - arch/x86/include/uapi/asm/fcntl.h \ - include/uapi/asm-generic/fcntl.h \ - include/linux/pinctrl/pinctrl-state.h \ - include/linux/ratelimit.h \ - arch/x86/include/asm/device.h \ - $(wildcard include/config/x86/dev/dma/ops.h) \ - $(wildcard include/config/intel/iommu.h) \ - $(wildcard include/config/amd/iommu.h) \ - include/linux/pm_wakeup.h \ - include/linux/dma-mapping.h \ - $(wildcard include/config/has/dma.h) \ - $(wildcard include/config/arch/has/dma/set/coherent/mask.h) \ - $(wildcard include/config/have/dma/attrs.h) \ - $(wildcard include/config/need/dma/map/state.h) \ - include/linux/sizes.h \ - include/linux/dma-attrs.h \ - include/linux/dma-direction.h \ - arch/x86/include/asm/dma-mapping.h \ - $(wildcard include/config/isa.h) \ - $(wildcard include/config/x86/dma/remap.h) \ - include/linux/kmemcheck.h \ - include/linux/dma-debug.h \ - $(wildcard include/config/dma/api/debug.h) \ - arch/x86/include/asm/swiotlb.h \ - $(wildcard include/config/swiotlb.h) \ - include/linux/swiotlb.h \ - include/linux/dma-contiguous.h \ - include/asm-generic/dma-mapping-common.h \ - include/asm-generic/dma-coherent.h \ - $(wildcard include/config/have/generic/dma/coherent.h) \ - include/linux/delay.h \ - arch/x86/include/asm/delay.h \ - include/asm-generic/delay.h \ - include/linux/fb.h \ - $(wildcard include/config/fb/deferred/io.h) \ - $(wildcard include/config/fb/tileblitting.h) \ - $(wildcard include/config/fb/backlight.h) \ - $(wildcard include/config/fb/foreign/endian.h) \ - $(wildcard include/config/fb/both/endian.h) \ - $(wildcard include/config/fb/big/endian.h) \ - $(wildcard include/config/fb/little/endian.h) \ - include/linux/kgdb.h \ - $(wildcard include/config/have/arch/kgdb.h) \ - $(wildcard include/config/kgdb.h) \ - $(wildcard include/config/serial/kgdb/nmi.h) \ - arch/x86/include/asm/kgdb.h \ - include/uapi/linux/fb.h \ - include/linux/i2c.h \ - $(wildcard include/config/i2c.h) \ - $(wildcard include/config/i2c/slave.h) \ - $(wildcard include/config/i2c/boardinfo.h) \ - $(wildcard include/config/i2c/mux.h) \ - include/linux/mod_devicetable.h \ - include/linux/uuid.h \ - include/uapi/linux/uuid.h \ - include/linux/of.h \ - $(wildcard include/config/sparc.h) \ - $(wildcard include/config/of/dynamic.h) \ - $(wildcard include/config/attach/node.h) \ - $(wildcard include/config/detach/node.h) \ - $(wildcard include/config/add/property.h) \ - $(wildcard include/config/remove/property.h) \ - $(wildcard include/config/update/property.h) \ - $(wildcard include/config/of/numa.h) \ - $(wildcard include/config/no/change.h) \ - $(wildcard include/config/change/add.h) \ - $(wildcard include/config/change/remove.h) \ - $(wildcard include/config/of/resolve.h) \ - $(wildcard include/config/of/overlay.h) \ - include/linux/property.h \ - include/linux/fwnode.h \ - include/uapi/linux/i2c.h \ - include/linux/backlight.h \ - include/linux/slab.h \ - $(wildcard include/config/debug/slab.h) \ - $(wildcard include/config/failslab.h) \ - $(wildcard include/config/slab.h) \ - $(wildcard include/config/slub.h) \ - $(wildcard include/config/slob.h) \ - include/linux/kmemleak.h \ - $(wildcard include/config/debug/kmemleak.h) \ - include/linux/kasan.h \ - include/linux/io.h \ - include/linux/poll.h \ - include/uapi/linux/poll.h \ - arch/x86/include/uapi/asm/poll.h \ - include/uapi/asm-generic/poll.h \ - include/linux/pci.h \ - $(wildcard include/config/pci/iov.h) \ - $(wildcard include/config/pcieaspm.h) \ - $(wildcard include/config/pci/ats.h) \ - $(wildcard include/config/pci/domains/generic.h) \ - $(wildcard include/config/pci/bus/addr/t/64bit.h) \ - $(wildcard include/config/pcieportbus.h) \ - $(wildcard include/config/pcieaer.h) \ - $(wildcard include/config/pcie/ecrc.h) \ - $(wildcard include/config/ht/irq.h) \ - $(wildcard include/config/pci/domains.h) \ - $(wildcard include/config/pci/quirks.h) \ - $(wildcard include/config/hibernate/callbacks.h) \ - $(wildcard include/config/acpi/mcfg.h) \ - $(wildcard include/config/hotplug/pci.h) \ - $(wildcard include/config/eeh.h) \ - include/linux/resource_ext.h \ - include/uapi/linux/pci.h \ - include/uapi/linux/pci_regs.h \ - include/linux/pci_ids.h \ - include/linux/pci-dma.h \ - include/linux/dmapool.h \ - arch/x86/include/asm/pci.h \ - $(wildcard include/config/pci/msi/irq/domain.h) \ - arch/x86/include/asm/pci_64.h \ - $(wildcard include/config/calgary/iommu.h) \ - include/asm-generic/pci-dma-compat.h \ - include/asm-generic/pci.h \ - include/linux/vmalloc.h \ - include/linux/aio.h \ - include/uapi/linux/aio_abi.h \ - include/linux/splice.h \ - include/linux/pipe_fs_i.h \ - include/generated/uapi/linux/version.h \ - include/linux/uio.h \ - include/uapi/linux/uio.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.h \ - $(wildcard include/config/block/id.h) \ - -/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_bypass.o: $(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_bypass.o) - -$(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_bypass.o): diff --git a/host_software/driver/xdma/.cdev_ctrl.o.cmd b/host_software/driver/xdma/.cdev_ctrl.o.cmd deleted file mode 100644 index 9e7f6ee..0000000 --- a/host_software/driver/xdma/.cdev_ctrl.o.cmd +++ /dev/null @@ -1,996 +0,0 @@ -cmd_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_ctrl.o := gcc -Wp,-MD,/home/wangxuan/pcie_xdma_host_software/driver/xdma/.cdev_ctrl.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/5/include -I./arch/x86/include -Iarch/x86/include/generated/uapi -Iarch/x86/include/generated -Iinclude -I./arch/x86/include/uapi -Iarch/x86/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -Iubuntu/include -D__KERNEL__ -fno-pie -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -fno-pie -no-pie -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_X86_X32_ABI -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -DCONFIG_AS_SHA1_NI=1 -DCONFIG_AS_SHA256_NI=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -DRETPOLINE -fno-delete-null-pointer-checks -O2 --param=allow-store-data-races=0 -DCC_HAVE_ASM_GOTO -Wframe-larger-than=1024 -fstack-protector-strong -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wno-pointer-sign -Wno-array-bounds -Wno-maybe-uninitialized -fno-strict-overflow -fno-merge-all-constants -fmerge-constants -fno-stack-check -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -DMODULE -D"KBUILD_STR(s)=$(pound)s" -D"KBUILD_BASENAME=KBUILD_STR(cdev_ctrl)" -D"KBUILD_MODNAME=KBUILD_STR(xdma)" -c -o /home/wangxuan/pcie_xdma_host_software/driver/xdma/.tmp_cdev_ctrl.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_ctrl.c - -source_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_ctrl.o := /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_ctrl.c - -deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_ctrl.o := \ - include/uapi/linux/ioctl.h \ - arch/x86/include/uapi/asm/ioctl.h \ - include/asm-generic/ioctl.h \ - include/uapi/asm-generic/ioctl.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/version.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_cdev.h \ - include/linux/kernel.h \ - $(wildcard include/config/lbdaf.h) \ - $(wildcard include/config/preempt/voluntary.h) \ - $(wildcard include/config/debug/atomic/sleep.h) \ - $(wildcard include/config/mmu.h) \ - $(wildcard include/config/prove/locking.h) \ - $(wildcard include/config/panic/timeout.h) \ - $(wildcard include/config/tracing.h) \ - $(wildcard include/config/ftrace/mcount/record.h) \ - /usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h \ - include/linux/linkage.h \ - include/linux/compiler.h \ - $(wildcard include/config/sparse/rcu/pointer.h) \ - $(wildcard include/config/trace/branch/profiling.h) \ - $(wildcard include/config/profile/all/branches.h) \ - $(wildcard include/config/kasan.h) \ - $(wildcard include/config/enable/must/check.h) \ - $(wildcard include/config/enable/warn/deprecated.h) \ - $(wildcard include/config/kprobes.h) \ - include/linux/compiler-gcc.h \ - $(wildcard include/config/arch/supports/optimized/inlining.h) \ - $(wildcard include/config/optimize/inlining.h) \ - $(wildcard include/config/arm64.h) \ - $(wildcard include/config/gcov/kernel.h) \ - $(wildcard include/config/arch/use/builtin/bswap.h) \ - include/uapi/linux/types.h \ - arch/x86/include/uapi/asm/types.h \ - include/uapi/asm-generic/types.h \ - include/asm-generic/int-ll64.h \ - include/uapi/asm-generic/int-ll64.h \ - arch/x86/include/uapi/asm/bitsperlong.h \ - include/asm-generic/bitsperlong.h \ - $(wildcard include/config/64bit.h) \ - include/uapi/asm-generic/bitsperlong.h \ - include/uapi/linux/posix_types.h \ - include/linux/stddef.h \ - include/uapi/linux/stddef.h \ - arch/x86/include/asm/posix_types.h \ - $(wildcard include/config/x86/32.h) \ - arch/x86/include/uapi/asm/posix_types_64.h \ - include/uapi/asm-generic/posix_types.h \ - include/linux/kasan-checks.h \ - include/linux/stringify.h \ - include/linux/export.h \ - $(wildcard include/config/have/underscore/symbol/prefix.h) \ - $(wildcard include/config/modules.h) \ - $(wildcard include/config/modversions.h) \ - $(wildcard include/config/unused/symbols.h) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/x86/64.h) \ - $(wildcard include/config/x86/alignment/16.h) \ - include/linux/types.h \ - $(wildcard include/config/have/uid16.h) \ - $(wildcard include/config/uid16.h) \ - $(wildcard include/config/arch/dma/addr/t/64bit.h) \ - $(wildcard include/config/phys/addr/t/64bit.h) \ - include/linux/bitops.h \ - include/linux/bits.h \ - arch/x86/include/asm/bitops.h \ - $(wildcard include/config/x86/cmov.h) \ - arch/x86/include/asm/alternative.h \ - $(wildcard include/config/smp.h) \ - arch/x86/include/asm/asm.h \ - arch/x86/include/asm/rmwcc.h \ - arch/x86/include/asm/barrier.h \ - $(wildcard include/config/x86/ppro/fence.h) \ - arch/x86/include/asm/nops.h \ - $(wildcard include/config/mk7.h) \ - $(wildcard include/config/x86/p6/nop.h) \ - include/asm-generic/barrier.h \ - include/asm-generic/bitops/find.h \ - $(wildcard include/config/generic/find/first/bit.h) \ - include/asm-generic/bitops/sched.h \ - arch/x86/include/asm/arch_hweight.h \ - arch/x86/include/asm/cpufeatures.h \ - $(wildcard include/config/page/table/isolation.h) \ - arch/x86/include/asm/required-features.h \ - $(wildcard include/config/x86/minimum/cpu/family.h) \ - $(wildcard include/config/math/emulation.h) \ - $(wildcard include/config/x86/pae.h) \ - $(wildcard include/config/x86/cmpxchg64.h) \ - $(wildcard include/config/x86/use/3dnow.h) \ - $(wildcard include/config/matom.h) \ - $(wildcard include/config/paravirt.h) \ - arch/x86/include/asm/disabled-features.h \ - $(wildcard include/config/x86/intel/mpx.h) \ - $(wildcard include/config/x86/intel/memory/protection/keys.h) \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/le.h \ - arch/x86/include/uapi/asm/byteorder.h \ - include/linux/byteorder/little_endian.h \ - include/uapi/linux/byteorder/little_endian.h \ - include/linux/swab.h \ - include/uapi/linux/swab.h \ - arch/x86/include/uapi/asm/swab.h \ - include/linux/byteorder/generic.h \ - include/asm-generic/bitops/ext2-atomic-setbit.h \ - include/linux/log2.h \ - $(wildcard include/config/arch/has/ilog2/u32.h) \ - $(wildcard include/config/arch/has/ilog2/u64.h) \ - include/linux/typecheck.h \ - include/linux/printk.h \ - $(wildcard include/config/message/loglevel/default.h) \ - $(wildcard include/config/early/printk.h) \ - $(wildcard include/config/printk.h) \ - $(wildcard include/config/dynamic/debug.h) \ - include/linux/init.h \ - $(wildcard include/config/broken/rodata.h) \ - $(wildcard include/config/lto.h) \ - include/linux/kern_levels.h \ - include/linux/cache.h \ - $(wildcard include/config/arch/has/cache/line/size.h) \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.h \ - arch/x86/include/asm/cache.h \ - $(wildcard include/config/x86/l1/cache/shift.h) \ - $(wildcard include/config/x86/internode/cache/shift.h) \ - $(wildcard include/config/x86/vsmp.h) \ - include/linux/dynamic_debug.h \ - include/linux/uaccess.h \ - $(wildcard include/config/preempt/count.h) \ - include/linux/sched.h \ - $(wildcard include/config/no/hz/common.h) \ - $(wildcard include/config/sched/debug.h) \ - $(wildcard include/config/prove/rcu.h) \ - $(wildcard include/config/lockup/detector.h) \ - $(wildcard include/config/detect/hung/task.h) \ - $(wildcard include/config/core/dump/default/elf/headers.h) \ - $(wildcard include/config/virt/cpu/accounting/native.h) \ - $(wildcard include/config/sched/autogroup.h) \ - $(wildcard include/config/bsd/process/acct.h) \ - $(wildcard include/config/taskstats.h) \ - $(wildcard include/config/audit.h) \ - $(wildcard include/config/inotify/user.h) \ - $(wildcard include/config/fanotify.h) \ - $(wildcard include/config/epoll.h) \ - $(wildcard include/config/posix/mqueue.h) \ - $(wildcard include/config/keys.h) \ - $(wildcard include/config/perf/events.h) \ - $(wildcard include/config/bpf/syscall.h) \ - $(wildcard include/config/sched/info.h) \ - $(wildcard include/config/task/delay/acct.h) \ - $(wildcard include/config/schedstats.h) \ - $(wildcard include/config/sched/smt.h) \ - $(wildcard include/config/sched/mc.h) \ - $(wildcard include/config/numa.h) \ - $(wildcard include/config/fair/group/sched.h) \ - $(wildcard include/config/rt/group/sched.h) \ - $(wildcard include/config/thread/info/in/task.h) \ - $(wildcard include/config/cgroup/sched.h) \ - $(wildcard include/config/preempt/notifiers.h) \ - $(wildcard include/config/blk/dev/io/trace.h) \ - $(wildcard include/config/preempt/rcu.h) \ - $(wildcard include/config/tasks/rcu.h) \ - $(wildcard include/config/memcg.h) \ - $(wildcard include/config/memcg/kmem.h) \ - $(wildcard include/config/compat/brk.h) \ - $(wildcard include/config/cgroups.h) \ - $(wildcard include/config/cc/stackprotector.h) \ - $(wildcard include/config/virt/cpu/accounting/gen.h) \ - $(wildcard include/config/sysvipc.h) \ - $(wildcard include/config/auditsyscall.h) \ - $(wildcard include/config/rt/mutexes.h) \ - $(wildcard include/config/debug/mutexes.h) \ - $(wildcard include/config/trace/irqflags.h) \ - $(wildcard include/config/lockdep.h) \ - $(wildcard include/config/block.h) \ - $(wildcard include/config/task/xacct.h) \ - $(wildcard include/config/cpusets.h) \ - $(wildcard include/config/futex.h) \ - $(wildcard include/config/compat.h) \ - $(wildcard include/config/debug/preempt.h) \ - $(wildcard include/config/numa/balancing.h) \ - $(wildcard include/config/arch/want/batched/unmap/tlb/flush.h) \ - $(wildcard include/config/fault/injection.h) \ - $(wildcard include/config/latencytop.h) \ - $(wildcard include/config/function/graph/tracer.h) \ - $(wildcard include/config/uprobes.h) \ - $(wildcard include/config/bcache.h) \ - $(wildcard include/config/arch/wants/dynamic/task/struct.h) \ - $(wildcard include/config/have/unstable/sched/clock.h) \ - $(wildcard include/config/irq/time/accounting.h) \ - $(wildcard include/config/hotplug/cpu.h) \ - $(wildcard include/config/no/hz/full.h) \ - $(wildcard include/config/proc/fs.h) \ - $(wildcard include/config/stack/growsup.h) \ - $(wildcard include/config/have/copy/thread/tls.h) \ - $(wildcard include/config/debug/stack/usage.h) \ - $(wildcard include/config/preempt.h) \ - include/uapi/linux/sched.h \ - include/linux/sched/prio.h \ - arch/x86/include/uapi/asm/param.h \ - include/asm-generic/param.h \ - $(wildcard include/config/hz.h) \ - include/uapi/asm-generic/param.h \ - include/linux/capability.h \ - $(wildcard include/config/multiuser.h) \ - include/uapi/linux/capability.h \ - include/linux/threads.h \ - $(wildcard include/config/nr/cpus.h) \ - $(wildcard include/config/base/small.h) \ - include/linux/timex.h \ - include/uapi/linux/timex.h \ - include/linux/time.h \ - $(wildcard include/config/arch/uses/gettimeoffset.h) \ - include/linux/seqlock.h \ - $(wildcard include/config/debug/lock/alloc.h) \ - include/linux/spinlock.h \ - $(wildcard include/config/debug/spinlock.h) \ - $(wildcard include/config/generic/lockbreak.h) \ - include/linux/preempt.h \ - $(wildcard include/config/preempt/tracer.h) \ - include/linux/list.h \ - $(wildcard include/config/debug/list.h) \ - include/linux/poison.h \ - $(wildcard include/config/illegal/pointer/value.h) \ - include/uapi/linux/const.h \ - arch/x86/include/asm/preempt.h \ - arch/x86/include/asm/percpu.h \ - $(wildcard include/config/x86/64/smp.h) \ - include/asm-generic/percpu.h \ - $(wildcard include/config/have/setup/per/cpu/area.h) \ - include/linux/percpu-defs.h \ - $(wildcard include/config/debug/force/weak/per/cpu.h) \ - include/linux/thread_info.h \ - include/linux/bug.h \ - $(wildcard include/config/generic/bug.h) \ - arch/x86/include/asm/bug.h \ - $(wildcard include/config/debug/bugverbose.h) \ - include/asm-generic/bug.h \ - $(wildcard include/config/bug.h) \ - $(wildcard include/config/generic/bug/relative/pointers.h) \ - arch/x86/include/asm/thread_info.h \ - $(wildcard include/config/vm86.h) \ - $(wildcard include/config/ia32/emulation.h) \ - arch/x86/include/asm/page.h \ - arch/x86/include/asm/page_types.h \ - $(wildcard include/config/physical/start.h) \ - $(wildcard include/config/physical/align.h) \ - arch/x86/include/asm/page_64_types.h \ - $(wildcard include/config/kasan/extra.h) \ - $(wildcard include/config/randomize/base.h) \ - $(wildcard include/config/randomize/base/max/offset.h) \ - arch/x86/include/asm/page_64.h \ - $(wildcard include/config/debug/virtual.h) \ - $(wildcard include/config/flatmem.h) \ - $(wildcard include/config/x86/vsyscall/emulation.h) \ - include/linux/range.h \ - include/asm-generic/memory_model.h \ - $(wildcard include/config/discontigmem.h) \ - $(wildcard include/config/sparsemem/vmemmap.h) \ - $(wildcard include/config/sparsemem.h) \ - include/linux/pfn.h \ - include/asm-generic/getorder.h \ - arch/x86/include/asm/cpufeature.h \ - $(wildcard include/config/x86/feature/names.h) \ - $(wildcard include/config/x86/fast/feature/tests.h) \ - arch/x86/include/asm/processor.h \ - $(wildcard include/config/x86/debugctlmsr.h) \ - $(wildcard include/config/xen.h) \ - arch/x86/include/asm/processor-flags.h \ - arch/x86/include/uapi/asm/processor-flags.h \ - arch/x86/include/asm/math_emu.h \ - arch/x86/include/asm/ptrace.h \ - arch/x86/include/asm/segment.h \ - $(wildcard include/config/x86/32/lazy/gs.h) \ - arch/x86/include/uapi/asm/ptrace.h \ - arch/x86/include/uapi/asm/ptrace-abi.h \ - arch/x86/include/asm/paravirt_types.h \ - $(wildcard include/config/x86/local/apic.h) \ - $(wildcard include/config/pgtable/levels.h) \ - $(wildcard include/config/queued/spinlocks.h) \ - $(wildcard include/config/paravirt/debug.h) \ - arch/x86/include/asm/desc_defs.h \ - arch/x86/include/asm/kmap_types.h \ - $(wildcard include/config/debug/highmem.h) \ - include/asm-generic/kmap_types.h \ - arch/x86/include/asm/pgtable_types.h \ - $(wildcard include/config/kmemcheck.h) \ - $(wildcard include/config/mem/soft/dirty.h) \ - arch/x86/include/asm/pgtable_64_types.h \ - arch/x86/include/asm/sparsemem.h \ - arch/x86/include/asm/nospec-branch.h \ - $(wildcard include/config/retpoline.h) \ - include/linux/static_key.h \ - include/linux/jump_label.h \ - $(wildcard include/config/jump/label.h) \ - arch/x86/include/asm/jump_label.h \ - include/linux/atomic.h \ - $(wildcard include/config/generic/atomic64.h) \ - arch/x86/include/asm/atomic.h \ - arch/x86/include/asm/cmpxchg.h \ - arch/x86/include/asm/cmpxchg_64.h \ - arch/x86/include/asm/atomic64_64.h \ - include/asm-generic/atomic-long.h \ - arch/x86/include/asm/alternative-asm.h \ - arch/x86/include/asm/msr-index.h \ - $(wildcard include/config/tdp/nominal.h) \ - $(wildcard include/config/tdp/level/1.h) \ - $(wildcard include/config/tdp/level/2.h) \ - $(wildcard include/config/tdp/control.h) \ - $(wildcard include/config/tdp/level1.h) \ - $(wildcard include/config/tdp/level2.h) \ - arch/x86/include/asm/spinlock_types.h \ - $(wildcard include/config/paravirt/spinlocks.h) \ - include/asm-generic/qrwlock_types.h \ - include/asm-generic/ptrace.h \ - arch/x86/include/uapi/asm/sigcontext.h \ - arch/x86/include/asm/current.h \ - arch/x86/include/asm/msr.h \ - arch/x86/include/asm/msr-index.h \ - arch/x86/include/uapi/asm/errno.h \ - include/uapi/asm-generic/errno.h \ - include/uapi/asm-generic/errno-base.h \ - arch/x86/include/asm/cpumask.h \ - include/linux/cpumask.h \ - $(wildcard include/config/cpumask/offstack.h) \ - $(wildcard include/config/debug/per/cpu/maps.h) \ - include/linux/bitmap.h \ - include/linux/string.h \ - $(wildcard include/config/binary/printf.h) \ - include/uapi/linux/string.h \ - arch/x86/include/asm/string.h \ - arch/x86/include/asm/string_64.h \ - arch/x86/include/uapi/asm/msr.h \ - arch/x86/include/asm/paravirt.h \ - arch/x86/include/asm/special_insns.h \ - arch/x86/include/asm/fpu/types.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - include/linux/math64.h \ - $(wildcard include/config/arch/supports/int128.h) \ - arch/x86/include/asm/div64.h \ - include/asm-generic/div64.h \ - include/linux/err.h \ - include/linux/irqflags.h \ - $(wildcard include/config/irqsoff/tracer.h) \ - $(wildcard include/config/trace/irqflags/support.h) \ - arch/x86/include/asm/irqflags.h \ - include/linux/bottom_half.h \ - include/linux/spinlock_types.h \ - include/linux/lockdep.h \ - $(wildcard include/config/lock/stat.h) \ - include/linux/rwlock_types.h \ - arch/x86/include/asm/spinlock.h \ - arch/x86/include/asm/qrwlock.h \ - include/asm-generic/qrwlock.h \ - include/linux/rwlock.h \ - include/linux/spinlock_api_smp.h \ - $(wildcard include/config/inline/spin/lock.h) \ - $(wildcard include/config/inline/spin/lock/bh.h) \ - $(wildcard include/config/inline/spin/lock/irq.h) \ - $(wildcard include/config/inline/spin/lock/irqsave.h) \ - $(wildcard include/config/inline/spin/trylock.h) \ - $(wildcard include/config/inline/spin/trylock/bh.h) \ - $(wildcard include/config/uninline/spin/unlock.h) \ - $(wildcard include/config/inline/spin/unlock/bh.h) \ - $(wildcard include/config/inline/spin/unlock/irq.h) \ - $(wildcard include/config/inline/spin/unlock/irqrestore.h) \ - include/linux/rwlock_api_smp.h \ - $(wildcard include/config/inline/read/lock.h) \ - $(wildcard include/config/inline/write/lock.h) \ - $(wildcard include/config/inline/read/lock/bh.h) \ - $(wildcard include/config/inline/write/lock/bh.h) \ - $(wildcard include/config/inline/read/lock/irq.h) \ - $(wildcard include/config/inline/write/lock/irq.h) \ - $(wildcard include/config/inline/read/lock/irqsave.h) \ - $(wildcard include/config/inline/write/lock/irqsave.h) \ - $(wildcard include/config/inline/read/trylock.h) \ - $(wildcard include/config/inline/write/trylock.h) \ - $(wildcard include/config/inline/read/unlock.h) \ - $(wildcard include/config/inline/write/unlock.h) \ - $(wildcard include/config/inline/read/unlock/bh.h) \ - $(wildcard include/config/inline/write/unlock/bh.h) \ - $(wildcard include/config/inline/read/unlock/irq.h) \ - $(wildcard include/config/inline/write/unlock/irq.h) \ - $(wildcard include/config/inline/read/unlock/irqrestore.h) \ - $(wildcard include/config/inline/write/unlock/irqrestore.h) \ - include/linux/time64.h \ - include/uapi/linux/time.h \ - include/uapi/linux/param.h \ - arch/x86/include/asm/timex.h \ - arch/x86/include/asm/tsc.h \ - $(wildcard include/config/x86/tsc.h) \ - include/linux/jiffies.h \ - include/generated/timeconst.h \ - include/linux/plist.h \ - $(wildcard include/config/debug/pi/list.h) \ - include/linux/rbtree.h \ - include/linux/rcupdate.h \ - $(wildcard include/config/tiny/rcu.h) \ - $(wildcard include/config/tree/rcu.h) \ - $(wildcard include/config/rcu/trace.h) \ - $(wildcard include/config/rcu/stall/common.h) \ - $(wildcard include/config/rcu/nocb/cpu.h) \ - $(wildcard include/config/debug/objects/rcu/head.h) \ - $(wildcard include/config/rcu/boost.h) \ - $(wildcard include/config/rcu/nocb/cpu/all.h) \ - $(wildcard include/config/no/hz/full/sysidle.h) \ - include/linux/completion.h \ - include/linux/wait.h \ - include/uapi/linux/wait.h \ - include/linux/debugobjects.h \ - $(wildcard include/config/debug/objects.h) \ - $(wildcard include/config/debug/objects/free.h) \ - include/linux/ktime.h \ - include/linux/timekeeping.h \ - include/linux/rcutree.h \ - include/linux/errno.h \ - include/uapi/linux/errno.h \ - include/linux/nodemask.h \ - $(wildcard include/config/highmem.h) \ - $(wildcard include/config/movable/node.h) \ - include/linux/numa.h \ - $(wildcard include/config/nodes/shift.h) \ - include/linux/mm_types.h \ - $(wildcard include/config/split/ptlock/cpus.h) \ - $(wildcard include/config/arch/enable/split/pmd/ptlock.h) \ - $(wildcard include/config/have/cmpxchg/double.h) \ - $(wildcard include/config/have/aligned/struct/page.h) \ - $(wildcard include/config/transparent/hugepage.h) \ - $(wildcard include/config/userfaultfd.h) \ - $(wildcard include/config/aio.h) \ - $(wildcard include/config/mmu/notifier.h) \ - $(wildcard include/config/compaction.h) \ - $(wildcard include/config/hugetlb/page.h) \ - include/linux/auxvec.h \ - include/uapi/linux/auxvec.h \ - arch/x86/include/uapi/asm/auxvec.h \ - include/linux/rwsem.h \ - $(wildcard include/config/rwsem/spin/on/owner.h) \ - $(wildcard include/config/rwsem/generic/spinlock.h) \ - include/linux/osq_lock.h \ - arch/x86/include/asm/rwsem.h \ - include/linux/uprobes.h \ - arch/x86/include/asm/uprobes.h \ - include/linux/notifier.h \ - include/linux/mutex.h \ - $(wildcard include/config/mutex/spin/on/owner.h) \ - include/linux/srcu.h \ - include/linux/workqueue.h \ - $(wildcard include/config/debug/objects/work.h) \ - $(wildcard include/config/freezer.h) \ - $(wildcard include/config/sysfs.h) \ - include/linux/timer.h \ - $(wildcard include/config/debug/objects/timers.h) \ - include/linux/sysctl.h \ - $(wildcard include/config/sysctl.h) \ - include/uapi/linux/sysctl.h \ - include/linux/page-flags-layout.h \ - include/generated/bounds.h \ - arch/x86/include/asm/mmu.h \ - $(wildcard include/config/modify/ldt/syscall.h) \ - include/linux/cputime.h \ - arch/x86/include/generated/asm/cputime.h \ - include/asm-generic/cputime.h \ - $(wildcard include/config/virt/cpu/accounting.h) \ - include/asm-generic/cputime_jiffies.h \ - include/linux/smp.h \ - $(wildcard include/config/up/late/init.h) \ - include/linux/llist.h \ - $(wildcard include/config/arch/have/nmi/safe/cmpxchg.h) \ - arch/x86/include/asm/smp.h \ - $(wildcard include/config/x86/io/apic.h) \ - $(wildcard include/config/x86/32/smp.h) \ - $(wildcard include/config/debug/nmi/selftest.h) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/eisa.h) \ - $(wildcard include/config/x86/mpparse.h) \ - arch/x86/include/asm/mpspec_def.h \ - arch/x86/include/asm/x86_init.h \ - arch/x86/include/uapi/asm/bootparam.h \ - include/linux/screen_info.h \ - include/uapi/linux/screen_info.h \ - include/linux/apm_bios.h \ - include/uapi/linux/apm_bios.h \ - include/linux/edd.h \ - include/uapi/linux/edd.h \ - arch/x86/include/asm/e820.h \ - $(wildcard include/config/efi.h) \ - $(wildcard include/config/hibernation.h) \ - arch/x86/include/uapi/asm/e820.h \ - $(wildcard include/config/x86/pmem/legacy.h) \ - $(wildcard include/config/intel/txt.h) \ - include/linux/ioport.h \ - $(wildcard include/config/memory/hotremove.h) \ - arch/x86/include/asm/ist.h \ - arch/x86/include/uapi/asm/ist.h \ - include/video/edid.h \ - $(wildcard include/config/x86.h) \ - include/uapi/video/edid.h \ - arch/x86/include/asm/apicdef.h \ - arch/x86/include/asm/apic.h \ - $(wildcard include/config/x86/x2apic.h) \ - include/linux/pm.h \ - $(wildcard include/config/vt/console/sleep.h) \ - $(wildcard include/config/pm.h) \ - $(wildcard include/config/pm/sleep.h) \ - $(wildcard include/config/pm/clk.h) \ - $(wildcard include/config/pm/generic/domains.h) \ - arch/x86/include/asm/fixmap.h \ - $(wildcard include/config/paravirt/clock.h) \ - $(wildcard include/config/provide/ohci1394/dma/init.h) \ - $(wildcard include/config/pci/mmconfig.h) \ - $(wildcard include/config/x86/intel/mid.h) \ - arch/x86/include/asm/acpi.h \ - $(wildcard include/config/acpi/apei.h) \ - $(wildcard include/config/acpi.h) \ - $(wildcard include/config/acpi/numa.h) \ - include/acpi/pdc_intel.h \ - arch/x86/include/asm/numa.h \ - $(wildcard include/config/numa/emu.h) \ - arch/x86/include/asm/topology.h \ - include/asm-generic/topology.h \ - $(wildcard include/config/need/multiple/nodes.h) \ - $(wildcard include/config/have/memoryless/nodes.h) \ - arch/x86/include/asm/realmode.h \ - $(wildcard include/config/acpi/sleep.h) \ - arch/x86/include/asm/io.h \ - $(wildcard include/config/mtrr.h) \ - $(wildcard include/config/x86/pat.h) \ - arch/x86/include/generated/asm/early_ioremap.h \ - include/asm-generic/early_ioremap.h \ - $(wildcard include/config/generic/early/ioremap.h) \ - include/asm-generic/iomap.h \ - $(wildcard include/config/has/ioport/map.h) \ - $(wildcard include/config/pci.h) \ - $(wildcard include/config/generic/iomap.h) \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/no/generic/pci/ioport/map.h) \ - $(wildcard include/config/generic/pci/iomap.h) \ - include/xen/xen.h \ - $(wildcard include/config/xen/dom0.h) \ - $(wildcard include/config/xen/pvh.h) \ - include/xen/interface/xen.h \ - arch/x86/include/asm/xen/interface.h \ - arch/x86/include/asm/xen/interface_64.h \ - arch/x86/include/asm/pvclock-abi.h \ - arch/x86/include/asm/xen/hypervisor.h \ - include/xen/features.h \ - include/xen/interface/features.h \ - arch/x86/include/asm/pvclock.h \ - $(wildcard include/config/kvm/guest.h) \ - include/linux/clocksource.h \ - $(wildcard include/config/arch/clocksource/data.h) \ - $(wildcard include/config/clocksource/watchdog.h) \ - $(wildcard include/config/clksrc/probe.h) \ - arch/x86/include/asm/clocksource.h \ - arch/x86/include/uapi/asm/vsyscall.h \ - include/asm-generic/fixmap.h \ - arch/x86/include/asm/hardirq.h \ - $(wildcard include/config/kvm/intel.h) \ - $(wildcard include/config/have/kvm.h) \ - $(wildcard include/config/x86/thermal/vector.h) \ - $(wildcard include/config/x86/mce/threshold.h) \ - $(wildcard include/config/x86/mce/amd.h) \ - $(wildcard include/config/hyperv.h) \ - arch/x86/include/asm/idle.h \ - arch/x86/include/asm/io_apic.h \ - arch/x86/include/asm/irq_vectors.h \ - $(wildcard include/config/pci/msi.h) \ - include/linux/sem.h \ - include/uapi/linux/sem.h \ - include/linux/ipc.h \ - include/linux/uidgid.h \ - $(wildcard include/config/user/ns.h) \ - include/linux/highuid.h \ - include/uapi/linux/ipc.h \ - arch/x86/include/uapi/asm/ipcbuf.h \ - include/uapi/asm-generic/ipcbuf.h \ - arch/x86/include/uapi/asm/sembuf.h \ - include/linux/shm.h \ - include/uapi/linux/shm.h \ - arch/x86/include/uapi/asm/shmbuf.h \ - include/uapi/asm-generic/shmbuf.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/signal.h \ - $(wildcard include/config/old/sigaction.h) \ - include/uapi/linux/signal.h \ - arch/x86/include/asm/signal.h \ - arch/x86/include/uapi/asm/signal.h \ - include/uapi/asm-generic/signal-defs.h \ - arch/x86/include/uapi/asm/siginfo.h \ - include/asm-generic/siginfo.h \ - include/uapi/asm-generic/siginfo.h \ - include/linux/pid.h \ - include/linux/percpu.h \ - $(wildcard include/config/need/per/cpu/embed/first/chunk.h) \ - $(wildcard include/config/need/per/cpu/page/first/chunk.h) \ - include/linux/mmdebug.h \ - $(wildcard include/config/debug/vm.h) \ - include/linux/topology.h \ - $(wildcard include/config/use/percpu/numa/node/id.h) \ - include/linux/mmzone.h \ - $(wildcard include/config/force/max/zoneorder.h) \ - $(wildcard include/config/cma.h) \ - $(wildcard include/config/memory/isolation.h) \ - $(wildcard include/config/zone/dma.h) \ - $(wildcard include/config/zone/dma32.h) \ - $(wildcard include/config/zone/device.h) \ - $(wildcard include/config/memory/hotplug.h) \ - $(wildcard include/config/flat/node/mem/map.h) \ - $(wildcard include/config/page/extension.h) \ - $(wildcard include/config/no/bootmem.h) \ - $(wildcard include/config/deferred/struct/page/init.h) \ - $(wildcard include/config/have/memory/present.h) \ - $(wildcard include/config/need/node/memmap/size.h) \ - $(wildcard include/config/have/memblock/node/map.h) \ - $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ - $(wildcard include/config/sparsemem/extreme.h) \ - $(wildcard include/config/have/arch/pfn/valid.h) \ - $(wildcard include/config/holes/in/zone.h) \ - $(wildcard include/config/arch/has/holes/memorymodel.h) \ - include/linux/pageblock-flags.h \ - $(wildcard include/config/hugetlb/page/size/variable.h) \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/have/arch/nodedata/extension.h) \ - $(wildcard include/config/have/bootmem/info/node.h) \ - arch/x86/include/asm/mmzone.h \ - arch/x86/include/asm/mmzone_64.h \ - include/linux/proportions.h \ - include/linux/percpu_counter.h \ - include/linux/gfp.h \ - include/linux/seccomp.h \ - $(wildcard include/config/seccomp.h) \ - $(wildcard include/config/have/arch/seccomp/filter.h) \ - $(wildcard include/config/seccomp/filter.h) \ - $(wildcard include/config/checkpoint/restore.h) \ - include/uapi/linux/seccomp.h \ - arch/x86/include/asm/seccomp.h \ - arch/x86/include/asm/unistd.h \ - $(wildcard include/config/x86/x32/abi.h) \ - arch/x86/include/uapi/asm/unistd.h \ - arch/x86/include/generated/uapi/asm/unistd_64.h \ - arch/x86/include/generated/asm/unistd_64_x32.h \ - arch/x86/include/asm/ia32_unistd.h \ - arch/x86/include/generated/asm/unistd_32_ia32.h \ - include/asm-generic/seccomp.h \ - include/uapi/linux/unistd.h \ - include/linux/rculist.h \ - include/linux/rtmutex.h \ - $(wildcard include/config/debug/rt/mutexes.h) \ - include/linux/resource.h \ - include/uapi/linux/resource.h \ - arch/x86/include/uapi/asm/resource.h \ - include/asm-generic/resource.h \ - include/uapi/asm-generic/resource.h \ - include/linux/hrtimer.h \ - $(wildcard include/config/high/res/timers.h) \ - $(wildcard include/config/time/low/res.h) \ - $(wildcard include/config/timerfd.h) \ - include/linux/timerqueue.h \ - include/linux/task_io_accounting.h \ - $(wildcard include/config/task/io/accounting.h) \ - include/linux/latencytop.h \ - include/linux/cred.h \ - $(wildcard include/config/debug/credentials.h) \ - $(wildcard include/config/security.h) \ - include/linux/key.h \ - include/linux/assoc_array.h \ - $(wildcard include/config/associative/array.h) \ - include/linux/selinux.h \ - $(wildcard include/config/security/selinux.h) \ - include/uapi/linux/magic.h \ - include/linux/cgroup-defs.h \ - include/uapi/linux/limits.h \ - include/linux/idr.h \ - include/linux/percpu-refcount.h \ - include/linux/percpu-rwsem.h \ - include/linux/rcu_sync.h \ - include/linux/cgroup_subsys.h \ - $(wildcard include/config/cgroup/cpuacct.h) \ - $(wildcard include/config/blk/cgroup.h) \ - $(wildcard include/config/cgroup/device.h) \ - $(wildcard include/config/cgroup/freezer.h) \ - $(wildcard include/config/cgroup/net/classid.h) \ - $(wildcard include/config/cgroup/perf.h) \ - $(wildcard include/config/cgroup/net/prio.h) \ - $(wildcard include/config/cgroup/hugetlb.h) \ - $(wildcard include/config/cgroup/pids.h) \ - $(wildcard include/config/cgroup/debug.h) \ - arch/x86/include/asm/uaccess.h \ - $(wildcard include/config/x86/intel/usercopy.h) \ - $(wildcard include/config/debug/strict/user/copy/checks.h) \ - arch/x86/include/asm/smap.h \ - $(wildcard include/config/x86/smap.h) \ - arch/x86/include/asm/uaccess_64.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_mod.h \ - include/linux/module.h \ - $(wildcard include/config/module/sig.h) \ - $(wildcard include/config/modules/tree/lookup.h) \ - $(wildcard include/config/kallsyms.h) \ - $(wildcard include/config/tracepoints.h) \ - $(wildcard include/config/event/tracing.h) \ - $(wildcard include/config/livepatch.h) \ - $(wildcard include/config/module/unload.h) \ - $(wildcard include/config/constructors.h) \ - $(wildcard include/config/debug/set/module/ronx.h) \ - include/linux/stat.h \ - arch/x86/include/uapi/asm/stat.h \ - include/uapi/linux/stat.h \ - include/linux/kmod.h \ - include/linux/elf.h \ - arch/x86/include/asm/elf.h \ - arch/x86/include/asm/user.h \ - arch/x86/include/asm/user_64.h \ - arch/x86/include/asm/vdso.h \ - $(wildcard include/config/x86/x32.h) \ - include/uapi/linux/elf.h \ - include/uapi/linux/elf-em.h \ - include/linux/kobject.h \ - $(wildcard include/config/uevent/helper.h) \ - $(wildcard include/config/debug/kobject/release.h) \ - include/linux/sysfs.h \ - include/linux/kernfs.h \ - $(wildcard include/config/kernfs.h) \ - include/linux/kobject_ns.h \ - include/linux/kref.h \ - include/linux/moduleparam.h \ - $(wildcard include/config/alpha.h) \ - $(wildcard include/config/ia64.h) \ - $(wildcard include/config/ppc64.h) \ - include/linux/rbtree_latch.h \ - arch/x86/include/asm/module.h \ - $(wildcard include/config/m486.h) \ - $(wildcard include/config/m586.h) \ - $(wildcard include/config/m586tsc.h) \ - $(wildcard include/config/m586mmx.h) \ - $(wildcard include/config/mcore2.h) \ - $(wildcard include/config/m686.h) \ - $(wildcard include/config/mpentiumii.h) \ - $(wildcard include/config/mpentiumiii.h) \ - $(wildcard include/config/mpentiumm.h) \ - $(wildcard include/config/mpentium4.h) \ - $(wildcard include/config/mk6.h) \ - $(wildcard include/config/mk8.h) \ - $(wildcard include/config/melan.h) \ - $(wildcard include/config/mcrusoe.h) \ - $(wildcard include/config/mefficeon.h) \ - $(wildcard include/config/mwinchipc6.h) \ - $(wildcard include/config/mwinchip3d.h) \ - $(wildcard include/config/mcyrixiii.h) \ - $(wildcard include/config/mviac3/2.h) \ - $(wildcard include/config/mviac7.h) \ - $(wildcard include/config/mgeodegx1.h) \ - $(wildcard include/config/mgeode/lx.h) \ - include/asm-generic/module.h \ - $(wildcard include/config/have/mod/arch/specific.h) \ - $(wildcard include/config/modules/use/elf/rel.h) \ - $(wildcard include/config/modules/use/elf/rela.h) \ - include/linux/cdev.h \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/device.h \ - $(wildcard include/config/debug/devres.h) \ - $(wildcard include/config/generic/msi/irq/domain.h) \ - $(wildcard include/config/pinctrl.h) \ - $(wildcard include/config/generic/msi/irq.h) \ - $(wildcard include/config/dma/cma.h) \ - $(wildcard include/config/of.h) \ - $(wildcard include/config/devtmpfs.h) \ - $(wildcard include/config/sysfs/deprecated.h) \ - include/linux/klist.h \ - include/linux/pinctrl/devinfo.h \ - include/linux/pinctrl/consumer.h \ - include/linux/seq_file.h \ - include/linux/fs.h \ - $(wildcard include/config/fs/posix/acl.h) \ - $(wildcard include/config/cgroup/writeback.h) \ - $(wildcard include/config/ima.h) \ - $(wildcard include/config/fsnotify.h) \ - $(wildcard include/config/file/locking.h) \ - $(wildcard include/config/quota.h) \ - $(wildcard include/config/blk/dev/loop.h) \ - $(wildcard include/config/fs/dax.h) \ - $(wildcard include/config/migration.h) \ - include/linux/dcache.h \ - include/linux/rculist_bl.h \ - include/linux/list_bl.h \ - include/linux/bit_spinlock.h \ - include/linux/lockref.h \ - $(wildcard include/config/arch/use/cmpxchg/lockref.h) \ - include/linux/path.h \ - include/linux/list_lru.h \ - include/linux/shrinker.h \ - include/linux/radix-tree.h \ - include/linux/semaphore.h \ - include/uapi/linux/fiemap.h \ - include/linux/migrate_mode.h \ - include/linux/blk_types.h \ - $(wildcard include/config/blk/dev/integrity.h) \ - include/uapi/linux/fs.h \ - include/linux/quota.h \ - $(wildcard include/config/quota/netlink/interface.h) \ - include/uapi/linux/dqblk_xfs.h \ - include/linux/dqblk_v1.h \ - include/linux/dqblk_v2.h \ - include/linux/dqblk_qtree.h \ - include/linux/projid.h \ - include/uapi/linux/quota.h \ - include/linux/nfs_fs_i.h \ - include/linux/fcntl.h \ - include/uapi/linux/fcntl.h \ - arch/x86/include/uapi/asm/fcntl.h \ - include/uapi/asm-generic/fcntl.h \ - include/linux/pinctrl/pinctrl-state.h \ - include/linux/ratelimit.h \ - arch/x86/include/asm/device.h \ - $(wildcard include/config/x86/dev/dma/ops.h) \ - $(wildcard include/config/intel/iommu.h) \ - $(wildcard include/config/amd/iommu.h) \ - include/linux/pm_wakeup.h \ - include/linux/dma-mapping.h \ - $(wildcard include/config/has/dma.h) \ - $(wildcard include/config/arch/has/dma/set/coherent/mask.h) \ - $(wildcard include/config/have/dma/attrs.h) \ - $(wildcard include/config/need/dma/map/state.h) \ - include/linux/sizes.h \ - include/linux/dma-attrs.h \ - include/linux/dma-direction.h \ - include/linux/scatterlist.h \ - $(wildcard include/config/debug/sg.h) \ - $(wildcard include/config/need/sg/dma/length.h) \ - include/linux/mm.h \ - $(wildcard include/config/ppc.h) \ - $(wildcard include/config/parisc.h) \ - $(wildcard include/config/metag.h) \ - $(wildcard include/config/shmem.h) \ - $(wildcard include/config/debug/vm/rb.h) \ - $(wildcard include/config/debug/pagealloc.h) \ - $(wildcard include/config/hugetlbfs.h) \ - include/linux/debug_locks.h \ - $(wildcard include/config/debug/locking/api/selftests.h) \ - include/linux/page_ext.h \ - $(wildcard include/config/idle/page/tracking.h) \ - $(wildcard include/config/page/owner.h) \ - include/linux/stacktrace.h \ - $(wildcard include/config/stacktrace.h) \ - $(wildcard include/config/user/stacktrace/support.h) \ - arch/x86/include/asm/pgtable.h \ - $(wildcard include/config/debug/wx.h) \ - $(wildcard include/config/have/arch/soft/dirty.h) \ - arch/x86/include/asm/pgtable_64.h \ - arch/x86/include/asm/pgtable-invert.h \ - include/asm-generic/pgtable.h \ - $(wildcard include/config/have/arch/huge/vmap.h) \ - include/linux/page-flags.h \ - $(wildcard include/config/arch/uses/pg/uncached.h) \ - $(wildcard include/config/memory/failure.h) \ - $(wildcard include/config/swap.h) \ - $(wildcard include/config/ksm.h) \ - include/linux/huge_mm.h \ - include/linux/vmstat.h \ - $(wildcard include/config/vm/event/counters.h) \ - $(wildcard include/config/debug/tlbflush.h) \ - $(wildcard include/config/debug/vm/vmacache.h) \ - include/linux/vm_event_item.h \ - $(wildcard include/config/memory/balloon.h) \ - $(wildcard include/config/balloon/compaction.h) \ - arch/x86/include/asm/dma-mapping.h \ - $(wildcard include/config/isa.h) \ - $(wildcard include/config/x86/dma/remap.h) \ - include/linux/kmemcheck.h \ - include/linux/dma-debug.h \ - $(wildcard include/config/dma/api/debug.h) \ - arch/x86/include/asm/swiotlb.h \ - $(wildcard include/config/swiotlb.h) \ - include/linux/swiotlb.h \ - include/linux/dma-contiguous.h \ - include/asm-generic/dma-mapping-common.h \ - include/asm-generic/dma-coherent.h \ - $(wildcard include/config/have/generic/dma/coherent.h) \ - include/linux/delay.h \ - arch/x86/include/asm/delay.h \ - include/asm-generic/delay.h \ - include/linux/fb.h \ - $(wildcard include/config/fb/deferred/io.h) \ - $(wildcard include/config/fb/tileblitting.h) \ - $(wildcard include/config/fb/backlight.h) \ - $(wildcard include/config/fb/foreign/endian.h) \ - $(wildcard include/config/fb/both/endian.h) \ - $(wildcard include/config/fb/big/endian.h) \ - $(wildcard include/config/fb/little/endian.h) \ - include/linux/kgdb.h \ - $(wildcard include/config/have/arch/kgdb.h) \ - $(wildcard include/config/kgdb.h) \ - $(wildcard include/config/serial/kgdb/nmi.h) \ - arch/x86/include/asm/kgdb.h \ - include/uapi/linux/fb.h \ - include/linux/i2c.h \ - $(wildcard include/config/i2c.h) \ - $(wildcard include/config/i2c/slave.h) \ - $(wildcard include/config/i2c/boardinfo.h) \ - $(wildcard include/config/i2c/mux.h) \ - include/linux/mod_devicetable.h \ - include/linux/uuid.h \ - include/uapi/linux/uuid.h \ - include/linux/of.h \ - $(wildcard include/config/sparc.h) \ - $(wildcard include/config/of/dynamic.h) \ - $(wildcard include/config/attach/node.h) \ - $(wildcard include/config/detach/node.h) \ - $(wildcard include/config/add/property.h) \ - $(wildcard include/config/remove/property.h) \ - $(wildcard include/config/update/property.h) \ - $(wildcard include/config/of/numa.h) \ - $(wildcard include/config/no/change.h) \ - $(wildcard include/config/change/add.h) \ - $(wildcard include/config/change/remove.h) \ - $(wildcard include/config/of/resolve.h) \ - $(wildcard include/config/of/overlay.h) \ - include/linux/property.h \ - include/linux/fwnode.h \ - include/uapi/linux/i2c.h \ - include/linux/backlight.h \ - include/linux/slab.h \ - $(wildcard include/config/debug/slab.h) \ - $(wildcard include/config/failslab.h) \ - $(wildcard include/config/slab.h) \ - $(wildcard include/config/slub.h) \ - $(wildcard include/config/slob.h) \ - include/linux/kmemleak.h \ - $(wildcard include/config/debug/kmemleak.h) \ - include/linux/kasan.h \ - include/linux/interrupt.h \ - $(wildcard include/config/irq/forced/threading.h) \ - $(wildcard include/config/generic/irq/probe.h) \ - include/linux/irqreturn.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/hardirq.h \ - include/linux/ftrace_irq.h \ - $(wildcard include/config/ftrace/nmi/enter.h) \ - include/linux/vtime.h \ - include/linux/context_tracking_state.h \ - $(wildcard include/config/context/tracking.h) \ - arch/x86/include/asm/irq.h \ - include/linux/io.h \ - include/linux/poll.h \ - include/uapi/linux/poll.h \ - arch/x86/include/uapi/asm/poll.h \ - include/uapi/asm-generic/poll.h \ - include/linux/pci.h \ - $(wildcard include/config/pci/iov.h) \ - $(wildcard include/config/pcieaspm.h) \ - $(wildcard include/config/pci/ats.h) \ - $(wildcard include/config/pci/domains/generic.h) \ - $(wildcard include/config/pci/bus/addr/t/64bit.h) \ - $(wildcard include/config/pcieportbus.h) \ - $(wildcard include/config/pcieaer.h) \ - $(wildcard include/config/pcie/ecrc.h) \ - $(wildcard include/config/ht/irq.h) \ - $(wildcard include/config/pci/domains.h) \ - $(wildcard include/config/pci/quirks.h) \ - $(wildcard include/config/hibernate/callbacks.h) \ - $(wildcard include/config/acpi/mcfg.h) \ - $(wildcard include/config/hotplug/pci.h) \ - $(wildcard include/config/eeh.h) \ - include/linux/resource_ext.h \ - include/uapi/linux/pci.h \ - include/uapi/linux/pci_regs.h \ - include/linux/pci_ids.h \ - include/linux/pci-dma.h \ - include/linux/dmapool.h \ - arch/x86/include/asm/pci.h \ - $(wildcard include/config/pci/msi/irq/domain.h) \ - arch/x86/include/asm/pci_64.h \ - $(wildcard include/config/calgary/iommu.h) \ - include/asm-generic/pci-dma-compat.h \ - include/asm-generic/pci.h \ - include/linux/vmalloc.h \ - include/linux/aio.h \ - include/uapi/linux/aio_abi.h \ - include/linux/splice.h \ - include/linux/pipe_fs_i.h \ - include/generated/uapi/linux/version.h \ - include/linux/uio.h \ - include/uapi/linux/uio.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.h \ - $(wildcard include/config/block/id.h) \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_ctrl.h \ - -/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_ctrl.o: $(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_ctrl.o) - -$(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_ctrl.o): diff --git a/host_software/driver/xdma/.cdev_events.o.cmd b/host_software/driver/xdma/.cdev_events.o.cmd deleted file mode 100644 index c6f2acc..0000000 --- a/host_software/driver/xdma/.cdev_events.o.cmd +++ /dev/null @@ -1,994 +0,0 @@ -cmd_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_events.o := gcc -Wp,-MD,/home/wangxuan/pcie_xdma_host_software/driver/xdma/.cdev_events.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/5/include -I./arch/x86/include -Iarch/x86/include/generated/uapi -Iarch/x86/include/generated -Iinclude -I./arch/x86/include/uapi -Iarch/x86/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -Iubuntu/include -D__KERNEL__ -fno-pie -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -fno-pie -no-pie -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_X86_X32_ABI -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -DCONFIG_AS_SHA1_NI=1 -DCONFIG_AS_SHA256_NI=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -DRETPOLINE -fno-delete-null-pointer-checks -O2 --param=allow-store-data-races=0 -DCC_HAVE_ASM_GOTO -Wframe-larger-than=1024 -fstack-protector-strong -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wno-pointer-sign -Wno-array-bounds -Wno-maybe-uninitialized -fno-strict-overflow -fno-merge-all-constants -fmerge-constants -fno-stack-check -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -DMODULE -D"KBUILD_STR(s)=$(pound)s" -D"KBUILD_BASENAME=KBUILD_STR(cdev_events)" -D"KBUILD_MODNAME=KBUILD_STR(xdma)" -c -o /home/wangxuan/pcie_xdma_host_software/driver/xdma/.tmp_cdev_events.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_events.c - -source_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_events.o := /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_events.c - -deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_events.o := \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_cdev.h \ - include/linux/kernel.h \ - $(wildcard include/config/lbdaf.h) \ - $(wildcard include/config/preempt/voluntary.h) \ - $(wildcard include/config/debug/atomic/sleep.h) \ - $(wildcard include/config/mmu.h) \ - $(wildcard include/config/prove/locking.h) \ - $(wildcard include/config/panic/timeout.h) \ - $(wildcard include/config/tracing.h) \ - $(wildcard include/config/ftrace/mcount/record.h) \ - /usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h \ - include/linux/linkage.h \ - include/linux/compiler.h \ - $(wildcard include/config/sparse/rcu/pointer.h) \ - $(wildcard include/config/trace/branch/profiling.h) \ - $(wildcard include/config/profile/all/branches.h) \ - $(wildcard include/config/kasan.h) \ - $(wildcard include/config/enable/must/check.h) \ - $(wildcard include/config/enable/warn/deprecated.h) \ - $(wildcard include/config/kprobes.h) \ - include/linux/compiler-gcc.h \ - $(wildcard include/config/arch/supports/optimized/inlining.h) \ - $(wildcard include/config/optimize/inlining.h) \ - $(wildcard include/config/arm64.h) \ - $(wildcard include/config/gcov/kernel.h) \ - $(wildcard include/config/arch/use/builtin/bswap.h) \ - include/uapi/linux/types.h \ - arch/x86/include/uapi/asm/types.h \ - include/uapi/asm-generic/types.h \ - include/asm-generic/int-ll64.h \ - include/uapi/asm-generic/int-ll64.h \ - arch/x86/include/uapi/asm/bitsperlong.h \ - include/asm-generic/bitsperlong.h \ - $(wildcard include/config/64bit.h) \ - include/uapi/asm-generic/bitsperlong.h \ - include/uapi/linux/posix_types.h \ - include/linux/stddef.h \ - include/uapi/linux/stddef.h \ - arch/x86/include/asm/posix_types.h \ - $(wildcard include/config/x86/32.h) \ - arch/x86/include/uapi/asm/posix_types_64.h \ - include/uapi/asm-generic/posix_types.h \ - include/linux/kasan-checks.h \ - include/linux/stringify.h \ - include/linux/export.h \ - $(wildcard include/config/have/underscore/symbol/prefix.h) \ - $(wildcard include/config/modules.h) \ - $(wildcard include/config/modversions.h) \ - $(wildcard include/config/unused/symbols.h) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/x86/64.h) \ - $(wildcard include/config/x86/alignment/16.h) \ - include/linux/types.h \ - $(wildcard include/config/have/uid16.h) \ - $(wildcard include/config/uid16.h) \ - $(wildcard include/config/arch/dma/addr/t/64bit.h) \ - $(wildcard include/config/phys/addr/t/64bit.h) \ - include/linux/bitops.h \ - include/linux/bits.h \ - arch/x86/include/asm/bitops.h \ - $(wildcard include/config/x86/cmov.h) \ - arch/x86/include/asm/alternative.h \ - $(wildcard include/config/smp.h) \ - arch/x86/include/asm/asm.h \ - arch/x86/include/asm/rmwcc.h \ - arch/x86/include/asm/barrier.h \ - $(wildcard include/config/x86/ppro/fence.h) \ - arch/x86/include/asm/nops.h \ - $(wildcard include/config/mk7.h) \ - $(wildcard include/config/x86/p6/nop.h) \ - include/asm-generic/barrier.h \ - include/asm-generic/bitops/find.h \ - $(wildcard include/config/generic/find/first/bit.h) \ - include/asm-generic/bitops/sched.h \ - arch/x86/include/asm/arch_hweight.h \ - arch/x86/include/asm/cpufeatures.h \ - $(wildcard include/config/page/table/isolation.h) \ - arch/x86/include/asm/required-features.h \ - $(wildcard include/config/x86/minimum/cpu/family.h) \ - $(wildcard include/config/math/emulation.h) \ - $(wildcard include/config/x86/pae.h) \ - $(wildcard include/config/x86/cmpxchg64.h) \ - $(wildcard include/config/x86/use/3dnow.h) \ - $(wildcard include/config/matom.h) \ - $(wildcard include/config/paravirt.h) \ - arch/x86/include/asm/disabled-features.h \ - $(wildcard include/config/x86/intel/mpx.h) \ - $(wildcard include/config/x86/intel/memory/protection/keys.h) \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/le.h \ - arch/x86/include/uapi/asm/byteorder.h \ - include/linux/byteorder/little_endian.h \ - include/uapi/linux/byteorder/little_endian.h \ - include/linux/swab.h \ - include/uapi/linux/swab.h \ - arch/x86/include/uapi/asm/swab.h \ - include/linux/byteorder/generic.h \ - include/asm-generic/bitops/ext2-atomic-setbit.h \ - include/linux/log2.h \ - $(wildcard include/config/arch/has/ilog2/u32.h) \ - $(wildcard include/config/arch/has/ilog2/u64.h) \ - include/linux/typecheck.h \ - include/linux/printk.h \ - $(wildcard include/config/message/loglevel/default.h) \ - $(wildcard include/config/early/printk.h) \ - $(wildcard include/config/printk.h) \ - $(wildcard include/config/dynamic/debug.h) \ - include/linux/init.h \ - $(wildcard include/config/broken/rodata.h) \ - $(wildcard include/config/lto.h) \ - include/linux/kern_levels.h \ - include/linux/cache.h \ - $(wildcard include/config/arch/has/cache/line/size.h) \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.h \ - arch/x86/include/asm/cache.h \ - $(wildcard include/config/x86/l1/cache/shift.h) \ - $(wildcard include/config/x86/internode/cache/shift.h) \ - $(wildcard include/config/x86/vsmp.h) \ - include/linux/dynamic_debug.h \ - include/linux/uaccess.h \ - $(wildcard include/config/preempt/count.h) \ - include/linux/sched.h \ - $(wildcard include/config/no/hz/common.h) \ - $(wildcard include/config/sched/debug.h) \ - $(wildcard include/config/prove/rcu.h) \ - $(wildcard include/config/lockup/detector.h) \ - $(wildcard include/config/detect/hung/task.h) \ - $(wildcard include/config/core/dump/default/elf/headers.h) \ - $(wildcard include/config/virt/cpu/accounting/native.h) \ - $(wildcard include/config/sched/autogroup.h) \ - $(wildcard include/config/bsd/process/acct.h) \ - $(wildcard include/config/taskstats.h) \ - $(wildcard include/config/audit.h) \ - $(wildcard include/config/inotify/user.h) \ - $(wildcard include/config/fanotify.h) \ - $(wildcard include/config/epoll.h) \ - $(wildcard include/config/posix/mqueue.h) \ - $(wildcard include/config/keys.h) \ - $(wildcard include/config/perf/events.h) \ - $(wildcard include/config/bpf/syscall.h) \ - $(wildcard include/config/sched/info.h) \ - $(wildcard include/config/task/delay/acct.h) \ - $(wildcard include/config/schedstats.h) \ - $(wildcard include/config/sched/smt.h) \ - $(wildcard include/config/sched/mc.h) \ - $(wildcard include/config/numa.h) \ - $(wildcard include/config/fair/group/sched.h) \ - $(wildcard include/config/rt/group/sched.h) \ - $(wildcard include/config/thread/info/in/task.h) \ - $(wildcard include/config/cgroup/sched.h) \ - $(wildcard include/config/preempt/notifiers.h) \ - $(wildcard include/config/blk/dev/io/trace.h) \ - $(wildcard include/config/preempt/rcu.h) \ - $(wildcard include/config/tasks/rcu.h) \ - $(wildcard include/config/memcg.h) \ - $(wildcard include/config/memcg/kmem.h) \ - $(wildcard include/config/compat/brk.h) \ - $(wildcard include/config/cgroups.h) \ - $(wildcard include/config/cc/stackprotector.h) \ - $(wildcard include/config/virt/cpu/accounting/gen.h) \ - $(wildcard include/config/sysvipc.h) \ - $(wildcard include/config/auditsyscall.h) \ - $(wildcard include/config/rt/mutexes.h) \ - $(wildcard include/config/debug/mutexes.h) \ - $(wildcard include/config/trace/irqflags.h) \ - $(wildcard include/config/lockdep.h) \ - $(wildcard include/config/block.h) \ - $(wildcard include/config/task/xacct.h) \ - $(wildcard include/config/cpusets.h) \ - $(wildcard include/config/futex.h) \ - $(wildcard include/config/compat.h) \ - $(wildcard include/config/debug/preempt.h) \ - $(wildcard include/config/numa/balancing.h) \ - $(wildcard include/config/arch/want/batched/unmap/tlb/flush.h) \ - $(wildcard include/config/fault/injection.h) \ - $(wildcard include/config/latencytop.h) \ - $(wildcard include/config/function/graph/tracer.h) \ - $(wildcard include/config/uprobes.h) \ - $(wildcard include/config/bcache.h) \ - $(wildcard include/config/arch/wants/dynamic/task/struct.h) \ - $(wildcard include/config/have/unstable/sched/clock.h) \ - $(wildcard include/config/irq/time/accounting.h) \ - $(wildcard include/config/hotplug/cpu.h) \ - $(wildcard include/config/no/hz/full.h) \ - $(wildcard include/config/proc/fs.h) \ - $(wildcard include/config/stack/growsup.h) \ - $(wildcard include/config/have/copy/thread/tls.h) \ - $(wildcard include/config/debug/stack/usage.h) \ - $(wildcard include/config/preempt.h) \ - include/uapi/linux/sched.h \ - include/linux/sched/prio.h \ - arch/x86/include/uapi/asm/param.h \ - include/asm-generic/param.h \ - $(wildcard include/config/hz.h) \ - include/uapi/asm-generic/param.h \ - include/linux/capability.h \ - $(wildcard include/config/multiuser.h) \ - include/uapi/linux/capability.h \ - include/linux/threads.h \ - $(wildcard include/config/nr/cpus.h) \ - $(wildcard include/config/base/small.h) \ - include/linux/timex.h \ - include/uapi/linux/timex.h \ - include/linux/time.h \ - $(wildcard include/config/arch/uses/gettimeoffset.h) \ - include/linux/seqlock.h \ - $(wildcard include/config/debug/lock/alloc.h) \ - include/linux/spinlock.h \ - $(wildcard include/config/debug/spinlock.h) \ - $(wildcard include/config/generic/lockbreak.h) \ - include/linux/preempt.h \ - $(wildcard include/config/preempt/tracer.h) \ - include/linux/list.h \ - $(wildcard include/config/debug/list.h) \ - include/linux/poison.h \ - $(wildcard include/config/illegal/pointer/value.h) \ - include/uapi/linux/const.h \ - arch/x86/include/asm/preempt.h \ - arch/x86/include/asm/percpu.h \ - $(wildcard include/config/x86/64/smp.h) \ - include/asm-generic/percpu.h \ - $(wildcard include/config/have/setup/per/cpu/area.h) \ - include/linux/percpu-defs.h \ - $(wildcard include/config/debug/force/weak/per/cpu.h) \ - include/linux/thread_info.h \ - include/linux/bug.h \ - $(wildcard include/config/generic/bug.h) \ - arch/x86/include/asm/bug.h \ - $(wildcard include/config/debug/bugverbose.h) \ - include/asm-generic/bug.h \ - $(wildcard include/config/bug.h) \ - $(wildcard include/config/generic/bug/relative/pointers.h) \ - arch/x86/include/asm/thread_info.h \ - $(wildcard include/config/vm86.h) \ - $(wildcard include/config/ia32/emulation.h) \ - arch/x86/include/asm/page.h \ - arch/x86/include/asm/page_types.h \ - $(wildcard include/config/physical/start.h) \ - $(wildcard include/config/physical/align.h) \ - arch/x86/include/asm/page_64_types.h \ - $(wildcard include/config/kasan/extra.h) \ - $(wildcard include/config/randomize/base.h) \ - $(wildcard include/config/randomize/base/max/offset.h) \ - arch/x86/include/asm/page_64.h \ - $(wildcard include/config/debug/virtual.h) \ - $(wildcard include/config/flatmem.h) \ - $(wildcard include/config/x86/vsyscall/emulation.h) \ - include/linux/range.h \ - include/asm-generic/memory_model.h \ - $(wildcard include/config/discontigmem.h) \ - $(wildcard include/config/sparsemem/vmemmap.h) \ - $(wildcard include/config/sparsemem.h) \ - include/linux/pfn.h \ - include/asm-generic/getorder.h \ - arch/x86/include/asm/cpufeature.h \ - $(wildcard include/config/x86/feature/names.h) \ - $(wildcard include/config/x86/fast/feature/tests.h) \ - arch/x86/include/asm/processor.h \ - $(wildcard include/config/x86/debugctlmsr.h) \ - $(wildcard include/config/xen.h) \ - arch/x86/include/asm/processor-flags.h \ - arch/x86/include/uapi/asm/processor-flags.h \ - arch/x86/include/asm/math_emu.h \ - arch/x86/include/asm/ptrace.h \ - arch/x86/include/asm/segment.h \ - $(wildcard include/config/x86/32/lazy/gs.h) \ - arch/x86/include/uapi/asm/ptrace.h \ - arch/x86/include/uapi/asm/ptrace-abi.h \ - arch/x86/include/asm/paravirt_types.h \ - $(wildcard include/config/x86/local/apic.h) \ - $(wildcard include/config/pgtable/levels.h) \ - $(wildcard include/config/queued/spinlocks.h) \ - $(wildcard include/config/paravirt/debug.h) \ - arch/x86/include/asm/desc_defs.h \ - arch/x86/include/asm/kmap_types.h \ - $(wildcard include/config/debug/highmem.h) \ - include/asm-generic/kmap_types.h \ - arch/x86/include/asm/pgtable_types.h \ - $(wildcard include/config/kmemcheck.h) \ - $(wildcard include/config/mem/soft/dirty.h) \ - arch/x86/include/asm/pgtable_64_types.h \ - arch/x86/include/asm/sparsemem.h \ - arch/x86/include/asm/nospec-branch.h \ - $(wildcard include/config/retpoline.h) \ - include/linux/static_key.h \ - include/linux/jump_label.h \ - $(wildcard include/config/jump/label.h) \ - arch/x86/include/asm/jump_label.h \ - include/linux/atomic.h \ - $(wildcard include/config/generic/atomic64.h) \ - arch/x86/include/asm/atomic.h \ - arch/x86/include/asm/cmpxchg.h \ - arch/x86/include/asm/cmpxchg_64.h \ - arch/x86/include/asm/atomic64_64.h \ - include/asm-generic/atomic-long.h \ - arch/x86/include/asm/alternative-asm.h \ - arch/x86/include/asm/msr-index.h \ - $(wildcard include/config/tdp/nominal.h) \ - $(wildcard include/config/tdp/level/1.h) \ - $(wildcard include/config/tdp/level/2.h) \ - $(wildcard include/config/tdp/control.h) \ - $(wildcard include/config/tdp/level1.h) \ - $(wildcard include/config/tdp/level2.h) \ - arch/x86/include/asm/spinlock_types.h \ - $(wildcard include/config/paravirt/spinlocks.h) \ - include/asm-generic/qrwlock_types.h \ - include/asm-generic/ptrace.h \ - arch/x86/include/uapi/asm/sigcontext.h \ - arch/x86/include/asm/current.h \ - arch/x86/include/asm/msr.h \ - arch/x86/include/asm/msr-index.h \ - arch/x86/include/uapi/asm/errno.h \ - include/uapi/asm-generic/errno.h \ - include/uapi/asm-generic/errno-base.h \ - arch/x86/include/asm/cpumask.h \ - include/linux/cpumask.h \ - $(wildcard include/config/cpumask/offstack.h) \ - $(wildcard include/config/debug/per/cpu/maps.h) \ - include/linux/bitmap.h \ - include/linux/string.h \ - $(wildcard include/config/binary/printf.h) \ - include/uapi/linux/string.h \ - arch/x86/include/asm/string.h \ - arch/x86/include/asm/string_64.h \ - arch/x86/include/uapi/asm/msr.h \ - include/uapi/linux/ioctl.h \ - arch/x86/include/uapi/asm/ioctl.h \ - include/asm-generic/ioctl.h \ - include/uapi/asm-generic/ioctl.h \ - arch/x86/include/asm/paravirt.h \ - arch/x86/include/asm/special_insns.h \ - arch/x86/include/asm/fpu/types.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - include/linux/math64.h \ - $(wildcard include/config/arch/supports/int128.h) \ - arch/x86/include/asm/div64.h \ - include/asm-generic/div64.h \ - include/linux/err.h \ - include/linux/irqflags.h \ - $(wildcard include/config/irqsoff/tracer.h) \ - $(wildcard include/config/trace/irqflags/support.h) \ - arch/x86/include/asm/irqflags.h \ - include/linux/bottom_half.h \ - include/linux/spinlock_types.h \ - include/linux/lockdep.h \ - $(wildcard include/config/lock/stat.h) \ - include/linux/rwlock_types.h \ - arch/x86/include/asm/spinlock.h \ - arch/x86/include/asm/qrwlock.h \ - include/asm-generic/qrwlock.h \ - include/linux/rwlock.h \ - include/linux/spinlock_api_smp.h \ - $(wildcard include/config/inline/spin/lock.h) \ - $(wildcard include/config/inline/spin/lock/bh.h) \ - $(wildcard include/config/inline/spin/lock/irq.h) \ - $(wildcard include/config/inline/spin/lock/irqsave.h) \ - $(wildcard include/config/inline/spin/trylock.h) \ - $(wildcard include/config/inline/spin/trylock/bh.h) \ - $(wildcard include/config/uninline/spin/unlock.h) \ - $(wildcard include/config/inline/spin/unlock/bh.h) \ - $(wildcard include/config/inline/spin/unlock/irq.h) \ - $(wildcard include/config/inline/spin/unlock/irqrestore.h) \ - include/linux/rwlock_api_smp.h \ - $(wildcard include/config/inline/read/lock.h) \ - $(wildcard include/config/inline/write/lock.h) \ - $(wildcard include/config/inline/read/lock/bh.h) \ - $(wildcard include/config/inline/write/lock/bh.h) \ - $(wildcard include/config/inline/read/lock/irq.h) \ - $(wildcard include/config/inline/write/lock/irq.h) \ - $(wildcard include/config/inline/read/lock/irqsave.h) \ - $(wildcard include/config/inline/write/lock/irqsave.h) \ - $(wildcard include/config/inline/read/trylock.h) \ - $(wildcard include/config/inline/write/trylock.h) \ - $(wildcard include/config/inline/read/unlock.h) \ - $(wildcard include/config/inline/write/unlock.h) \ - $(wildcard include/config/inline/read/unlock/bh.h) \ - $(wildcard include/config/inline/write/unlock/bh.h) \ - $(wildcard include/config/inline/read/unlock/irq.h) \ - $(wildcard include/config/inline/write/unlock/irq.h) \ - $(wildcard include/config/inline/read/unlock/irqrestore.h) \ - $(wildcard include/config/inline/write/unlock/irqrestore.h) \ - include/linux/time64.h \ - include/uapi/linux/time.h \ - include/uapi/linux/param.h \ - arch/x86/include/asm/timex.h \ - arch/x86/include/asm/tsc.h \ - $(wildcard include/config/x86/tsc.h) \ - include/linux/jiffies.h \ - include/generated/timeconst.h \ - include/linux/plist.h \ - $(wildcard include/config/debug/pi/list.h) \ - include/linux/rbtree.h \ - include/linux/rcupdate.h \ - $(wildcard include/config/tiny/rcu.h) \ - $(wildcard include/config/tree/rcu.h) \ - $(wildcard include/config/rcu/trace.h) \ - $(wildcard include/config/rcu/stall/common.h) \ - $(wildcard include/config/rcu/nocb/cpu.h) \ - $(wildcard include/config/debug/objects/rcu/head.h) \ - $(wildcard include/config/rcu/boost.h) \ - $(wildcard include/config/rcu/nocb/cpu/all.h) \ - $(wildcard include/config/no/hz/full/sysidle.h) \ - include/linux/completion.h \ - include/linux/wait.h \ - include/uapi/linux/wait.h \ - include/linux/debugobjects.h \ - $(wildcard include/config/debug/objects.h) \ - $(wildcard include/config/debug/objects/free.h) \ - include/linux/ktime.h \ - include/linux/timekeeping.h \ - include/linux/rcutree.h \ - include/linux/errno.h \ - include/uapi/linux/errno.h \ - include/linux/nodemask.h \ - $(wildcard include/config/highmem.h) \ - $(wildcard include/config/movable/node.h) \ - include/linux/numa.h \ - $(wildcard include/config/nodes/shift.h) \ - include/linux/mm_types.h \ - $(wildcard include/config/split/ptlock/cpus.h) \ - $(wildcard include/config/arch/enable/split/pmd/ptlock.h) \ - $(wildcard include/config/have/cmpxchg/double.h) \ - $(wildcard include/config/have/aligned/struct/page.h) \ - $(wildcard include/config/transparent/hugepage.h) \ - $(wildcard include/config/userfaultfd.h) \ - $(wildcard include/config/aio.h) \ - $(wildcard include/config/mmu/notifier.h) \ - $(wildcard include/config/compaction.h) \ - $(wildcard include/config/hugetlb/page.h) \ - include/linux/auxvec.h \ - include/uapi/linux/auxvec.h \ - arch/x86/include/uapi/asm/auxvec.h \ - include/linux/rwsem.h \ - $(wildcard include/config/rwsem/spin/on/owner.h) \ - $(wildcard include/config/rwsem/generic/spinlock.h) \ - include/linux/osq_lock.h \ - arch/x86/include/asm/rwsem.h \ - include/linux/uprobes.h \ - arch/x86/include/asm/uprobes.h \ - include/linux/notifier.h \ - include/linux/mutex.h \ - $(wildcard include/config/mutex/spin/on/owner.h) \ - include/linux/srcu.h \ - include/linux/workqueue.h \ - $(wildcard include/config/debug/objects/work.h) \ - $(wildcard include/config/freezer.h) \ - $(wildcard include/config/sysfs.h) \ - include/linux/timer.h \ - $(wildcard include/config/debug/objects/timers.h) \ - include/linux/sysctl.h \ - $(wildcard include/config/sysctl.h) \ - include/uapi/linux/sysctl.h \ - include/linux/page-flags-layout.h \ - include/generated/bounds.h \ - arch/x86/include/asm/mmu.h \ - $(wildcard include/config/modify/ldt/syscall.h) \ - include/linux/cputime.h \ - arch/x86/include/generated/asm/cputime.h \ - include/asm-generic/cputime.h \ - $(wildcard include/config/virt/cpu/accounting.h) \ - include/asm-generic/cputime_jiffies.h \ - include/linux/smp.h \ - $(wildcard include/config/up/late/init.h) \ - include/linux/llist.h \ - $(wildcard include/config/arch/have/nmi/safe/cmpxchg.h) \ - arch/x86/include/asm/smp.h \ - $(wildcard include/config/x86/io/apic.h) \ - $(wildcard include/config/x86/32/smp.h) \ - $(wildcard include/config/debug/nmi/selftest.h) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/eisa.h) \ - $(wildcard include/config/x86/mpparse.h) \ - arch/x86/include/asm/mpspec_def.h \ - arch/x86/include/asm/x86_init.h \ - arch/x86/include/uapi/asm/bootparam.h \ - include/linux/screen_info.h \ - include/uapi/linux/screen_info.h \ - include/linux/apm_bios.h \ - include/uapi/linux/apm_bios.h \ - include/linux/edd.h \ - include/uapi/linux/edd.h \ - arch/x86/include/asm/e820.h \ - $(wildcard include/config/efi.h) \ - $(wildcard include/config/hibernation.h) \ - arch/x86/include/uapi/asm/e820.h \ - $(wildcard include/config/x86/pmem/legacy.h) \ - $(wildcard include/config/intel/txt.h) \ - include/linux/ioport.h \ - $(wildcard include/config/memory/hotremove.h) \ - arch/x86/include/asm/ist.h \ - arch/x86/include/uapi/asm/ist.h \ - include/video/edid.h \ - $(wildcard include/config/x86.h) \ - include/uapi/video/edid.h \ - arch/x86/include/asm/apicdef.h \ - arch/x86/include/asm/apic.h \ - $(wildcard include/config/x86/x2apic.h) \ - include/linux/pm.h \ - $(wildcard include/config/vt/console/sleep.h) \ - $(wildcard include/config/pm.h) \ - $(wildcard include/config/pm/sleep.h) \ - $(wildcard include/config/pm/clk.h) \ - $(wildcard include/config/pm/generic/domains.h) \ - arch/x86/include/asm/fixmap.h \ - $(wildcard include/config/paravirt/clock.h) \ - $(wildcard include/config/provide/ohci1394/dma/init.h) \ - $(wildcard include/config/pci/mmconfig.h) \ - $(wildcard include/config/x86/intel/mid.h) \ - arch/x86/include/asm/acpi.h \ - $(wildcard include/config/acpi/apei.h) \ - $(wildcard include/config/acpi.h) \ - $(wildcard include/config/acpi/numa.h) \ - include/acpi/pdc_intel.h \ - arch/x86/include/asm/numa.h \ - $(wildcard include/config/numa/emu.h) \ - arch/x86/include/asm/topology.h \ - include/asm-generic/topology.h \ - $(wildcard include/config/need/multiple/nodes.h) \ - $(wildcard include/config/have/memoryless/nodes.h) \ - arch/x86/include/asm/realmode.h \ - $(wildcard include/config/acpi/sleep.h) \ - arch/x86/include/asm/io.h \ - $(wildcard include/config/mtrr.h) \ - $(wildcard include/config/x86/pat.h) \ - arch/x86/include/generated/asm/early_ioremap.h \ - include/asm-generic/early_ioremap.h \ - $(wildcard include/config/generic/early/ioremap.h) \ - include/asm-generic/iomap.h \ - $(wildcard include/config/has/ioport/map.h) \ - $(wildcard include/config/pci.h) \ - $(wildcard include/config/generic/iomap.h) \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/no/generic/pci/ioport/map.h) \ - $(wildcard include/config/generic/pci/iomap.h) \ - include/xen/xen.h \ - $(wildcard include/config/xen/dom0.h) \ - $(wildcard include/config/xen/pvh.h) \ - include/xen/interface/xen.h \ - arch/x86/include/asm/xen/interface.h \ - arch/x86/include/asm/xen/interface_64.h \ - arch/x86/include/asm/pvclock-abi.h \ - arch/x86/include/asm/xen/hypervisor.h \ - include/xen/features.h \ - include/xen/interface/features.h \ - arch/x86/include/asm/pvclock.h \ - $(wildcard include/config/kvm/guest.h) \ - include/linux/clocksource.h \ - $(wildcard include/config/arch/clocksource/data.h) \ - $(wildcard include/config/clocksource/watchdog.h) \ - $(wildcard include/config/clksrc/probe.h) \ - arch/x86/include/asm/clocksource.h \ - arch/x86/include/uapi/asm/vsyscall.h \ - include/asm-generic/fixmap.h \ - arch/x86/include/asm/hardirq.h \ - $(wildcard include/config/kvm/intel.h) \ - $(wildcard include/config/have/kvm.h) \ - $(wildcard include/config/x86/thermal/vector.h) \ - $(wildcard include/config/x86/mce/threshold.h) \ - $(wildcard include/config/x86/mce/amd.h) \ - $(wildcard include/config/hyperv.h) \ - arch/x86/include/asm/idle.h \ - arch/x86/include/asm/io_apic.h \ - arch/x86/include/asm/irq_vectors.h \ - $(wildcard include/config/pci/msi.h) \ - include/linux/sem.h \ - include/uapi/linux/sem.h \ - include/linux/ipc.h \ - include/linux/uidgid.h \ - $(wildcard include/config/user/ns.h) \ - include/linux/highuid.h \ - include/uapi/linux/ipc.h \ - arch/x86/include/uapi/asm/ipcbuf.h \ - include/uapi/asm-generic/ipcbuf.h \ - arch/x86/include/uapi/asm/sembuf.h \ - include/linux/shm.h \ - include/uapi/linux/shm.h \ - arch/x86/include/uapi/asm/shmbuf.h \ - include/uapi/asm-generic/shmbuf.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/signal.h \ - $(wildcard include/config/old/sigaction.h) \ - include/uapi/linux/signal.h \ - arch/x86/include/asm/signal.h \ - arch/x86/include/uapi/asm/signal.h \ - include/uapi/asm-generic/signal-defs.h \ - arch/x86/include/uapi/asm/siginfo.h \ - include/asm-generic/siginfo.h \ - include/uapi/asm-generic/siginfo.h \ - include/linux/pid.h \ - include/linux/percpu.h \ - $(wildcard include/config/need/per/cpu/embed/first/chunk.h) \ - $(wildcard include/config/need/per/cpu/page/first/chunk.h) \ - include/linux/mmdebug.h \ - $(wildcard include/config/debug/vm.h) \ - include/linux/topology.h \ - $(wildcard include/config/use/percpu/numa/node/id.h) \ - include/linux/mmzone.h \ - $(wildcard include/config/force/max/zoneorder.h) \ - $(wildcard include/config/cma.h) \ - $(wildcard include/config/memory/isolation.h) \ - $(wildcard include/config/zone/dma.h) \ - $(wildcard include/config/zone/dma32.h) \ - $(wildcard include/config/zone/device.h) \ - $(wildcard include/config/memory/hotplug.h) \ - $(wildcard include/config/flat/node/mem/map.h) \ - $(wildcard include/config/page/extension.h) \ - $(wildcard include/config/no/bootmem.h) \ - $(wildcard include/config/deferred/struct/page/init.h) \ - $(wildcard include/config/have/memory/present.h) \ - $(wildcard include/config/need/node/memmap/size.h) \ - $(wildcard include/config/have/memblock/node/map.h) \ - $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ - $(wildcard include/config/sparsemem/extreme.h) \ - $(wildcard include/config/have/arch/pfn/valid.h) \ - $(wildcard include/config/holes/in/zone.h) \ - $(wildcard include/config/arch/has/holes/memorymodel.h) \ - include/linux/pageblock-flags.h \ - $(wildcard include/config/hugetlb/page/size/variable.h) \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/have/arch/nodedata/extension.h) \ - $(wildcard include/config/have/bootmem/info/node.h) \ - arch/x86/include/asm/mmzone.h \ - arch/x86/include/asm/mmzone_64.h \ - include/linux/proportions.h \ - include/linux/percpu_counter.h \ - include/linux/gfp.h \ - include/linux/seccomp.h \ - $(wildcard include/config/seccomp.h) \ - $(wildcard include/config/have/arch/seccomp/filter.h) \ - $(wildcard include/config/seccomp/filter.h) \ - $(wildcard include/config/checkpoint/restore.h) \ - include/uapi/linux/seccomp.h \ - arch/x86/include/asm/seccomp.h \ - arch/x86/include/asm/unistd.h \ - $(wildcard include/config/x86/x32/abi.h) \ - arch/x86/include/uapi/asm/unistd.h \ - arch/x86/include/generated/uapi/asm/unistd_64.h \ - arch/x86/include/generated/asm/unistd_64_x32.h \ - arch/x86/include/asm/ia32_unistd.h \ - arch/x86/include/generated/asm/unistd_32_ia32.h \ - include/asm-generic/seccomp.h \ - include/uapi/linux/unistd.h \ - include/linux/rculist.h \ - include/linux/rtmutex.h \ - $(wildcard include/config/debug/rt/mutexes.h) \ - include/linux/resource.h \ - include/uapi/linux/resource.h \ - arch/x86/include/uapi/asm/resource.h \ - include/asm-generic/resource.h \ - include/uapi/asm-generic/resource.h \ - include/linux/hrtimer.h \ - $(wildcard include/config/high/res/timers.h) \ - $(wildcard include/config/time/low/res.h) \ - $(wildcard include/config/timerfd.h) \ - include/linux/timerqueue.h \ - include/linux/task_io_accounting.h \ - $(wildcard include/config/task/io/accounting.h) \ - include/linux/latencytop.h \ - include/linux/cred.h \ - $(wildcard include/config/debug/credentials.h) \ - $(wildcard include/config/security.h) \ - include/linux/key.h \ - include/linux/assoc_array.h \ - $(wildcard include/config/associative/array.h) \ - include/linux/selinux.h \ - $(wildcard include/config/security/selinux.h) \ - include/uapi/linux/magic.h \ - include/linux/cgroup-defs.h \ - include/uapi/linux/limits.h \ - include/linux/idr.h \ - include/linux/percpu-refcount.h \ - include/linux/percpu-rwsem.h \ - include/linux/rcu_sync.h \ - include/linux/cgroup_subsys.h \ - $(wildcard include/config/cgroup/cpuacct.h) \ - $(wildcard include/config/blk/cgroup.h) \ - $(wildcard include/config/cgroup/device.h) \ - $(wildcard include/config/cgroup/freezer.h) \ - $(wildcard include/config/cgroup/net/classid.h) \ - $(wildcard include/config/cgroup/perf.h) \ - $(wildcard include/config/cgroup/net/prio.h) \ - $(wildcard include/config/cgroup/hugetlb.h) \ - $(wildcard include/config/cgroup/pids.h) \ - $(wildcard include/config/cgroup/debug.h) \ - arch/x86/include/asm/uaccess.h \ - $(wildcard include/config/x86/intel/usercopy.h) \ - $(wildcard include/config/debug/strict/user/copy/checks.h) \ - arch/x86/include/asm/smap.h \ - $(wildcard include/config/x86/smap.h) \ - arch/x86/include/asm/uaccess_64.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_mod.h \ - include/linux/module.h \ - $(wildcard include/config/module/sig.h) \ - $(wildcard include/config/modules/tree/lookup.h) \ - $(wildcard include/config/kallsyms.h) \ - $(wildcard include/config/tracepoints.h) \ - $(wildcard include/config/event/tracing.h) \ - $(wildcard include/config/livepatch.h) \ - $(wildcard include/config/module/unload.h) \ - $(wildcard include/config/constructors.h) \ - $(wildcard include/config/debug/set/module/ronx.h) \ - include/linux/stat.h \ - arch/x86/include/uapi/asm/stat.h \ - include/uapi/linux/stat.h \ - include/linux/kmod.h \ - include/linux/elf.h \ - arch/x86/include/asm/elf.h \ - arch/x86/include/asm/user.h \ - arch/x86/include/asm/user_64.h \ - arch/x86/include/asm/vdso.h \ - $(wildcard include/config/x86/x32.h) \ - include/uapi/linux/elf.h \ - include/uapi/linux/elf-em.h \ - include/linux/kobject.h \ - $(wildcard include/config/uevent/helper.h) \ - $(wildcard include/config/debug/kobject/release.h) \ - include/linux/sysfs.h \ - include/linux/kernfs.h \ - $(wildcard include/config/kernfs.h) \ - include/linux/kobject_ns.h \ - include/linux/kref.h \ - include/linux/moduleparam.h \ - $(wildcard include/config/alpha.h) \ - $(wildcard include/config/ia64.h) \ - $(wildcard include/config/ppc64.h) \ - include/linux/rbtree_latch.h \ - arch/x86/include/asm/module.h \ - $(wildcard include/config/m486.h) \ - $(wildcard include/config/m586.h) \ - $(wildcard include/config/m586tsc.h) \ - $(wildcard include/config/m586mmx.h) \ - $(wildcard include/config/mcore2.h) \ - $(wildcard include/config/m686.h) \ - $(wildcard include/config/mpentiumii.h) \ - $(wildcard include/config/mpentiumiii.h) \ - $(wildcard include/config/mpentiumm.h) \ - $(wildcard include/config/mpentium4.h) \ - $(wildcard include/config/mk6.h) \ - $(wildcard include/config/mk8.h) \ - $(wildcard include/config/melan.h) \ - $(wildcard include/config/mcrusoe.h) \ - $(wildcard include/config/mefficeon.h) \ - $(wildcard include/config/mwinchipc6.h) \ - $(wildcard include/config/mwinchip3d.h) \ - $(wildcard include/config/mcyrixiii.h) \ - $(wildcard include/config/mviac3/2.h) \ - $(wildcard include/config/mviac7.h) \ - $(wildcard include/config/mgeodegx1.h) \ - $(wildcard include/config/mgeode/lx.h) \ - include/asm-generic/module.h \ - $(wildcard include/config/have/mod/arch/specific.h) \ - $(wildcard include/config/modules/use/elf/rel.h) \ - $(wildcard include/config/modules/use/elf/rela.h) \ - include/linux/cdev.h \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/device.h \ - $(wildcard include/config/debug/devres.h) \ - $(wildcard include/config/generic/msi/irq/domain.h) \ - $(wildcard include/config/pinctrl.h) \ - $(wildcard include/config/generic/msi/irq.h) \ - $(wildcard include/config/dma/cma.h) \ - $(wildcard include/config/of.h) \ - $(wildcard include/config/devtmpfs.h) \ - $(wildcard include/config/sysfs/deprecated.h) \ - include/linux/klist.h \ - include/linux/pinctrl/devinfo.h \ - include/linux/pinctrl/consumer.h \ - include/linux/seq_file.h \ - include/linux/fs.h \ - $(wildcard include/config/fs/posix/acl.h) \ - $(wildcard include/config/cgroup/writeback.h) \ - $(wildcard include/config/ima.h) \ - $(wildcard include/config/fsnotify.h) \ - $(wildcard include/config/file/locking.h) \ - $(wildcard include/config/quota.h) \ - $(wildcard include/config/blk/dev/loop.h) \ - $(wildcard include/config/fs/dax.h) \ - $(wildcard include/config/migration.h) \ - include/linux/dcache.h \ - include/linux/rculist_bl.h \ - include/linux/list_bl.h \ - include/linux/bit_spinlock.h \ - include/linux/lockref.h \ - $(wildcard include/config/arch/use/cmpxchg/lockref.h) \ - include/linux/path.h \ - include/linux/list_lru.h \ - include/linux/shrinker.h \ - include/linux/radix-tree.h \ - include/linux/semaphore.h \ - include/uapi/linux/fiemap.h \ - include/linux/migrate_mode.h \ - include/linux/blk_types.h \ - $(wildcard include/config/blk/dev/integrity.h) \ - include/uapi/linux/fs.h \ - include/linux/quota.h \ - $(wildcard include/config/quota/netlink/interface.h) \ - include/uapi/linux/dqblk_xfs.h \ - include/linux/dqblk_v1.h \ - include/linux/dqblk_v2.h \ - include/linux/dqblk_qtree.h \ - include/linux/projid.h \ - include/uapi/linux/quota.h \ - include/linux/nfs_fs_i.h \ - include/linux/fcntl.h \ - include/uapi/linux/fcntl.h \ - arch/x86/include/uapi/asm/fcntl.h \ - include/uapi/asm-generic/fcntl.h \ - include/linux/pinctrl/pinctrl-state.h \ - include/linux/ratelimit.h \ - arch/x86/include/asm/device.h \ - $(wildcard include/config/x86/dev/dma/ops.h) \ - $(wildcard include/config/intel/iommu.h) \ - $(wildcard include/config/amd/iommu.h) \ - include/linux/pm_wakeup.h \ - include/linux/dma-mapping.h \ - $(wildcard include/config/has/dma.h) \ - $(wildcard include/config/arch/has/dma/set/coherent/mask.h) \ - $(wildcard include/config/have/dma/attrs.h) \ - $(wildcard include/config/need/dma/map/state.h) \ - include/linux/sizes.h \ - include/linux/dma-attrs.h \ - include/linux/dma-direction.h \ - include/linux/scatterlist.h \ - $(wildcard include/config/debug/sg.h) \ - $(wildcard include/config/need/sg/dma/length.h) \ - include/linux/mm.h \ - $(wildcard include/config/ppc.h) \ - $(wildcard include/config/parisc.h) \ - $(wildcard include/config/metag.h) \ - $(wildcard include/config/shmem.h) \ - $(wildcard include/config/debug/vm/rb.h) \ - $(wildcard include/config/debug/pagealloc.h) \ - $(wildcard include/config/hugetlbfs.h) \ - include/linux/debug_locks.h \ - $(wildcard include/config/debug/locking/api/selftests.h) \ - include/linux/page_ext.h \ - $(wildcard include/config/idle/page/tracking.h) \ - $(wildcard include/config/page/owner.h) \ - include/linux/stacktrace.h \ - $(wildcard include/config/stacktrace.h) \ - $(wildcard include/config/user/stacktrace/support.h) \ - arch/x86/include/asm/pgtable.h \ - $(wildcard include/config/debug/wx.h) \ - $(wildcard include/config/have/arch/soft/dirty.h) \ - arch/x86/include/asm/pgtable_64.h \ - arch/x86/include/asm/pgtable-invert.h \ - include/asm-generic/pgtable.h \ - $(wildcard include/config/have/arch/huge/vmap.h) \ - include/linux/page-flags.h \ - $(wildcard include/config/arch/uses/pg/uncached.h) \ - $(wildcard include/config/memory/failure.h) \ - $(wildcard include/config/swap.h) \ - $(wildcard include/config/ksm.h) \ - include/linux/huge_mm.h \ - include/linux/vmstat.h \ - $(wildcard include/config/vm/event/counters.h) \ - $(wildcard include/config/debug/tlbflush.h) \ - $(wildcard include/config/debug/vm/vmacache.h) \ - include/linux/vm_event_item.h \ - $(wildcard include/config/memory/balloon.h) \ - $(wildcard include/config/balloon/compaction.h) \ - arch/x86/include/asm/dma-mapping.h \ - $(wildcard include/config/isa.h) \ - $(wildcard include/config/x86/dma/remap.h) \ - include/linux/kmemcheck.h \ - include/linux/dma-debug.h \ - $(wildcard include/config/dma/api/debug.h) \ - arch/x86/include/asm/swiotlb.h \ - $(wildcard include/config/swiotlb.h) \ - include/linux/swiotlb.h \ - include/linux/dma-contiguous.h \ - include/asm-generic/dma-mapping-common.h \ - include/asm-generic/dma-coherent.h \ - $(wildcard include/config/have/generic/dma/coherent.h) \ - include/linux/delay.h \ - arch/x86/include/asm/delay.h \ - include/asm-generic/delay.h \ - include/linux/fb.h \ - $(wildcard include/config/fb/deferred/io.h) \ - $(wildcard include/config/fb/tileblitting.h) \ - $(wildcard include/config/fb/backlight.h) \ - $(wildcard include/config/fb/foreign/endian.h) \ - $(wildcard include/config/fb/both/endian.h) \ - $(wildcard include/config/fb/big/endian.h) \ - $(wildcard include/config/fb/little/endian.h) \ - include/linux/kgdb.h \ - $(wildcard include/config/have/arch/kgdb.h) \ - $(wildcard include/config/kgdb.h) \ - $(wildcard include/config/serial/kgdb/nmi.h) \ - arch/x86/include/asm/kgdb.h \ - include/uapi/linux/fb.h \ - include/linux/i2c.h \ - $(wildcard include/config/i2c.h) \ - $(wildcard include/config/i2c/slave.h) \ - $(wildcard include/config/i2c/boardinfo.h) \ - $(wildcard include/config/i2c/mux.h) \ - include/linux/mod_devicetable.h \ - include/linux/uuid.h \ - include/uapi/linux/uuid.h \ - include/linux/of.h \ - $(wildcard include/config/sparc.h) \ - $(wildcard include/config/of/dynamic.h) \ - $(wildcard include/config/attach/node.h) \ - $(wildcard include/config/detach/node.h) \ - $(wildcard include/config/add/property.h) \ - $(wildcard include/config/remove/property.h) \ - $(wildcard include/config/update/property.h) \ - $(wildcard include/config/of/numa.h) \ - $(wildcard include/config/no/change.h) \ - $(wildcard include/config/change/add.h) \ - $(wildcard include/config/change/remove.h) \ - $(wildcard include/config/of/resolve.h) \ - $(wildcard include/config/of/overlay.h) \ - include/linux/property.h \ - include/linux/fwnode.h \ - include/uapi/linux/i2c.h \ - include/linux/backlight.h \ - include/linux/slab.h \ - $(wildcard include/config/debug/slab.h) \ - $(wildcard include/config/failslab.h) \ - $(wildcard include/config/slab.h) \ - $(wildcard include/config/slub.h) \ - $(wildcard include/config/slob.h) \ - include/linux/kmemleak.h \ - $(wildcard include/config/debug/kmemleak.h) \ - include/linux/kasan.h \ - include/linux/interrupt.h \ - $(wildcard include/config/irq/forced/threading.h) \ - $(wildcard include/config/generic/irq/probe.h) \ - include/linux/irqreturn.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/hardirq.h \ - include/linux/ftrace_irq.h \ - $(wildcard include/config/ftrace/nmi/enter.h) \ - include/linux/vtime.h \ - include/linux/context_tracking_state.h \ - $(wildcard include/config/context/tracking.h) \ - arch/x86/include/asm/irq.h \ - include/linux/io.h \ - include/linux/poll.h \ - include/uapi/linux/poll.h \ - arch/x86/include/uapi/asm/poll.h \ - include/uapi/asm-generic/poll.h \ - include/linux/pci.h \ - $(wildcard include/config/pci/iov.h) \ - $(wildcard include/config/pcieaspm.h) \ - $(wildcard include/config/pci/ats.h) \ - $(wildcard include/config/pci/domains/generic.h) \ - $(wildcard include/config/pci/bus/addr/t/64bit.h) \ - $(wildcard include/config/pcieportbus.h) \ - $(wildcard include/config/pcieaer.h) \ - $(wildcard include/config/pcie/ecrc.h) \ - $(wildcard include/config/ht/irq.h) \ - $(wildcard include/config/pci/domains.h) \ - $(wildcard include/config/pci/quirks.h) \ - $(wildcard include/config/hibernate/callbacks.h) \ - $(wildcard include/config/acpi/mcfg.h) \ - $(wildcard include/config/hotplug/pci.h) \ - $(wildcard include/config/eeh.h) \ - include/linux/resource_ext.h \ - include/uapi/linux/pci.h \ - include/uapi/linux/pci_regs.h \ - include/linux/pci_ids.h \ - include/linux/pci-dma.h \ - include/linux/dmapool.h \ - arch/x86/include/asm/pci.h \ - $(wildcard include/config/pci/msi/irq/domain.h) \ - arch/x86/include/asm/pci_64.h \ - $(wildcard include/config/calgary/iommu.h) \ - include/asm-generic/pci-dma-compat.h \ - include/asm-generic/pci.h \ - include/linux/vmalloc.h \ - include/linux/aio.h \ - include/uapi/linux/aio_abi.h \ - include/linux/splice.h \ - include/linux/pipe_fs_i.h \ - include/generated/uapi/linux/version.h \ - include/linux/uio.h \ - include/uapi/linux/uio.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.h \ - $(wildcard include/config/block/id.h) \ - -/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_events.o: $(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_events.o) - -$(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_events.o): diff --git a/host_software/driver/xdma/.cdev_sgdma.o.cmd b/host_software/driver/xdma/.cdev_sgdma.o.cmd deleted file mode 100644 index e8367a1..0000000 --- a/host_software/driver/xdma/.cdev_sgdma.o.cmd +++ /dev/null @@ -1,1000 +0,0 @@ -cmd_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_sgdma.o := gcc -Wp,-MD,/home/wangxuan/pcie_xdma_host_software/driver/xdma/.cdev_sgdma.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/5/include -I./arch/x86/include -Iarch/x86/include/generated/uapi -Iarch/x86/include/generated -Iinclude -I./arch/x86/include/uapi -Iarch/x86/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -Iubuntu/include -D__KERNEL__ -fno-pie -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -fno-pie -no-pie -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_X86_X32_ABI -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -DCONFIG_AS_SHA1_NI=1 -DCONFIG_AS_SHA256_NI=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -DRETPOLINE -fno-delete-null-pointer-checks -O2 --param=allow-store-data-races=0 -DCC_HAVE_ASM_GOTO -Wframe-larger-than=1024 -fstack-protector-strong -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wno-pointer-sign -Wno-array-bounds -Wno-maybe-uninitialized -fno-strict-overflow -fno-merge-all-constants -fmerge-constants -fno-stack-check -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -DMODULE -D"KBUILD_STR(s)=$(pound)s" -D"KBUILD_BASENAME=KBUILD_STR(cdev_sgdma)" -D"KBUILD_MODNAME=KBUILD_STR(xdma)" -c -o /home/wangxuan/pcie_xdma_host_software/driver/xdma/.tmp_cdev_sgdma.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_sgdma.c - -source_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_sgdma.o := /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_sgdma.c - -deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_sgdma.o := \ - arch/x86/include/asm/cacheflush.h \ - $(wildcard include/config/debug/rodata.h) \ - $(wildcard include/config/debug/rodata/test.h) \ - include/asm-generic/cacheflush.h \ - include/linux/mm.h \ - $(wildcard include/config/need/multiple/nodes.h) \ - $(wildcard include/config/sysctl.h) \ - $(wildcard include/config/mmu.h) \ - $(wildcard include/config/mem/soft/dirty.h) \ - $(wildcard include/config/x86.h) \ - $(wildcard include/config/ppc.h) \ - $(wildcard include/config/parisc.h) \ - $(wildcard include/config/metag.h) \ - $(wildcard include/config/ia64.h) \ - $(wildcard include/config/stack/growsup.h) \ - $(wildcard include/config/numa.h) \ - $(wildcard include/config/transparent/hugepage.h) \ - $(wildcard include/config/hugetlb/page.h) \ - $(wildcard include/config/sparsemem.h) \ - $(wildcard include/config/sparsemem/vmemmap.h) \ - $(wildcard include/config/numa/balancing.h) \ - $(wildcard include/config/memcg.h) \ - $(wildcard include/config/highmem.h) \ - $(wildcard include/config/shmem.h) \ - $(wildcard include/config/have/memblock/node/map.h) \ - $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ - $(wildcard include/config/debug/vm/rb.h) \ - $(wildcard include/config/proc/fs.h) \ - $(wildcard include/config/debug/pagealloc.h) \ - $(wildcard include/config/hibernation.h) \ - $(wildcard include/config/memory/hotplug.h) \ - $(wildcard include/config/hugetlbfs.h) \ - include/linux/errno.h \ - include/uapi/linux/errno.h \ - arch/x86/include/uapi/asm/errno.h \ - include/uapi/asm-generic/errno.h \ - include/uapi/asm-generic/errno-base.h \ - include/linux/mmdebug.h \ - $(wildcard include/config/debug/vm.h) \ - $(wildcard include/config/debug/virtual.h) \ - include/linux/bug.h \ - $(wildcard include/config/generic/bug.h) \ - arch/x86/include/asm/bug.h \ - $(wildcard include/config/debug/bugverbose.h) \ - $(wildcard include/config/x86/32.h) \ - include/asm-generic/bug.h \ - $(wildcard include/config/bug.h) \ - $(wildcard include/config/generic/bug/relative/pointers.h) \ - $(wildcard include/config/smp.h) \ - include/linux/compiler.h \ - $(wildcard include/config/sparse/rcu/pointer.h) \ - $(wildcard include/config/trace/branch/profiling.h) \ - $(wildcard include/config/profile/all/branches.h) \ - $(wildcard include/config/kasan.h) \ - $(wildcard include/config/enable/must/check.h) \ - $(wildcard include/config/enable/warn/deprecated.h) \ - $(wildcard include/config/kprobes.h) \ - include/linux/compiler-gcc.h \ - $(wildcard include/config/arch/supports/optimized/inlining.h) \ - $(wildcard include/config/optimize/inlining.h) \ - $(wildcard include/config/arm64.h) \ - $(wildcard include/config/gcov/kernel.h) \ - $(wildcard include/config/arch/use/builtin/bswap.h) \ - include/uapi/linux/types.h \ - arch/x86/include/uapi/asm/types.h \ - include/uapi/asm-generic/types.h \ - include/asm-generic/int-ll64.h \ - include/uapi/asm-generic/int-ll64.h \ - arch/x86/include/uapi/asm/bitsperlong.h \ - include/asm-generic/bitsperlong.h \ - $(wildcard include/config/64bit.h) \ - include/uapi/asm-generic/bitsperlong.h \ - include/uapi/linux/posix_types.h \ - include/linux/stddef.h \ - include/uapi/linux/stddef.h \ - arch/x86/include/asm/posix_types.h \ - arch/x86/include/uapi/asm/posix_types_64.h \ - include/uapi/asm-generic/posix_types.h \ - include/linux/kasan-checks.h \ - include/linux/kernel.h \ - $(wildcard include/config/lbdaf.h) \ - $(wildcard include/config/preempt/voluntary.h) \ - $(wildcard include/config/debug/atomic/sleep.h) \ - $(wildcard include/config/prove/locking.h) \ - $(wildcard include/config/panic/timeout.h) \ - $(wildcard include/config/tracing.h) \ - $(wildcard include/config/ftrace/mcount/record.h) \ - /usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h \ - include/linux/linkage.h \ - include/linux/stringify.h \ - include/linux/export.h \ - $(wildcard include/config/have/underscore/symbol/prefix.h) \ - $(wildcard include/config/modules.h) \ - $(wildcard include/config/modversions.h) \ - $(wildcard include/config/unused/symbols.h) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/x86/64.h) \ - $(wildcard include/config/x86/alignment/16.h) \ - include/linux/types.h \ - $(wildcard include/config/have/uid16.h) \ - $(wildcard include/config/uid16.h) \ - $(wildcard include/config/arch/dma/addr/t/64bit.h) \ - $(wildcard include/config/phys/addr/t/64bit.h) \ - include/linux/bitops.h \ - include/linux/bits.h \ - arch/x86/include/asm/bitops.h \ - $(wildcard include/config/x86/cmov.h) \ - arch/x86/include/asm/alternative.h \ - arch/x86/include/asm/asm.h \ - arch/x86/include/asm/rmwcc.h \ - arch/x86/include/asm/barrier.h \ - $(wildcard include/config/x86/ppro/fence.h) \ - arch/x86/include/asm/nops.h \ - $(wildcard include/config/mk7.h) \ - $(wildcard include/config/x86/p6/nop.h) \ - include/asm-generic/barrier.h \ - include/asm-generic/bitops/find.h \ - $(wildcard include/config/generic/find/first/bit.h) \ - include/asm-generic/bitops/sched.h \ - arch/x86/include/asm/arch_hweight.h \ - arch/x86/include/asm/cpufeatures.h \ - $(wildcard include/config/page/table/isolation.h) \ - arch/x86/include/asm/required-features.h \ - $(wildcard include/config/x86/minimum/cpu/family.h) \ - $(wildcard include/config/math/emulation.h) \ - $(wildcard include/config/x86/pae.h) \ - $(wildcard include/config/x86/cmpxchg64.h) \ - $(wildcard include/config/x86/use/3dnow.h) \ - $(wildcard include/config/matom.h) \ - $(wildcard include/config/paravirt.h) \ - arch/x86/include/asm/disabled-features.h \ - $(wildcard include/config/x86/intel/mpx.h) \ - $(wildcard include/config/x86/intel/memory/protection/keys.h) \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/le.h \ - arch/x86/include/uapi/asm/byteorder.h \ - include/linux/byteorder/little_endian.h \ - include/uapi/linux/byteorder/little_endian.h \ - include/linux/swab.h \ - include/uapi/linux/swab.h \ - arch/x86/include/uapi/asm/swab.h \ - include/linux/byteorder/generic.h \ - include/asm-generic/bitops/ext2-atomic-setbit.h \ - include/linux/log2.h \ - $(wildcard include/config/arch/has/ilog2/u32.h) \ - $(wildcard include/config/arch/has/ilog2/u64.h) \ - include/linux/typecheck.h \ - include/linux/printk.h \ - $(wildcard include/config/message/loglevel/default.h) \ - $(wildcard include/config/early/printk.h) \ - $(wildcard include/config/printk.h) \ - $(wildcard include/config/dynamic/debug.h) \ - include/linux/init.h \ - $(wildcard include/config/broken/rodata.h) \ - $(wildcard include/config/lto.h) \ - include/linux/kern_levels.h \ - include/linux/cache.h \ - $(wildcard include/config/arch/has/cache/line/size.h) \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.h \ - arch/x86/include/asm/cache.h \ - $(wildcard include/config/x86/l1/cache/shift.h) \ - $(wildcard include/config/x86/internode/cache/shift.h) \ - $(wildcard include/config/x86/vsmp.h) \ - include/linux/dynamic_debug.h \ - include/linux/gfp.h \ - $(wildcard include/config/zone/dma.h) \ - $(wildcard include/config/zone/dma32.h) \ - $(wildcard include/config/zone/device.h) \ - $(wildcard include/config/deferred/struct/page/init.h) \ - $(wildcard include/config/pm/sleep.h) \ - $(wildcard include/config/cma.h) \ - include/linux/mmzone.h \ - $(wildcard include/config/force/max/zoneorder.h) \ - $(wildcard include/config/memory/isolation.h) \ - $(wildcard include/config/compaction.h) \ - $(wildcard include/config/discontigmem.h) \ - $(wildcard include/config/flat/node/mem/map.h) \ - $(wildcard include/config/page/extension.h) \ - $(wildcard include/config/no/bootmem.h) \ - $(wildcard include/config/have/memory/present.h) \ - $(wildcard include/config/have/memoryless/nodes.h) \ - $(wildcard include/config/need/node/memmap/size.h) \ - $(wildcard include/config/flatmem.h) \ - $(wildcard include/config/sparsemem/extreme.h) \ - $(wildcard include/config/have/arch/pfn/valid.h) \ - $(wildcard include/config/holes/in/zone.h) \ - $(wildcard include/config/arch/has/holes/memorymodel.h) \ - include/linux/spinlock.h \ - $(wildcard include/config/debug/spinlock.h) \ - $(wildcard include/config/generic/lockbreak.h) \ - $(wildcard include/config/preempt.h) \ - $(wildcard include/config/debug/lock/alloc.h) \ - include/linux/preempt.h \ - $(wildcard include/config/preempt/count.h) \ - $(wildcard include/config/debug/preempt.h) \ - $(wildcard include/config/preempt/tracer.h) \ - $(wildcard include/config/preempt/notifiers.h) \ - include/linux/list.h \ - $(wildcard include/config/debug/list.h) \ - include/linux/poison.h \ - $(wildcard include/config/illegal/pointer/value.h) \ - include/uapi/linux/const.h \ - arch/x86/include/asm/preempt.h \ - arch/x86/include/asm/percpu.h \ - $(wildcard include/config/x86/64/smp.h) \ - include/asm-generic/percpu.h \ - $(wildcard include/config/have/setup/per/cpu/area.h) \ - include/linux/threads.h \ - $(wildcard include/config/nr/cpus.h) \ - $(wildcard include/config/base/small.h) \ - include/linux/percpu-defs.h \ - $(wildcard include/config/debug/force/weak/per/cpu.h) \ - include/linux/thread_info.h \ - $(wildcard include/config/thread/info/in/task.h) \ - $(wildcard include/config/compat.h) \ - arch/x86/include/asm/thread_info.h \ - $(wildcard include/config/vm86.h) \ - $(wildcard include/config/ia32/emulation.h) \ - arch/x86/include/asm/page.h \ - arch/x86/include/asm/page_types.h \ - $(wildcard include/config/physical/start.h) \ - $(wildcard include/config/physical/align.h) \ - arch/x86/include/asm/page_64_types.h \ - $(wildcard include/config/kasan/extra.h) \ - $(wildcard include/config/randomize/base.h) \ - $(wildcard include/config/randomize/base/max/offset.h) \ - arch/x86/include/asm/page_64.h \ - $(wildcard include/config/x86/vsyscall/emulation.h) \ - include/linux/range.h \ - include/asm-generic/memory_model.h \ - include/linux/pfn.h \ - include/asm-generic/getorder.h \ - arch/x86/include/asm/cpufeature.h \ - $(wildcard include/config/x86/feature/names.h) \ - $(wildcard include/config/x86/fast/feature/tests.h) \ - arch/x86/include/asm/processor.h \ - $(wildcard include/config/cc/stackprotector.h) \ - $(wildcard include/config/x86/debugctlmsr.h) \ - $(wildcard include/config/xen.h) \ - arch/x86/include/asm/processor-flags.h \ - arch/x86/include/uapi/asm/processor-flags.h \ - arch/x86/include/asm/math_emu.h \ - arch/x86/include/asm/ptrace.h \ - arch/x86/include/asm/segment.h \ - $(wildcard include/config/x86/32/lazy/gs.h) \ - arch/x86/include/uapi/asm/ptrace.h \ - arch/x86/include/uapi/asm/ptrace-abi.h \ - arch/x86/include/asm/paravirt_types.h \ - $(wildcard include/config/x86/local/apic.h) \ - $(wildcard include/config/pgtable/levels.h) \ - $(wildcard include/config/queued/spinlocks.h) \ - $(wildcard include/config/paravirt/debug.h) \ - arch/x86/include/asm/desc_defs.h \ - arch/x86/include/asm/kmap_types.h \ - $(wildcard include/config/debug/highmem.h) \ - include/asm-generic/kmap_types.h \ - arch/x86/include/asm/pgtable_types.h \ - $(wildcard include/config/kmemcheck.h) \ - arch/x86/include/asm/pgtable_64_types.h \ - arch/x86/include/asm/sparsemem.h \ - arch/x86/include/asm/nospec-branch.h \ - $(wildcard include/config/retpoline.h) \ - include/linux/static_key.h \ - include/linux/jump_label.h \ - $(wildcard include/config/jump/label.h) \ - arch/x86/include/asm/jump_label.h \ - include/linux/atomic.h \ - $(wildcard include/config/generic/atomic64.h) \ - arch/x86/include/asm/atomic.h \ - arch/x86/include/asm/cmpxchg.h \ - arch/x86/include/asm/cmpxchg_64.h \ - arch/x86/include/asm/atomic64_64.h \ - include/asm-generic/atomic-long.h \ - arch/x86/include/asm/alternative-asm.h \ - arch/x86/include/asm/msr-index.h \ - $(wildcard include/config/tdp/nominal.h) \ - $(wildcard include/config/tdp/level/1.h) \ - $(wildcard include/config/tdp/level/2.h) \ - $(wildcard include/config/tdp/control.h) \ - $(wildcard include/config/tdp/level1.h) \ - $(wildcard include/config/tdp/level2.h) \ - arch/x86/include/asm/spinlock_types.h \ - $(wildcard include/config/paravirt/spinlocks.h) \ - include/asm-generic/qrwlock_types.h \ - include/asm-generic/ptrace.h \ - arch/x86/include/uapi/asm/sigcontext.h \ - arch/x86/include/asm/current.h \ - arch/x86/include/asm/msr.h \ - arch/x86/include/asm/msr-index.h \ - arch/x86/include/asm/cpumask.h \ - include/linux/cpumask.h \ - $(wildcard include/config/cpumask/offstack.h) \ - $(wildcard include/config/hotplug/cpu.h) \ - $(wildcard include/config/debug/per/cpu/maps.h) \ - include/linux/bitmap.h \ - include/linux/string.h \ - $(wildcard include/config/binary/printf.h) \ - include/uapi/linux/string.h \ - arch/x86/include/asm/string.h \ - arch/x86/include/asm/string_64.h \ - arch/x86/include/uapi/asm/msr.h \ - include/uapi/linux/ioctl.h \ - arch/x86/include/uapi/asm/ioctl.h \ - include/asm-generic/ioctl.h \ - include/uapi/asm-generic/ioctl.h \ - arch/x86/include/asm/paravirt.h \ - arch/x86/include/asm/special_insns.h \ - arch/x86/include/asm/fpu/types.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - include/linux/math64.h \ - $(wildcard include/config/arch/supports/int128.h) \ - arch/x86/include/asm/div64.h \ - include/asm-generic/div64.h \ - include/linux/err.h \ - include/linux/irqflags.h \ - $(wildcard include/config/trace/irqflags.h) \ - $(wildcard include/config/irqsoff/tracer.h) \ - $(wildcard include/config/trace/irqflags/support.h) \ - arch/x86/include/asm/irqflags.h \ - include/linux/bottom_half.h \ - include/linux/spinlock_types.h \ - include/linux/lockdep.h \ - $(wildcard include/config/lockdep.h) \ - $(wildcard include/config/lock/stat.h) \ - include/linux/rwlock_types.h \ - arch/x86/include/asm/spinlock.h \ - arch/x86/include/asm/qrwlock.h \ - include/asm-generic/qrwlock.h \ - include/linux/rwlock.h \ - include/linux/spinlock_api_smp.h \ - $(wildcard include/config/inline/spin/lock.h) \ - $(wildcard include/config/inline/spin/lock/bh.h) \ - $(wildcard include/config/inline/spin/lock/irq.h) \ - $(wildcard include/config/inline/spin/lock/irqsave.h) \ - $(wildcard include/config/inline/spin/trylock.h) \ - $(wildcard include/config/inline/spin/trylock/bh.h) \ - $(wildcard include/config/uninline/spin/unlock.h) \ - $(wildcard include/config/inline/spin/unlock/bh.h) \ - $(wildcard include/config/inline/spin/unlock/irq.h) \ - $(wildcard include/config/inline/spin/unlock/irqrestore.h) \ - include/linux/rwlock_api_smp.h \ - $(wildcard include/config/inline/read/lock.h) \ - $(wildcard include/config/inline/write/lock.h) \ - $(wildcard include/config/inline/read/lock/bh.h) \ - $(wildcard include/config/inline/write/lock/bh.h) \ - $(wildcard include/config/inline/read/lock/irq.h) \ - $(wildcard include/config/inline/write/lock/irq.h) \ - $(wildcard include/config/inline/read/lock/irqsave.h) \ - $(wildcard include/config/inline/write/lock/irqsave.h) \ - $(wildcard include/config/inline/read/trylock.h) \ - $(wildcard include/config/inline/write/trylock.h) \ - $(wildcard include/config/inline/read/unlock.h) \ - $(wildcard include/config/inline/write/unlock.h) \ - $(wildcard include/config/inline/read/unlock/bh.h) \ - $(wildcard include/config/inline/write/unlock/bh.h) \ - $(wildcard include/config/inline/read/unlock/irq.h) \ - $(wildcard include/config/inline/write/unlock/irq.h) \ - $(wildcard include/config/inline/read/unlock/irqrestore.h) \ - $(wildcard include/config/inline/write/unlock/irqrestore.h) \ - include/linux/wait.h \ - include/uapi/linux/wait.h \ - include/linux/numa.h \ - $(wildcard include/config/nodes/shift.h) \ - include/linux/seqlock.h \ - include/linux/nodemask.h \ - $(wildcard include/config/movable/node.h) \ - include/linux/pageblock-flags.h \ - $(wildcard include/config/hugetlb/page/size/variable.h) \ - include/linux/page-flags-layout.h \ - include/generated/bounds.h \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/memory/hotremove.h) \ - $(wildcard include/config/have/arch/nodedata/extension.h) \ - $(wildcard include/config/have/bootmem/info/node.h) \ - include/linux/notifier.h \ - include/linux/mutex.h \ - $(wildcard include/config/debug/mutexes.h) \ - $(wildcard include/config/mutex/spin/on/owner.h) \ - include/linux/osq_lock.h \ - include/linux/rwsem.h \ - $(wildcard include/config/rwsem/spin/on/owner.h) \ - $(wildcard include/config/rwsem/generic/spinlock.h) \ - arch/x86/include/asm/rwsem.h \ - include/linux/srcu.h \ - include/linux/rcupdate.h \ - $(wildcard include/config/tiny/rcu.h) \ - $(wildcard include/config/tree/rcu.h) \ - $(wildcard include/config/preempt/rcu.h) \ - $(wildcard include/config/rcu/trace.h) \ - $(wildcard include/config/rcu/stall/common.h) \ - $(wildcard include/config/no/hz/full.h) \ - $(wildcard include/config/rcu/nocb/cpu.h) \ - $(wildcard include/config/tasks/rcu.h) \ - $(wildcard include/config/debug/objects/rcu/head.h) \ - $(wildcard include/config/prove/rcu.h) \ - $(wildcard include/config/rcu/boost.h) \ - $(wildcard include/config/rcu/nocb/cpu/all.h) \ - $(wildcard include/config/no/hz/full/sysidle.h) \ - include/linux/completion.h \ - include/linux/debugobjects.h \ - $(wildcard include/config/debug/objects.h) \ - $(wildcard include/config/debug/objects/free.h) \ - include/linux/ktime.h \ - include/linux/time.h \ - $(wildcard include/config/arch/uses/gettimeoffset.h) \ - include/linux/time64.h \ - include/uapi/linux/time.h \ - include/linux/jiffies.h \ - include/linux/timex.h \ - include/uapi/linux/timex.h \ - include/uapi/linux/param.h \ - arch/x86/include/uapi/asm/param.h \ - include/asm-generic/param.h \ - $(wildcard include/config/hz.h) \ - include/uapi/asm-generic/param.h \ - arch/x86/include/asm/timex.h \ - arch/x86/include/asm/tsc.h \ - $(wildcard include/config/x86/tsc.h) \ - include/generated/timeconst.h \ - include/linux/timekeeping.h \ - include/linux/rcutree.h \ - include/linux/workqueue.h \ - $(wildcard include/config/debug/objects/work.h) \ - $(wildcard include/config/freezer.h) \ - $(wildcard include/config/sysfs.h) \ - include/linux/timer.h \ - $(wildcard include/config/debug/objects/timers.h) \ - $(wildcard include/config/no/hz/common.h) \ - include/linux/sysctl.h \ - include/linux/rbtree.h \ - include/uapi/linux/sysctl.h \ - arch/x86/include/asm/mmzone.h \ - arch/x86/include/asm/mmzone_64.h \ - arch/x86/include/asm/smp.h \ - $(wildcard include/config/x86/io/apic.h) \ - $(wildcard include/config/x86/32/smp.h) \ - $(wildcard include/config/debug/nmi/selftest.h) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/eisa.h) \ - $(wildcard include/config/x86/mpparse.h) \ - arch/x86/include/asm/mpspec_def.h \ - arch/x86/include/asm/x86_init.h \ - arch/x86/include/uapi/asm/bootparam.h \ - include/linux/screen_info.h \ - include/uapi/linux/screen_info.h \ - include/linux/apm_bios.h \ - include/uapi/linux/apm_bios.h \ - include/linux/edd.h \ - include/uapi/linux/edd.h \ - arch/x86/include/asm/e820.h \ - $(wildcard include/config/efi.h) \ - arch/x86/include/uapi/asm/e820.h \ - $(wildcard include/config/x86/pmem/legacy.h) \ - $(wildcard include/config/intel/txt.h) \ - include/linux/ioport.h \ - arch/x86/include/asm/ist.h \ - arch/x86/include/uapi/asm/ist.h \ - include/video/edid.h \ - include/uapi/video/edid.h \ - arch/x86/include/asm/apicdef.h \ - arch/x86/include/asm/apic.h \ - $(wildcard include/config/x86/x2apic.h) \ - include/linux/pm.h \ - $(wildcard include/config/vt/console/sleep.h) \ - $(wildcard include/config/pm.h) \ - $(wildcard include/config/pm/clk.h) \ - $(wildcard include/config/pm/generic/domains.h) \ - arch/x86/include/asm/fixmap.h \ - $(wildcard include/config/paravirt/clock.h) \ - $(wildcard include/config/provide/ohci1394/dma/init.h) \ - $(wildcard include/config/pci/mmconfig.h) \ - $(wildcard include/config/x86/intel/mid.h) \ - arch/x86/include/asm/acpi.h \ - $(wildcard include/config/acpi/apei.h) \ - $(wildcard include/config/acpi.h) \ - $(wildcard include/config/acpi/numa.h) \ - include/acpi/pdc_intel.h \ - arch/x86/include/asm/numa.h \ - $(wildcard include/config/numa/emu.h) \ - arch/x86/include/asm/topology.h \ - include/asm-generic/topology.h \ - arch/x86/include/asm/mmu.h \ - $(wildcard include/config/modify/ldt/syscall.h) \ - arch/x86/include/asm/realmode.h \ - $(wildcard include/config/acpi/sleep.h) \ - arch/x86/include/asm/io.h \ - $(wildcard include/config/mtrr.h) \ - $(wildcard include/config/x86/pat.h) \ - arch/x86/include/generated/asm/early_ioremap.h \ - include/asm-generic/early_ioremap.h \ - $(wildcard include/config/generic/early/ioremap.h) \ - include/asm-generic/iomap.h \ - $(wildcard include/config/has/ioport/map.h) \ - $(wildcard include/config/pci.h) \ - $(wildcard include/config/generic/iomap.h) \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/no/generic/pci/ioport/map.h) \ - $(wildcard include/config/generic/pci/iomap.h) \ - include/xen/xen.h \ - $(wildcard include/config/xen/dom0.h) \ - $(wildcard include/config/xen/pvh.h) \ - include/xen/interface/xen.h \ - arch/x86/include/asm/xen/interface.h \ - arch/x86/include/asm/xen/interface_64.h \ - arch/x86/include/asm/pvclock-abi.h \ - arch/x86/include/asm/xen/hypervisor.h \ - include/xen/features.h \ - include/xen/interface/features.h \ - arch/x86/include/asm/pvclock.h \ - $(wildcard include/config/kvm/guest.h) \ - include/linux/clocksource.h \ - $(wildcard include/config/arch/clocksource/data.h) \ - $(wildcard include/config/clocksource/watchdog.h) \ - $(wildcard include/config/clksrc/probe.h) \ - arch/x86/include/asm/clocksource.h \ - arch/x86/include/uapi/asm/vsyscall.h \ - include/asm-generic/fixmap.h \ - arch/x86/include/asm/hardirq.h \ - $(wildcard include/config/kvm/intel.h) \ - $(wildcard include/config/have/kvm.h) \ - $(wildcard include/config/x86/thermal/vector.h) \ - $(wildcard include/config/x86/mce/threshold.h) \ - $(wildcard include/config/x86/mce/amd.h) \ - $(wildcard include/config/hyperv.h) \ - arch/x86/include/asm/idle.h \ - arch/x86/include/asm/io_apic.h \ - arch/x86/include/asm/irq_vectors.h \ - $(wildcard include/config/pci/msi.h) \ - include/linux/topology.h \ - $(wildcard include/config/use/percpu/numa/node/id.h) \ - $(wildcard include/config/sched/smt.h) \ - include/linux/smp.h \ - $(wildcard include/config/up/late/init.h) \ - include/linux/llist.h \ - $(wildcard include/config/arch/have/nmi/safe/cmpxchg.h) \ - include/linux/percpu.h \ - $(wildcard include/config/need/per/cpu/embed/first/chunk.h) \ - $(wildcard include/config/need/per/cpu/page/first/chunk.h) \ - include/linux/debug_locks.h \ - $(wildcard include/config/debug/locking/api/selftests.h) \ - include/linux/mm_types.h \ - $(wildcard include/config/split/ptlock/cpus.h) \ - $(wildcard include/config/arch/enable/split/pmd/ptlock.h) \ - $(wildcard include/config/have/cmpxchg/double.h) \ - $(wildcard include/config/have/aligned/struct/page.h) \ - $(wildcard include/config/userfaultfd.h) \ - $(wildcard include/config/aio.h) \ - $(wildcard include/config/mmu/notifier.h) \ - $(wildcard include/config/arch/want/batched/unmap/tlb/flush.h) \ - include/linux/auxvec.h \ - include/uapi/linux/auxvec.h \ - arch/x86/include/uapi/asm/auxvec.h \ - include/linux/uprobes.h \ - $(wildcard include/config/uprobes.h) \ - arch/x86/include/asm/uprobes.h \ - include/linux/bit_spinlock.h \ - include/linux/shrinker.h \ - include/linux/resource.h \ - include/uapi/linux/resource.h \ - arch/x86/include/uapi/asm/resource.h \ - include/asm-generic/resource.h \ - include/uapi/asm-generic/resource.h \ - include/linux/page_ext.h \ - $(wildcard include/config/idle/page/tracking.h) \ - $(wildcard include/config/page/owner.h) \ - include/linux/stacktrace.h \ - $(wildcard include/config/stacktrace.h) \ - $(wildcard include/config/user/stacktrace/support.h) \ - arch/x86/include/asm/pgtable.h \ - $(wildcard include/config/debug/wx.h) \ - $(wildcard include/config/have/arch/soft/dirty.h) \ - arch/x86/include/asm/pgtable_64.h \ - arch/x86/include/asm/pgtable-invert.h \ - include/asm-generic/pgtable.h \ - $(wildcard include/config/have/arch/huge/vmap.h) \ - include/linux/page-flags.h \ - $(wildcard include/config/arch/uses/pg/uncached.h) \ - $(wildcard include/config/memory/failure.h) \ - $(wildcard include/config/swap.h) \ - $(wildcard include/config/ksm.h) \ - include/linux/huge_mm.h \ - include/linux/vmstat.h \ - $(wildcard include/config/vm/event/counters.h) \ - $(wildcard include/config/debug/tlbflush.h) \ - $(wildcard include/config/debug/vm/vmacache.h) \ - include/linux/vm_event_item.h \ - $(wildcard include/config/migration.h) \ - $(wildcard include/config/memory/balloon.h) \ - $(wildcard include/config/balloon/compaction.h) \ - arch/x86/include/asm/uaccess.h \ - $(wildcard include/config/x86/intel/usercopy.h) \ - $(wildcard include/config/debug/strict/user/copy/checks.h) \ - arch/x86/include/asm/smap.h \ - $(wildcard include/config/x86/smap.h) \ - arch/x86/include/asm/uaccess_64.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma_api.h \ - include/linux/scatterlist.h \ - $(wildcard include/config/debug/sg.h) \ - $(wildcard include/config/need/sg/dma/length.h) \ - include/linux/interrupt.h \ - $(wildcard include/config/irq/forced/threading.h) \ - $(wildcard include/config/generic/irq/probe.h) \ - include/linux/irqreturn.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/hardirq.h \ - include/linux/ftrace_irq.h \ - $(wildcard include/config/ftrace/nmi/enter.h) \ - include/linux/vtime.h \ - $(wildcard include/config/virt/cpu/accounting/native.h) \ - $(wildcard include/config/virt/cpu/accounting/gen.h) \ - $(wildcard include/config/virt/cpu/accounting.h) \ - $(wildcard include/config/irq/time/accounting.h) \ - include/linux/context_tracking_state.h \ - $(wildcard include/config/context/tracking.h) \ - include/linux/hrtimer.h \ - $(wildcard include/config/high/res/timers.h) \ - $(wildcard include/config/time/low/res.h) \ - $(wildcard include/config/timerfd.h) \ - include/linux/timerqueue.h \ - include/linux/kref.h \ - arch/x86/include/asm/irq.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_cdev.h \ - include/linux/uaccess.h \ - include/linux/sched.h \ - $(wildcard include/config/sched/debug.h) \ - $(wildcard include/config/lockup/detector.h) \ - $(wildcard include/config/detect/hung/task.h) \ - $(wildcard include/config/core/dump/default/elf/headers.h) \ - $(wildcard include/config/sched/autogroup.h) \ - $(wildcard include/config/bsd/process/acct.h) \ - $(wildcard include/config/taskstats.h) \ - $(wildcard include/config/audit.h) \ - $(wildcard include/config/inotify/user.h) \ - $(wildcard include/config/fanotify.h) \ - $(wildcard include/config/epoll.h) \ - $(wildcard include/config/posix/mqueue.h) \ - $(wildcard include/config/keys.h) \ - $(wildcard include/config/perf/events.h) \ - $(wildcard include/config/bpf/syscall.h) \ - $(wildcard include/config/sched/info.h) \ - $(wildcard include/config/task/delay/acct.h) \ - $(wildcard include/config/schedstats.h) \ - $(wildcard include/config/sched/mc.h) \ - $(wildcard include/config/fair/group/sched.h) \ - $(wildcard include/config/rt/group/sched.h) \ - $(wildcard include/config/cgroup/sched.h) \ - $(wildcard include/config/blk/dev/io/trace.h) \ - $(wildcard include/config/memcg/kmem.h) \ - $(wildcard include/config/compat/brk.h) \ - $(wildcard include/config/cgroups.h) \ - $(wildcard include/config/sysvipc.h) \ - $(wildcard include/config/auditsyscall.h) \ - $(wildcard include/config/rt/mutexes.h) \ - $(wildcard include/config/block.h) \ - $(wildcard include/config/task/xacct.h) \ - $(wildcard include/config/cpusets.h) \ - $(wildcard include/config/futex.h) \ - $(wildcard include/config/fault/injection.h) \ - $(wildcard include/config/latencytop.h) \ - $(wildcard include/config/function/graph/tracer.h) \ - $(wildcard include/config/bcache.h) \ - $(wildcard include/config/arch/wants/dynamic/task/struct.h) \ - $(wildcard include/config/have/unstable/sched/clock.h) \ - $(wildcard include/config/have/copy/thread/tls.h) \ - $(wildcard include/config/debug/stack/usage.h) \ - include/uapi/linux/sched.h \ - include/linux/sched/prio.h \ - include/linux/capability.h \ - $(wildcard include/config/multiuser.h) \ - include/uapi/linux/capability.h \ - include/linux/plist.h \ - $(wildcard include/config/debug/pi/list.h) \ - include/linux/cputime.h \ - arch/x86/include/generated/asm/cputime.h \ - include/asm-generic/cputime.h \ - include/asm-generic/cputime_jiffies.h \ - include/linux/sem.h \ - include/uapi/linux/sem.h \ - include/linux/ipc.h \ - include/linux/uidgid.h \ - $(wildcard include/config/user/ns.h) \ - include/linux/highuid.h \ - include/uapi/linux/ipc.h \ - arch/x86/include/uapi/asm/ipcbuf.h \ - include/uapi/asm-generic/ipcbuf.h \ - arch/x86/include/uapi/asm/sembuf.h \ - include/linux/shm.h \ - include/uapi/linux/shm.h \ - arch/x86/include/uapi/asm/shmbuf.h \ - include/uapi/asm-generic/shmbuf.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/signal.h \ - $(wildcard include/config/old/sigaction.h) \ - include/uapi/linux/signal.h \ - arch/x86/include/asm/signal.h \ - arch/x86/include/uapi/asm/signal.h \ - include/uapi/asm-generic/signal-defs.h \ - arch/x86/include/uapi/asm/siginfo.h \ - include/asm-generic/siginfo.h \ - include/uapi/asm-generic/siginfo.h \ - include/linux/pid.h \ - include/linux/proportions.h \ - include/linux/percpu_counter.h \ - include/linux/seccomp.h \ - $(wildcard include/config/seccomp.h) \ - $(wildcard include/config/have/arch/seccomp/filter.h) \ - $(wildcard include/config/seccomp/filter.h) \ - $(wildcard include/config/checkpoint/restore.h) \ - include/uapi/linux/seccomp.h \ - arch/x86/include/asm/seccomp.h \ - arch/x86/include/asm/unistd.h \ - $(wildcard include/config/x86/x32/abi.h) \ - arch/x86/include/uapi/asm/unistd.h \ - arch/x86/include/generated/uapi/asm/unistd_64.h \ - arch/x86/include/generated/asm/unistd_64_x32.h \ - arch/x86/include/asm/ia32_unistd.h \ - arch/x86/include/generated/asm/unistd_32_ia32.h \ - include/asm-generic/seccomp.h \ - include/uapi/linux/unistd.h \ - include/linux/rculist.h \ - include/linux/rtmutex.h \ - $(wildcard include/config/debug/rt/mutexes.h) \ - include/linux/task_io_accounting.h \ - $(wildcard include/config/task/io/accounting.h) \ - include/linux/latencytop.h \ - include/linux/cred.h \ - $(wildcard include/config/debug/credentials.h) \ - $(wildcard include/config/security.h) \ - include/linux/key.h \ - include/linux/assoc_array.h \ - $(wildcard include/config/associative/array.h) \ - include/linux/selinux.h \ - $(wildcard include/config/security/selinux.h) \ - include/uapi/linux/magic.h \ - include/linux/cgroup-defs.h \ - include/uapi/linux/limits.h \ - include/linux/idr.h \ - include/linux/percpu-refcount.h \ - include/linux/percpu-rwsem.h \ - include/linux/rcu_sync.h \ - include/linux/cgroup_subsys.h \ - $(wildcard include/config/cgroup/cpuacct.h) \ - $(wildcard include/config/blk/cgroup.h) \ - $(wildcard include/config/cgroup/device.h) \ - $(wildcard include/config/cgroup/freezer.h) \ - $(wildcard include/config/cgroup/net/classid.h) \ - $(wildcard include/config/cgroup/perf.h) \ - $(wildcard include/config/cgroup/net/prio.h) \ - $(wildcard include/config/cgroup/hugetlb.h) \ - $(wildcard include/config/cgroup/pids.h) \ - $(wildcard include/config/cgroup/debug.h) \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_mod.h \ - include/linux/module.h \ - $(wildcard include/config/module/sig.h) \ - $(wildcard include/config/modules/tree/lookup.h) \ - $(wildcard include/config/kallsyms.h) \ - $(wildcard include/config/tracepoints.h) \ - $(wildcard include/config/event/tracing.h) \ - $(wildcard include/config/livepatch.h) \ - $(wildcard include/config/module/unload.h) \ - $(wildcard include/config/constructors.h) \ - $(wildcard include/config/debug/set/module/ronx.h) \ - include/linux/stat.h \ - arch/x86/include/uapi/asm/stat.h \ - include/uapi/linux/stat.h \ - include/linux/kmod.h \ - include/linux/elf.h \ - arch/x86/include/asm/elf.h \ - arch/x86/include/asm/user.h \ - arch/x86/include/asm/user_64.h \ - arch/x86/include/asm/vdso.h \ - $(wildcard include/config/x86/x32.h) \ - include/uapi/linux/elf.h \ - include/uapi/linux/elf-em.h \ - include/linux/kobject.h \ - $(wildcard include/config/uevent/helper.h) \ - $(wildcard include/config/debug/kobject/release.h) \ - include/linux/sysfs.h \ - include/linux/kernfs.h \ - $(wildcard include/config/kernfs.h) \ - include/linux/kobject_ns.h \ - include/linux/moduleparam.h \ - $(wildcard include/config/alpha.h) \ - $(wildcard include/config/ppc64.h) \ - include/linux/rbtree_latch.h \ - arch/x86/include/asm/module.h \ - $(wildcard include/config/m486.h) \ - $(wildcard include/config/m586.h) \ - $(wildcard include/config/m586tsc.h) \ - $(wildcard include/config/m586mmx.h) \ - $(wildcard include/config/mcore2.h) \ - $(wildcard include/config/m686.h) \ - $(wildcard include/config/mpentiumii.h) \ - $(wildcard include/config/mpentiumiii.h) \ - $(wildcard include/config/mpentiumm.h) \ - $(wildcard include/config/mpentium4.h) \ - $(wildcard include/config/mk6.h) \ - $(wildcard include/config/mk8.h) \ - $(wildcard include/config/melan.h) \ - $(wildcard include/config/mcrusoe.h) \ - $(wildcard include/config/mefficeon.h) \ - $(wildcard include/config/mwinchipc6.h) \ - $(wildcard include/config/mwinchip3d.h) \ - $(wildcard include/config/mcyrixiii.h) \ - $(wildcard include/config/mviac3/2.h) \ - $(wildcard include/config/mviac7.h) \ - $(wildcard include/config/mgeodegx1.h) \ - $(wildcard include/config/mgeode/lx.h) \ - include/asm-generic/module.h \ - $(wildcard include/config/have/mod/arch/specific.h) \ - $(wildcard include/config/modules/use/elf/rel.h) \ - $(wildcard include/config/modules/use/elf/rela.h) \ - include/linux/cdev.h \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/device.h \ - $(wildcard include/config/debug/devres.h) \ - $(wildcard include/config/generic/msi/irq/domain.h) \ - $(wildcard include/config/pinctrl.h) \ - $(wildcard include/config/generic/msi/irq.h) \ - $(wildcard include/config/dma/cma.h) \ - $(wildcard include/config/of.h) \ - $(wildcard include/config/devtmpfs.h) \ - $(wildcard include/config/sysfs/deprecated.h) \ - include/linux/klist.h \ - include/linux/pinctrl/devinfo.h \ - include/linux/pinctrl/consumer.h \ - include/linux/seq_file.h \ - include/linux/fs.h \ - $(wildcard include/config/fs/posix/acl.h) \ - $(wildcard include/config/cgroup/writeback.h) \ - $(wildcard include/config/ima.h) \ - $(wildcard include/config/fsnotify.h) \ - $(wildcard include/config/file/locking.h) \ - $(wildcard include/config/quota.h) \ - $(wildcard include/config/blk/dev/loop.h) \ - $(wildcard include/config/fs/dax.h) \ - include/linux/dcache.h \ - include/linux/rculist_bl.h \ - include/linux/list_bl.h \ - include/linux/lockref.h \ - $(wildcard include/config/arch/use/cmpxchg/lockref.h) \ - include/linux/path.h \ - include/linux/list_lru.h \ - include/linux/radix-tree.h \ - include/linux/semaphore.h \ - include/uapi/linux/fiemap.h \ - include/linux/migrate_mode.h \ - include/linux/blk_types.h \ - $(wildcard include/config/blk/dev/integrity.h) \ - include/uapi/linux/fs.h \ - include/linux/quota.h \ - $(wildcard include/config/quota/netlink/interface.h) \ - include/uapi/linux/dqblk_xfs.h \ - include/linux/dqblk_v1.h \ - include/linux/dqblk_v2.h \ - include/linux/dqblk_qtree.h \ - include/linux/projid.h \ - include/uapi/linux/quota.h \ - include/linux/nfs_fs_i.h \ - include/linux/fcntl.h \ - include/uapi/linux/fcntl.h \ - arch/x86/include/uapi/asm/fcntl.h \ - include/uapi/asm-generic/fcntl.h \ - include/linux/pinctrl/pinctrl-state.h \ - include/linux/ratelimit.h \ - arch/x86/include/asm/device.h \ - $(wildcard include/config/x86/dev/dma/ops.h) \ - $(wildcard include/config/intel/iommu.h) \ - $(wildcard include/config/amd/iommu.h) \ - include/linux/pm_wakeup.h \ - include/linux/dma-mapping.h \ - $(wildcard include/config/has/dma.h) \ - $(wildcard include/config/arch/has/dma/set/coherent/mask.h) \ - $(wildcard include/config/have/dma/attrs.h) \ - $(wildcard include/config/need/dma/map/state.h) \ - include/linux/sizes.h \ - include/linux/dma-attrs.h \ - include/linux/dma-direction.h \ - arch/x86/include/asm/dma-mapping.h \ - $(wildcard include/config/isa.h) \ - $(wildcard include/config/x86/dma/remap.h) \ - include/linux/kmemcheck.h \ - include/linux/dma-debug.h \ - $(wildcard include/config/dma/api/debug.h) \ - arch/x86/include/asm/swiotlb.h \ - $(wildcard include/config/swiotlb.h) \ - include/linux/swiotlb.h \ - include/linux/dma-contiguous.h \ - include/asm-generic/dma-mapping-common.h \ - include/asm-generic/dma-coherent.h \ - $(wildcard include/config/have/generic/dma/coherent.h) \ - include/linux/delay.h \ - arch/x86/include/asm/delay.h \ - include/asm-generic/delay.h \ - include/linux/fb.h \ - $(wildcard include/config/fb/deferred/io.h) \ - $(wildcard include/config/fb/tileblitting.h) \ - $(wildcard include/config/fb/backlight.h) \ - $(wildcard include/config/fb/foreign/endian.h) \ - $(wildcard include/config/fb/both/endian.h) \ - $(wildcard include/config/fb/big/endian.h) \ - $(wildcard include/config/fb/little/endian.h) \ - include/linux/kgdb.h \ - $(wildcard include/config/have/arch/kgdb.h) \ - $(wildcard include/config/kgdb.h) \ - $(wildcard include/config/serial/kgdb/nmi.h) \ - arch/x86/include/asm/kgdb.h \ - include/uapi/linux/fb.h \ - include/linux/i2c.h \ - $(wildcard include/config/i2c.h) \ - $(wildcard include/config/i2c/slave.h) \ - $(wildcard include/config/i2c/boardinfo.h) \ - $(wildcard include/config/i2c/mux.h) \ - include/linux/mod_devicetable.h \ - include/linux/uuid.h \ - include/uapi/linux/uuid.h \ - include/linux/of.h \ - $(wildcard include/config/sparc.h) \ - $(wildcard include/config/of/dynamic.h) \ - $(wildcard include/config/attach/node.h) \ - $(wildcard include/config/detach/node.h) \ - $(wildcard include/config/add/property.h) \ - $(wildcard include/config/remove/property.h) \ - $(wildcard include/config/update/property.h) \ - $(wildcard include/config/of/numa.h) \ - $(wildcard include/config/no/change.h) \ - $(wildcard include/config/change/add.h) \ - $(wildcard include/config/change/remove.h) \ - $(wildcard include/config/of/resolve.h) \ - $(wildcard include/config/of/overlay.h) \ - include/linux/property.h \ - include/linux/fwnode.h \ - include/uapi/linux/i2c.h \ - include/linux/backlight.h \ - include/linux/slab.h \ - $(wildcard include/config/debug/slab.h) \ - $(wildcard include/config/failslab.h) \ - $(wildcard include/config/slab.h) \ - $(wildcard include/config/slub.h) \ - $(wildcard include/config/slob.h) \ - include/linux/kmemleak.h \ - $(wildcard include/config/debug/kmemleak.h) \ - include/linux/kasan.h \ - include/linux/io.h \ - include/linux/poll.h \ - include/uapi/linux/poll.h \ - arch/x86/include/uapi/asm/poll.h \ - include/uapi/asm-generic/poll.h \ - include/linux/pci.h \ - $(wildcard include/config/pci/iov.h) \ - $(wildcard include/config/pcieaspm.h) \ - $(wildcard include/config/pci/ats.h) \ - $(wildcard include/config/pci/domains/generic.h) \ - $(wildcard include/config/pci/bus/addr/t/64bit.h) \ - $(wildcard include/config/pcieportbus.h) \ - $(wildcard include/config/pcieaer.h) \ - $(wildcard include/config/pcie/ecrc.h) \ - $(wildcard include/config/ht/irq.h) \ - $(wildcard include/config/pci/domains.h) \ - $(wildcard include/config/pci/quirks.h) \ - $(wildcard include/config/hibernate/callbacks.h) \ - $(wildcard include/config/acpi/mcfg.h) \ - $(wildcard include/config/hotplug/pci.h) \ - $(wildcard include/config/eeh.h) \ - include/linux/resource_ext.h \ - include/uapi/linux/pci.h \ - include/uapi/linux/pci_regs.h \ - include/linux/pci_ids.h \ - include/linux/pci-dma.h \ - include/linux/dmapool.h \ - arch/x86/include/asm/pci.h \ - $(wildcard include/config/pci/msi/irq/domain.h) \ - arch/x86/include/asm/pci_64.h \ - $(wildcard include/config/calgary/iommu.h) \ - include/asm-generic/pci-dma-compat.h \ - include/asm-generic/pci.h \ - include/linux/vmalloc.h \ - include/linux/aio.h \ - include/uapi/linux/aio_abi.h \ - include/linux/splice.h \ - include/linux/pipe_fs_i.h \ - include/generated/uapi/linux/version.h \ - include/linux/uio.h \ - include/uapi/linux/uio.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.h \ - $(wildcard include/config/block/id.h) \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_sgdma.h \ - -/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_sgdma.o: $(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_sgdma.o) - -$(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_sgdma.o): diff --git a/host_software/driver/xdma/.cdev_xvc.o.cmd b/host_software/driver/xdma/.cdev_xvc.o.cmd deleted file mode 100644 index 086690b..0000000 --- a/host_software/driver/xdma/.cdev_xvc.o.cmd +++ /dev/null @@ -1,995 +0,0 @@ -cmd_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_xvc.o := gcc -Wp,-MD,/home/wangxuan/pcie_xdma_host_software/driver/xdma/.cdev_xvc.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/5/include -I./arch/x86/include -Iarch/x86/include/generated/uapi -Iarch/x86/include/generated -Iinclude -I./arch/x86/include/uapi -Iarch/x86/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -Iubuntu/include -D__KERNEL__ -fno-pie -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -fno-pie -no-pie -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_X86_X32_ABI -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -DCONFIG_AS_SHA1_NI=1 -DCONFIG_AS_SHA256_NI=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -DRETPOLINE -fno-delete-null-pointer-checks -O2 --param=allow-store-data-races=0 -DCC_HAVE_ASM_GOTO -Wframe-larger-than=1024 -fstack-protector-strong -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wno-pointer-sign -Wno-array-bounds -Wno-maybe-uninitialized -fno-strict-overflow -fno-merge-all-constants -fmerge-constants -fno-stack-check -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -DMODULE -D"KBUILD_STR(s)=$(pound)s" -D"KBUILD_BASENAME=KBUILD_STR(cdev_xvc)" -D"KBUILD_MODNAME=KBUILD_STR(xdma)" -c -o /home/wangxuan/pcie_xdma_host_software/driver/xdma/.tmp_cdev_xvc.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_xvc.c - -source_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_xvc.o := /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_xvc.c - -deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_xvc.o := \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_cdev.h \ - include/linux/kernel.h \ - $(wildcard include/config/lbdaf.h) \ - $(wildcard include/config/preempt/voluntary.h) \ - $(wildcard include/config/debug/atomic/sleep.h) \ - $(wildcard include/config/mmu.h) \ - $(wildcard include/config/prove/locking.h) \ - $(wildcard include/config/panic/timeout.h) \ - $(wildcard include/config/tracing.h) \ - $(wildcard include/config/ftrace/mcount/record.h) \ - /usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h \ - include/linux/linkage.h \ - include/linux/compiler.h \ - $(wildcard include/config/sparse/rcu/pointer.h) \ - $(wildcard include/config/trace/branch/profiling.h) \ - $(wildcard include/config/profile/all/branches.h) \ - $(wildcard include/config/kasan.h) \ - $(wildcard include/config/enable/must/check.h) \ - $(wildcard include/config/enable/warn/deprecated.h) \ - $(wildcard include/config/kprobes.h) \ - include/linux/compiler-gcc.h \ - $(wildcard include/config/arch/supports/optimized/inlining.h) \ - $(wildcard include/config/optimize/inlining.h) \ - $(wildcard include/config/arm64.h) \ - $(wildcard include/config/gcov/kernel.h) \ - $(wildcard include/config/arch/use/builtin/bswap.h) \ - include/uapi/linux/types.h \ - arch/x86/include/uapi/asm/types.h \ - include/uapi/asm-generic/types.h \ - include/asm-generic/int-ll64.h \ - include/uapi/asm-generic/int-ll64.h \ - arch/x86/include/uapi/asm/bitsperlong.h \ - include/asm-generic/bitsperlong.h \ - $(wildcard include/config/64bit.h) \ - include/uapi/asm-generic/bitsperlong.h \ - include/uapi/linux/posix_types.h \ - include/linux/stddef.h \ - include/uapi/linux/stddef.h \ - arch/x86/include/asm/posix_types.h \ - $(wildcard include/config/x86/32.h) \ - arch/x86/include/uapi/asm/posix_types_64.h \ - include/uapi/asm-generic/posix_types.h \ - include/linux/kasan-checks.h \ - include/linux/stringify.h \ - include/linux/export.h \ - $(wildcard include/config/have/underscore/symbol/prefix.h) \ - $(wildcard include/config/modules.h) \ - $(wildcard include/config/modversions.h) \ - $(wildcard include/config/unused/symbols.h) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/x86/64.h) \ - $(wildcard include/config/x86/alignment/16.h) \ - include/linux/types.h \ - $(wildcard include/config/have/uid16.h) \ - $(wildcard include/config/uid16.h) \ - $(wildcard include/config/arch/dma/addr/t/64bit.h) \ - $(wildcard include/config/phys/addr/t/64bit.h) \ - include/linux/bitops.h \ - include/linux/bits.h \ - arch/x86/include/asm/bitops.h \ - $(wildcard include/config/x86/cmov.h) \ - arch/x86/include/asm/alternative.h \ - $(wildcard include/config/smp.h) \ - arch/x86/include/asm/asm.h \ - arch/x86/include/asm/rmwcc.h \ - arch/x86/include/asm/barrier.h \ - $(wildcard include/config/x86/ppro/fence.h) \ - arch/x86/include/asm/nops.h \ - $(wildcard include/config/mk7.h) \ - $(wildcard include/config/x86/p6/nop.h) \ - include/asm-generic/barrier.h \ - include/asm-generic/bitops/find.h \ - $(wildcard include/config/generic/find/first/bit.h) \ - include/asm-generic/bitops/sched.h \ - arch/x86/include/asm/arch_hweight.h \ - arch/x86/include/asm/cpufeatures.h \ - $(wildcard include/config/page/table/isolation.h) \ - arch/x86/include/asm/required-features.h \ - $(wildcard include/config/x86/minimum/cpu/family.h) \ - $(wildcard include/config/math/emulation.h) \ - $(wildcard include/config/x86/pae.h) \ - $(wildcard include/config/x86/cmpxchg64.h) \ - $(wildcard include/config/x86/use/3dnow.h) \ - $(wildcard include/config/matom.h) \ - $(wildcard include/config/paravirt.h) \ - arch/x86/include/asm/disabled-features.h \ - $(wildcard include/config/x86/intel/mpx.h) \ - $(wildcard include/config/x86/intel/memory/protection/keys.h) \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/le.h \ - arch/x86/include/uapi/asm/byteorder.h \ - include/linux/byteorder/little_endian.h \ - include/uapi/linux/byteorder/little_endian.h \ - include/linux/swab.h \ - include/uapi/linux/swab.h \ - arch/x86/include/uapi/asm/swab.h \ - include/linux/byteorder/generic.h \ - include/asm-generic/bitops/ext2-atomic-setbit.h \ - include/linux/log2.h \ - $(wildcard include/config/arch/has/ilog2/u32.h) \ - $(wildcard include/config/arch/has/ilog2/u64.h) \ - include/linux/typecheck.h \ - include/linux/printk.h \ - $(wildcard include/config/message/loglevel/default.h) \ - $(wildcard include/config/early/printk.h) \ - $(wildcard include/config/printk.h) \ - $(wildcard include/config/dynamic/debug.h) \ - include/linux/init.h \ - $(wildcard include/config/broken/rodata.h) \ - $(wildcard include/config/lto.h) \ - include/linux/kern_levels.h \ - include/linux/cache.h \ - $(wildcard include/config/arch/has/cache/line/size.h) \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.h \ - arch/x86/include/asm/cache.h \ - $(wildcard include/config/x86/l1/cache/shift.h) \ - $(wildcard include/config/x86/internode/cache/shift.h) \ - $(wildcard include/config/x86/vsmp.h) \ - include/linux/dynamic_debug.h \ - include/linux/uaccess.h \ - $(wildcard include/config/preempt/count.h) \ - include/linux/sched.h \ - $(wildcard include/config/no/hz/common.h) \ - $(wildcard include/config/sched/debug.h) \ - $(wildcard include/config/prove/rcu.h) \ - $(wildcard include/config/lockup/detector.h) \ - $(wildcard include/config/detect/hung/task.h) \ - $(wildcard include/config/core/dump/default/elf/headers.h) \ - $(wildcard include/config/virt/cpu/accounting/native.h) \ - $(wildcard include/config/sched/autogroup.h) \ - $(wildcard include/config/bsd/process/acct.h) \ - $(wildcard include/config/taskstats.h) \ - $(wildcard include/config/audit.h) \ - $(wildcard include/config/inotify/user.h) \ - $(wildcard include/config/fanotify.h) \ - $(wildcard include/config/epoll.h) \ - $(wildcard include/config/posix/mqueue.h) \ - $(wildcard include/config/keys.h) \ - $(wildcard include/config/perf/events.h) \ - $(wildcard include/config/bpf/syscall.h) \ - $(wildcard include/config/sched/info.h) \ - $(wildcard include/config/task/delay/acct.h) \ - $(wildcard include/config/schedstats.h) \ - $(wildcard include/config/sched/smt.h) \ - $(wildcard include/config/sched/mc.h) \ - $(wildcard include/config/numa.h) \ - $(wildcard include/config/fair/group/sched.h) \ - $(wildcard include/config/rt/group/sched.h) \ - $(wildcard include/config/thread/info/in/task.h) \ - $(wildcard include/config/cgroup/sched.h) \ - $(wildcard include/config/preempt/notifiers.h) \ - $(wildcard include/config/blk/dev/io/trace.h) \ - $(wildcard include/config/preempt/rcu.h) \ - $(wildcard include/config/tasks/rcu.h) \ - $(wildcard include/config/memcg.h) \ - $(wildcard include/config/memcg/kmem.h) \ - $(wildcard include/config/compat/brk.h) \ - $(wildcard include/config/cgroups.h) \ - $(wildcard include/config/cc/stackprotector.h) \ - $(wildcard include/config/virt/cpu/accounting/gen.h) \ - $(wildcard include/config/sysvipc.h) \ - $(wildcard include/config/auditsyscall.h) \ - $(wildcard include/config/rt/mutexes.h) \ - $(wildcard include/config/debug/mutexes.h) \ - $(wildcard include/config/trace/irqflags.h) \ - $(wildcard include/config/lockdep.h) \ - $(wildcard include/config/block.h) \ - $(wildcard include/config/task/xacct.h) \ - $(wildcard include/config/cpusets.h) \ - $(wildcard include/config/futex.h) \ - $(wildcard include/config/compat.h) \ - $(wildcard include/config/debug/preempt.h) \ - $(wildcard include/config/numa/balancing.h) \ - $(wildcard include/config/arch/want/batched/unmap/tlb/flush.h) \ - $(wildcard include/config/fault/injection.h) \ - $(wildcard include/config/latencytop.h) \ - $(wildcard include/config/function/graph/tracer.h) \ - $(wildcard include/config/uprobes.h) \ - $(wildcard include/config/bcache.h) \ - $(wildcard include/config/arch/wants/dynamic/task/struct.h) \ - $(wildcard include/config/have/unstable/sched/clock.h) \ - $(wildcard include/config/irq/time/accounting.h) \ - $(wildcard include/config/hotplug/cpu.h) \ - $(wildcard include/config/no/hz/full.h) \ - $(wildcard include/config/proc/fs.h) \ - $(wildcard include/config/stack/growsup.h) \ - $(wildcard include/config/have/copy/thread/tls.h) \ - $(wildcard include/config/debug/stack/usage.h) \ - $(wildcard include/config/preempt.h) \ - include/uapi/linux/sched.h \ - include/linux/sched/prio.h \ - arch/x86/include/uapi/asm/param.h \ - include/asm-generic/param.h \ - $(wildcard include/config/hz.h) \ - include/uapi/asm-generic/param.h \ - include/linux/capability.h \ - $(wildcard include/config/multiuser.h) \ - include/uapi/linux/capability.h \ - include/linux/threads.h \ - $(wildcard include/config/nr/cpus.h) \ - $(wildcard include/config/base/small.h) \ - include/linux/timex.h \ - include/uapi/linux/timex.h \ - include/linux/time.h \ - $(wildcard include/config/arch/uses/gettimeoffset.h) \ - include/linux/seqlock.h \ - $(wildcard include/config/debug/lock/alloc.h) \ - include/linux/spinlock.h \ - $(wildcard include/config/debug/spinlock.h) \ - $(wildcard include/config/generic/lockbreak.h) \ - include/linux/preempt.h \ - $(wildcard include/config/preempt/tracer.h) \ - include/linux/list.h \ - $(wildcard include/config/debug/list.h) \ - include/linux/poison.h \ - $(wildcard include/config/illegal/pointer/value.h) \ - include/uapi/linux/const.h \ - arch/x86/include/asm/preempt.h \ - arch/x86/include/asm/percpu.h \ - $(wildcard include/config/x86/64/smp.h) \ - include/asm-generic/percpu.h \ - $(wildcard include/config/have/setup/per/cpu/area.h) \ - include/linux/percpu-defs.h \ - $(wildcard include/config/debug/force/weak/per/cpu.h) \ - include/linux/thread_info.h \ - include/linux/bug.h \ - $(wildcard include/config/generic/bug.h) \ - arch/x86/include/asm/bug.h \ - $(wildcard include/config/debug/bugverbose.h) \ - include/asm-generic/bug.h \ - $(wildcard include/config/bug.h) \ - $(wildcard include/config/generic/bug/relative/pointers.h) \ - arch/x86/include/asm/thread_info.h \ - $(wildcard include/config/vm86.h) \ - $(wildcard include/config/ia32/emulation.h) \ - arch/x86/include/asm/page.h \ - arch/x86/include/asm/page_types.h \ - $(wildcard include/config/physical/start.h) \ - $(wildcard include/config/physical/align.h) \ - arch/x86/include/asm/page_64_types.h \ - $(wildcard include/config/kasan/extra.h) \ - $(wildcard include/config/randomize/base.h) \ - $(wildcard include/config/randomize/base/max/offset.h) \ - arch/x86/include/asm/page_64.h \ - $(wildcard include/config/debug/virtual.h) \ - $(wildcard include/config/flatmem.h) \ - $(wildcard include/config/x86/vsyscall/emulation.h) \ - include/linux/range.h \ - include/asm-generic/memory_model.h \ - $(wildcard include/config/discontigmem.h) \ - $(wildcard include/config/sparsemem/vmemmap.h) \ - $(wildcard include/config/sparsemem.h) \ - include/linux/pfn.h \ - include/asm-generic/getorder.h \ - arch/x86/include/asm/cpufeature.h \ - $(wildcard include/config/x86/feature/names.h) \ - $(wildcard include/config/x86/fast/feature/tests.h) \ - arch/x86/include/asm/processor.h \ - $(wildcard include/config/x86/debugctlmsr.h) \ - $(wildcard include/config/xen.h) \ - arch/x86/include/asm/processor-flags.h \ - arch/x86/include/uapi/asm/processor-flags.h \ - arch/x86/include/asm/math_emu.h \ - arch/x86/include/asm/ptrace.h \ - arch/x86/include/asm/segment.h \ - $(wildcard include/config/x86/32/lazy/gs.h) \ - arch/x86/include/uapi/asm/ptrace.h \ - arch/x86/include/uapi/asm/ptrace-abi.h \ - arch/x86/include/asm/paravirt_types.h \ - $(wildcard include/config/x86/local/apic.h) \ - $(wildcard include/config/pgtable/levels.h) \ - $(wildcard include/config/queued/spinlocks.h) \ - $(wildcard include/config/paravirt/debug.h) \ - arch/x86/include/asm/desc_defs.h \ - arch/x86/include/asm/kmap_types.h \ - $(wildcard include/config/debug/highmem.h) \ - include/asm-generic/kmap_types.h \ - arch/x86/include/asm/pgtable_types.h \ - $(wildcard include/config/kmemcheck.h) \ - $(wildcard include/config/mem/soft/dirty.h) \ - arch/x86/include/asm/pgtable_64_types.h \ - arch/x86/include/asm/sparsemem.h \ - arch/x86/include/asm/nospec-branch.h \ - $(wildcard include/config/retpoline.h) \ - include/linux/static_key.h \ - include/linux/jump_label.h \ - $(wildcard include/config/jump/label.h) \ - arch/x86/include/asm/jump_label.h \ - include/linux/atomic.h \ - $(wildcard include/config/generic/atomic64.h) \ - arch/x86/include/asm/atomic.h \ - arch/x86/include/asm/cmpxchg.h \ - arch/x86/include/asm/cmpxchg_64.h \ - arch/x86/include/asm/atomic64_64.h \ - include/asm-generic/atomic-long.h \ - arch/x86/include/asm/alternative-asm.h \ - arch/x86/include/asm/msr-index.h \ - $(wildcard include/config/tdp/nominal.h) \ - $(wildcard include/config/tdp/level/1.h) \ - $(wildcard include/config/tdp/level/2.h) \ - $(wildcard include/config/tdp/control.h) \ - $(wildcard include/config/tdp/level1.h) \ - $(wildcard include/config/tdp/level2.h) \ - arch/x86/include/asm/spinlock_types.h \ - $(wildcard include/config/paravirt/spinlocks.h) \ - include/asm-generic/qrwlock_types.h \ - include/asm-generic/ptrace.h \ - arch/x86/include/uapi/asm/sigcontext.h \ - arch/x86/include/asm/current.h \ - arch/x86/include/asm/msr.h \ - arch/x86/include/asm/msr-index.h \ - arch/x86/include/uapi/asm/errno.h \ - include/uapi/asm-generic/errno.h \ - include/uapi/asm-generic/errno-base.h \ - arch/x86/include/asm/cpumask.h \ - include/linux/cpumask.h \ - $(wildcard include/config/cpumask/offstack.h) \ - $(wildcard include/config/debug/per/cpu/maps.h) \ - include/linux/bitmap.h \ - include/linux/string.h \ - $(wildcard include/config/binary/printf.h) \ - include/uapi/linux/string.h \ - arch/x86/include/asm/string.h \ - arch/x86/include/asm/string_64.h \ - arch/x86/include/uapi/asm/msr.h \ - include/uapi/linux/ioctl.h \ - arch/x86/include/uapi/asm/ioctl.h \ - include/asm-generic/ioctl.h \ - include/uapi/asm-generic/ioctl.h \ - arch/x86/include/asm/paravirt.h \ - arch/x86/include/asm/special_insns.h \ - arch/x86/include/asm/fpu/types.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - include/linux/math64.h \ - $(wildcard include/config/arch/supports/int128.h) \ - arch/x86/include/asm/div64.h \ - include/asm-generic/div64.h \ - include/linux/err.h \ - include/linux/irqflags.h \ - $(wildcard include/config/irqsoff/tracer.h) \ - $(wildcard include/config/trace/irqflags/support.h) \ - arch/x86/include/asm/irqflags.h \ - include/linux/bottom_half.h \ - include/linux/spinlock_types.h \ - include/linux/lockdep.h \ - $(wildcard include/config/lock/stat.h) \ - include/linux/rwlock_types.h \ - arch/x86/include/asm/spinlock.h \ - arch/x86/include/asm/qrwlock.h \ - include/asm-generic/qrwlock.h \ - include/linux/rwlock.h \ - include/linux/spinlock_api_smp.h \ - $(wildcard include/config/inline/spin/lock.h) \ - $(wildcard include/config/inline/spin/lock/bh.h) \ - $(wildcard include/config/inline/spin/lock/irq.h) \ - $(wildcard include/config/inline/spin/lock/irqsave.h) \ - $(wildcard include/config/inline/spin/trylock.h) \ - $(wildcard include/config/inline/spin/trylock/bh.h) \ - $(wildcard include/config/uninline/spin/unlock.h) \ - $(wildcard include/config/inline/spin/unlock/bh.h) \ - $(wildcard include/config/inline/spin/unlock/irq.h) \ - $(wildcard include/config/inline/spin/unlock/irqrestore.h) \ - include/linux/rwlock_api_smp.h \ - $(wildcard include/config/inline/read/lock.h) \ - $(wildcard include/config/inline/write/lock.h) \ - $(wildcard include/config/inline/read/lock/bh.h) \ - $(wildcard include/config/inline/write/lock/bh.h) \ - $(wildcard include/config/inline/read/lock/irq.h) \ - $(wildcard include/config/inline/write/lock/irq.h) \ - $(wildcard include/config/inline/read/lock/irqsave.h) \ - $(wildcard include/config/inline/write/lock/irqsave.h) \ - $(wildcard include/config/inline/read/trylock.h) \ - $(wildcard include/config/inline/write/trylock.h) \ - $(wildcard include/config/inline/read/unlock.h) \ - $(wildcard include/config/inline/write/unlock.h) \ - $(wildcard include/config/inline/read/unlock/bh.h) \ - $(wildcard include/config/inline/write/unlock/bh.h) \ - $(wildcard include/config/inline/read/unlock/irq.h) \ - $(wildcard include/config/inline/write/unlock/irq.h) \ - $(wildcard include/config/inline/read/unlock/irqrestore.h) \ - $(wildcard include/config/inline/write/unlock/irqrestore.h) \ - include/linux/time64.h \ - include/uapi/linux/time.h \ - include/uapi/linux/param.h \ - arch/x86/include/asm/timex.h \ - arch/x86/include/asm/tsc.h \ - $(wildcard include/config/x86/tsc.h) \ - include/linux/jiffies.h \ - include/generated/timeconst.h \ - include/linux/plist.h \ - $(wildcard include/config/debug/pi/list.h) \ - include/linux/rbtree.h \ - include/linux/rcupdate.h \ - $(wildcard include/config/tiny/rcu.h) \ - $(wildcard include/config/tree/rcu.h) \ - $(wildcard include/config/rcu/trace.h) \ - $(wildcard include/config/rcu/stall/common.h) \ - $(wildcard include/config/rcu/nocb/cpu.h) \ - $(wildcard include/config/debug/objects/rcu/head.h) \ - $(wildcard include/config/rcu/boost.h) \ - $(wildcard include/config/rcu/nocb/cpu/all.h) \ - $(wildcard include/config/no/hz/full/sysidle.h) \ - include/linux/completion.h \ - include/linux/wait.h \ - include/uapi/linux/wait.h \ - include/linux/debugobjects.h \ - $(wildcard include/config/debug/objects.h) \ - $(wildcard include/config/debug/objects/free.h) \ - include/linux/ktime.h \ - include/linux/timekeeping.h \ - include/linux/rcutree.h \ - include/linux/errno.h \ - include/uapi/linux/errno.h \ - include/linux/nodemask.h \ - $(wildcard include/config/highmem.h) \ - $(wildcard include/config/movable/node.h) \ - include/linux/numa.h \ - $(wildcard include/config/nodes/shift.h) \ - include/linux/mm_types.h \ - $(wildcard include/config/split/ptlock/cpus.h) \ - $(wildcard include/config/arch/enable/split/pmd/ptlock.h) \ - $(wildcard include/config/have/cmpxchg/double.h) \ - $(wildcard include/config/have/aligned/struct/page.h) \ - $(wildcard include/config/transparent/hugepage.h) \ - $(wildcard include/config/userfaultfd.h) \ - $(wildcard include/config/aio.h) \ - $(wildcard include/config/mmu/notifier.h) \ - $(wildcard include/config/compaction.h) \ - $(wildcard include/config/hugetlb/page.h) \ - include/linux/auxvec.h \ - include/uapi/linux/auxvec.h \ - arch/x86/include/uapi/asm/auxvec.h \ - include/linux/rwsem.h \ - $(wildcard include/config/rwsem/spin/on/owner.h) \ - $(wildcard include/config/rwsem/generic/spinlock.h) \ - include/linux/osq_lock.h \ - arch/x86/include/asm/rwsem.h \ - include/linux/uprobes.h \ - arch/x86/include/asm/uprobes.h \ - include/linux/notifier.h \ - include/linux/mutex.h \ - $(wildcard include/config/mutex/spin/on/owner.h) \ - include/linux/srcu.h \ - include/linux/workqueue.h \ - $(wildcard include/config/debug/objects/work.h) \ - $(wildcard include/config/freezer.h) \ - $(wildcard include/config/sysfs.h) \ - include/linux/timer.h \ - $(wildcard include/config/debug/objects/timers.h) \ - include/linux/sysctl.h \ - $(wildcard include/config/sysctl.h) \ - include/uapi/linux/sysctl.h \ - include/linux/page-flags-layout.h \ - include/generated/bounds.h \ - arch/x86/include/asm/mmu.h \ - $(wildcard include/config/modify/ldt/syscall.h) \ - include/linux/cputime.h \ - arch/x86/include/generated/asm/cputime.h \ - include/asm-generic/cputime.h \ - $(wildcard include/config/virt/cpu/accounting.h) \ - include/asm-generic/cputime_jiffies.h \ - include/linux/smp.h \ - $(wildcard include/config/up/late/init.h) \ - include/linux/llist.h \ - $(wildcard include/config/arch/have/nmi/safe/cmpxchg.h) \ - arch/x86/include/asm/smp.h \ - $(wildcard include/config/x86/io/apic.h) \ - $(wildcard include/config/x86/32/smp.h) \ - $(wildcard include/config/debug/nmi/selftest.h) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/eisa.h) \ - $(wildcard include/config/x86/mpparse.h) \ - arch/x86/include/asm/mpspec_def.h \ - arch/x86/include/asm/x86_init.h \ - arch/x86/include/uapi/asm/bootparam.h \ - include/linux/screen_info.h \ - include/uapi/linux/screen_info.h \ - include/linux/apm_bios.h \ - include/uapi/linux/apm_bios.h \ - include/linux/edd.h \ - include/uapi/linux/edd.h \ - arch/x86/include/asm/e820.h \ - $(wildcard include/config/efi.h) \ - $(wildcard include/config/hibernation.h) \ - arch/x86/include/uapi/asm/e820.h \ - $(wildcard include/config/x86/pmem/legacy.h) \ - $(wildcard include/config/intel/txt.h) \ - include/linux/ioport.h \ - $(wildcard include/config/memory/hotremove.h) \ - arch/x86/include/asm/ist.h \ - arch/x86/include/uapi/asm/ist.h \ - include/video/edid.h \ - $(wildcard include/config/x86.h) \ - include/uapi/video/edid.h \ - arch/x86/include/asm/apicdef.h \ - arch/x86/include/asm/apic.h \ - $(wildcard include/config/x86/x2apic.h) \ - include/linux/pm.h \ - $(wildcard include/config/vt/console/sleep.h) \ - $(wildcard include/config/pm.h) \ - $(wildcard include/config/pm/sleep.h) \ - $(wildcard include/config/pm/clk.h) \ - $(wildcard include/config/pm/generic/domains.h) \ - arch/x86/include/asm/fixmap.h \ - $(wildcard include/config/paravirt/clock.h) \ - $(wildcard include/config/provide/ohci1394/dma/init.h) \ - $(wildcard include/config/pci/mmconfig.h) \ - $(wildcard include/config/x86/intel/mid.h) \ - arch/x86/include/asm/acpi.h \ - $(wildcard include/config/acpi/apei.h) \ - $(wildcard include/config/acpi.h) \ - $(wildcard include/config/acpi/numa.h) \ - include/acpi/pdc_intel.h \ - arch/x86/include/asm/numa.h \ - $(wildcard include/config/numa/emu.h) \ - arch/x86/include/asm/topology.h \ - include/asm-generic/topology.h \ - $(wildcard include/config/need/multiple/nodes.h) \ - $(wildcard include/config/have/memoryless/nodes.h) \ - arch/x86/include/asm/realmode.h \ - $(wildcard include/config/acpi/sleep.h) \ - arch/x86/include/asm/io.h \ - $(wildcard include/config/mtrr.h) \ - $(wildcard include/config/x86/pat.h) \ - arch/x86/include/generated/asm/early_ioremap.h \ - include/asm-generic/early_ioremap.h \ - $(wildcard include/config/generic/early/ioremap.h) \ - include/asm-generic/iomap.h \ - $(wildcard include/config/has/ioport/map.h) \ - $(wildcard include/config/pci.h) \ - $(wildcard include/config/generic/iomap.h) \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/no/generic/pci/ioport/map.h) \ - $(wildcard include/config/generic/pci/iomap.h) \ - include/xen/xen.h \ - $(wildcard include/config/xen/dom0.h) \ - $(wildcard include/config/xen/pvh.h) \ - include/xen/interface/xen.h \ - arch/x86/include/asm/xen/interface.h \ - arch/x86/include/asm/xen/interface_64.h \ - arch/x86/include/asm/pvclock-abi.h \ - arch/x86/include/asm/xen/hypervisor.h \ - include/xen/features.h \ - include/xen/interface/features.h \ - arch/x86/include/asm/pvclock.h \ - $(wildcard include/config/kvm/guest.h) \ - include/linux/clocksource.h \ - $(wildcard include/config/arch/clocksource/data.h) \ - $(wildcard include/config/clocksource/watchdog.h) \ - $(wildcard include/config/clksrc/probe.h) \ - arch/x86/include/asm/clocksource.h \ - arch/x86/include/uapi/asm/vsyscall.h \ - include/asm-generic/fixmap.h \ - arch/x86/include/asm/hardirq.h \ - $(wildcard include/config/kvm/intel.h) \ - $(wildcard include/config/have/kvm.h) \ - $(wildcard include/config/x86/thermal/vector.h) \ - $(wildcard include/config/x86/mce/threshold.h) \ - $(wildcard include/config/x86/mce/amd.h) \ - $(wildcard include/config/hyperv.h) \ - arch/x86/include/asm/idle.h \ - arch/x86/include/asm/io_apic.h \ - arch/x86/include/asm/irq_vectors.h \ - $(wildcard include/config/pci/msi.h) \ - include/linux/sem.h \ - include/uapi/linux/sem.h \ - include/linux/ipc.h \ - include/linux/uidgid.h \ - $(wildcard include/config/user/ns.h) \ - include/linux/highuid.h \ - include/uapi/linux/ipc.h \ - arch/x86/include/uapi/asm/ipcbuf.h \ - include/uapi/asm-generic/ipcbuf.h \ - arch/x86/include/uapi/asm/sembuf.h \ - include/linux/shm.h \ - include/uapi/linux/shm.h \ - arch/x86/include/uapi/asm/shmbuf.h \ - include/uapi/asm-generic/shmbuf.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/signal.h \ - $(wildcard include/config/old/sigaction.h) \ - include/uapi/linux/signal.h \ - arch/x86/include/asm/signal.h \ - arch/x86/include/uapi/asm/signal.h \ - include/uapi/asm-generic/signal-defs.h \ - arch/x86/include/uapi/asm/siginfo.h \ - include/asm-generic/siginfo.h \ - include/uapi/asm-generic/siginfo.h \ - include/linux/pid.h \ - include/linux/percpu.h \ - $(wildcard include/config/need/per/cpu/embed/first/chunk.h) \ - $(wildcard include/config/need/per/cpu/page/first/chunk.h) \ - include/linux/mmdebug.h \ - $(wildcard include/config/debug/vm.h) \ - include/linux/topology.h \ - $(wildcard include/config/use/percpu/numa/node/id.h) \ - include/linux/mmzone.h \ - $(wildcard include/config/force/max/zoneorder.h) \ - $(wildcard include/config/cma.h) \ - $(wildcard include/config/memory/isolation.h) \ - $(wildcard include/config/zone/dma.h) \ - $(wildcard include/config/zone/dma32.h) \ - $(wildcard include/config/zone/device.h) \ - $(wildcard include/config/memory/hotplug.h) \ - $(wildcard include/config/flat/node/mem/map.h) \ - $(wildcard include/config/page/extension.h) \ - $(wildcard include/config/no/bootmem.h) \ - $(wildcard include/config/deferred/struct/page/init.h) \ - $(wildcard include/config/have/memory/present.h) \ - $(wildcard include/config/need/node/memmap/size.h) \ - $(wildcard include/config/have/memblock/node/map.h) \ - $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ - $(wildcard include/config/sparsemem/extreme.h) \ - $(wildcard include/config/have/arch/pfn/valid.h) \ - $(wildcard include/config/holes/in/zone.h) \ - $(wildcard include/config/arch/has/holes/memorymodel.h) \ - include/linux/pageblock-flags.h \ - $(wildcard include/config/hugetlb/page/size/variable.h) \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/have/arch/nodedata/extension.h) \ - $(wildcard include/config/have/bootmem/info/node.h) \ - arch/x86/include/asm/mmzone.h \ - arch/x86/include/asm/mmzone_64.h \ - include/linux/proportions.h \ - include/linux/percpu_counter.h \ - include/linux/gfp.h \ - include/linux/seccomp.h \ - $(wildcard include/config/seccomp.h) \ - $(wildcard include/config/have/arch/seccomp/filter.h) \ - $(wildcard include/config/seccomp/filter.h) \ - $(wildcard include/config/checkpoint/restore.h) \ - include/uapi/linux/seccomp.h \ - arch/x86/include/asm/seccomp.h \ - arch/x86/include/asm/unistd.h \ - $(wildcard include/config/x86/x32/abi.h) \ - arch/x86/include/uapi/asm/unistd.h \ - arch/x86/include/generated/uapi/asm/unistd_64.h \ - arch/x86/include/generated/asm/unistd_64_x32.h \ - arch/x86/include/asm/ia32_unistd.h \ - arch/x86/include/generated/asm/unistd_32_ia32.h \ - include/asm-generic/seccomp.h \ - include/uapi/linux/unistd.h \ - include/linux/rculist.h \ - include/linux/rtmutex.h \ - $(wildcard include/config/debug/rt/mutexes.h) \ - include/linux/resource.h \ - include/uapi/linux/resource.h \ - arch/x86/include/uapi/asm/resource.h \ - include/asm-generic/resource.h \ - include/uapi/asm-generic/resource.h \ - include/linux/hrtimer.h \ - $(wildcard include/config/high/res/timers.h) \ - $(wildcard include/config/time/low/res.h) \ - $(wildcard include/config/timerfd.h) \ - include/linux/timerqueue.h \ - include/linux/task_io_accounting.h \ - $(wildcard include/config/task/io/accounting.h) \ - include/linux/latencytop.h \ - include/linux/cred.h \ - $(wildcard include/config/debug/credentials.h) \ - $(wildcard include/config/security.h) \ - include/linux/key.h \ - include/linux/assoc_array.h \ - $(wildcard include/config/associative/array.h) \ - include/linux/selinux.h \ - $(wildcard include/config/security/selinux.h) \ - include/uapi/linux/magic.h \ - include/linux/cgroup-defs.h \ - include/uapi/linux/limits.h \ - include/linux/idr.h \ - include/linux/percpu-refcount.h \ - include/linux/percpu-rwsem.h \ - include/linux/rcu_sync.h \ - include/linux/cgroup_subsys.h \ - $(wildcard include/config/cgroup/cpuacct.h) \ - $(wildcard include/config/blk/cgroup.h) \ - $(wildcard include/config/cgroup/device.h) \ - $(wildcard include/config/cgroup/freezer.h) \ - $(wildcard include/config/cgroup/net/classid.h) \ - $(wildcard include/config/cgroup/perf.h) \ - $(wildcard include/config/cgroup/net/prio.h) \ - $(wildcard include/config/cgroup/hugetlb.h) \ - $(wildcard include/config/cgroup/pids.h) \ - $(wildcard include/config/cgroup/debug.h) \ - arch/x86/include/asm/uaccess.h \ - $(wildcard include/config/x86/intel/usercopy.h) \ - $(wildcard include/config/debug/strict/user/copy/checks.h) \ - arch/x86/include/asm/smap.h \ - $(wildcard include/config/x86/smap.h) \ - arch/x86/include/asm/uaccess_64.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_mod.h \ - include/linux/module.h \ - $(wildcard include/config/module/sig.h) \ - $(wildcard include/config/modules/tree/lookup.h) \ - $(wildcard include/config/kallsyms.h) \ - $(wildcard include/config/tracepoints.h) \ - $(wildcard include/config/event/tracing.h) \ - $(wildcard include/config/livepatch.h) \ - $(wildcard include/config/module/unload.h) \ - $(wildcard include/config/constructors.h) \ - $(wildcard include/config/debug/set/module/ronx.h) \ - include/linux/stat.h \ - arch/x86/include/uapi/asm/stat.h \ - include/uapi/linux/stat.h \ - include/linux/kmod.h \ - include/linux/elf.h \ - arch/x86/include/asm/elf.h \ - arch/x86/include/asm/user.h \ - arch/x86/include/asm/user_64.h \ - arch/x86/include/asm/vdso.h \ - $(wildcard include/config/x86/x32.h) \ - include/uapi/linux/elf.h \ - include/uapi/linux/elf-em.h \ - include/linux/kobject.h \ - $(wildcard include/config/uevent/helper.h) \ - $(wildcard include/config/debug/kobject/release.h) \ - include/linux/sysfs.h \ - include/linux/kernfs.h \ - $(wildcard include/config/kernfs.h) \ - include/linux/kobject_ns.h \ - include/linux/kref.h \ - include/linux/moduleparam.h \ - $(wildcard include/config/alpha.h) \ - $(wildcard include/config/ia64.h) \ - $(wildcard include/config/ppc64.h) \ - include/linux/rbtree_latch.h \ - arch/x86/include/asm/module.h \ - $(wildcard include/config/m486.h) \ - $(wildcard include/config/m586.h) \ - $(wildcard include/config/m586tsc.h) \ - $(wildcard include/config/m586mmx.h) \ - $(wildcard include/config/mcore2.h) \ - $(wildcard include/config/m686.h) \ - $(wildcard include/config/mpentiumii.h) \ - $(wildcard include/config/mpentiumiii.h) \ - $(wildcard include/config/mpentiumm.h) \ - $(wildcard include/config/mpentium4.h) \ - $(wildcard include/config/mk6.h) \ - $(wildcard include/config/mk8.h) \ - $(wildcard include/config/melan.h) \ - $(wildcard include/config/mcrusoe.h) \ - $(wildcard include/config/mefficeon.h) \ - $(wildcard include/config/mwinchipc6.h) \ - $(wildcard include/config/mwinchip3d.h) \ - $(wildcard include/config/mcyrixiii.h) \ - $(wildcard include/config/mviac3/2.h) \ - $(wildcard include/config/mviac7.h) \ - $(wildcard include/config/mgeodegx1.h) \ - $(wildcard include/config/mgeode/lx.h) \ - include/asm-generic/module.h \ - $(wildcard include/config/have/mod/arch/specific.h) \ - $(wildcard include/config/modules/use/elf/rel.h) \ - $(wildcard include/config/modules/use/elf/rela.h) \ - include/linux/cdev.h \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/device.h \ - $(wildcard include/config/debug/devres.h) \ - $(wildcard include/config/generic/msi/irq/domain.h) \ - $(wildcard include/config/pinctrl.h) \ - $(wildcard include/config/generic/msi/irq.h) \ - $(wildcard include/config/dma/cma.h) \ - $(wildcard include/config/of.h) \ - $(wildcard include/config/devtmpfs.h) \ - $(wildcard include/config/sysfs/deprecated.h) \ - include/linux/klist.h \ - include/linux/pinctrl/devinfo.h \ - include/linux/pinctrl/consumer.h \ - include/linux/seq_file.h \ - include/linux/fs.h \ - $(wildcard include/config/fs/posix/acl.h) \ - $(wildcard include/config/cgroup/writeback.h) \ - $(wildcard include/config/ima.h) \ - $(wildcard include/config/fsnotify.h) \ - $(wildcard include/config/file/locking.h) \ - $(wildcard include/config/quota.h) \ - $(wildcard include/config/blk/dev/loop.h) \ - $(wildcard include/config/fs/dax.h) \ - $(wildcard include/config/migration.h) \ - include/linux/dcache.h \ - include/linux/rculist_bl.h \ - include/linux/list_bl.h \ - include/linux/bit_spinlock.h \ - include/linux/lockref.h \ - $(wildcard include/config/arch/use/cmpxchg/lockref.h) \ - include/linux/path.h \ - include/linux/list_lru.h \ - include/linux/shrinker.h \ - include/linux/radix-tree.h \ - include/linux/semaphore.h \ - include/uapi/linux/fiemap.h \ - include/linux/migrate_mode.h \ - include/linux/blk_types.h \ - $(wildcard include/config/blk/dev/integrity.h) \ - include/uapi/linux/fs.h \ - include/linux/quota.h \ - $(wildcard include/config/quota/netlink/interface.h) \ - include/uapi/linux/dqblk_xfs.h \ - include/linux/dqblk_v1.h \ - include/linux/dqblk_v2.h \ - include/linux/dqblk_qtree.h \ - include/linux/projid.h \ - include/uapi/linux/quota.h \ - include/linux/nfs_fs_i.h \ - include/linux/fcntl.h \ - include/uapi/linux/fcntl.h \ - arch/x86/include/uapi/asm/fcntl.h \ - include/uapi/asm-generic/fcntl.h \ - include/linux/pinctrl/pinctrl-state.h \ - include/linux/ratelimit.h \ - arch/x86/include/asm/device.h \ - $(wildcard include/config/x86/dev/dma/ops.h) \ - $(wildcard include/config/intel/iommu.h) \ - $(wildcard include/config/amd/iommu.h) \ - include/linux/pm_wakeup.h \ - include/linux/dma-mapping.h \ - $(wildcard include/config/has/dma.h) \ - $(wildcard include/config/arch/has/dma/set/coherent/mask.h) \ - $(wildcard include/config/have/dma/attrs.h) \ - $(wildcard include/config/need/dma/map/state.h) \ - include/linux/sizes.h \ - include/linux/dma-attrs.h \ - include/linux/dma-direction.h \ - include/linux/scatterlist.h \ - $(wildcard include/config/debug/sg.h) \ - $(wildcard include/config/need/sg/dma/length.h) \ - include/linux/mm.h \ - $(wildcard include/config/ppc.h) \ - $(wildcard include/config/parisc.h) \ - $(wildcard include/config/metag.h) \ - $(wildcard include/config/shmem.h) \ - $(wildcard include/config/debug/vm/rb.h) \ - $(wildcard include/config/debug/pagealloc.h) \ - $(wildcard include/config/hugetlbfs.h) \ - include/linux/debug_locks.h \ - $(wildcard include/config/debug/locking/api/selftests.h) \ - include/linux/page_ext.h \ - $(wildcard include/config/idle/page/tracking.h) \ - $(wildcard include/config/page/owner.h) \ - include/linux/stacktrace.h \ - $(wildcard include/config/stacktrace.h) \ - $(wildcard include/config/user/stacktrace/support.h) \ - arch/x86/include/asm/pgtable.h \ - $(wildcard include/config/debug/wx.h) \ - $(wildcard include/config/have/arch/soft/dirty.h) \ - arch/x86/include/asm/pgtable_64.h \ - arch/x86/include/asm/pgtable-invert.h \ - include/asm-generic/pgtable.h \ - $(wildcard include/config/have/arch/huge/vmap.h) \ - include/linux/page-flags.h \ - $(wildcard include/config/arch/uses/pg/uncached.h) \ - $(wildcard include/config/memory/failure.h) \ - $(wildcard include/config/swap.h) \ - $(wildcard include/config/ksm.h) \ - include/linux/huge_mm.h \ - include/linux/vmstat.h \ - $(wildcard include/config/vm/event/counters.h) \ - $(wildcard include/config/debug/tlbflush.h) \ - $(wildcard include/config/debug/vm/vmacache.h) \ - include/linux/vm_event_item.h \ - $(wildcard include/config/memory/balloon.h) \ - $(wildcard include/config/balloon/compaction.h) \ - arch/x86/include/asm/dma-mapping.h \ - $(wildcard include/config/isa.h) \ - $(wildcard include/config/x86/dma/remap.h) \ - include/linux/kmemcheck.h \ - include/linux/dma-debug.h \ - $(wildcard include/config/dma/api/debug.h) \ - arch/x86/include/asm/swiotlb.h \ - $(wildcard include/config/swiotlb.h) \ - include/linux/swiotlb.h \ - include/linux/dma-contiguous.h \ - include/asm-generic/dma-mapping-common.h \ - include/asm-generic/dma-coherent.h \ - $(wildcard include/config/have/generic/dma/coherent.h) \ - include/linux/delay.h \ - arch/x86/include/asm/delay.h \ - include/asm-generic/delay.h \ - include/linux/fb.h \ - $(wildcard include/config/fb/deferred/io.h) \ - $(wildcard include/config/fb/tileblitting.h) \ - $(wildcard include/config/fb/backlight.h) \ - $(wildcard include/config/fb/foreign/endian.h) \ - $(wildcard include/config/fb/both/endian.h) \ - $(wildcard include/config/fb/big/endian.h) \ - $(wildcard include/config/fb/little/endian.h) \ - include/linux/kgdb.h \ - $(wildcard include/config/have/arch/kgdb.h) \ - $(wildcard include/config/kgdb.h) \ - $(wildcard include/config/serial/kgdb/nmi.h) \ - arch/x86/include/asm/kgdb.h \ - include/uapi/linux/fb.h \ - include/linux/i2c.h \ - $(wildcard include/config/i2c.h) \ - $(wildcard include/config/i2c/slave.h) \ - $(wildcard include/config/i2c/boardinfo.h) \ - $(wildcard include/config/i2c/mux.h) \ - include/linux/mod_devicetable.h \ - include/linux/uuid.h \ - include/uapi/linux/uuid.h \ - include/linux/of.h \ - $(wildcard include/config/sparc.h) \ - $(wildcard include/config/of/dynamic.h) \ - $(wildcard include/config/attach/node.h) \ - $(wildcard include/config/detach/node.h) \ - $(wildcard include/config/add/property.h) \ - $(wildcard include/config/remove/property.h) \ - $(wildcard include/config/update/property.h) \ - $(wildcard include/config/of/numa.h) \ - $(wildcard include/config/no/change.h) \ - $(wildcard include/config/change/add.h) \ - $(wildcard include/config/change/remove.h) \ - $(wildcard include/config/of/resolve.h) \ - $(wildcard include/config/of/overlay.h) \ - include/linux/property.h \ - include/linux/fwnode.h \ - include/uapi/linux/i2c.h \ - include/linux/backlight.h \ - include/linux/slab.h \ - $(wildcard include/config/debug/slab.h) \ - $(wildcard include/config/failslab.h) \ - $(wildcard include/config/slab.h) \ - $(wildcard include/config/slub.h) \ - $(wildcard include/config/slob.h) \ - include/linux/kmemleak.h \ - $(wildcard include/config/debug/kmemleak.h) \ - include/linux/kasan.h \ - include/linux/interrupt.h \ - $(wildcard include/config/irq/forced/threading.h) \ - $(wildcard include/config/generic/irq/probe.h) \ - include/linux/irqreturn.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/hardirq.h \ - include/linux/ftrace_irq.h \ - $(wildcard include/config/ftrace/nmi/enter.h) \ - include/linux/vtime.h \ - include/linux/context_tracking_state.h \ - $(wildcard include/config/context/tracking.h) \ - arch/x86/include/asm/irq.h \ - include/linux/io.h \ - include/linux/poll.h \ - include/uapi/linux/poll.h \ - arch/x86/include/uapi/asm/poll.h \ - include/uapi/asm-generic/poll.h \ - include/linux/pci.h \ - $(wildcard include/config/pci/iov.h) \ - $(wildcard include/config/pcieaspm.h) \ - $(wildcard include/config/pci/ats.h) \ - $(wildcard include/config/pci/domains/generic.h) \ - $(wildcard include/config/pci/bus/addr/t/64bit.h) \ - $(wildcard include/config/pcieportbus.h) \ - $(wildcard include/config/pcieaer.h) \ - $(wildcard include/config/pcie/ecrc.h) \ - $(wildcard include/config/ht/irq.h) \ - $(wildcard include/config/pci/domains.h) \ - $(wildcard include/config/pci/quirks.h) \ - $(wildcard include/config/hibernate/callbacks.h) \ - $(wildcard include/config/acpi/mcfg.h) \ - $(wildcard include/config/hotplug/pci.h) \ - $(wildcard include/config/eeh.h) \ - include/linux/resource_ext.h \ - include/uapi/linux/pci.h \ - include/uapi/linux/pci_regs.h \ - include/linux/pci_ids.h \ - include/linux/pci-dma.h \ - include/linux/dmapool.h \ - arch/x86/include/asm/pci.h \ - $(wildcard include/config/pci/msi/irq/domain.h) \ - arch/x86/include/asm/pci_64.h \ - $(wildcard include/config/calgary/iommu.h) \ - include/asm-generic/pci-dma-compat.h \ - include/asm-generic/pci.h \ - include/linux/vmalloc.h \ - include/linux/aio.h \ - include/uapi/linux/aio_abi.h \ - include/linux/splice.h \ - include/linux/pipe_fs_i.h \ - include/generated/uapi/linux/version.h \ - include/linux/uio.h \ - include/uapi/linux/uio.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.h \ - $(wildcard include/config/block/id.h) \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_xvc.h \ - -/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_xvc.o: $(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_xvc.o) - -$(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_xvc.o): diff --git a/host_software/driver/xdma/.libxdma.o.cmd b/host_software/driver/xdma/.libxdma.o.cmd deleted file mode 100644 index eef4a9b..0000000 --- a/host_software/driver/xdma/.libxdma.o.cmd +++ /dev/null @@ -1,944 +0,0 @@ -cmd_/home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.o := gcc -Wp,-MD,/home/wangxuan/pcie_xdma_host_software/driver/xdma/.libxdma.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/5/include -I./arch/x86/include -Iarch/x86/include/generated/uapi -Iarch/x86/include/generated -Iinclude -I./arch/x86/include/uapi -Iarch/x86/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -Iubuntu/include -D__KERNEL__ -fno-pie -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -fno-pie -no-pie -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_X86_X32_ABI -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -DCONFIG_AS_SHA1_NI=1 -DCONFIG_AS_SHA256_NI=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -DRETPOLINE -fno-delete-null-pointer-checks -O2 --param=allow-store-data-races=0 -DCC_HAVE_ASM_GOTO -Wframe-larger-than=1024 -fstack-protector-strong -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wno-pointer-sign -Wno-array-bounds -Wno-maybe-uninitialized -fno-strict-overflow -fno-merge-all-constants -fmerge-constants -fno-stack-check -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -DMODULE -D"KBUILD_STR(s)=$(pound)s" -D"KBUILD_BASENAME=KBUILD_STR(libxdma)" -D"KBUILD_MODNAME=KBUILD_STR(xdma)" -c -o /home/wangxuan/pcie_xdma_host_software/driver/xdma/.tmp_libxdma.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.c - -source_/home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.o := /home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.c - -deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.o := \ - $(wildcard include/config/block/id.h) \ - $(wildcard include/config/bar/only//.h) \ - include/linux/module.h \ - $(wildcard include/config/modules.h) \ - $(wildcard include/config/sysfs.h) \ - $(wildcard include/config/module/sig.h) \ - $(wildcard include/config/modules/tree/lookup.h) \ - $(wildcard include/config/unused/symbols.h) \ - $(wildcard include/config/generic/bug.h) \ - $(wildcard include/config/kallsyms.h) \ - $(wildcard include/config/smp.h) \ - $(wildcard include/config/tracepoints.h) \ - $(wildcard include/config/tracing.h) \ - $(wildcard include/config/event/tracing.h) \ - $(wildcard include/config/ftrace/mcount/record.h) \ - $(wildcard include/config/livepatch.h) \ - $(wildcard include/config/module/unload.h) \ - $(wildcard include/config/constructors.h) \ - $(wildcard include/config/debug/set/module/ronx.h) \ - include/linux/list.h \ - $(wildcard include/config/debug/list.h) \ - include/linux/types.h \ - $(wildcard include/config/have/uid16.h) \ - $(wildcard include/config/uid16.h) \ - $(wildcard include/config/lbdaf.h) \ - $(wildcard include/config/arch/dma/addr/t/64bit.h) \ - $(wildcard include/config/phys/addr/t/64bit.h) \ - $(wildcard include/config/64bit.h) \ - include/uapi/linux/types.h \ - arch/x86/include/uapi/asm/types.h \ - include/uapi/asm-generic/types.h \ - include/asm-generic/int-ll64.h \ - include/uapi/asm-generic/int-ll64.h \ - arch/x86/include/uapi/asm/bitsperlong.h \ - include/asm-generic/bitsperlong.h \ - include/uapi/asm-generic/bitsperlong.h \ - include/uapi/linux/posix_types.h \ - include/linux/stddef.h \ - include/uapi/linux/stddef.h \ - include/linux/compiler.h \ - $(wildcard include/config/sparse/rcu/pointer.h) \ - $(wildcard include/config/trace/branch/profiling.h) \ - $(wildcard include/config/profile/all/branches.h) \ - $(wildcard include/config/kasan.h) \ - $(wildcard include/config/enable/must/check.h) \ - $(wildcard include/config/enable/warn/deprecated.h) \ - $(wildcard include/config/kprobes.h) \ - include/linux/compiler-gcc.h \ - $(wildcard include/config/arch/supports/optimized/inlining.h) \ - $(wildcard include/config/optimize/inlining.h) \ - $(wildcard include/config/arm64.h) \ - $(wildcard include/config/gcov/kernel.h) \ - $(wildcard include/config/arch/use/builtin/bswap.h) \ - include/linux/kasan-checks.h \ - arch/x86/include/asm/posix_types.h \ - $(wildcard include/config/x86/32.h) \ - arch/x86/include/uapi/asm/posix_types_64.h \ - include/uapi/asm-generic/posix_types.h \ - include/linux/poison.h \ - $(wildcard include/config/illegal/pointer/value.h) \ - include/uapi/linux/const.h \ - include/linux/kernel.h \ - $(wildcard include/config/preempt/voluntary.h) \ - $(wildcard include/config/debug/atomic/sleep.h) \ - $(wildcard include/config/mmu.h) \ - $(wildcard include/config/prove/locking.h) \ - $(wildcard include/config/panic/timeout.h) \ - /usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h \ - include/linux/linkage.h \ - include/linux/stringify.h \ - include/linux/export.h \ - $(wildcard include/config/have/underscore/symbol/prefix.h) \ - $(wildcard include/config/modversions.h) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/x86/64.h) \ - $(wildcard include/config/x86/alignment/16.h) \ - include/linux/bitops.h \ - include/linux/bits.h \ - arch/x86/include/asm/bitops.h \ - $(wildcard include/config/x86/cmov.h) \ - arch/x86/include/asm/alternative.h \ - arch/x86/include/asm/asm.h \ - arch/x86/include/asm/rmwcc.h \ - arch/x86/include/asm/barrier.h \ - $(wildcard include/config/x86/ppro/fence.h) \ - arch/x86/include/asm/nops.h \ - $(wildcard include/config/mk7.h) \ - $(wildcard include/config/x86/p6/nop.h) \ - include/asm-generic/barrier.h \ - include/asm-generic/bitops/find.h \ - $(wildcard include/config/generic/find/first/bit.h) \ - include/asm-generic/bitops/sched.h \ - arch/x86/include/asm/arch_hweight.h \ - arch/x86/include/asm/cpufeatures.h \ - $(wildcard include/config/page/table/isolation.h) \ - arch/x86/include/asm/required-features.h \ - $(wildcard include/config/x86/minimum/cpu/family.h) \ - $(wildcard include/config/math/emulation.h) \ - $(wildcard include/config/x86/pae.h) \ - $(wildcard include/config/x86/cmpxchg64.h) \ - $(wildcard include/config/x86/use/3dnow.h) \ - $(wildcard include/config/matom.h) \ - $(wildcard include/config/paravirt.h) \ - arch/x86/include/asm/disabled-features.h \ - $(wildcard include/config/x86/intel/mpx.h) \ - $(wildcard include/config/x86/intel/memory/protection/keys.h) \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/le.h \ - arch/x86/include/uapi/asm/byteorder.h \ - include/linux/byteorder/little_endian.h \ - include/uapi/linux/byteorder/little_endian.h \ - include/linux/swab.h \ - include/uapi/linux/swab.h \ - arch/x86/include/uapi/asm/swab.h \ - include/linux/byteorder/generic.h \ - include/asm-generic/bitops/ext2-atomic-setbit.h \ - include/linux/log2.h \ - $(wildcard include/config/arch/has/ilog2/u32.h) \ - $(wildcard include/config/arch/has/ilog2/u64.h) \ - include/linux/typecheck.h \ - include/linux/printk.h \ - $(wildcard include/config/message/loglevel/default.h) \ - $(wildcard include/config/early/printk.h) \ - $(wildcard include/config/printk.h) \ - $(wildcard include/config/dynamic/debug.h) \ - include/linux/init.h \ - $(wildcard include/config/broken/rodata.h) \ - $(wildcard include/config/lto.h) \ - include/linux/kern_levels.h \ - include/linux/cache.h \ - $(wildcard include/config/arch/has/cache/line/size.h) \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.h \ - arch/x86/include/asm/cache.h \ - $(wildcard include/config/x86/l1/cache/shift.h) \ - $(wildcard include/config/x86/internode/cache/shift.h) \ - $(wildcard include/config/x86/vsmp.h) \ - include/linux/dynamic_debug.h \ - include/linux/stat.h \ - arch/x86/include/uapi/asm/stat.h \ - include/uapi/linux/stat.h \ - include/linux/time.h \ - $(wildcard include/config/arch/uses/gettimeoffset.h) \ - include/linux/seqlock.h \ - $(wildcard include/config/debug/lock/alloc.h) \ - include/linux/spinlock.h \ - $(wildcard include/config/debug/spinlock.h) \ - $(wildcard include/config/generic/lockbreak.h) \ - $(wildcard include/config/preempt.h) \ - include/linux/preempt.h \ - $(wildcard include/config/preempt/count.h) \ - $(wildcard include/config/debug/preempt.h) \ - $(wildcard include/config/preempt/tracer.h) \ - $(wildcard include/config/preempt/notifiers.h) \ - arch/x86/include/asm/preempt.h \ - arch/x86/include/asm/percpu.h \ - $(wildcard include/config/x86/64/smp.h) \ - include/asm-generic/percpu.h \ - $(wildcard include/config/have/setup/per/cpu/area.h) \ - include/linux/threads.h \ - $(wildcard include/config/nr/cpus.h) \ - $(wildcard include/config/base/small.h) \ - include/linux/percpu-defs.h \ - $(wildcard include/config/debug/force/weak/per/cpu.h) \ - include/linux/thread_info.h \ - $(wildcard include/config/thread/info/in/task.h) \ - $(wildcard include/config/compat.h) \ - include/linux/bug.h \ - arch/x86/include/asm/bug.h \ - $(wildcard include/config/debug/bugverbose.h) \ - include/asm-generic/bug.h \ - $(wildcard include/config/bug.h) \ - $(wildcard include/config/generic/bug/relative/pointers.h) \ - arch/x86/include/asm/thread_info.h \ - $(wildcard include/config/vm86.h) \ - $(wildcard include/config/ia32/emulation.h) \ - arch/x86/include/asm/page.h \ - arch/x86/include/asm/page_types.h \ - $(wildcard include/config/physical/start.h) \ - $(wildcard include/config/physical/align.h) \ - arch/x86/include/asm/page_64_types.h \ - $(wildcard include/config/kasan/extra.h) \ - $(wildcard include/config/randomize/base.h) \ - $(wildcard include/config/randomize/base/max/offset.h) \ - arch/x86/include/asm/page_64.h \ - $(wildcard include/config/debug/virtual.h) \ - $(wildcard include/config/flatmem.h) \ - $(wildcard include/config/x86/vsyscall/emulation.h) \ - include/linux/range.h \ - include/asm-generic/memory_model.h \ - $(wildcard include/config/discontigmem.h) \ - $(wildcard include/config/sparsemem/vmemmap.h) \ - $(wildcard include/config/sparsemem.h) \ - include/linux/pfn.h \ - include/asm-generic/getorder.h \ - arch/x86/include/asm/cpufeature.h \ - $(wildcard include/config/x86/feature/names.h) \ - $(wildcard include/config/x86/fast/feature/tests.h) \ - arch/x86/include/asm/processor.h \ - $(wildcard include/config/cc/stackprotector.h) \ - $(wildcard include/config/x86/debugctlmsr.h) \ - $(wildcard include/config/xen.h) \ - arch/x86/include/asm/processor-flags.h \ - arch/x86/include/uapi/asm/processor-flags.h \ - arch/x86/include/asm/math_emu.h \ - arch/x86/include/asm/ptrace.h \ - arch/x86/include/asm/segment.h \ - $(wildcard include/config/x86/32/lazy/gs.h) \ - arch/x86/include/uapi/asm/ptrace.h \ - arch/x86/include/uapi/asm/ptrace-abi.h \ - arch/x86/include/asm/paravirt_types.h \ - $(wildcard include/config/x86/local/apic.h) \ - $(wildcard include/config/pgtable/levels.h) \ - $(wildcard include/config/queued/spinlocks.h) \ - $(wildcard include/config/paravirt/debug.h) \ - arch/x86/include/asm/desc_defs.h \ - arch/x86/include/asm/kmap_types.h \ - $(wildcard include/config/debug/highmem.h) \ - include/asm-generic/kmap_types.h \ - arch/x86/include/asm/pgtable_types.h \ - $(wildcard include/config/kmemcheck.h) \ - $(wildcard include/config/mem/soft/dirty.h) \ - $(wildcard include/config/proc/fs.h) \ - arch/x86/include/asm/pgtable_64_types.h \ - arch/x86/include/asm/sparsemem.h \ - arch/x86/include/asm/nospec-branch.h \ - $(wildcard include/config/retpoline.h) \ - include/linux/static_key.h \ - include/linux/jump_label.h \ - $(wildcard include/config/jump/label.h) \ - arch/x86/include/asm/jump_label.h \ - include/linux/atomic.h \ - $(wildcard include/config/generic/atomic64.h) \ - arch/x86/include/asm/atomic.h \ - arch/x86/include/asm/cmpxchg.h \ - arch/x86/include/asm/cmpxchg_64.h \ - arch/x86/include/asm/atomic64_64.h \ - include/asm-generic/atomic-long.h \ - arch/x86/include/asm/alternative-asm.h \ - arch/x86/include/asm/msr-index.h \ - $(wildcard include/config/tdp/nominal.h) \ - $(wildcard include/config/tdp/level/1.h) \ - $(wildcard include/config/tdp/level/2.h) \ - $(wildcard include/config/tdp/control.h) \ - $(wildcard include/config/tdp/level1.h) \ - $(wildcard include/config/tdp/level2.h) \ - arch/x86/include/asm/spinlock_types.h \ - $(wildcard include/config/paravirt/spinlocks.h) \ - include/asm-generic/qrwlock_types.h \ - include/asm-generic/ptrace.h \ - arch/x86/include/uapi/asm/sigcontext.h \ - arch/x86/include/asm/current.h \ - arch/x86/include/asm/msr.h \ - arch/x86/include/asm/msr-index.h \ - arch/x86/include/uapi/asm/errno.h \ - include/uapi/asm-generic/errno.h \ - include/uapi/asm-generic/errno-base.h \ - arch/x86/include/asm/cpumask.h \ - include/linux/cpumask.h \ - $(wildcard include/config/cpumask/offstack.h) \ - $(wildcard include/config/hotplug/cpu.h) \ - $(wildcard include/config/debug/per/cpu/maps.h) \ - include/linux/bitmap.h \ - include/linux/string.h \ - $(wildcard include/config/binary/printf.h) \ - include/uapi/linux/string.h \ - arch/x86/include/asm/string.h \ - arch/x86/include/asm/string_64.h \ - arch/x86/include/uapi/asm/msr.h \ - include/uapi/linux/ioctl.h \ - arch/x86/include/uapi/asm/ioctl.h \ - include/asm-generic/ioctl.h \ - include/uapi/asm-generic/ioctl.h \ - arch/x86/include/asm/paravirt.h \ - arch/x86/include/asm/special_insns.h \ - arch/x86/include/asm/fpu/types.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - include/linux/math64.h \ - $(wildcard include/config/arch/supports/int128.h) \ - arch/x86/include/asm/div64.h \ - include/asm-generic/div64.h \ - include/linux/err.h \ - include/linux/irqflags.h \ - $(wildcard include/config/trace/irqflags.h) \ - $(wildcard include/config/irqsoff/tracer.h) \ - $(wildcard include/config/trace/irqflags/support.h) \ - arch/x86/include/asm/irqflags.h \ - include/linux/bottom_half.h \ - include/linux/spinlock_types.h \ - include/linux/lockdep.h \ - $(wildcard include/config/lockdep.h) \ - $(wildcard include/config/lock/stat.h) \ - include/linux/rwlock_types.h \ - arch/x86/include/asm/spinlock.h \ - arch/x86/include/asm/qrwlock.h \ - include/asm-generic/qrwlock.h \ - include/linux/rwlock.h \ - include/linux/spinlock_api_smp.h \ - $(wildcard include/config/inline/spin/lock.h) \ - $(wildcard include/config/inline/spin/lock/bh.h) \ - $(wildcard include/config/inline/spin/lock/irq.h) \ - $(wildcard include/config/inline/spin/lock/irqsave.h) \ - $(wildcard include/config/inline/spin/trylock.h) \ - $(wildcard include/config/inline/spin/trylock/bh.h) \ - $(wildcard include/config/uninline/spin/unlock.h) \ - $(wildcard include/config/inline/spin/unlock/bh.h) \ - $(wildcard include/config/inline/spin/unlock/irq.h) \ - $(wildcard include/config/inline/spin/unlock/irqrestore.h) \ - include/linux/rwlock_api_smp.h \ - $(wildcard include/config/inline/read/lock.h) \ - $(wildcard include/config/inline/write/lock.h) \ - $(wildcard include/config/inline/read/lock/bh.h) \ - $(wildcard include/config/inline/write/lock/bh.h) \ - $(wildcard include/config/inline/read/lock/irq.h) \ - $(wildcard include/config/inline/write/lock/irq.h) \ - $(wildcard include/config/inline/read/lock/irqsave.h) \ - $(wildcard include/config/inline/write/lock/irqsave.h) \ - $(wildcard include/config/inline/read/trylock.h) \ - $(wildcard include/config/inline/write/trylock.h) \ - $(wildcard include/config/inline/read/unlock.h) \ - $(wildcard include/config/inline/write/unlock.h) \ - $(wildcard include/config/inline/read/unlock/bh.h) \ - $(wildcard include/config/inline/write/unlock/bh.h) \ - $(wildcard include/config/inline/read/unlock/irq.h) \ - $(wildcard include/config/inline/write/unlock/irq.h) \ - $(wildcard include/config/inline/read/unlock/irqrestore.h) \ - $(wildcard include/config/inline/write/unlock/irqrestore.h) \ - include/linux/time64.h \ - include/uapi/linux/time.h \ - include/linux/uidgid.h \ - $(wildcard include/config/multiuser.h) \ - $(wildcard include/config/user/ns.h) \ - include/linux/highuid.h \ - include/linux/kmod.h \ - include/linux/gfp.h \ - $(wildcard include/config/highmem.h) \ - $(wildcard include/config/zone/dma.h) \ - $(wildcard include/config/zone/dma32.h) \ - $(wildcard include/config/zone/device.h) \ - $(wildcard include/config/numa.h) \ - $(wildcard include/config/deferred/struct/page/init.h) \ - $(wildcard include/config/pm/sleep.h) \ - $(wildcard include/config/cma.h) \ - include/linux/mmdebug.h \ - $(wildcard include/config/debug/vm.h) \ - include/linux/mmzone.h \ - $(wildcard include/config/force/max/zoneorder.h) \ - $(wildcard include/config/memory/isolation.h) \ - $(wildcard include/config/memcg.h) \ - $(wildcard include/config/memory/hotplug.h) \ - $(wildcard include/config/compaction.h) \ - $(wildcard include/config/flat/node/mem/map.h) \ - $(wildcard include/config/page/extension.h) \ - $(wildcard include/config/no/bootmem.h) \ - $(wildcard include/config/numa/balancing.h) \ - $(wildcard include/config/have/memory/present.h) \ - $(wildcard include/config/have/memoryless/nodes.h) \ - $(wildcard include/config/need/node/memmap/size.h) \ - $(wildcard include/config/have/memblock/node/map.h) \ - $(wildcard include/config/need/multiple/nodes.h) \ - $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ - $(wildcard include/config/sparsemem/extreme.h) \ - $(wildcard include/config/have/arch/pfn/valid.h) \ - $(wildcard include/config/holes/in/zone.h) \ - $(wildcard include/config/arch/has/holes/memorymodel.h) \ - include/linux/wait.h \ - include/uapi/linux/wait.h \ - include/linux/numa.h \ - $(wildcard include/config/nodes/shift.h) \ - include/linux/nodemask.h \ - $(wildcard include/config/movable/node.h) \ - include/linux/pageblock-flags.h \ - $(wildcard include/config/hugetlb/page.h) \ - $(wildcard include/config/hugetlb/page/size/variable.h) \ - include/linux/page-flags-layout.h \ - include/generated/bounds.h \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/memory/hotremove.h) \ - $(wildcard include/config/have/arch/nodedata/extension.h) \ - $(wildcard include/config/have/bootmem/info/node.h) \ - include/linux/notifier.h \ - include/linux/errno.h \ - include/uapi/linux/errno.h \ - include/linux/mutex.h \ - $(wildcard include/config/debug/mutexes.h) \ - $(wildcard include/config/mutex/spin/on/owner.h) \ - include/linux/osq_lock.h \ - include/linux/rwsem.h \ - $(wildcard include/config/rwsem/spin/on/owner.h) \ - $(wildcard include/config/rwsem/generic/spinlock.h) \ - arch/x86/include/asm/rwsem.h \ - include/linux/srcu.h \ - include/linux/rcupdate.h \ - $(wildcard include/config/tiny/rcu.h) \ - $(wildcard include/config/tree/rcu.h) \ - $(wildcard include/config/preempt/rcu.h) \ - $(wildcard include/config/rcu/trace.h) \ - $(wildcard include/config/rcu/stall/common.h) \ - $(wildcard include/config/no/hz/full.h) \ - $(wildcard include/config/rcu/nocb/cpu.h) \ - $(wildcard include/config/tasks/rcu.h) \ - $(wildcard include/config/debug/objects/rcu/head.h) \ - $(wildcard include/config/prove/rcu.h) \ - $(wildcard include/config/rcu/boost.h) \ - $(wildcard include/config/rcu/nocb/cpu/all.h) \ - $(wildcard include/config/no/hz/full/sysidle.h) \ - include/linux/completion.h \ - include/linux/debugobjects.h \ - $(wildcard include/config/debug/objects.h) \ - $(wildcard include/config/debug/objects/free.h) \ - include/linux/ktime.h \ - include/linux/jiffies.h \ - include/linux/timex.h \ - include/uapi/linux/timex.h \ - include/uapi/linux/param.h \ - arch/x86/include/uapi/asm/param.h \ - include/asm-generic/param.h \ - $(wildcard include/config/hz.h) \ - include/uapi/asm-generic/param.h \ - arch/x86/include/asm/timex.h \ - arch/x86/include/asm/tsc.h \ - $(wildcard include/config/x86/tsc.h) \ - include/generated/timeconst.h \ - include/linux/timekeeping.h \ - include/linux/rcutree.h \ - include/linux/workqueue.h \ - $(wildcard include/config/debug/objects/work.h) \ - $(wildcard include/config/freezer.h) \ - include/linux/timer.h \ - $(wildcard include/config/debug/objects/timers.h) \ - $(wildcard include/config/no/hz/common.h) \ - include/linux/sysctl.h \ - $(wildcard include/config/sysctl.h) \ - include/linux/rbtree.h \ - include/uapi/linux/sysctl.h \ - arch/x86/include/asm/mmzone.h \ - arch/x86/include/asm/mmzone_64.h \ - arch/x86/include/asm/smp.h \ - $(wildcard include/config/x86/io/apic.h) \ - $(wildcard include/config/x86/32/smp.h) \ - $(wildcard include/config/debug/nmi/selftest.h) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/eisa.h) \ - $(wildcard include/config/x86/mpparse.h) \ - arch/x86/include/asm/mpspec_def.h \ - arch/x86/include/asm/x86_init.h \ - arch/x86/include/uapi/asm/bootparam.h \ - include/linux/screen_info.h \ - include/uapi/linux/screen_info.h \ - include/linux/apm_bios.h \ - include/uapi/linux/apm_bios.h \ - include/linux/edd.h \ - include/uapi/linux/edd.h \ - arch/x86/include/asm/e820.h \ - $(wildcard include/config/efi.h) \ - $(wildcard include/config/hibernation.h) \ - arch/x86/include/uapi/asm/e820.h \ - $(wildcard include/config/x86/pmem/legacy.h) \ - $(wildcard include/config/intel/txt.h) \ - include/linux/ioport.h \ - arch/x86/include/asm/ist.h \ - arch/x86/include/uapi/asm/ist.h \ - include/video/edid.h \ - $(wildcard include/config/x86.h) \ - include/uapi/video/edid.h \ - arch/x86/include/asm/apicdef.h \ - arch/x86/include/asm/apic.h \ - $(wildcard include/config/x86/x2apic.h) \ - include/linux/pm.h \ - $(wildcard include/config/vt/console/sleep.h) \ - $(wildcard include/config/pm.h) \ - $(wildcard include/config/pm/clk.h) \ - $(wildcard include/config/pm/generic/domains.h) \ - arch/x86/include/asm/fixmap.h \ - $(wildcard include/config/paravirt/clock.h) \ - $(wildcard include/config/provide/ohci1394/dma/init.h) \ - $(wildcard include/config/pci/mmconfig.h) \ - $(wildcard include/config/x86/intel/mid.h) \ - arch/x86/include/asm/acpi.h \ - $(wildcard include/config/acpi/apei.h) \ - $(wildcard include/config/acpi.h) \ - $(wildcard include/config/acpi/numa.h) \ - include/acpi/pdc_intel.h \ - arch/x86/include/asm/numa.h \ - $(wildcard include/config/numa/emu.h) \ - arch/x86/include/asm/topology.h \ - include/asm-generic/topology.h \ - arch/x86/include/asm/mmu.h \ - $(wildcard include/config/modify/ldt/syscall.h) \ - arch/x86/include/asm/realmode.h \ - $(wildcard include/config/acpi/sleep.h) \ - arch/x86/include/asm/io.h \ - $(wildcard include/config/mtrr.h) \ - $(wildcard include/config/x86/pat.h) \ - arch/x86/include/generated/asm/early_ioremap.h \ - include/asm-generic/early_ioremap.h \ - $(wildcard include/config/generic/early/ioremap.h) \ - include/asm-generic/iomap.h \ - $(wildcard include/config/has/ioport/map.h) \ - $(wildcard include/config/pci.h) \ - $(wildcard include/config/generic/iomap.h) \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/no/generic/pci/ioport/map.h) \ - $(wildcard include/config/generic/pci/iomap.h) \ - include/xen/xen.h \ - $(wildcard include/config/xen/dom0.h) \ - $(wildcard include/config/xen/pvh.h) \ - include/xen/interface/xen.h \ - arch/x86/include/asm/xen/interface.h \ - arch/x86/include/asm/xen/interface_64.h \ - arch/x86/include/asm/pvclock-abi.h \ - arch/x86/include/asm/xen/hypervisor.h \ - include/xen/features.h \ - include/xen/interface/features.h \ - arch/x86/include/asm/pvclock.h \ - $(wildcard include/config/kvm/guest.h) \ - include/linux/clocksource.h \ - $(wildcard include/config/arch/clocksource/data.h) \ - $(wildcard include/config/clocksource/watchdog.h) \ - $(wildcard include/config/clksrc/probe.h) \ - arch/x86/include/asm/clocksource.h \ - arch/x86/include/uapi/asm/vsyscall.h \ - include/asm-generic/fixmap.h \ - arch/x86/include/asm/hardirq.h \ - $(wildcard include/config/kvm/intel.h) \ - $(wildcard include/config/have/kvm.h) \ - $(wildcard include/config/x86/thermal/vector.h) \ - $(wildcard include/config/x86/mce/threshold.h) \ - $(wildcard include/config/x86/mce/amd.h) \ - $(wildcard include/config/hyperv.h) \ - arch/x86/include/asm/idle.h \ - arch/x86/include/asm/io_apic.h \ - arch/x86/include/asm/irq_vectors.h \ - $(wildcard include/config/pci/msi.h) \ - include/linux/topology.h \ - $(wildcard include/config/use/percpu/numa/node/id.h) \ - $(wildcard include/config/sched/smt.h) \ - include/linux/smp.h \ - $(wildcard include/config/up/late/init.h) \ - include/linux/llist.h \ - $(wildcard include/config/arch/have/nmi/safe/cmpxchg.h) \ - include/linux/percpu.h \ - $(wildcard include/config/need/per/cpu/embed/first/chunk.h) \ - $(wildcard include/config/need/per/cpu/page/first/chunk.h) \ - include/linux/elf.h \ - arch/x86/include/asm/elf.h \ - $(wildcard include/config/x86/x32/abi.h) \ - arch/x86/include/asm/user.h \ - arch/x86/include/asm/user_64.h \ - arch/x86/include/uapi/asm/auxvec.h \ - arch/x86/include/asm/vdso.h \ - $(wildcard include/config/x86/x32.h) \ - include/linux/mm_types.h \ - $(wildcard include/config/split/ptlock/cpus.h) \ - $(wildcard include/config/arch/enable/split/pmd/ptlock.h) \ - $(wildcard include/config/have/cmpxchg/double.h) \ - $(wildcard include/config/have/aligned/struct/page.h) \ - $(wildcard include/config/transparent/hugepage.h) \ - $(wildcard include/config/userfaultfd.h) \ - $(wildcard include/config/aio.h) \ - $(wildcard include/config/mmu/notifier.h) \ - $(wildcard include/config/arch/want/batched/unmap/tlb/flush.h) \ - include/linux/auxvec.h \ - include/uapi/linux/auxvec.h \ - include/linux/uprobes.h \ - $(wildcard include/config/uprobes.h) \ - arch/x86/include/asm/uprobes.h \ - include/uapi/linux/elf.h \ - include/uapi/linux/elf-em.h \ - include/linux/kobject.h \ - $(wildcard include/config/uevent/helper.h) \ - $(wildcard include/config/debug/kobject/release.h) \ - include/linux/sysfs.h \ - include/linux/kernfs.h \ - $(wildcard include/config/kernfs.h) \ - include/linux/idr.h \ - include/linux/kobject_ns.h \ - include/linux/kref.h \ - include/linux/moduleparam.h \ - $(wildcard include/config/alpha.h) \ - $(wildcard include/config/ia64.h) \ - $(wildcard include/config/ppc64.h) \ - include/linux/rbtree_latch.h \ - arch/x86/include/asm/module.h \ - $(wildcard include/config/m486.h) \ - $(wildcard include/config/m586.h) \ - $(wildcard include/config/m586tsc.h) \ - $(wildcard include/config/m586mmx.h) \ - $(wildcard include/config/mcore2.h) \ - $(wildcard include/config/m686.h) \ - $(wildcard include/config/mpentiumii.h) \ - $(wildcard include/config/mpentiumiii.h) \ - $(wildcard include/config/mpentiumm.h) \ - $(wildcard include/config/mpentium4.h) \ - $(wildcard include/config/mk6.h) \ - $(wildcard include/config/mk8.h) \ - $(wildcard include/config/melan.h) \ - $(wildcard include/config/mcrusoe.h) \ - $(wildcard include/config/mefficeon.h) \ - $(wildcard include/config/mwinchipc6.h) \ - $(wildcard include/config/mwinchip3d.h) \ - $(wildcard include/config/mcyrixiii.h) \ - $(wildcard include/config/mviac3/2.h) \ - $(wildcard include/config/mviac7.h) \ - $(wildcard include/config/mgeodegx1.h) \ - $(wildcard include/config/mgeode/lx.h) \ - include/asm-generic/module.h \ - $(wildcard include/config/have/mod/arch/specific.h) \ - $(wildcard include/config/modules/use/elf/rel.h) \ - $(wildcard include/config/modules/use/elf/rela.h) \ - include/linux/mm.h \ - $(wildcard include/config/ppc.h) \ - $(wildcard include/config/parisc.h) \ - $(wildcard include/config/metag.h) \ - $(wildcard include/config/stack/growsup.h) \ - $(wildcard include/config/shmem.h) \ - $(wildcard include/config/debug/vm/rb.h) \ - $(wildcard include/config/debug/pagealloc.h) \ - $(wildcard include/config/hugetlbfs.h) \ - include/linux/debug_locks.h \ - $(wildcard include/config/debug/locking/api/selftests.h) \ - include/linux/bit_spinlock.h \ - include/linux/shrinker.h \ - include/linux/resource.h \ - include/uapi/linux/resource.h \ - arch/x86/include/uapi/asm/resource.h \ - include/asm-generic/resource.h \ - include/uapi/asm-generic/resource.h \ - include/linux/page_ext.h \ - $(wildcard include/config/idle/page/tracking.h) \ - $(wildcard include/config/page/owner.h) \ - include/linux/stacktrace.h \ - $(wildcard include/config/stacktrace.h) \ - $(wildcard include/config/user/stacktrace/support.h) \ - arch/x86/include/asm/pgtable.h \ - $(wildcard include/config/debug/wx.h) \ - $(wildcard include/config/have/arch/soft/dirty.h) \ - arch/x86/include/asm/pgtable_64.h \ - arch/x86/include/asm/pgtable-invert.h \ - include/asm-generic/pgtable.h \ - $(wildcard include/config/have/arch/huge/vmap.h) \ - include/linux/page-flags.h \ - $(wildcard include/config/arch/uses/pg/uncached.h) \ - $(wildcard include/config/memory/failure.h) \ - $(wildcard include/config/swap.h) \ - $(wildcard include/config/ksm.h) \ - include/linux/huge_mm.h \ - include/linux/vmstat.h \ - $(wildcard include/config/vm/event/counters.h) \ - $(wildcard include/config/debug/tlbflush.h) \ - $(wildcard include/config/debug/vm/vmacache.h) \ - include/linux/vm_event_item.h \ - $(wildcard include/config/migration.h) \ - $(wildcard include/config/memory/balloon.h) \ - $(wildcard include/config/balloon/compaction.h) \ - include/linux/sched.h \ - $(wildcard include/config/sched/debug.h) \ - $(wildcard include/config/lockup/detector.h) \ - $(wildcard include/config/detect/hung/task.h) \ - $(wildcard include/config/core/dump/default/elf/headers.h) \ - $(wildcard include/config/virt/cpu/accounting/native.h) \ - $(wildcard include/config/sched/autogroup.h) \ - $(wildcard include/config/bsd/process/acct.h) \ - $(wildcard include/config/taskstats.h) \ - $(wildcard include/config/audit.h) \ - $(wildcard include/config/inotify/user.h) \ - $(wildcard include/config/fanotify.h) \ - $(wildcard include/config/epoll.h) \ - $(wildcard include/config/posix/mqueue.h) \ - $(wildcard include/config/keys.h) \ - $(wildcard include/config/perf/events.h) \ - $(wildcard include/config/bpf/syscall.h) \ - $(wildcard include/config/sched/info.h) \ - $(wildcard include/config/task/delay/acct.h) \ - $(wildcard include/config/schedstats.h) \ - $(wildcard include/config/sched/mc.h) \ - $(wildcard include/config/fair/group/sched.h) \ - $(wildcard include/config/rt/group/sched.h) \ - $(wildcard include/config/cgroup/sched.h) \ - $(wildcard include/config/blk/dev/io/trace.h) \ - $(wildcard include/config/memcg/kmem.h) \ - $(wildcard include/config/compat/brk.h) \ - $(wildcard include/config/cgroups.h) \ - $(wildcard include/config/virt/cpu/accounting/gen.h) \ - $(wildcard include/config/sysvipc.h) \ - $(wildcard include/config/auditsyscall.h) \ - $(wildcard include/config/rt/mutexes.h) \ - $(wildcard include/config/block.h) \ - $(wildcard include/config/task/xacct.h) \ - $(wildcard include/config/cpusets.h) \ - $(wildcard include/config/futex.h) \ - $(wildcard include/config/fault/injection.h) \ - $(wildcard include/config/latencytop.h) \ - $(wildcard include/config/function/graph/tracer.h) \ - $(wildcard include/config/bcache.h) \ - $(wildcard include/config/arch/wants/dynamic/task/struct.h) \ - $(wildcard include/config/have/unstable/sched/clock.h) \ - $(wildcard include/config/irq/time/accounting.h) \ - $(wildcard include/config/have/copy/thread/tls.h) \ - $(wildcard include/config/debug/stack/usage.h) \ - include/uapi/linux/sched.h \ - include/linux/sched/prio.h \ - include/linux/capability.h \ - include/uapi/linux/capability.h \ - include/linux/plist.h \ - $(wildcard include/config/debug/pi/list.h) \ - include/linux/cputime.h \ - arch/x86/include/generated/asm/cputime.h \ - include/asm-generic/cputime.h \ - $(wildcard include/config/virt/cpu/accounting.h) \ - include/asm-generic/cputime_jiffies.h \ - include/linux/sem.h \ - include/uapi/linux/sem.h \ - include/linux/ipc.h \ - include/uapi/linux/ipc.h \ - arch/x86/include/uapi/asm/ipcbuf.h \ - include/uapi/asm-generic/ipcbuf.h \ - arch/x86/include/uapi/asm/sembuf.h \ - include/linux/shm.h \ - include/uapi/linux/shm.h \ - arch/x86/include/uapi/asm/shmbuf.h \ - include/uapi/asm-generic/shmbuf.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/signal.h \ - $(wildcard include/config/old/sigaction.h) \ - include/uapi/linux/signal.h \ - arch/x86/include/asm/signal.h \ - arch/x86/include/uapi/asm/signal.h \ - include/uapi/asm-generic/signal-defs.h \ - arch/x86/include/uapi/asm/siginfo.h \ - include/asm-generic/siginfo.h \ - include/uapi/asm-generic/siginfo.h \ - include/linux/pid.h \ - include/linux/proportions.h \ - include/linux/percpu_counter.h \ - include/linux/seccomp.h \ - $(wildcard include/config/seccomp.h) \ - $(wildcard include/config/have/arch/seccomp/filter.h) \ - $(wildcard include/config/seccomp/filter.h) \ - $(wildcard include/config/checkpoint/restore.h) \ - include/uapi/linux/seccomp.h \ - arch/x86/include/asm/seccomp.h \ - arch/x86/include/asm/unistd.h \ - arch/x86/include/uapi/asm/unistd.h \ - arch/x86/include/generated/uapi/asm/unistd_64.h \ - arch/x86/include/generated/asm/unistd_64_x32.h \ - arch/x86/include/asm/ia32_unistd.h \ - arch/x86/include/generated/asm/unistd_32_ia32.h \ - include/asm-generic/seccomp.h \ - include/uapi/linux/unistd.h \ - include/linux/rculist.h \ - include/linux/rtmutex.h \ - $(wildcard include/config/debug/rt/mutexes.h) \ - include/linux/hrtimer.h \ - $(wildcard include/config/high/res/timers.h) \ - $(wildcard include/config/time/low/res.h) \ - $(wildcard include/config/timerfd.h) \ - include/linux/timerqueue.h \ - include/linux/task_io_accounting.h \ - $(wildcard include/config/task/io/accounting.h) \ - include/linux/latencytop.h \ - include/linux/cred.h \ - $(wildcard include/config/debug/credentials.h) \ - $(wildcard include/config/security.h) \ - include/linux/key.h \ - include/linux/assoc_array.h \ - $(wildcard include/config/associative/array.h) \ - include/linux/selinux.h \ - $(wildcard include/config/security/selinux.h) \ - include/uapi/linux/magic.h \ - include/linux/cgroup-defs.h \ - include/uapi/linux/limits.h \ - include/linux/percpu-refcount.h \ - include/linux/percpu-rwsem.h \ - include/linux/rcu_sync.h \ - include/linux/cgroup_subsys.h \ - $(wildcard include/config/cgroup/cpuacct.h) \ - $(wildcard include/config/blk/cgroup.h) \ - $(wildcard include/config/cgroup/device.h) \ - $(wildcard include/config/cgroup/freezer.h) \ - $(wildcard include/config/cgroup/net/classid.h) \ - $(wildcard include/config/cgroup/perf.h) \ - $(wildcard include/config/cgroup/net/prio.h) \ - $(wildcard include/config/cgroup/hugetlb.h) \ - $(wildcard include/config/cgroup/pids.h) \ - $(wildcard include/config/cgroup/debug.h) \ - include/linux/vmalloc.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.h \ - include/generated/uapi/linux/version.h \ - include/linux/uaccess.h \ - arch/x86/include/asm/uaccess.h \ - $(wildcard include/config/x86/intel/usercopy.h) \ - $(wildcard include/config/debug/strict/user/copy/checks.h) \ - arch/x86/include/asm/smap.h \ - $(wildcard include/config/x86/smap.h) \ - arch/x86/include/asm/uaccess_64.h \ - include/linux/dma-mapping.h \ - $(wildcard include/config/has/dma.h) \ - $(wildcard include/config/arch/has/dma/set/coherent/mask.h) \ - $(wildcard include/config/have/dma/attrs.h) \ - $(wildcard include/config/need/dma/map/state.h) \ - include/linux/sizes.h \ - include/linux/device.h \ - $(wildcard include/config/debug/devres.h) \ - $(wildcard include/config/generic/msi/irq/domain.h) \ - $(wildcard include/config/pinctrl.h) \ - $(wildcard include/config/generic/msi/irq.h) \ - $(wildcard include/config/dma/cma.h) \ - $(wildcard include/config/of.h) \ - $(wildcard include/config/devtmpfs.h) \ - $(wildcard include/config/sysfs/deprecated.h) \ - include/linux/klist.h \ - include/linux/pinctrl/devinfo.h \ - include/linux/pinctrl/consumer.h \ - include/linux/seq_file.h \ - include/linux/fs.h \ - $(wildcard include/config/fs/posix/acl.h) \ - $(wildcard include/config/cgroup/writeback.h) \ - $(wildcard include/config/ima.h) \ - $(wildcard include/config/fsnotify.h) \ - $(wildcard include/config/file/locking.h) \ - $(wildcard include/config/quota.h) \ - $(wildcard include/config/blk/dev/loop.h) \ - $(wildcard include/config/fs/dax.h) \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/dcache.h \ - include/linux/rculist_bl.h \ - include/linux/list_bl.h \ - include/linux/lockref.h \ - $(wildcard include/config/arch/use/cmpxchg/lockref.h) \ - include/linux/path.h \ - include/linux/list_lru.h \ - include/linux/radix-tree.h \ - include/linux/semaphore.h \ - include/uapi/linux/fiemap.h \ - include/linux/migrate_mode.h \ - include/linux/blk_types.h \ - $(wildcard include/config/blk/dev/integrity.h) \ - include/uapi/linux/fs.h \ - include/linux/quota.h \ - $(wildcard include/config/quota/netlink/interface.h) \ - include/uapi/linux/dqblk_xfs.h \ - include/linux/dqblk_v1.h \ - include/linux/dqblk_v2.h \ - include/linux/dqblk_qtree.h \ - include/linux/projid.h \ - include/uapi/linux/quota.h \ - include/linux/nfs_fs_i.h \ - include/linux/fcntl.h \ - include/uapi/linux/fcntl.h \ - arch/x86/include/uapi/asm/fcntl.h \ - include/uapi/asm-generic/fcntl.h \ - include/linux/pinctrl/pinctrl-state.h \ - include/linux/ratelimit.h \ - arch/x86/include/asm/device.h \ - $(wildcard include/config/x86/dev/dma/ops.h) \ - $(wildcard include/config/intel/iommu.h) \ - $(wildcard include/config/amd/iommu.h) \ - include/linux/pm_wakeup.h \ - include/linux/dma-attrs.h \ - include/linux/dma-direction.h \ - include/linux/scatterlist.h \ - $(wildcard include/config/debug/sg.h) \ - $(wildcard include/config/need/sg/dma/length.h) \ - arch/x86/include/asm/dma-mapping.h \ - $(wildcard include/config/isa.h) \ - $(wildcard include/config/x86/dma/remap.h) \ - include/linux/kmemcheck.h \ - include/linux/dma-debug.h \ - $(wildcard include/config/dma/api/debug.h) \ - arch/x86/include/asm/swiotlb.h \ - $(wildcard include/config/swiotlb.h) \ - include/linux/swiotlb.h \ - include/linux/dma-contiguous.h \ - include/asm-generic/dma-mapping-common.h \ - include/asm-generic/dma-coherent.h \ - $(wildcard include/config/have/generic/dma/coherent.h) \ - include/linux/interrupt.h \ - $(wildcard include/config/irq/forced/threading.h) \ - $(wildcard include/config/generic/irq/probe.h) \ - include/linux/irqreturn.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/hardirq.h \ - include/linux/ftrace_irq.h \ - $(wildcard include/config/ftrace/nmi/enter.h) \ - include/linux/vtime.h \ - include/linux/context_tracking_state.h \ - $(wildcard include/config/context/tracking.h) \ - arch/x86/include/asm/irq.h \ - include/linux/pci.h \ - $(wildcard include/config/pci/iov.h) \ - $(wildcard include/config/pcieaspm.h) \ - $(wildcard include/config/pci/ats.h) \ - $(wildcard include/config/pci/domains/generic.h) \ - $(wildcard include/config/pci/bus/addr/t/64bit.h) \ - $(wildcard include/config/pcieportbus.h) \ - $(wildcard include/config/pcieaer.h) \ - $(wildcard include/config/pcie/ecrc.h) \ - $(wildcard include/config/ht/irq.h) \ - $(wildcard include/config/pci/domains.h) \ - $(wildcard include/config/pci/quirks.h) \ - $(wildcard include/config/hibernate/callbacks.h) \ - $(wildcard include/config/acpi/mcfg.h) \ - $(wildcard include/config/hotplug/pci.h) \ - $(wildcard include/config/eeh.h) \ - include/linux/mod_devicetable.h \ - include/linux/uuid.h \ - include/uapi/linux/uuid.h \ - include/linux/io.h \ - include/linux/resource_ext.h \ - include/linux/slab.h \ - $(wildcard include/config/debug/slab.h) \ - $(wildcard include/config/failslab.h) \ - $(wildcard include/config/slab.h) \ - $(wildcard include/config/slub.h) \ - $(wildcard include/config/slob.h) \ - include/linux/kmemleak.h \ - $(wildcard include/config/debug/kmemleak.h) \ - include/linux/kasan.h \ - include/uapi/linux/pci.h \ - include/uapi/linux/pci_regs.h \ - include/linux/pci_ids.h \ - include/linux/pci-dma.h \ - include/linux/dmapool.h \ - arch/x86/include/asm/pci.h \ - $(wildcard include/config/pci/msi/irq/domain.h) \ - arch/x86/include/asm/pci_64.h \ - $(wildcard include/config/calgary/iommu.h) \ - include/asm-generic/pci-dma-compat.h \ - include/asm-generic/pci.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma_api.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_sgdma.h \ - -/home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.o: $(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.o) - -$(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.o): diff --git a/host_software/driver/xdma/.tmp_versions/xdma.mod b/host_software/driver/xdma/.tmp_versions/xdma.mod deleted file mode 100644 index d9af918..0000000 --- a/host_software/driver/xdma/.tmp_versions/xdma.mod +++ /dev/null @@ -1,2 +0,0 @@ -/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma.ko -/home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_cdev.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_ctrl.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_events.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_sgdma.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_xvc.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_bypass.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_mod.o diff --git a/host_software/driver/xdma/.xdma.ko.cmd b/host_software/driver/xdma/.xdma.ko.cmd deleted file mode 100644 index 76aa48b..0000000 --- a/host_software/driver/xdma/.xdma.ko.cmd +++ /dev/null @@ -1 +0,0 @@ -cmd_/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma.ko := ld -r -m elf_x86_64 -z max-page-size=0x200000 -T ./scripts/module-common.lds --build-id -o /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma.ko /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma.mod.o diff --git a/host_software/driver/xdma/.xdma.mod.o.cmd b/host_software/driver/xdma/.xdma.mod.o.cmd deleted file mode 100644 index c2dfef0..0000000 --- a/host_software/driver/xdma/.xdma.mod.o.cmd +++ /dev/null @@ -1,620 +0,0 @@ -cmd_/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma.mod.o := gcc -Wp,-MD,/home/wangxuan/pcie_xdma_host_software/driver/xdma/.xdma.mod.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/5/include -I./arch/x86/include -Iarch/x86/include/generated/uapi -Iarch/x86/include/generated -Iinclude -I./arch/x86/include/uapi -Iarch/x86/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -Iubuntu/include -D__KERNEL__ -fno-pie -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -fno-pie -no-pie -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_X86_X32_ABI -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -DCONFIG_AS_SHA1_NI=1 -DCONFIG_AS_SHA256_NI=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -DRETPOLINE -fno-delete-null-pointer-checks -O2 --param=allow-store-data-races=0 -DCC_HAVE_ASM_GOTO -Wframe-larger-than=1024 -fstack-protector-strong -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wno-pointer-sign -Wno-array-bounds -Wno-maybe-uninitialized -fno-strict-overflow -fno-merge-all-constants -fmerge-constants -fno-stack-check -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -D"KBUILD_STR(s)=$(pound)s" -D"KBUILD_BASENAME=KBUILD_STR(xdma.mod)" -D"KBUILD_MODNAME=KBUILD_STR(xdma)" -DMODULE -c -o /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma.mod.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma.mod.c - -source_/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma.mod.o := /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma.mod.c - -deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma.mod.o := \ - $(wildcard include/config/module/unload.h) \ - include/linux/module.h \ - $(wildcard include/config/modules.h) \ - $(wildcard include/config/sysfs.h) \ - $(wildcard include/config/module/sig.h) \ - $(wildcard include/config/modules/tree/lookup.h) \ - $(wildcard include/config/unused/symbols.h) \ - $(wildcard include/config/generic/bug.h) \ - $(wildcard include/config/kallsyms.h) \ - $(wildcard include/config/smp.h) \ - $(wildcard include/config/tracepoints.h) \ - $(wildcard include/config/tracing.h) \ - $(wildcard include/config/event/tracing.h) \ - $(wildcard include/config/ftrace/mcount/record.h) \ - $(wildcard include/config/livepatch.h) \ - $(wildcard include/config/constructors.h) \ - $(wildcard include/config/debug/set/module/ronx.h) \ - include/linux/list.h \ - $(wildcard include/config/debug/list.h) \ - include/linux/types.h \ - $(wildcard include/config/have/uid16.h) \ - $(wildcard include/config/uid16.h) \ - $(wildcard include/config/lbdaf.h) \ - $(wildcard include/config/arch/dma/addr/t/64bit.h) \ - $(wildcard include/config/phys/addr/t/64bit.h) \ - $(wildcard include/config/64bit.h) \ - include/uapi/linux/types.h \ - arch/x86/include/uapi/asm/types.h \ - include/uapi/asm-generic/types.h \ - include/asm-generic/int-ll64.h \ - include/uapi/asm-generic/int-ll64.h \ - arch/x86/include/uapi/asm/bitsperlong.h \ - include/asm-generic/bitsperlong.h \ - include/uapi/asm-generic/bitsperlong.h \ - include/uapi/linux/posix_types.h \ - include/linux/stddef.h \ - include/uapi/linux/stddef.h \ - include/linux/compiler.h \ - $(wildcard include/config/sparse/rcu/pointer.h) \ - $(wildcard include/config/trace/branch/profiling.h) \ - $(wildcard include/config/profile/all/branches.h) \ - $(wildcard include/config/kasan.h) \ - $(wildcard include/config/enable/must/check.h) \ - $(wildcard include/config/enable/warn/deprecated.h) \ - $(wildcard include/config/kprobes.h) \ - include/linux/compiler-gcc.h \ - $(wildcard include/config/arch/supports/optimized/inlining.h) \ - $(wildcard include/config/optimize/inlining.h) \ - $(wildcard include/config/arm64.h) \ - $(wildcard include/config/gcov/kernel.h) \ - $(wildcard include/config/arch/use/builtin/bswap.h) \ - include/linux/kasan-checks.h \ - arch/x86/include/asm/posix_types.h \ - $(wildcard include/config/x86/32.h) \ - arch/x86/include/uapi/asm/posix_types_64.h \ - include/uapi/asm-generic/posix_types.h \ - include/linux/poison.h \ - $(wildcard include/config/illegal/pointer/value.h) \ - include/uapi/linux/const.h \ - include/linux/kernel.h \ - $(wildcard include/config/preempt/voluntary.h) \ - $(wildcard include/config/debug/atomic/sleep.h) \ - $(wildcard include/config/mmu.h) \ - $(wildcard include/config/prove/locking.h) \ - $(wildcard include/config/panic/timeout.h) \ - /usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h \ - include/linux/linkage.h \ - include/linux/stringify.h \ - include/linux/export.h \ - $(wildcard include/config/have/underscore/symbol/prefix.h) \ - $(wildcard include/config/modversions.h) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/x86/64.h) \ - $(wildcard include/config/x86/alignment/16.h) \ - include/linux/bitops.h \ - include/linux/bits.h \ - arch/x86/include/asm/bitops.h \ - $(wildcard include/config/x86/cmov.h) \ - arch/x86/include/asm/alternative.h \ - arch/x86/include/asm/asm.h \ - arch/x86/include/asm/rmwcc.h \ - arch/x86/include/asm/barrier.h \ - $(wildcard include/config/x86/ppro/fence.h) \ - arch/x86/include/asm/nops.h \ - $(wildcard include/config/mk7.h) \ - $(wildcard include/config/x86/p6/nop.h) \ - include/asm-generic/barrier.h \ - include/asm-generic/bitops/find.h \ - $(wildcard include/config/generic/find/first/bit.h) \ - include/asm-generic/bitops/sched.h \ - arch/x86/include/asm/arch_hweight.h \ - arch/x86/include/asm/cpufeatures.h \ - $(wildcard include/config/page/table/isolation.h) \ - arch/x86/include/asm/required-features.h \ - $(wildcard include/config/x86/minimum/cpu/family.h) \ - $(wildcard include/config/math/emulation.h) \ - $(wildcard include/config/x86/pae.h) \ - $(wildcard include/config/x86/cmpxchg64.h) \ - $(wildcard include/config/x86/use/3dnow.h) \ - $(wildcard include/config/matom.h) \ - $(wildcard include/config/paravirt.h) \ - arch/x86/include/asm/disabled-features.h \ - $(wildcard include/config/x86/intel/mpx.h) \ - $(wildcard include/config/x86/intel/memory/protection/keys.h) \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/le.h \ - arch/x86/include/uapi/asm/byteorder.h \ - include/linux/byteorder/little_endian.h \ - include/uapi/linux/byteorder/little_endian.h \ - include/linux/swab.h \ - include/uapi/linux/swab.h \ - arch/x86/include/uapi/asm/swab.h \ - include/linux/byteorder/generic.h \ - include/asm-generic/bitops/ext2-atomic-setbit.h \ - include/linux/log2.h \ - $(wildcard include/config/arch/has/ilog2/u32.h) \ - $(wildcard include/config/arch/has/ilog2/u64.h) \ - include/linux/typecheck.h \ - include/linux/printk.h \ - $(wildcard include/config/message/loglevel/default.h) \ - $(wildcard include/config/early/printk.h) \ - $(wildcard include/config/printk.h) \ - $(wildcard include/config/dynamic/debug.h) \ - include/linux/init.h \ - $(wildcard include/config/broken/rodata.h) \ - $(wildcard include/config/lto.h) \ - include/linux/kern_levels.h \ - include/linux/cache.h \ - $(wildcard include/config/arch/has/cache/line/size.h) \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.h \ - arch/x86/include/asm/cache.h \ - $(wildcard include/config/x86/l1/cache/shift.h) \ - $(wildcard include/config/x86/internode/cache/shift.h) \ - $(wildcard include/config/x86/vsmp.h) \ - include/linux/dynamic_debug.h \ - include/linux/stat.h \ - arch/x86/include/uapi/asm/stat.h \ - include/uapi/linux/stat.h \ - include/linux/time.h \ - $(wildcard include/config/arch/uses/gettimeoffset.h) \ - include/linux/seqlock.h \ - $(wildcard include/config/debug/lock/alloc.h) \ - include/linux/spinlock.h \ - $(wildcard include/config/debug/spinlock.h) \ - $(wildcard include/config/generic/lockbreak.h) \ - $(wildcard include/config/preempt.h) \ - include/linux/preempt.h \ - $(wildcard include/config/preempt/count.h) \ - $(wildcard include/config/debug/preempt.h) \ - $(wildcard include/config/preempt/tracer.h) \ - $(wildcard include/config/preempt/notifiers.h) \ - arch/x86/include/asm/preempt.h \ - arch/x86/include/asm/percpu.h \ - $(wildcard include/config/x86/64/smp.h) \ - include/asm-generic/percpu.h \ - $(wildcard include/config/have/setup/per/cpu/area.h) \ - include/linux/threads.h \ - $(wildcard include/config/nr/cpus.h) \ - $(wildcard include/config/base/small.h) \ - include/linux/percpu-defs.h \ - $(wildcard include/config/debug/force/weak/per/cpu.h) \ - include/linux/thread_info.h \ - $(wildcard include/config/thread/info/in/task.h) \ - $(wildcard include/config/compat.h) \ - include/linux/bug.h \ - arch/x86/include/asm/bug.h \ - $(wildcard include/config/debug/bugverbose.h) \ - include/asm-generic/bug.h \ - $(wildcard include/config/bug.h) \ - $(wildcard include/config/generic/bug/relative/pointers.h) \ - arch/x86/include/asm/thread_info.h \ - $(wildcard include/config/vm86.h) \ - $(wildcard include/config/ia32/emulation.h) \ - arch/x86/include/asm/page.h \ - arch/x86/include/asm/page_types.h \ - $(wildcard include/config/physical/start.h) \ - $(wildcard include/config/physical/align.h) \ - arch/x86/include/asm/page_64_types.h \ - $(wildcard include/config/kasan/extra.h) \ - $(wildcard include/config/randomize/base.h) \ - $(wildcard include/config/randomize/base/max/offset.h) \ - arch/x86/include/asm/page_64.h \ - $(wildcard include/config/debug/virtual.h) \ - $(wildcard include/config/flatmem.h) \ - $(wildcard include/config/x86/vsyscall/emulation.h) \ - include/linux/range.h \ - include/asm-generic/memory_model.h \ - $(wildcard include/config/discontigmem.h) \ - $(wildcard include/config/sparsemem/vmemmap.h) \ - $(wildcard include/config/sparsemem.h) \ - include/linux/pfn.h \ - include/asm-generic/getorder.h \ - arch/x86/include/asm/cpufeature.h \ - $(wildcard include/config/x86/feature/names.h) \ - $(wildcard include/config/x86/fast/feature/tests.h) \ - arch/x86/include/asm/processor.h \ - $(wildcard include/config/cc/stackprotector.h) \ - $(wildcard include/config/x86/debugctlmsr.h) \ - $(wildcard include/config/xen.h) \ - arch/x86/include/asm/processor-flags.h \ - arch/x86/include/uapi/asm/processor-flags.h \ - arch/x86/include/asm/math_emu.h \ - arch/x86/include/asm/ptrace.h \ - arch/x86/include/asm/segment.h \ - $(wildcard include/config/x86/32/lazy/gs.h) \ - arch/x86/include/uapi/asm/ptrace.h \ - arch/x86/include/uapi/asm/ptrace-abi.h \ - arch/x86/include/asm/paravirt_types.h \ - $(wildcard include/config/x86/local/apic.h) \ - $(wildcard include/config/pgtable/levels.h) \ - $(wildcard include/config/queued/spinlocks.h) \ - $(wildcard include/config/paravirt/debug.h) \ - arch/x86/include/asm/desc_defs.h \ - arch/x86/include/asm/kmap_types.h \ - $(wildcard include/config/debug/highmem.h) \ - include/asm-generic/kmap_types.h \ - arch/x86/include/asm/pgtable_types.h \ - $(wildcard include/config/kmemcheck.h) \ - $(wildcard include/config/mem/soft/dirty.h) \ - $(wildcard include/config/proc/fs.h) \ - arch/x86/include/asm/pgtable_64_types.h \ - arch/x86/include/asm/sparsemem.h \ - arch/x86/include/asm/nospec-branch.h \ - $(wildcard include/config/retpoline.h) \ - include/linux/static_key.h \ - include/linux/jump_label.h \ - $(wildcard include/config/jump/label.h) \ - arch/x86/include/asm/jump_label.h \ - include/linux/atomic.h \ - $(wildcard include/config/generic/atomic64.h) \ - arch/x86/include/asm/atomic.h \ - arch/x86/include/asm/cmpxchg.h \ - arch/x86/include/asm/cmpxchg_64.h \ - arch/x86/include/asm/atomic64_64.h \ - include/asm-generic/atomic-long.h \ - arch/x86/include/asm/alternative-asm.h \ - arch/x86/include/asm/msr-index.h \ - $(wildcard include/config/tdp/nominal.h) \ - $(wildcard include/config/tdp/level/1.h) \ - $(wildcard include/config/tdp/level/2.h) \ - $(wildcard include/config/tdp/control.h) \ - $(wildcard include/config/tdp/level1.h) \ - $(wildcard include/config/tdp/level2.h) \ - arch/x86/include/asm/spinlock_types.h \ - $(wildcard include/config/paravirt/spinlocks.h) \ - include/asm-generic/qrwlock_types.h \ - include/asm-generic/ptrace.h \ - arch/x86/include/uapi/asm/sigcontext.h \ - arch/x86/include/asm/current.h \ - arch/x86/include/asm/msr.h \ - arch/x86/include/asm/msr-index.h \ - arch/x86/include/uapi/asm/errno.h \ - include/uapi/asm-generic/errno.h \ - include/uapi/asm-generic/errno-base.h \ - arch/x86/include/asm/cpumask.h \ - include/linux/cpumask.h \ - $(wildcard include/config/cpumask/offstack.h) \ - $(wildcard include/config/hotplug/cpu.h) \ - $(wildcard include/config/debug/per/cpu/maps.h) \ - include/linux/bitmap.h \ - include/linux/string.h \ - $(wildcard include/config/binary/printf.h) \ - include/uapi/linux/string.h \ - arch/x86/include/asm/string.h \ - arch/x86/include/asm/string_64.h \ - arch/x86/include/uapi/asm/msr.h \ - include/uapi/linux/ioctl.h \ - arch/x86/include/uapi/asm/ioctl.h \ - include/asm-generic/ioctl.h \ - include/uapi/asm-generic/ioctl.h \ - arch/x86/include/asm/paravirt.h \ - arch/x86/include/asm/special_insns.h \ - arch/x86/include/asm/fpu/types.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - include/linux/math64.h \ - $(wildcard include/config/arch/supports/int128.h) \ - arch/x86/include/asm/div64.h \ - include/asm-generic/div64.h \ - include/linux/err.h \ - include/linux/irqflags.h \ - $(wildcard include/config/trace/irqflags.h) \ - $(wildcard include/config/irqsoff/tracer.h) \ - $(wildcard include/config/trace/irqflags/support.h) \ - arch/x86/include/asm/irqflags.h \ - include/linux/bottom_half.h \ - include/linux/spinlock_types.h \ - include/linux/lockdep.h \ - $(wildcard include/config/lockdep.h) \ - $(wildcard include/config/lock/stat.h) \ - include/linux/rwlock_types.h \ - arch/x86/include/asm/spinlock.h \ - arch/x86/include/asm/qrwlock.h \ - include/asm-generic/qrwlock.h \ - include/linux/rwlock.h \ - include/linux/spinlock_api_smp.h \ - $(wildcard include/config/inline/spin/lock.h) \ - $(wildcard include/config/inline/spin/lock/bh.h) \ - $(wildcard include/config/inline/spin/lock/irq.h) \ - $(wildcard include/config/inline/spin/lock/irqsave.h) \ - $(wildcard include/config/inline/spin/trylock.h) \ - $(wildcard include/config/inline/spin/trylock/bh.h) \ - $(wildcard include/config/uninline/spin/unlock.h) \ - $(wildcard include/config/inline/spin/unlock/bh.h) \ - $(wildcard include/config/inline/spin/unlock/irq.h) \ - $(wildcard include/config/inline/spin/unlock/irqrestore.h) \ - include/linux/rwlock_api_smp.h \ - $(wildcard include/config/inline/read/lock.h) \ - $(wildcard include/config/inline/write/lock.h) \ - $(wildcard include/config/inline/read/lock/bh.h) \ - $(wildcard include/config/inline/write/lock/bh.h) \ - $(wildcard include/config/inline/read/lock/irq.h) \ - $(wildcard include/config/inline/write/lock/irq.h) \ - $(wildcard include/config/inline/read/lock/irqsave.h) \ - $(wildcard include/config/inline/write/lock/irqsave.h) \ - $(wildcard include/config/inline/read/trylock.h) \ - $(wildcard include/config/inline/write/trylock.h) \ - $(wildcard include/config/inline/read/unlock.h) \ - $(wildcard include/config/inline/write/unlock.h) \ - $(wildcard include/config/inline/read/unlock/bh.h) \ - $(wildcard include/config/inline/write/unlock/bh.h) \ - $(wildcard include/config/inline/read/unlock/irq.h) \ - $(wildcard include/config/inline/write/unlock/irq.h) \ - $(wildcard include/config/inline/read/unlock/irqrestore.h) \ - $(wildcard include/config/inline/write/unlock/irqrestore.h) \ - include/linux/time64.h \ - include/uapi/linux/time.h \ - include/linux/uidgid.h \ - $(wildcard include/config/multiuser.h) \ - $(wildcard include/config/user/ns.h) \ - include/linux/highuid.h \ - include/linux/kmod.h \ - include/linux/gfp.h \ - $(wildcard include/config/highmem.h) \ - $(wildcard include/config/zone/dma.h) \ - $(wildcard include/config/zone/dma32.h) \ - $(wildcard include/config/zone/device.h) \ - $(wildcard include/config/numa.h) \ - $(wildcard include/config/deferred/struct/page/init.h) \ - $(wildcard include/config/pm/sleep.h) \ - $(wildcard include/config/cma.h) \ - include/linux/mmdebug.h \ - $(wildcard include/config/debug/vm.h) \ - include/linux/mmzone.h \ - $(wildcard include/config/force/max/zoneorder.h) \ - $(wildcard include/config/memory/isolation.h) \ - $(wildcard include/config/memcg.h) \ - $(wildcard include/config/memory/hotplug.h) \ - $(wildcard include/config/compaction.h) \ - $(wildcard include/config/flat/node/mem/map.h) \ - $(wildcard include/config/page/extension.h) \ - $(wildcard include/config/no/bootmem.h) \ - $(wildcard include/config/numa/balancing.h) \ - $(wildcard include/config/have/memory/present.h) \ - $(wildcard include/config/have/memoryless/nodes.h) \ - $(wildcard include/config/need/node/memmap/size.h) \ - $(wildcard include/config/have/memblock/node/map.h) \ - $(wildcard include/config/need/multiple/nodes.h) \ - $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ - $(wildcard include/config/sparsemem/extreme.h) \ - $(wildcard include/config/have/arch/pfn/valid.h) \ - $(wildcard include/config/holes/in/zone.h) \ - $(wildcard include/config/arch/has/holes/memorymodel.h) \ - include/linux/wait.h \ - include/uapi/linux/wait.h \ - include/linux/numa.h \ - $(wildcard include/config/nodes/shift.h) \ - include/linux/nodemask.h \ - $(wildcard include/config/movable/node.h) \ - include/linux/pageblock-flags.h \ - $(wildcard include/config/hugetlb/page.h) \ - $(wildcard include/config/hugetlb/page/size/variable.h) \ - include/linux/page-flags-layout.h \ - include/generated/bounds.h \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/memory/hotremove.h) \ - $(wildcard include/config/have/arch/nodedata/extension.h) \ - $(wildcard include/config/have/bootmem/info/node.h) \ - include/linux/notifier.h \ - include/linux/errno.h \ - include/uapi/linux/errno.h \ - include/linux/mutex.h \ - $(wildcard include/config/debug/mutexes.h) \ - $(wildcard include/config/mutex/spin/on/owner.h) \ - include/linux/osq_lock.h \ - include/linux/rwsem.h \ - $(wildcard include/config/rwsem/spin/on/owner.h) \ - $(wildcard include/config/rwsem/generic/spinlock.h) \ - arch/x86/include/asm/rwsem.h \ - include/linux/srcu.h \ - include/linux/rcupdate.h \ - $(wildcard include/config/tiny/rcu.h) \ - $(wildcard include/config/tree/rcu.h) \ - $(wildcard include/config/preempt/rcu.h) \ - $(wildcard include/config/rcu/trace.h) \ - $(wildcard include/config/rcu/stall/common.h) \ - $(wildcard include/config/no/hz/full.h) \ - $(wildcard include/config/rcu/nocb/cpu.h) \ - $(wildcard include/config/tasks/rcu.h) \ - $(wildcard include/config/debug/objects/rcu/head.h) \ - $(wildcard include/config/prove/rcu.h) \ - $(wildcard include/config/rcu/boost.h) \ - $(wildcard include/config/rcu/nocb/cpu/all.h) \ - $(wildcard include/config/no/hz/full/sysidle.h) \ - include/linux/completion.h \ - include/linux/debugobjects.h \ - $(wildcard include/config/debug/objects.h) \ - $(wildcard include/config/debug/objects/free.h) \ - include/linux/ktime.h \ - include/linux/jiffies.h \ - include/linux/timex.h \ - include/uapi/linux/timex.h \ - include/uapi/linux/param.h \ - arch/x86/include/uapi/asm/param.h \ - include/asm-generic/param.h \ - $(wildcard include/config/hz.h) \ - include/uapi/asm-generic/param.h \ - arch/x86/include/asm/timex.h \ - arch/x86/include/asm/tsc.h \ - $(wildcard include/config/x86/tsc.h) \ - include/generated/timeconst.h \ - include/linux/timekeeping.h \ - include/linux/rcutree.h \ - include/linux/workqueue.h \ - $(wildcard include/config/debug/objects/work.h) \ - $(wildcard include/config/freezer.h) \ - include/linux/timer.h \ - $(wildcard include/config/debug/objects/timers.h) \ - $(wildcard include/config/no/hz/common.h) \ - include/linux/sysctl.h \ - $(wildcard include/config/sysctl.h) \ - include/linux/rbtree.h \ - include/uapi/linux/sysctl.h \ - arch/x86/include/asm/mmzone.h \ - arch/x86/include/asm/mmzone_64.h \ - arch/x86/include/asm/smp.h \ - $(wildcard include/config/x86/io/apic.h) \ - $(wildcard include/config/x86/32/smp.h) \ - $(wildcard include/config/debug/nmi/selftest.h) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/eisa.h) \ - $(wildcard include/config/x86/mpparse.h) \ - arch/x86/include/asm/mpspec_def.h \ - arch/x86/include/asm/x86_init.h \ - arch/x86/include/uapi/asm/bootparam.h \ - include/linux/screen_info.h \ - include/uapi/linux/screen_info.h \ - include/linux/apm_bios.h \ - include/uapi/linux/apm_bios.h \ - include/linux/edd.h \ - include/uapi/linux/edd.h \ - arch/x86/include/asm/e820.h \ - $(wildcard include/config/efi.h) \ - $(wildcard include/config/hibernation.h) \ - arch/x86/include/uapi/asm/e820.h \ - $(wildcard include/config/x86/pmem/legacy.h) \ - $(wildcard include/config/intel/txt.h) \ - include/linux/ioport.h \ - arch/x86/include/asm/ist.h \ - arch/x86/include/uapi/asm/ist.h \ - include/video/edid.h \ - $(wildcard include/config/x86.h) \ - include/uapi/video/edid.h \ - arch/x86/include/asm/apicdef.h \ - arch/x86/include/asm/apic.h \ - $(wildcard include/config/x86/x2apic.h) \ - include/linux/pm.h \ - $(wildcard include/config/vt/console/sleep.h) \ - $(wildcard include/config/pm.h) \ - $(wildcard include/config/pm/clk.h) \ - $(wildcard include/config/pm/generic/domains.h) \ - arch/x86/include/asm/fixmap.h \ - $(wildcard include/config/paravirt/clock.h) \ - $(wildcard include/config/provide/ohci1394/dma/init.h) \ - $(wildcard include/config/pci/mmconfig.h) \ - $(wildcard include/config/x86/intel/mid.h) \ - arch/x86/include/asm/acpi.h \ - $(wildcard include/config/acpi/apei.h) \ - $(wildcard include/config/acpi.h) \ - $(wildcard include/config/acpi/numa.h) \ - include/acpi/pdc_intel.h \ - arch/x86/include/asm/numa.h \ - $(wildcard include/config/numa/emu.h) \ - arch/x86/include/asm/topology.h \ - include/asm-generic/topology.h \ - arch/x86/include/asm/mmu.h \ - $(wildcard include/config/modify/ldt/syscall.h) \ - arch/x86/include/asm/realmode.h \ - $(wildcard include/config/acpi/sleep.h) \ - arch/x86/include/asm/io.h \ - $(wildcard include/config/mtrr.h) \ - $(wildcard include/config/x86/pat.h) \ - arch/x86/include/generated/asm/early_ioremap.h \ - include/asm-generic/early_ioremap.h \ - $(wildcard include/config/generic/early/ioremap.h) \ - include/asm-generic/iomap.h \ - $(wildcard include/config/has/ioport/map.h) \ - $(wildcard include/config/pci.h) \ - $(wildcard include/config/generic/iomap.h) \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/no/generic/pci/ioport/map.h) \ - $(wildcard include/config/generic/pci/iomap.h) \ - include/xen/xen.h \ - $(wildcard include/config/xen/dom0.h) \ - $(wildcard include/config/xen/pvh.h) \ - include/xen/interface/xen.h \ - arch/x86/include/asm/xen/interface.h \ - arch/x86/include/asm/xen/interface_64.h \ - arch/x86/include/asm/pvclock-abi.h \ - arch/x86/include/asm/xen/hypervisor.h \ - include/xen/features.h \ - include/xen/interface/features.h \ - arch/x86/include/asm/pvclock.h \ - $(wildcard include/config/kvm/guest.h) \ - include/linux/clocksource.h \ - $(wildcard include/config/arch/clocksource/data.h) \ - $(wildcard include/config/clocksource/watchdog.h) \ - $(wildcard include/config/clksrc/probe.h) \ - arch/x86/include/asm/clocksource.h \ - arch/x86/include/uapi/asm/vsyscall.h \ - include/asm-generic/fixmap.h \ - arch/x86/include/asm/hardirq.h \ - $(wildcard include/config/kvm/intel.h) \ - $(wildcard include/config/have/kvm.h) \ - $(wildcard include/config/x86/thermal/vector.h) \ - $(wildcard include/config/x86/mce/threshold.h) \ - $(wildcard include/config/x86/mce/amd.h) \ - $(wildcard include/config/hyperv.h) \ - arch/x86/include/asm/idle.h \ - arch/x86/include/asm/io_apic.h \ - arch/x86/include/asm/irq_vectors.h \ - $(wildcard include/config/pci/msi.h) \ - include/linux/topology.h \ - $(wildcard include/config/use/percpu/numa/node/id.h) \ - $(wildcard include/config/sched/smt.h) \ - include/linux/smp.h \ - $(wildcard include/config/up/late/init.h) \ - include/linux/llist.h \ - $(wildcard include/config/arch/have/nmi/safe/cmpxchg.h) \ - include/linux/percpu.h \ - $(wildcard include/config/need/per/cpu/embed/first/chunk.h) \ - $(wildcard include/config/need/per/cpu/page/first/chunk.h) \ - include/linux/elf.h \ - arch/x86/include/asm/elf.h \ - $(wildcard include/config/x86/x32/abi.h) \ - arch/x86/include/asm/user.h \ - arch/x86/include/asm/user_64.h \ - arch/x86/include/uapi/asm/auxvec.h \ - arch/x86/include/asm/vdso.h \ - $(wildcard include/config/x86/x32.h) \ - include/linux/mm_types.h \ - $(wildcard include/config/split/ptlock/cpus.h) \ - $(wildcard include/config/arch/enable/split/pmd/ptlock.h) \ - $(wildcard include/config/have/cmpxchg/double.h) \ - $(wildcard include/config/have/aligned/struct/page.h) \ - $(wildcard include/config/transparent/hugepage.h) \ - $(wildcard include/config/userfaultfd.h) \ - $(wildcard include/config/aio.h) \ - $(wildcard include/config/mmu/notifier.h) \ - $(wildcard include/config/arch/want/batched/unmap/tlb/flush.h) \ - include/linux/auxvec.h \ - include/uapi/linux/auxvec.h \ - include/linux/uprobes.h \ - $(wildcard include/config/uprobes.h) \ - arch/x86/include/asm/uprobes.h \ - include/uapi/linux/elf.h \ - include/uapi/linux/elf-em.h \ - include/linux/kobject.h \ - $(wildcard include/config/uevent/helper.h) \ - $(wildcard include/config/debug/kobject/release.h) \ - include/linux/sysfs.h \ - include/linux/kernfs.h \ - $(wildcard include/config/kernfs.h) \ - include/linux/idr.h \ - include/linux/kobject_ns.h \ - include/linux/kref.h \ - include/linux/moduleparam.h \ - $(wildcard include/config/alpha.h) \ - $(wildcard include/config/ia64.h) \ - $(wildcard include/config/ppc64.h) \ - include/linux/rbtree_latch.h \ - arch/x86/include/asm/module.h \ - $(wildcard include/config/m486.h) \ - $(wildcard include/config/m586.h) \ - $(wildcard include/config/m586tsc.h) \ - $(wildcard include/config/m586mmx.h) \ - $(wildcard include/config/mcore2.h) \ - $(wildcard include/config/m686.h) \ - $(wildcard include/config/mpentiumii.h) \ - $(wildcard include/config/mpentiumiii.h) \ - $(wildcard include/config/mpentiumm.h) \ - $(wildcard include/config/mpentium4.h) \ - $(wildcard include/config/mk6.h) \ - $(wildcard include/config/mk8.h) \ - $(wildcard include/config/melan.h) \ - $(wildcard include/config/mcrusoe.h) \ - $(wildcard include/config/mefficeon.h) \ - $(wildcard include/config/mwinchipc6.h) \ - $(wildcard include/config/mwinchip3d.h) \ - $(wildcard include/config/mcyrixiii.h) \ - $(wildcard include/config/mviac3/2.h) \ - $(wildcard include/config/mviac7.h) \ - $(wildcard include/config/mgeodegx1.h) \ - $(wildcard include/config/mgeode/lx.h) \ - include/asm-generic/module.h \ - $(wildcard include/config/have/mod/arch/specific.h) \ - $(wildcard include/config/modules/use/elf/rel.h) \ - $(wildcard include/config/modules/use/elf/rela.h) \ - include/linux/vermagic.h \ - include/generated/utsrelease.h \ - -/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma.mod.o: $(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma.mod.o) - -$(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma.mod.o): diff --git a/host_software/driver/xdma/.xdma.o.cmd b/host_software/driver/xdma/.xdma.o.cmd deleted file mode 100644 index 5d74978..0000000 --- a/host_software/driver/xdma/.xdma.o.cmd +++ /dev/null @@ -1 +0,0 @@ -cmd_/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma.o := ld -m elf_x86_64 -z max-page-size=0x200000 -r -o /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_cdev.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_ctrl.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_events.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_sgdma.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_xvc.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/cdev_bypass.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_mod.o diff --git a/host_software/driver/xdma/.xdma_cdev.o.cmd b/host_software/driver/xdma/.xdma_cdev.o.cmd deleted file mode 100644 index d9076c8..0000000 --- a/host_software/driver/xdma/.xdma_cdev.o.cmd +++ /dev/null @@ -1,994 +0,0 @@ -cmd_/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_cdev.o := gcc -Wp,-MD,/home/wangxuan/pcie_xdma_host_software/driver/xdma/.xdma_cdev.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/5/include -I./arch/x86/include -Iarch/x86/include/generated/uapi -Iarch/x86/include/generated -Iinclude -I./arch/x86/include/uapi -Iarch/x86/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -Iubuntu/include -D__KERNEL__ -fno-pie -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -fno-pie -no-pie -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_X86_X32_ABI -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -DCONFIG_AS_SHA1_NI=1 -DCONFIG_AS_SHA256_NI=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -DRETPOLINE -fno-delete-null-pointer-checks -O2 --param=allow-store-data-races=0 -DCC_HAVE_ASM_GOTO -Wframe-larger-than=1024 -fstack-protector-strong -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wno-pointer-sign -Wno-array-bounds -Wno-maybe-uninitialized -fno-strict-overflow -fno-merge-all-constants -fmerge-constants -fno-stack-check -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -DMODULE -D"KBUILD_STR(s)=$(pound)s" -D"KBUILD_BASENAME=KBUILD_STR(xdma_cdev)" -D"KBUILD_MODNAME=KBUILD_STR(xdma)" -c -o /home/wangxuan/pcie_xdma_host_software/driver/xdma/.tmp_xdma_cdev.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_cdev.c - -source_/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_cdev.o := /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_cdev.c - -deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_cdev.o := \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_cdev.h \ - include/linux/kernel.h \ - $(wildcard include/config/lbdaf.h) \ - $(wildcard include/config/preempt/voluntary.h) \ - $(wildcard include/config/debug/atomic/sleep.h) \ - $(wildcard include/config/mmu.h) \ - $(wildcard include/config/prove/locking.h) \ - $(wildcard include/config/panic/timeout.h) \ - $(wildcard include/config/tracing.h) \ - $(wildcard include/config/ftrace/mcount/record.h) \ - /usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h \ - include/linux/linkage.h \ - include/linux/compiler.h \ - $(wildcard include/config/sparse/rcu/pointer.h) \ - $(wildcard include/config/trace/branch/profiling.h) \ - $(wildcard include/config/profile/all/branches.h) \ - $(wildcard include/config/kasan.h) \ - $(wildcard include/config/enable/must/check.h) \ - $(wildcard include/config/enable/warn/deprecated.h) \ - $(wildcard include/config/kprobes.h) \ - include/linux/compiler-gcc.h \ - $(wildcard include/config/arch/supports/optimized/inlining.h) \ - $(wildcard include/config/optimize/inlining.h) \ - $(wildcard include/config/arm64.h) \ - $(wildcard include/config/gcov/kernel.h) \ - $(wildcard include/config/arch/use/builtin/bswap.h) \ - include/uapi/linux/types.h \ - arch/x86/include/uapi/asm/types.h \ - include/uapi/asm-generic/types.h \ - include/asm-generic/int-ll64.h \ - include/uapi/asm-generic/int-ll64.h \ - arch/x86/include/uapi/asm/bitsperlong.h \ - include/asm-generic/bitsperlong.h \ - $(wildcard include/config/64bit.h) \ - include/uapi/asm-generic/bitsperlong.h \ - include/uapi/linux/posix_types.h \ - include/linux/stddef.h \ - include/uapi/linux/stddef.h \ - arch/x86/include/asm/posix_types.h \ - $(wildcard include/config/x86/32.h) \ - arch/x86/include/uapi/asm/posix_types_64.h \ - include/uapi/asm-generic/posix_types.h \ - include/linux/kasan-checks.h \ - include/linux/stringify.h \ - include/linux/export.h \ - $(wildcard include/config/have/underscore/symbol/prefix.h) \ - $(wildcard include/config/modules.h) \ - $(wildcard include/config/modversions.h) \ - $(wildcard include/config/unused/symbols.h) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/x86/64.h) \ - $(wildcard include/config/x86/alignment/16.h) \ - include/linux/types.h \ - $(wildcard include/config/have/uid16.h) \ - $(wildcard include/config/uid16.h) \ - $(wildcard include/config/arch/dma/addr/t/64bit.h) \ - $(wildcard include/config/phys/addr/t/64bit.h) \ - include/linux/bitops.h \ - include/linux/bits.h \ - arch/x86/include/asm/bitops.h \ - $(wildcard include/config/x86/cmov.h) \ - arch/x86/include/asm/alternative.h \ - $(wildcard include/config/smp.h) \ - arch/x86/include/asm/asm.h \ - arch/x86/include/asm/rmwcc.h \ - arch/x86/include/asm/barrier.h \ - $(wildcard include/config/x86/ppro/fence.h) \ - arch/x86/include/asm/nops.h \ - $(wildcard include/config/mk7.h) \ - $(wildcard include/config/x86/p6/nop.h) \ - include/asm-generic/barrier.h \ - include/asm-generic/bitops/find.h \ - $(wildcard include/config/generic/find/first/bit.h) \ - include/asm-generic/bitops/sched.h \ - arch/x86/include/asm/arch_hweight.h \ - arch/x86/include/asm/cpufeatures.h \ - $(wildcard include/config/page/table/isolation.h) \ - arch/x86/include/asm/required-features.h \ - $(wildcard include/config/x86/minimum/cpu/family.h) \ - $(wildcard include/config/math/emulation.h) \ - $(wildcard include/config/x86/pae.h) \ - $(wildcard include/config/x86/cmpxchg64.h) \ - $(wildcard include/config/x86/use/3dnow.h) \ - $(wildcard include/config/matom.h) \ - $(wildcard include/config/paravirt.h) \ - arch/x86/include/asm/disabled-features.h \ - $(wildcard include/config/x86/intel/mpx.h) \ - $(wildcard include/config/x86/intel/memory/protection/keys.h) \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/le.h \ - arch/x86/include/uapi/asm/byteorder.h \ - include/linux/byteorder/little_endian.h \ - include/uapi/linux/byteorder/little_endian.h \ - include/linux/swab.h \ - include/uapi/linux/swab.h \ - arch/x86/include/uapi/asm/swab.h \ - include/linux/byteorder/generic.h \ - include/asm-generic/bitops/ext2-atomic-setbit.h \ - include/linux/log2.h \ - $(wildcard include/config/arch/has/ilog2/u32.h) \ - $(wildcard include/config/arch/has/ilog2/u64.h) \ - include/linux/typecheck.h \ - include/linux/printk.h \ - $(wildcard include/config/message/loglevel/default.h) \ - $(wildcard include/config/early/printk.h) \ - $(wildcard include/config/printk.h) \ - $(wildcard include/config/dynamic/debug.h) \ - include/linux/init.h \ - $(wildcard include/config/broken/rodata.h) \ - $(wildcard include/config/lto.h) \ - include/linux/kern_levels.h \ - include/linux/cache.h \ - $(wildcard include/config/arch/has/cache/line/size.h) \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.h \ - arch/x86/include/asm/cache.h \ - $(wildcard include/config/x86/l1/cache/shift.h) \ - $(wildcard include/config/x86/internode/cache/shift.h) \ - $(wildcard include/config/x86/vsmp.h) \ - include/linux/dynamic_debug.h \ - include/linux/uaccess.h \ - $(wildcard include/config/preempt/count.h) \ - include/linux/sched.h \ - $(wildcard include/config/no/hz/common.h) \ - $(wildcard include/config/sched/debug.h) \ - $(wildcard include/config/prove/rcu.h) \ - $(wildcard include/config/lockup/detector.h) \ - $(wildcard include/config/detect/hung/task.h) \ - $(wildcard include/config/core/dump/default/elf/headers.h) \ - $(wildcard include/config/virt/cpu/accounting/native.h) \ - $(wildcard include/config/sched/autogroup.h) \ - $(wildcard include/config/bsd/process/acct.h) \ - $(wildcard include/config/taskstats.h) \ - $(wildcard include/config/audit.h) \ - $(wildcard include/config/inotify/user.h) \ - $(wildcard include/config/fanotify.h) \ - $(wildcard include/config/epoll.h) \ - $(wildcard include/config/posix/mqueue.h) \ - $(wildcard include/config/keys.h) \ - $(wildcard include/config/perf/events.h) \ - $(wildcard include/config/bpf/syscall.h) \ - $(wildcard include/config/sched/info.h) \ - $(wildcard include/config/task/delay/acct.h) \ - $(wildcard include/config/schedstats.h) \ - $(wildcard include/config/sched/smt.h) \ - $(wildcard include/config/sched/mc.h) \ - $(wildcard include/config/numa.h) \ - $(wildcard include/config/fair/group/sched.h) \ - $(wildcard include/config/rt/group/sched.h) \ - $(wildcard include/config/thread/info/in/task.h) \ - $(wildcard include/config/cgroup/sched.h) \ - $(wildcard include/config/preempt/notifiers.h) \ - $(wildcard include/config/blk/dev/io/trace.h) \ - $(wildcard include/config/preempt/rcu.h) \ - $(wildcard include/config/tasks/rcu.h) \ - $(wildcard include/config/memcg.h) \ - $(wildcard include/config/memcg/kmem.h) \ - $(wildcard include/config/compat/brk.h) \ - $(wildcard include/config/cgroups.h) \ - $(wildcard include/config/cc/stackprotector.h) \ - $(wildcard include/config/virt/cpu/accounting/gen.h) \ - $(wildcard include/config/sysvipc.h) \ - $(wildcard include/config/auditsyscall.h) \ - $(wildcard include/config/rt/mutexes.h) \ - $(wildcard include/config/debug/mutexes.h) \ - $(wildcard include/config/trace/irqflags.h) \ - $(wildcard include/config/lockdep.h) \ - $(wildcard include/config/block.h) \ - $(wildcard include/config/task/xacct.h) \ - $(wildcard include/config/cpusets.h) \ - $(wildcard include/config/futex.h) \ - $(wildcard include/config/compat.h) \ - $(wildcard include/config/debug/preempt.h) \ - $(wildcard include/config/numa/balancing.h) \ - $(wildcard include/config/arch/want/batched/unmap/tlb/flush.h) \ - $(wildcard include/config/fault/injection.h) \ - $(wildcard include/config/latencytop.h) \ - $(wildcard include/config/function/graph/tracer.h) \ - $(wildcard include/config/uprobes.h) \ - $(wildcard include/config/bcache.h) \ - $(wildcard include/config/arch/wants/dynamic/task/struct.h) \ - $(wildcard include/config/have/unstable/sched/clock.h) \ - $(wildcard include/config/irq/time/accounting.h) \ - $(wildcard include/config/hotplug/cpu.h) \ - $(wildcard include/config/no/hz/full.h) \ - $(wildcard include/config/proc/fs.h) \ - $(wildcard include/config/stack/growsup.h) \ - $(wildcard include/config/have/copy/thread/tls.h) \ - $(wildcard include/config/debug/stack/usage.h) \ - $(wildcard include/config/preempt.h) \ - include/uapi/linux/sched.h \ - include/linux/sched/prio.h \ - arch/x86/include/uapi/asm/param.h \ - include/asm-generic/param.h \ - $(wildcard include/config/hz.h) \ - include/uapi/asm-generic/param.h \ - include/linux/capability.h \ - $(wildcard include/config/multiuser.h) \ - include/uapi/linux/capability.h \ - include/linux/threads.h \ - $(wildcard include/config/nr/cpus.h) \ - $(wildcard include/config/base/small.h) \ - include/linux/timex.h \ - include/uapi/linux/timex.h \ - include/linux/time.h \ - $(wildcard include/config/arch/uses/gettimeoffset.h) \ - include/linux/seqlock.h \ - $(wildcard include/config/debug/lock/alloc.h) \ - include/linux/spinlock.h \ - $(wildcard include/config/debug/spinlock.h) \ - $(wildcard include/config/generic/lockbreak.h) \ - include/linux/preempt.h \ - $(wildcard include/config/preempt/tracer.h) \ - include/linux/list.h \ - $(wildcard include/config/debug/list.h) \ - include/linux/poison.h \ - $(wildcard include/config/illegal/pointer/value.h) \ - include/uapi/linux/const.h \ - arch/x86/include/asm/preempt.h \ - arch/x86/include/asm/percpu.h \ - $(wildcard include/config/x86/64/smp.h) \ - include/asm-generic/percpu.h \ - $(wildcard include/config/have/setup/per/cpu/area.h) \ - include/linux/percpu-defs.h \ - $(wildcard include/config/debug/force/weak/per/cpu.h) \ - include/linux/thread_info.h \ - include/linux/bug.h \ - $(wildcard include/config/generic/bug.h) \ - arch/x86/include/asm/bug.h \ - $(wildcard include/config/debug/bugverbose.h) \ - include/asm-generic/bug.h \ - $(wildcard include/config/bug.h) \ - $(wildcard include/config/generic/bug/relative/pointers.h) \ - arch/x86/include/asm/thread_info.h \ - $(wildcard include/config/vm86.h) \ - $(wildcard include/config/ia32/emulation.h) \ - arch/x86/include/asm/page.h \ - arch/x86/include/asm/page_types.h \ - $(wildcard include/config/physical/start.h) \ - $(wildcard include/config/physical/align.h) \ - arch/x86/include/asm/page_64_types.h \ - $(wildcard include/config/kasan/extra.h) \ - $(wildcard include/config/randomize/base.h) \ - $(wildcard include/config/randomize/base/max/offset.h) \ - arch/x86/include/asm/page_64.h \ - $(wildcard include/config/debug/virtual.h) \ - $(wildcard include/config/flatmem.h) \ - $(wildcard include/config/x86/vsyscall/emulation.h) \ - include/linux/range.h \ - include/asm-generic/memory_model.h \ - $(wildcard include/config/discontigmem.h) \ - $(wildcard include/config/sparsemem/vmemmap.h) \ - $(wildcard include/config/sparsemem.h) \ - include/linux/pfn.h \ - include/asm-generic/getorder.h \ - arch/x86/include/asm/cpufeature.h \ - $(wildcard include/config/x86/feature/names.h) \ - $(wildcard include/config/x86/fast/feature/tests.h) \ - arch/x86/include/asm/processor.h \ - $(wildcard include/config/x86/debugctlmsr.h) \ - $(wildcard include/config/xen.h) \ - arch/x86/include/asm/processor-flags.h \ - arch/x86/include/uapi/asm/processor-flags.h \ - arch/x86/include/asm/math_emu.h \ - arch/x86/include/asm/ptrace.h \ - arch/x86/include/asm/segment.h \ - $(wildcard include/config/x86/32/lazy/gs.h) \ - arch/x86/include/uapi/asm/ptrace.h \ - arch/x86/include/uapi/asm/ptrace-abi.h \ - arch/x86/include/asm/paravirt_types.h \ - $(wildcard include/config/x86/local/apic.h) \ - $(wildcard include/config/pgtable/levels.h) \ - $(wildcard include/config/queued/spinlocks.h) \ - $(wildcard include/config/paravirt/debug.h) \ - arch/x86/include/asm/desc_defs.h \ - arch/x86/include/asm/kmap_types.h \ - $(wildcard include/config/debug/highmem.h) \ - include/asm-generic/kmap_types.h \ - arch/x86/include/asm/pgtable_types.h \ - $(wildcard include/config/kmemcheck.h) \ - $(wildcard include/config/mem/soft/dirty.h) \ - arch/x86/include/asm/pgtable_64_types.h \ - arch/x86/include/asm/sparsemem.h \ - arch/x86/include/asm/nospec-branch.h \ - $(wildcard include/config/retpoline.h) \ - include/linux/static_key.h \ - include/linux/jump_label.h \ - $(wildcard include/config/jump/label.h) \ - arch/x86/include/asm/jump_label.h \ - include/linux/atomic.h \ - $(wildcard include/config/generic/atomic64.h) \ - arch/x86/include/asm/atomic.h \ - arch/x86/include/asm/cmpxchg.h \ - arch/x86/include/asm/cmpxchg_64.h \ - arch/x86/include/asm/atomic64_64.h \ - include/asm-generic/atomic-long.h \ - arch/x86/include/asm/alternative-asm.h \ - arch/x86/include/asm/msr-index.h \ - $(wildcard include/config/tdp/nominal.h) \ - $(wildcard include/config/tdp/level/1.h) \ - $(wildcard include/config/tdp/level/2.h) \ - $(wildcard include/config/tdp/control.h) \ - $(wildcard include/config/tdp/level1.h) \ - $(wildcard include/config/tdp/level2.h) \ - arch/x86/include/asm/spinlock_types.h \ - $(wildcard include/config/paravirt/spinlocks.h) \ - include/asm-generic/qrwlock_types.h \ - include/asm-generic/ptrace.h \ - arch/x86/include/uapi/asm/sigcontext.h \ - arch/x86/include/asm/current.h \ - arch/x86/include/asm/msr.h \ - arch/x86/include/asm/msr-index.h \ - arch/x86/include/uapi/asm/errno.h \ - include/uapi/asm-generic/errno.h \ - include/uapi/asm-generic/errno-base.h \ - arch/x86/include/asm/cpumask.h \ - include/linux/cpumask.h \ - $(wildcard include/config/cpumask/offstack.h) \ - $(wildcard include/config/debug/per/cpu/maps.h) \ - include/linux/bitmap.h \ - include/linux/string.h \ - $(wildcard include/config/binary/printf.h) \ - include/uapi/linux/string.h \ - arch/x86/include/asm/string.h \ - arch/x86/include/asm/string_64.h \ - arch/x86/include/uapi/asm/msr.h \ - include/uapi/linux/ioctl.h \ - arch/x86/include/uapi/asm/ioctl.h \ - include/asm-generic/ioctl.h \ - include/uapi/asm-generic/ioctl.h \ - arch/x86/include/asm/paravirt.h \ - arch/x86/include/asm/special_insns.h \ - arch/x86/include/asm/fpu/types.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - include/linux/math64.h \ - $(wildcard include/config/arch/supports/int128.h) \ - arch/x86/include/asm/div64.h \ - include/asm-generic/div64.h \ - include/linux/err.h \ - include/linux/irqflags.h \ - $(wildcard include/config/irqsoff/tracer.h) \ - $(wildcard include/config/trace/irqflags/support.h) \ - arch/x86/include/asm/irqflags.h \ - include/linux/bottom_half.h \ - include/linux/spinlock_types.h \ - include/linux/lockdep.h \ - $(wildcard include/config/lock/stat.h) \ - include/linux/rwlock_types.h \ - arch/x86/include/asm/spinlock.h \ - arch/x86/include/asm/qrwlock.h \ - include/asm-generic/qrwlock.h \ - include/linux/rwlock.h \ - include/linux/spinlock_api_smp.h \ - $(wildcard include/config/inline/spin/lock.h) \ - $(wildcard include/config/inline/spin/lock/bh.h) \ - $(wildcard include/config/inline/spin/lock/irq.h) \ - $(wildcard include/config/inline/spin/lock/irqsave.h) \ - $(wildcard include/config/inline/spin/trylock.h) \ - $(wildcard include/config/inline/spin/trylock/bh.h) \ - $(wildcard include/config/uninline/spin/unlock.h) \ - $(wildcard include/config/inline/spin/unlock/bh.h) \ - $(wildcard include/config/inline/spin/unlock/irq.h) \ - $(wildcard include/config/inline/spin/unlock/irqrestore.h) \ - include/linux/rwlock_api_smp.h \ - $(wildcard include/config/inline/read/lock.h) \ - $(wildcard include/config/inline/write/lock.h) \ - $(wildcard include/config/inline/read/lock/bh.h) \ - $(wildcard include/config/inline/write/lock/bh.h) \ - $(wildcard include/config/inline/read/lock/irq.h) \ - $(wildcard include/config/inline/write/lock/irq.h) \ - $(wildcard include/config/inline/read/lock/irqsave.h) \ - $(wildcard include/config/inline/write/lock/irqsave.h) \ - $(wildcard include/config/inline/read/trylock.h) \ - $(wildcard include/config/inline/write/trylock.h) \ - $(wildcard include/config/inline/read/unlock.h) \ - $(wildcard include/config/inline/write/unlock.h) \ - $(wildcard include/config/inline/read/unlock/bh.h) \ - $(wildcard include/config/inline/write/unlock/bh.h) \ - $(wildcard include/config/inline/read/unlock/irq.h) \ - $(wildcard include/config/inline/write/unlock/irq.h) \ - $(wildcard include/config/inline/read/unlock/irqrestore.h) \ - $(wildcard include/config/inline/write/unlock/irqrestore.h) \ - include/linux/time64.h \ - include/uapi/linux/time.h \ - include/uapi/linux/param.h \ - arch/x86/include/asm/timex.h \ - arch/x86/include/asm/tsc.h \ - $(wildcard include/config/x86/tsc.h) \ - include/linux/jiffies.h \ - include/generated/timeconst.h \ - include/linux/plist.h \ - $(wildcard include/config/debug/pi/list.h) \ - include/linux/rbtree.h \ - include/linux/rcupdate.h \ - $(wildcard include/config/tiny/rcu.h) \ - $(wildcard include/config/tree/rcu.h) \ - $(wildcard include/config/rcu/trace.h) \ - $(wildcard include/config/rcu/stall/common.h) \ - $(wildcard include/config/rcu/nocb/cpu.h) \ - $(wildcard include/config/debug/objects/rcu/head.h) \ - $(wildcard include/config/rcu/boost.h) \ - $(wildcard include/config/rcu/nocb/cpu/all.h) \ - $(wildcard include/config/no/hz/full/sysidle.h) \ - include/linux/completion.h \ - include/linux/wait.h \ - include/uapi/linux/wait.h \ - include/linux/debugobjects.h \ - $(wildcard include/config/debug/objects.h) \ - $(wildcard include/config/debug/objects/free.h) \ - include/linux/ktime.h \ - include/linux/timekeeping.h \ - include/linux/rcutree.h \ - include/linux/errno.h \ - include/uapi/linux/errno.h \ - include/linux/nodemask.h \ - $(wildcard include/config/highmem.h) \ - $(wildcard include/config/movable/node.h) \ - include/linux/numa.h \ - $(wildcard include/config/nodes/shift.h) \ - include/linux/mm_types.h \ - $(wildcard include/config/split/ptlock/cpus.h) \ - $(wildcard include/config/arch/enable/split/pmd/ptlock.h) \ - $(wildcard include/config/have/cmpxchg/double.h) \ - $(wildcard include/config/have/aligned/struct/page.h) \ - $(wildcard include/config/transparent/hugepage.h) \ - $(wildcard include/config/userfaultfd.h) \ - $(wildcard include/config/aio.h) \ - $(wildcard include/config/mmu/notifier.h) \ - $(wildcard include/config/compaction.h) \ - $(wildcard include/config/hugetlb/page.h) \ - include/linux/auxvec.h \ - include/uapi/linux/auxvec.h \ - arch/x86/include/uapi/asm/auxvec.h \ - include/linux/rwsem.h \ - $(wildcard include/config/rwsem/spin/on/owner.h) \ - $(wildcard include/config/rwsem/generic/spinlock.h) \ - include/linux/osq_lock.h \ - arch/x86/include/asm/rwsem.h \ - include/linux/uprobes.h \ - arch/x86/include/asm/uprobes.h \ - include/linux/notifier.h \ - include/linux/mutex.h \ - $(wildcard include/config/mutex/spin/on/owner.h) \ - include/linux/srcu.h \ - include/linux/workqueue.h \ - $(wildcard include/config/debug/objects/work.h) \ - $(wildcard include/config/freezer.h) \ - $(wildcard include/config/sysfs.h) \ - include/linux/timer.h \ - $(wildcard include/config/debug/objects/timers.h) \ - include/linux/sysctl.h \ - $(wildcard include/config/sysctl.h) \ - include/uapi/linux/sysctl.h \ - include/linux/page-flags-layout.h \ - include/generated/bounds.h \ - arch/x86/include/asm/mmu.h \ - $(wildcard include/config/modify/ldt/syscall.h) \ - include/linux/cputime.h \ - arch/x86/include/generated/asm/cputime.h \ - include/asm-generic/cputime.h \ - $(wildcard include/config/virt/cpu/accounting.h) \ - include/asm-generic/cputime_jiffies.h \ - include/linux/smp.h \ - $(wildcard include/config/up/late/init.h) \ - include/linux/llist.h \ - $(wildcard include/config/arch/have/nmi/safe/cmpxchg.h) \ - arch/x86/include/asm/smp.h \ - $(wildcard include/config/x86/io/apic.h) \ - $(wildcard include/config/x86/32/smp.h) \ - $(wildcard include/config/debug/nmi/selftest.h) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/eisa.h) \ - $(wildcard include/config/x86/mpparse.h) \ - arch/x86/include/asm/mpspec_def.h \ - arch/x86/include/asm/x86_init.h \ - arch/x86/include/uapi/asm/bootparam.h \ - include/linux/screen_info.h \ - include/uapi/linux/screen_info.h \ - include/linux/apm_bios.h \ - include/uapi/linux/apm_bios.h \ - include/linux/edd.h \ - include/uapi/linux/edd.h \ - arch/x86/include/asm/e820.h \ - $(wildcard include/config/efi.h) \ - $(wildcard include/config/hibernation.h) \ - arch/x86/include/uapi/asm/e820.h \ - $(wildcard include/config/x86/pmem/legacy.h) \ - $(wildcard include/config/intel/txt.h) \ - include/linux/ioport.h \ - $(wildcard include/config/memory/hotremove.h) \ - arch/x86/include/asm/ist.h \ - arch/x86/include/uapi/asm/ist.h \ - include/video/edid.h \ - $(wildcard include/config/x86.h) \ - include/uapi/video/edid.h \ - arch/x86/include/asm/apicdef.h \ - arch/x86/include/asm/apic.h \ - $(wildcard include/config/x86/x2apic.h) \ - include/linux/pm.h \ - $(wildcard include/config/vt/console/sleep.h) \ - $(wildcard include/config/pm.h) \ - $(wildcard include/config/pm/sleep.h) \ - $(wildcard include/config/pm/clk.h) \ - $(wildcard include/config/pm/generic/domains.h) \ - arch/x86/include/asm/fixmap.h \ - $(wildcard include/config/paravirt/clock.h) \ - $(wildcard include/config/provide/ohci1394/dma/init.h) \ - $(wildcard include/config/pci/mmconfig.h) \ - $(wildcard include/config/x86/intel/mid.h) \ - arch/x86/include/asm/acpi.h \ - $(wildcard include/config/acpi/apei.h) \ - $(wildcard include/config/acpi.h) \ - $(wildcard include/config/acpi/numa.h) \ - include/acpi/pdc_intel.h \ - arch/x86/include/asm/numa.h \ - $(wildcard include/config/numa/emu.h) \ - arch/x86/include/asm/topology.h \ - include/asm-generic/topology.h \ - $(wildcard include/config/need/multiple/nodes.h) \ - $(wildcard include/config/have/memoryless/nodes.h) \ - arch/x86/include/asm/realmode.h \ - $(wildcard include/config/acpi/sleep.h) \ - arch/x86/include/asm/io.h \ - $(wildcard include/config/mtrr.h) \ - $(wildcard include/config/x86/pat.h) \ - arch/x86/include/generated/asm/early_ioremap.h \ - include/asm-generic/early_ioremap.h \ - $(wildcard include/config/generic/early/ioremap.h) \ - include/asm-generic/iomap.h \ - $(wildcard include/config/has/ioport/map.h) \ - $(wildcard include/config/pci.h) \ - $(wildcard include/config/generic/iomap.h) \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/no/generic/pci/ioport/map.h) \ - $(wildcard include/config/generic/pci/iomap.h) \ - include/xen/xen.h \ - $(wildcard include/config/xen/dom0.h) \ - $(wildcard include/config/xen/pvh.h) \ - include/xen/interface/xen.h \ - arch/x86/include/asm/xen/interface.h \ - arch/x86/include/asm/xen/interface_64.h \ - arch/x86/include/asm/pvclock-abi.h \ - arch/x86/include/asm/xen/hypervisor.h \ - include/xen/features.h \ - include/xen/interface/features.h \ - arch/x86/include/asm/pvclock.h \ - $(wildcard include/config/kvm/guest.h) \ - include/linux/clocksource.h \ - $(wildcard include/config/arch/clocksource/data.h) \ - $(wildcard include/config/clocksource/watchdog.h) \ - $(wildcard include/config/clksrc/probe.h) \ - arch/x86/include/asm/clocksource.h \ - arch/x86/include/uapi/asm/vsyscall.h \ - include/asm-generic/fixmap.h \ - arch/x86/include/asm/hardirq.h \ - $(wildcard include/config/kvm/intel.h) \ - $(wildcard include/config/have/kvm.h) \ - $(wildcard include/config/x86/thermal/vector.h) \ - $(wildcard include/config/x86/mce/threshold.h) \ - $(wildcard include/config/x86/mce/amd.h) \ - $(wildcard include/config/hyperv.h) \ - arch/x86/include/asm/idle.h \ - arch/x86/include/asm/io_apic.h \ - arch/x86/include/asm/irq_vectors.h \ - $(wildcard include/config/pci/msi.h) \ - include/linux/sem.h \ - include/uapi/linux/sem.h \ - include/linux/ipc.h \ - include/linux/uidgid.h \ - $(wildcard include/config/user/ns.h) \ - include/linux/highuid.h \ - include/uapi/linux/ipc.h \ - arch/x86/include/uapi/asm/ipcbuf.h \ - include/uapi/asm-generic/ipcbuf.h \ - arch/x86/include/uapi/asm/sembuf.h \ - include/linux/shm.h \ - include/uapi/linux/shm.h \ - arch/x86/include/uapi/asm/shmbuf.h \ - include/uapi/asm-generic/shmbuf.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/signal.h \ - $(wildcard include/config/old/sigaction.h) \ - include/uapi/linux/signal.h \ - arch/x86/include/asm/signal.h \ - arch/x86/include/uapi/asm/signal.h \ - include/uapi/asm-generic/signal-defs.h \ - arch/x86/include/uapi/asm/siginfo.h \ - include/asm-generic/siginfo.h \ - include/uapi/asm-generic/siginfo.h \ - include/linux/pid.h \ - include/linux/percpu.h \ - $(wildcard include/config/need/per/cpu/embed/first/chunk.h) \ - $(wildcard include/config/need/per/cpu/page/first/chunk.h) \ - include/linux/mmdebug.h \ - $(wildcard include/config/debug/vm.h) \ - include/linux/topology.h \ - $(wildcard include/config/use/percpu/numa/node/id.h) \ - include/linux/mmzone.h \ - $(wildcard include/config/force/max/zoneorder.h) \ - $(wildcard include/config/cma.h) \ - $(wildcard include/config/memory/isolation.h) \ - $(wildcard include/config/zone/dma.h) \ - $(wildcard include/config/zone/dma32.h) \ - $(wildcard include/config/zone/device.h) \ - $(wildcard include/config/memory/hotplug.h) \ - $(wildcard include/config/flat/node/mem/map.h) \ - $(wildcard include/config/page/extension.h) \ - $(wildcard include/config/no/bootmem.h) \ - $(wildcard include/config/deferred/struct/page/init.h) \ - $(wildcard include/config/have/memory/present.h) \ - $(wildcard include/config/need/node/memmap/size.h) \ - $(wildcard include/config/have/memblock/node/map.h) \ - $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ - $(wildcard include/config/sparsemem/extreme.h) \ - $(wildcard include/config/have/arch/pfn/valid.h) \ - $(wildcard include/config/holes/in/zone.h) \ - $(wildcard include/config/arch/has/holes/memorymodel.h) \ - include/linux/pageblock-flags.h \ - $(wildcard include/config/hugetlb/page/size/variable.h) \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/have/arch/nodedata/extension.h) \ - $(wildcard include/config/have/bootmem/info/node.h) \ - arch/x86/include/asm/mmzone.h \ - arch/x86/include/asm/mmzone_64.h \ - include/linux/proportions.h \ - include/linux/percpu_counter.h \ - include/linux/gfp.h \ - include/linux/seccomp.h \ - $(wildcard include/config/seccomp.h) \ - $(wildcard include/config/have/arch/seccomp/filter.h) \ - $(wildcard include/config/seccomp/filter.h) \ - $(wildcard include/config/checkpoint/restore.h) \ - include/uapi/linux/seccomp.h \ - arch/x86/include/asm/seccomp.h \ - arch/x86/include/asm/unistd.h \ - $(wildcard include/config/x86/x32/abi.h) \ - arch/x86/include/uapi/asm/unistd.h \ - arch/x86/include/generated/uapi/asm/unistd_64.h \ - arch/x86/include/generated/asm/unistd_64_x32.h \ - arch/x86/include/asm/ia32_unistd.h \ - arch/x86/include/generated/asm/unistd_32_ia32.h \ - include/asm-generic/seccomp.h \ - include/uapi/linux/unistd.h \ - include/linux/rculist.h \ - include/linux/rtmutex.h \ - $(wildcard include/config/debug/rt/mutexes.h) \ - include/linux/resource.h \ - include/uapi/linux/resource.h \ - arch/x86/include/uapi/asm/resource.h \ - include/asm-generic/resource.h \ - include/uapi/asm-generic/resource.h \ - include/linux/hrtimer.h \ - $(wildcard include/config/high/res/timers.h) \ - $(wildcard include/config/time/low/res.h) \ - $(wildcard include/config/timerfd.h) \ - include/linux/timerqueue.h \ - include/linux/task_io_accounting.h \ - $(wildcard include/config/task/io/accounting.h) \ - include/linux/latencytop.h \ - include/linux/cred.h \ - $(wildcard include/config/debug/credentials.h) \ - $(wildcard include/config/security.h) \ - include/linux/key.h \ - include/linux/assoc_array.h \ - $(wildcard include/config/associative/array.h) \ - include/linux/selinux.h \ - $(wildcard include/config/security/selinux.h) \ - include/uapi/linux/magic.h \ - include/linux/cgroup-defs.h \ - include/uapi/linux/limits.h \ - include/linux/idr.h \ - include/linux/percpu-refcount.h \ - include/linux/percpu-rwsem.h \ - include/linux/rcu_sync.h \ - include/linux/cgroup_subsys.h \ - $(wildcard include/config/cgroup/cpuacct.h) \ - $(wildcard include/config/blk/cgroup.h) \ - $(wildcard include/config/cgroup/device.h) \ - $(wildcard include/config/cgroup/freezer.h) \ - $(wildcard include/config/cgroup/net/classid.h) \ - $(wildcard include/config/cgroup/perf.h) \ - $(wildcard include/config/cgroup/net/prio.h) \ - $(wildcard include/config/cgroup/hugetlb.h) \ - $(wildcard include/config/cgroup/pids.h) \ - $(wildcard include/config/cgroup/debug.h) \ - arch/x86/include/asm/uaccess.h \ - $(wildcard include/config/x86/intel/usercopy.h) \ - $(wildcard include/config/debug/strict/user/copy/checks.h) \ - arch/x86/include/asm/smap.h \ - $(wildcard include/config/x86/smap.h) \ - arch/x86/include/asm/uaccess_64.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_mod.h \ - include/linux/module.h \ - $(wildcard include/config/module/sig.h) \ - $(wildcard include/config/modules/tree/lookup.h) \ - $(wildcard include/config/kallsyms.h) \ - $(wildcard include/config/tracepoints.h) \ - $(wildcard include/config/event/tracing.h) \ - $(wildcard include/config/livepatch.h) \ - $(wildcard include/config/module/unload.h) \ - $(wildcard include/config/constructors.h) \ - $(wildcard include/config/debug/set/module/ronx.h) \ - include/linux/stat.h \ - arch/x86/include/uapi/asm/stat.h \ - include/uapi/linux/stat.h \ - include/linux/kmod.h \ - include/linux/elf.h \ - arch/x86/include/asm/elf.h \ - arch/x86/include/asm/user.h \ - arch/x86/include/asm/user_64.h \ - arch/x86/include/asm/vdso.h \ - $(wildcard include/config/x86/x32.h) \ - include/uapi/linux/elf.h \ - include/uapi/linux/elf-em.h \ - include/linux/kobject.h \ - $(wildcard include/config/uevent/helper.h) \ - $(wildcard include/config/debug/kobject/release.h) \ - include/linux/sysfs.h \ - include/linux/kernfs.h \ - $(wildcard include/config/kernfs.h) \ - include/linux/kobject_ns.h \ - include/linux/kref.h \ - include/linux/moduleparam.h \ - $(wildcard include/config/alpha.h) \ - $(wildcard include/config/ia64.h) \ - $(wildcard include/config/ppc64.h) \ - include/linux/rbtree_latch.h \ - arch/x86/include/asm/module.h \ - $(wildcard include/config/m486.h) \ - $(wildcard include/config/m586.h) \ - $(wildcard include/config/m586tsc.h) \ - $(wildcard include/config/m586mmx.h) \ - $(wildcard include/config/mcore2.h) \ - $(wildcard include/config/m686.h) \ - $(wildcard include/config/mpentiumii.h) \ - $(wildcard include/config/mpentiumiii.h) \ - $(wildcard include/config/mpentiumm.h) \ - $(wildcard include/config/mpentium4.h) \ - $(wildcard include/config/mk6.h) \ - $(wildcard include/config/mk8.h) \ - $(wildcard include/config/melan.h) \ - $(wildcard include/config/mcrusoe.h) \ - $(wildcard include/config/mefficeon.h) \ - $(wildcard include/config/mwinchipc6.h) \ - $(wildcard include/config/mwinchip3d.h) \ - $(wildcard include/config/mcyrixiii.h) \ - $(wildcard include/config/mviac3/2.h) \ - $(wildcard include/config/mviac7.h) \ - $(wildcard include/config/mgeodegx1.h) \ - $(wildcard include/config/mgeode/lx.h) \ - include/asm-generic/module.h \ - $(wildcard include/config/have/mod/arch/specific.h) \ - $(wildcard include/config/modules/use/elf/rel.h) \ - $(wildcard include/config/modules/use/elf/rela.h) \ - include/linux/cdev.h \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/device.h \ - $(wildcard include/config/debug/devres.h) \ - $(wildcard include/config/generic/msi/irq/domain.h) \ - $(wildcard include/config/pinctrl.h) \ - $(wildcard include/config/generic/msi/irq.h) \ - $(wildcard include/config/dma/cma.h) \ - $(wildcard include/config/of.h) \ - $(wildcard include/config/devtmpfs.h) \ - $(wildcard include/config/sysfs/deprecated.h) \ - include/linux/klist.h \ - include/linux/pinctrl/devinfo.h \ - include/linux/pinctrl/consumer.h \ - include/linux/seq_file.h \ - include/linux/fs.h \ - $(wildcard include/config/fs/posix/acl.h) \ - $(wildcard include/config/cgroup/writeback.h) \ - $(wildcard include/config/ima.h) \ - $(wildcard include/config/fsnotify.h) \ - $(wildcard include/config/file/locking.h) \ - $(wildcard include/config/quota.h) \ - $(wildcard include/config/blk/dev/loop.h) \ - $(wildcard include/config/fs/dax.h) \ - $(wildcard include/config/migration.h) \ - include/linux/dcache.h \ - include/linux/rculist_bl.h \ - include/linux/list_bl.h \ - include/linux/bit_spinlock.h \ - include/linux/lockref.h \ - $(wildcard include/config/arch/use/cmpxchg/lockref.h) \ - include/linux/path.h \ - include/linux/list_lru.h \ - include/linux/shrinker.h \ - include/linux/radix-tree.h \ - include/linux/semaphore.h \ - include/uapi/linux/fiemap.h \ - include/linux/migrate_mode.h \ - include/linux/blk_types.h \ - $(wildcard include/config/blk/dev/integrity.h) \ - include/uapi/linux/fs.h \ - include/linux/quota.h \ - $(wildcard include/config/quota/netlink/interface.h) \ - include/uapi/linux/dqblk_xfs.h \ - include/linux/dqblk_v1.h \ - include/linux/dqblk_v2.h \ - include/linux/dqblk_qtree.h \ - include/linux/projid.h \ - include/uapi/linux/quota.h \ - include/linux/nfs_fs_i.h \ - include/linux/fcntl.h \ - include/uapi/linux/fcntl.h \ - arch/x86/include/uapi/asm/fcntl.h \ - include/uapi/asm-generic/fcntl.h \ - include/linux/pinctrl/pinctrl-state.h \ - include/linux/ratelimit.h \ - arch/x86/include/asm/device.h \ - $(wildcard include/config/x86/dev/dma/ops.h) \ - $(wildcard include/config/intel/iommu.h) \ - $(wildcard include/config/amd/iommu.h) \ - include/linux/pm_wakeup.h \ - include/linux/dma-mapping.h \ - $(wildcard include/config/has/dma.h) \ - $(wildcard include/config/arch/has/dma/set/coherent/mask.h) \ - $(wildcard include/config/have/dma/attrs.h) \ - $(wildcard include/config/need/dma/map/state.h) \ - include/linux/sizes.h \ - include/linux/dma-attrs.h \ - include/linux/dma-direction.h \ - include/linux/scatterlist.h \ - $(wildcard include/config/debug/sg.h) \ - $(wildcard include/config/need/sg/dma/length.h) \ - include/linux/mm.h \ - $(wildcard include/config/ppc.h) \ - $(wildcard include/config/parisc.h) \ - $(wildcard include/config/metag.h) \ - $(wildcard include/config/shmem.h) \ - $(wildcard include/config/debug/vm/rb.h) \ - $(wildcard include/config/debug/pagealloc.h) \ - $(wildcard include/config/hugetlbfs.h) \ - include/linux/debug_locks.h \ - $(wildcard include/config/debug/locking/api/selftests.h) \ - include/linux/page_ext.h \ - $(wildcard include/config/idle/page/tracking.h) \ - $(wildcard include/config/page/owner.h) \ - include/linux/stacktrace.h \ - $(wildcard include/config/stacktrace.h) \ - $(wildcard include/config/user/stacktrace/support.h) \ - arch/x86/include/asm/pgtable.h \ - $(wildcard include/config/debug/wx.h) \ - $(wildcard include/config/have/arch/soft/dirty.h) \ - arch/x86/include/asm/pgtable_64.h \ - arch/x86/include/asm/pgtable-invert.h \ - include/asm-generic/pgtable.h \ - $(wildcard include/config/have/arch/huge/vmap.h) \ - include/linux/page-flags.h \ - $(wildcard include/config/arch/uses/pg/uncached.h) \ - $(wildcard include/config/memory/failure.h) \ - $(wildcard include/config/swap.h) \ - $(wildcard include/config/ksm.h) \ - include/linux/huge_mm.h \ - include/linux/vmstat.h \ - $(wildcard include/config/vm/event/counters.h) \ - $(wildcard include/config/debug/tlbflush.h) \ - $(wildcard include/config/debug/vm/vmacache.h) \ - include/linux/vm_event_item.h \ - $(wildcard include/config/memory/balloon.h) \ - $(wildcard include/config/balloon/compaction.h) \ - arch/x86/include/asm/dma-mapping.h \ - $(wildcard include/config/isa.h) \ - $(wildcard include/config/x86/dma/remap.h) \ - include/linux/kmemcheck.h \ - include/linux/dma-debug.h \ - $(wildcard include/config/dma/api/debug.h) \ - arch/x86/include/asm/swiotlb.h \ - $(wildcard include/config/swiotlb.h) \ - include/linux/swiotlb.h \ - include/linux/dma-contiguous.h \ - include/asm-generic/dma-mapping-common.h \ - include/asm-generic/dma-coherent.h \ - $(wildcard include/config/have/generic/dma/coherent.h) \ - include/linux/delay.h \ - arch/x86/include/asm/delay.h \ - include/asm-generic/delay.h \ - include/linux/fb.h \ - $(wildcard include/config/fb/deferred/io.h) \ - $(wildcard include/config/fb/tileblitting.h) \ - $(wildcard include/config/fb/backlight.h) \ - $(wildcard include/config/fb/foreign/endian.h) \ - $(wildcard include/config/fb/both/endian.h) \ - $(wildcard include/config/fb/big/endian.h) \ - $(wildcard include/config/fb/little/endian.h) \ - include/linux/kgdb.h \ - $(wildcard include/config/have/arch/kgdb.h) \ - $(wildcard include/config/kgdb.h) \ - $(wildcard include/config/serial/kgdb/nmi.h) \ - arch/x86/include/asm/kgdb.h \ - include/uapi/linux/fb.h \ - include/linux/i2c.h \ - $(wildcard include/config/i2c.h) \ - $(wildcard include/config/i2c/slave.h) \ - $(wildcard include/config/i2c/boardinfo.h) \ - $(wildcard include/config/i2c/mux.h) \ - include/linux/mod_devicetable.h \ - include/linux/uuid.h \ - include/uapi/linux/uuid.h \ - include/linux/of.h \ - $(wildcard include/config/sparc.h) \ - $(wildcard include/config/of/dynamic.h) \ - $(wildcard include/config/attach/node.h) \ - $(wildcard include/config/detach/node.h) \ - $(wildcard include/config/add/property.h) \ - $(wildcard include/config/remove/property.h) \ - $(wildcard include/config/update/property.h) \ - $(wildcard include/config/of/numa.h) \ - $(wildcard include/config/no/change.h) \ - $(wildcard include/config/change/add.h) \ - $(wildcard include/config/change/remove.h) \ - $(wildcard include/config/of/resolve.h) \ - $(wildcard include/config/of/overlay.h) \ - include/linux/property.h \ - include/linux/fwnode.h \ - include/uapi/linux/i2c.h \ - include/linux/backlight.h \ - include/linux/slab.h \ - $(wildcard include/config/debug/slab.h) \ - $(wildcard include/config/failslab.h) \ - $(wildcard include/config/slab.h) \ - $(wildcard include/config/slub.h) \ - $(wildcard include/config/slob.h) \ - include/linux/kmemleak.h \ - $(wildcard include/config/debug/kmemleak.h) \ - include/linux/kasan.h \ - include/linux/interrupt.h \ - $(wildcard include/config/irq/forced/threading.h) \ - $(wildcard include/config/generic/irq/probe.h) \ - include/linux/irqreturn.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/hardirq.h \ - include/linux/ftrace_irq.h \ - $(wildcard include/config/ftrace/nmi/enter.h) \ - include/linux/vtime.h \ - include/linux/context_tracking_state.h \ - $(wildcard include/config/context/tracking.h) \ - arch/x86/include/asm/irq.h \ - include/linux/io.h \ - include/linux/poll.h \ - include/uapi/linux/poll.h \ - arch/x86/include/uapi/asm/poll.h \ - include/uapi/asm-generic/poll.h \ - include/linux/pci.h \ - $(wildcard include/config/pci/iov.h) \ - $(wildcard include/config/pcieaspm.h) \ - $(wildcard include/config/pci/ats.h) \ - $(wildcard include/config/pci/domains/generic.h) \ - $(wildcard include/config/pci/bus/addr/t/64bit.h) \ - $(wildcard include/config/pcieportbus.h) \ - $(wildcard include/config/pcieaer.h) \ - $(wildcard include/config/pcie/ecrc.h) \ - $(wildcard include/config/ht/irq.h) \ - $(wildcard include/config/pci/domains.h) \ - $(wildcard include/config/pci/quirks.h) \ - $(wildcard include/config/hibernate/callbacks.h) \ - $(wildcard include/config/acpi/mcfg.h) \ - $(wildcard include/config/hotplug/pci.h) \ - $(wildcard include/config/eeh.h) \ - include/linux/resource_ext.h \ - include/uapi/linux/pci.h \ - include/uapi/linux/pci_regs.h \ - include/linux/pci_ids.h \ - include/linux/pci-dma.h \ - include/linux/dmapool.h \ - arch/x86/include/asm/pci.h \ - $(wildcard include/config/pci/msi/irq/domain.h) \ - arch/x86/include/asm/pci_64.h \ - $(wildcard include/config/calgary/iommu.h) \ - include/asm-generic/pci-dma-compat.h \ - include/asm-generic/pci.h \ - include/linux/vmalloc.h \ - include/linux/aio.h \ - include/uapi/linux/aio_abi.h \ - include/linux/splice.h \ - include/linux/pipe_fs_i.h \ - include/generated/uapi/linux/version.h \ - include/linux/uio.h \ - include/uapi/linux/uio.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.h \ - $(wildcard include/config/block/id.h) \ - -/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_cdev.o: $(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_cdev.o) - -$(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_cdev.o): diff --git a/host_software/driver/xdma/.xdma_mod.o.cmd b/host_software/driver/xdma/.xdma_mod.o.cmd deleted file mode 100644 index 49e42a3..0000000 --- a/host_software/driver/xdma/.xdma_mod.o.cmd +++ /dev/null @@ -1,997 +0,0 @@ -cmd_/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_mod.o := gcc -Wp,-MD,/home/wangxuan/pcie_xdma_host_software/driver/xdma/.xdma_mod.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/5/include -I./arch/x86/include -Iarch/x86/include/generated/uapi -Iarch/x86/include/generated -Iinclude -I./arch/x86/include/uapi -Iarch/x86/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -Iubuntu/include -D__KERNEL__ -fno-pie -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -fno-pie -no-pie -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_X86_X32_ABI -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -DCONFIG_AS_SHA1_NI=1 -DCONFIG_AS_SHA256_NI=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -DRETPOLINE -fno-delete-null-pointer-checks -O2 --param=allow-store-data-races=0 -DCC_HAVE_ASM_GOTO -Wframe-larger-than=1024 -fstack-protector-strong -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wno-pointer-sign -Wno-array-bounds -Wno-maybe-uninitialized -fno-strict-overflow -fno-merge-all-constants -fmerge-constants -fno-stack-check -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -DMODULE -D"KBUILD_STR(s)=$(pound)s" -D"KBUILD_BASENAME=KBUILD_STR(xdma_mod)" -D"KBUILD_MODNAME=KBUILD_STR(xdma)" -c -o /home/wangxuan/pcie_xdma_host_software/driver/xdma/.tmp_xdma_mod.o /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_mod.c - -source_/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_mod.o := /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_mod.c - -deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_mod.o := \ - include/uapi/linux/ioctl.h \ - arch/x86/include/uapi/asm/ioctl.h \ - include/asm-generic/ioctl.h \ - include/uapi/asm-generic/ioctl.h \ - include/linux/types.h \ - $(wildcard include/config/have/uid16.h) \ - $(wildcard include/config/uid16.h) \ - $(wildcard include/config/lbdaf.h) \ - $(wildcard include/config/arch/dma/addr/t/64bit.h) \ - $(wildcard include/config/phys/addr/t/64bit.h) \ - $(wildcard include/config/64bit.h) \ - include/uapi/linux/types.h \ - arch/x86/include/uapi/asm/types.h \ - include/uapi/asm-generic/types.h \ - include/asm-generic/int-ll64.h \ - include/uapi/asm-generic/int-ll64.h \ - arch/x86/include/uapi/asm/bitsperlong.h \ - include/asm-generic/bitsperlong.h \ - include/uapi/asm-generic/bitsperlong.h \ - include/uapi/linux/posix_types.h \ - include/linux/stddef.h \ - include/uapi/linux/stddef.h \ - include/linux/compiler.h \ - $(wildcard include/config/sparse/rcu/pointer.h) \ - $(wildcard include/config/trace/branch/profiling.h) \ - $(wildcard include/config/profile/all/branches.h) \ - $(wildcard include/config/kasan.h) \ - $(wildcard include/config/enable/must/check.h) \ - $(wildcard include/config/enable/warn/deprecated.h) \ - $(wildcard include/config/kprobes.h) \ - include/linux/compiler-gcc.h \ - $(wildcard include/config/arch/supports/optimized/inlining.h) \ - $(wildcard include/config/optimize/inlining.h) \ - $(wildcard include/config/arm64.h) \ - $(wildcard include/config/gcov/kernel.h) \ - $(wildcard include/config/arch/use/builtin/bswap.h) \ - include/linux/kasan-checks.h \ - arch/x86/include/asm/posix_types.h \ - $(wildcard include/config/x86/32.h) \ - arch/x86/include/uapi/asm/posix_types_64.h \ - include/uapi/asm-generic/posix_types.h \ - include/linux/errno.h \ - include/uapi/linux/errno.h \ - arch/x86/include/uapi/asm/errno.h \ - include/uapi/asm-generic/errno.h \ - include/uapi/asm-generic/errno-base.h \ - include/linux/aer.h \ - $(wildcard include/config/pcieaer.h) \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma_api.h \ - include/linux/scatterlist.h \ - $(wildcard include/config/debug/sg.h) \ - $(wildcard include/config/need/sg/dma/length.h) \ - include/linux/string.h \ - $(wildcard include/config/binary/printf.h) \ - /usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h \ - include/uapi/linux/string.h \ - arch/x86/include/asm/string.h \ - arch/x86/include/asm/string_64.h \ - $(wildcard include/config/kmemcheck.h) \ - include/linux/bug.h \ - $(wildcard include/config/generic/bug.h) \ - arch/x86/include/asm/bug.h \ - $(wildcard include/config/debug/bugverbose.h) \ - include/asm-generic/bug.h \ - $(wildcard include/config/bug.h) \ - $(wildcard include/config/generic/bug/relative/pointers.h) \ - $(wildcard include/config/smp.h) \ - include/linux/kernel.h \ - $(wildcard include/config/preempt/voluntary.h) \ - $(wildcard include/config/debug/atomic/sleep.h) \ - $(wildcard include/config/mmu.h) \ - $(wildcard include/config/prove/locking.h) \ - $(wildcard include/config/panic/timeout.h) \ - $(wildcard include/config/tracing.h) \ - $(wildcard include/config/ftrace/mcount/record.h) \ - include/linux/linkage.h \ - include/linux/stringify.h \ - include/linux/export.h \ - $(wildcard include/config/have/underscore/symbol/prefix.h) \ - $(wildcard include/config/modules.h) \ - $(wildcard include/config/modversions.h) \ - $(wildcard include/config/unused/symbols.h) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/x86/64.h) \ - $(wildcard include/config/x86/alignment/16.h) \ - include/linux/bitops.h \ - include/linux/bits.h \ - arch/x86/include/asm/bitops.h \ - $(wildcard include/config/x86/cmov.h) \ - arch/x86/include/asm/alternative.h \ - arch/x86/include/asm/asm.h \ - arch/x86/include/asm/rmwcc.h \ - arch/x86/include/asm/barrier.h \ - $(wildcard include/config/x86/ppro/fence.h) \ - arch/x86/include/asm/nops.h \ - $(wildcard include/config/mk7.h) \ - $(wildcard include/config/x86/p6/nop.h) \ - include/asm-generic/barrier.h \ - include/asm-generic/bitops/find.h \ - $(wildcard include/config/generic/find/first/bit.h) \ - include/asm-generic/bitops/sched.h \ - arch/x86/include/asm/arch_hweight.h \ - arch/x86/include/asm/cpufeatures.h \ - $(wildcard include/config/page/table/isolation.h) \ - arch/x86/include/asm/required-features.h \ - $(wildcard include/config/x86/minimum/cpu/family.h) \ - $(wildcard include/config/math/emulation.h) \ - $(wildcard include/config/x86/pae.h) \ - $(wildcard include/config/x86/cmpxchg64.h) \ - $(wildcard include/config/x86/use/3dnow.h) \ - $(wildcard include/config/matom.h) \ - $(wildcard include/config/paravirt.h) \ - arch/x86/include/asm/disabled-features.h \ - $(wildcard include/config/x86/intel/mpx.h) \ - $(wildcard include/config/x86/intel/memory/protection/keys.h) \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/le.h \ - arch/x86/include/uapi/asm/byteorder.h \ - include/linux/byteorder/little_endian.h \ - include/uapi/linux/byteorder/little_endian.h \ - include/linux/swab.h \ - include/uapi/linux/swab.h \ - arch/x86/include/uapi/asm/swab.h \ - include/linux/byteorder/generic.h \ - include/asm-generic/bitops/ext2-atomic-setbit.h \ - include/linux/log2.h \ - $(wildcard include/config/arch/has/ilog2/u32.h) \ - $(wildcard include/config/arch/has/ilog2/u64.h) \ - include/linux/typecheck.h \ - include/linux/printk.h \ - $(wildcard include/config/message/loglevel/default.h) \ - $(wildcard include/config/early/printk.h) \ - $(wildcard include/config/printk.h) \ - $(wildcard include/config/dynamic/debug.h) \ - include/linux/init.h \ - $(wildcard include/config/broken/rodata.h) \ - $(wildcard include/config/lto.h) \ - include/linux/kern_levels.h \ - include/linux/cache.h \ - $(wildcard include/config/arch/has/cache/line/size.h) \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.h \ - arch/x86/include/asm/cache.h \ - $(wildcard include/config/x86/l1/cache/shift.h) \ - $(wildcard include/config/x86/internode/cache/shift.h) \ - $(wildcard include/config/x86/vsmp.h) \ - include/linux/dynamic_debug.h \ - include/linux/mm.h \ - $(wildcard include/config/need/multiple/nodes.h) \ - $(wildcard include/config/sysctl.h) \ - $(wildcard include/config/mem/soft/dirty.h) \ - $(wildcard include/config/x86.h) \ - $(wildcard include/config/ppc.h) \ - $(wildcard include/config/parisc.h) \ - $(wildcard include/config/metag.h) \ - $(wildcard include/config/ia64.h) \ - $(wildcard include/config/stack/growsup.h) \ - $(wildcard include/config/numa.h) \ - $(wildcard include/config/transparent/hugepage.h) \ - $(wildcard include/config/hugetlb/page.h) \ - $(wildcard include/config/sparsemem.h) \ - $(wildcard include/config/sparsemem/vmemmap.h) \ - $(wildcard include/config/numa/balancing.h) \ - $(wildcard include/config/memcg.h) \ - $(wildcard include/config/highmem.h) \ - $(wildcard include/config/shmem.h) \ - $(wildcard include/config/have/memblock/node/map.h) \ - $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ - $(wildcard include/config/debug/vm/rb.h) \ - $(wildcard include/config/proc/fs.h) \ - $(wildcard include/config/debug/pagealloc.h) \ - $(wildcard include/config/hibernation.h) \ - $(wildcard include/config/memory/hotplug.h) \ - $(wildcard include/config/hugetlbfs.h) \ - include/linux/mmdebug.h \ - $(wildcard include/config/debug/vm.h) \ - $(wildcard include/config/debug/virtual.h) \ - include/linux/gfp.h \ - $(wildcard include/config/zone/dma.h) \ - $(wildcard include/config/zone/dma32.h) \ - $(wildcard include/config/zone/device.h) \ - $(wildcard include/config/deferred/struct/page/init.h) \ - $(wildcard include/config/pm/sleep.h) \ - $(wildcard include/config/cma.h) \ - include/linux/mmzone.h \ - $(wildcard include/config/force/max/zoneorder.h) \ - $(wildcard include/config/memory/isolation.h) \ - $(wildcard include/config/compaction.h) \ - $(wildcard include/config/discontigmem.h) \ - $(wildcard include/config/flat/node/mem/map.h) \ - $(wildcard include/config/page/extension.h) \ - $(wildcard include/config/no/bootmem.h) \ - $(wildcard include/config/have/memory/present.h) \ - $(wildcard include/config/have/memoryless/nodes.h) \ - $(wildcard include/config/need/node/memmap/size.h) \ - $(wildcard include/config/flatmem.h) \ - $(wildcard include/config/sparsemem/extreme.h) \ - $(wildcard include/config/have/arch/pfn/valid.h) \ - $(wildcard include/config/holes/in/zone.h) \ - $(wildcard include/config/arch/has/holes/memorymodel.h) \ - include/linux/spinlock.h \ - $(wildcard include/config/debug/spinlock.h) \ - $(wildcard include/config/generic/lockbreak.h) \ - $(wildcard include/config/preempt.h) \ - $(wildcard include/config/debug/lock/alloc.h) \ - include/linux/preempt.h \ - $(wildcard include/config/preempt/count.h) \ - $(wildcard include/config/debug/preempt.h) \ - $(wildcard include/config/preempt/tracer.h) \ - $(wildcard include/config/preempt/notifiers.h) \ - include/linux/list.h \ - $(wildcard include/config/debug/list.h) \ - include/linux/poison.h \ - $(wildcard include/config/illegal/pointer/value.h) \ - include/uapi/linux/const.h \ - arch/x86/include/asm/preempt.h \ - arch/x86/include/asm/percpu.h \ - $(wildcard include/config/x86/64/smp.h) \ - include/asm-generic/percpu.h \ - $(wildcard include/config/have/setup/per/cpu/area.h) \ - include/linux/threads.h \ - $(wildcard include/config/nr/cpus.h) \ - $(wildcard include/config/base/small.h) \ - include/linux/percpu-defs.h \ - $(wildcard include/config/debug/force/weak/per/cpu.h) \ - include/linux/thread_info.h \ - $(wildcard include/config/thread/info/in/task.h) \ - $(wildcard include/config/compat.h) \ - arch/x86/include/asm/thread_info.h \ - $(wildcard include/config/vm86.h) \ - $(wildcard include/config/ia32/emulation.h) \ - arch/x86/include/asm/page.h \ - arch/x86/include/asm/page_types.h \ - $(wildcard include/config/physical/start.h) \ - $(wildcard include/config/physical/align.h) \ - arch/x86/include/asm/page_64_types.h \ - $(wildcard include/config/kasan/extra.h) \ - $(wildcard include/config/randomize/base.h) \ - $(wildcard include/config/randomize/base/max/offset.h) \ - arch/x86/include/asm/page_64.h \ - $(wildcard include/config/x86/vsyscall/emulation.h) \ - include/linux/range.h \ - include/asm-generic/memory_model.h \ - include/linux/pfn.h \ - include/asm-generic/getorder.h \ - arch/x86/include/asm/cpufeature.h \ - $(wildcard include/config/x86/feature/names.h) \ - $(wildcard include/config/x86/fast/feature/tests.h) \ - arch/x86/include/asm/processor.h \ - $(wildcard include/config/cc/stackprotector.h) \ - $(wildcard include/config/x86/debugctlmsr.h) \ - $(wildcard include/config/xen.h) \ - arch/x86/include/asm/processor-flags.h \ - arch/x86/include/uapi/asm/processor-flags.h \ - arch/x86/include/asm/math_emu.h \ - arch/x86/include/asm/ptrace.h \ - arch/x86/include/asm/segment.h \ - $(wildcard include/config/x86/32/lazy/gs.h) \ - arch/x86/include/uapi/asm/ptrace.h \ - arch/x86/include/uapi/asm/ptrace-abi.h \ - arch/x86/include/asm/paravirt_types.h \ - $(wildcard include/config/x86/local/apic.h) \ - $(wildcard include/config/pgtable/levels.h) \ - $(wildcard include/config/queued/spinlocks.h) \ - $(wildcard include/config/paravirt/debug.h) \ - arch/x86/include/asm/desc_defs.h \ - arch/x86/include/asm/kmap_types.h \ - $(wildcard include/config/debug/highmem.h) \ - include/asm-generic/kmap_types.h \ - arch/x86/include/asm/pgtable_types.h \ - arch/x86/include/asm/pgtable_64_types.h \ - arch/x86/include/asm/sparsemem.h \ - arch/x86/include/asm/nospec-branch.h \ - $(wildcard include/config/retpoline.h) \ - include/linux/static_key.h \ - include/linux/jump_label.h \ - $(wildcard include/config/jump/label.h) \ - arch/x86/include/asm/jump_label.h \ - include/linux/atomic.h \ - $(wildcard include/config/generic/atomic64.h) \ - arch/x86/include/asm/atomic.h \ - arch/x86/include/asm/cmpxchg.h \ - arch/x86/include/asm/cmpxchg_64.h \ - arch/x86/include/asm/atomic64_64.h \ - include/asm-generic/atomic-long.h \ - arch/x86/include/asm/alternative-asm.h \ - arch/x86/include/asm/msr-index.h \ - $(wildcard include/config/tdp/nominal.h) \ - $(wildcard include/config/tdp/level/1.h) \ - $(wildcard include/config/tdp/level/2.h) \ - $(wildcard include/config/tdp/control.h) \ - $(wildcard include/config/tdp/level1.h) \ - $(wildcard include/config/tdp/level2.h) \ - arch/x86/include/asm/spinlock_types.h \ - $(wildcard include/config/paravirt/spinlocks.h) \ - include/asm-generic/qrwlock_types.h \ - include/asm-generic/ptrace.h \ - arch/x86/include/uapi/asm/sigcontext.h \ - arch/x86/include/asm/current.h \ - arch/x86/include/asm/msr.h \ - arch/x86/include/asm/msr-index.h \ - arch/x86/include/asm/cpumask.h \ - include/linux/cpumask.h \ - $(wildcard include/config/cpumask/offstack.h) \ - $(wildcard include/config/hotplug/cpu.h) \ - $(wildcard include/config/debug/per/cpu/maps.h) \ - include/linux/bitmap.h \ - arch/x86/include/uapi/asm/msr.h \ - arch/x86/include/asm/paravirt.h \ - arch/x86/include/asm/special_insns.h \ - arch/x86/include/asm/fpu/types.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - include/linux/math64.h \ - $(wildcard include/config/arch/supports/int128.h) \ - arch/x86/include/asm/div64.h \ - include/asm-generic/div64.h \ - include/linux/err.h \ - include/linux/irqflags.h \ - $(wildcard include/config/trace/irqflags.h) \ - $(wildcard include/config/irqsoff/tracer.h) \ - $(wildcard include/config/trace/irqflags/support.h) \ - arch/x86/include/asm/irqflags.h \ - include/linux/bottom_half.h \ - include/linux/spinlock_types.h \ - include/linux/lockdep.h \ - $(wildcard include/config/lockdep.h) \ - $(wildcard include/config/lock/stat.h) \ - include/linux/rwlock_types.h \ - arch/x86/include/asm/spinlock.h \ - arch/x86/include/asm/qrwlock.h \ - include/asm-generic/qrwlock.h \ - include/linux/rwlock.h \ - include/linux/spinlock_api_smp.h \ - $(wildcard include/config/inline/spin/lock.h) \ - $(wildcard include/config/inline/spin/lock/bh.h) \ - $(wildcard include/config/inline/spin/lock/irq.h) \ - $(wildcard include/config/inline/spin/lock/irqsave.h) \ - $(wildcard include/config/inline/spin/trylock.h) \ - $(wildcard include/config/inline/spin/trylock/bh.h) \ - $(wildcard include/config/uninline/spin/unlock.h) \ - $(wildcard include/config/inline/spin/unlock/bh.h) \ - $(wildcard include/config/inline/spin/unlock/irq.h) \ - $(wildcard include/config/inline/spin/unlock/irqrestore.h) \ - include/linux/rwlock_api_smp.h \ - $(wildcard include/config/inline/read/lock.h) \ - $(wildcard include/config/inline/write/lock.h) \ - $(wildcard include/config/inline/read/lock/bh.h) \ - $(wildcard include/config/inline/write/lock/bh.h) \ - $(wildcard include/config/inline/read/lock/irq.h) \ - $(wildcard include/config/inline/write/lock/irq.h) \ - $(wildcard include/config/inline/read/lock/irqsave.h) \ - $(wildcard include/config/inline/write/lock/irqsave.h) \ - $(wildcard include/config/inline/read/trylock.h) \ - $(wildcard include/config/inline/write/trylock.h) \ - $(wildcard include/config/inline/read/unlock.h) \ - $(wildcard include/config/inline/write/unlock.h) \ - $(wildcard include/config/inline/read/unlock/bh.h) \ - $(wildcard include/config/inline/write/unlock/bh.h) \ - $(wildcard include/config/inline/read/unlock/irq.h) \ - $(wildcard include/config/inline/write/unlock/irq.h) \ - $(wildcard include/config/inline/read/unlock/irqrestore.h) \ - $(wildcard include/config/inline/write/unlock/irqrestore.h) \ - include/linux/wait.h \ - include/uapi/linux/wait.h \ - include/linux/numa.h \ - $(wildcard include/config/nodes/shift.h) \ - include/linux/seqlock.h \ - include/linux/nodemask.h \ - $(wildcard include/config/movable/node.h) \ - include/linux/pageblock-flags.h \ - $(wildcard include/config/hugetlb/page/size/variable.h) \ - include/linux/page-flags-layout.h \ - include/generated/bounds.h \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/memory/hotremove.h) \ - $(wildcard include/config/have/arch/nodedata/extension.h) \ - $(wildcard include/config/have/bootmem/info/node.h) \ - include/linux/notifier.h \ - include/linux/mutex.h \ - $(wildcard include/config/debug/mutexes.h) \ - $(wildcard include/config/mutex/spin/on/owner.h) \ - include/linux/osq_lock.h \ - include/linux/rwsem.h \ - $(wildcard include/config/rwsem/spin/on/owner.h) \ - $(wildcard include/config/rwsem/generic/spinlock.h) \ - arch/x86/include/asm/rwsem.h \ - include/linux/srcu.h \ - include/linux/rcupdate.h \ - $(wildcard include/config/tiny/rcu.h) \ - $(wildcard include/config/tree/rcu.h) \ - $(wildcard include/config/preempt/rcu.h) \ - $(wildcard include/config/rcu/trace.h) \ - $(wildcard include/config/rcu/stall/common.h) \ - $(wildcard include/config/no/hz/full.h) \ - $(wildcard include/config/rcu/nocb/cpu.h) \ - $(wildcard include/config/tasks/rcu.h) \ - $(wildcard include/config/debug/objects/rcu/head.h) \ - $(wildcard include/config/prove/rcu.h) \ - $(wildcard include/config/rcu/boost.h) \ - $(wildcard include/config/rcu/nocb/cpu/all.h) \ - $(wildcard include/config/no/hz/full/sysidle.h) \ - include/linux/completion.h \ - include/linux/debugobjects.h \ - $(wildcard include/config/debug/objects.h) \ - $(wildcard include/config/debug/objects/free.h) \ - include/linux/ktime.h \ - include/linux/time.h \ - $(wildcard include/config/arch/uses/gettimeoffset.h) \ - include/linux/time64.h \ - include/uapi/linux/time.h \ - include/linux/jiffies.h \ - include/linux/timex.h \ - include/uapi/linux/timex.h \ - include/uapi/linux/param.h \ - arch/x86/include/uapi/asm/param.h \ - include/asm-generic/param.h \ - $(wildcard include/config/hz.h) \ - include/uapi/asm-generic/param.h \ - arch/x86/include/asm/timex.h \ - arch/x86/include/asm/tsc.h \ - $(wildcard include/config/x86/tsc.h) \ - include/generated/timeconst.h \ - include/linux/timekeeping.h \ - include/linux/rcutree.h \ - include/linux/workqueue.h \ - $(wildcard include/config/debug/objects/work.h) \ - $(wildcard include/config/freezer.h) \ - $(wildcard include/config/sysfs.h) \ - include/linux/timer.h \ - $(wildcard include/config/debug/objects/timers.h) \ - $(wildcard include/config/no/hz/common.h) \ - include/linux/sysctl.h \ - include/linux/rbtree.h \ - include/uapi/linux/sysctl.h \ - arch/x86/include/asm/mmzone.h \ - arch/x86/include/asm/mmzone_64.h \ - arch/x86/include/asm/smp.h \ - $(wildcard include/config/x86/io/apic.h) \ - $(wildcard include/config/x86/32/smp.h) \ - $(wildcard include/config/debug/nmi/selftest.h) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/eisa.h) \ - $(wildcard include/config/x86/mpparse.h) \ - arch/x86/include/asm/mpspec_def.h \ - arch/x86/include/asm/x86_init.h \ - arch/x86/include/uapi/asm/bootparam.h \ - include/linux/screen_info.h \ - include/uapi/linux/screen_info.h \ - include/linux/apm_bios.h \ - include/uapi/linux/apm_bios.h \ - include/linux/edd.h \ - include/uapi/linux/edd.h \ - arch/x86/include/asm/e820.h \ - $(wildcard include/config/efi.h) \ - arch/x86/include/uapi/asm/e820.h \ - $(wildcard include/config/x86/pmem/legacy.h) \ - $(wildcard include/config/intel/txt.h) \ - include/linux/ioport.h \ - arch/x86/include/asm/ist.h \ - arch/x86/include/uapi/asm/ist.h \ - include/video/edid.h \ - include/uapi/video/edid.h \ - arch/x86/include/asm/apicdef.h \ - arch/x86/include/asm/apic.h \ - $(wildcard include/config/x86/x2apic.h) \ - include/linux/pm.h \ - $(wildcard include/config/vt/console/sleep.h) \ - $(wildcard include/config/pm.h) \ - $(wildcard include/config/pm/clk.h) \ - $(wildcard include/config/pm/generic/domains.h) \ - arch/x86/include/asm/fixmap.h \ - $(wildcard include/config/paravirt/clock.h) \ - $(wildcard include/config/provide/ohci1394/dma/init.h) \ - $(wildcard include/config/pci/mmconfig.h) \ - $(wildcard include/config/x86/intel/mid.h) \ - arch/x86/include/asm/acpi.h \ - $(wildcard include/config/acpi/apei.h) \ - $(wildcard include/config/acpi.h) \ - $(wildcard include/config/acpi/numa.h) \ - include/acpi/pdc_intel.h \ - arch/x86/include/asm/numa.h \ - $(wildcard include/config/numa/emu.h) \ - arch/x86/include/asm/topology.h \ - include/asm-generic/topology.h \ - arch/x86/include/asm/mmu.h \ - $(wildcard include/config/modify/ldt/syscall.h) \ - arch/x86/include/asm/realmode.h \ - $(wildcard include/config/acpi/sleep.h) \ - arch/x86/include/asm/io.h \ - $(wildcard include/config/mtrr.h) \ - $(wildcard include/config/x86/pat.h) \ - arch/x86/include/generated/asm/early_ioremap.h \ - include/asm-generic/early_ioremap.h \ - $(wildcard include/config/generic/early/ioremap.h) \ - include/asm-generic/iomap.h \ - $(wildcard include/config/has/ioport/map.h) \ - $(wildcard include/config/pci.h) \ - $(wildcard include/config/generic/iomap.h) \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/no/generic/pci/ioport/map.h) \ - $(wildcard include/config/generic/pci/iomap.h) \ - include/xen/xen.h \ - $(wildcard include/config/xen/dom0.h) \ - $(wildcard include/config/xen/pvh.h) \ - include/xen/interface/xen.h \ - arch/x86/include/asm/xen/interface.h \ - arch/x86/include/asm/xen/interface_64.h \ - arch/x86/include/asm/pvclock-abi.h \ - arch/x86/include/asm/xen/hypervisor.h \ - include/xen/features.h \ - include/xen/interface/features.h \ - arch/x86/include/asm/pvclock.h \ - $(wildcard include/config/kvm/guest.h) \ - include/linux/clocksource.h \ - $(wildcard include/config/arch/clocksource/data.h) \ - $(wildcard include/config/clocksource/watchdog.h) \ - $(wildcard include/config/clksrc/probe.h) \ - arch/x86/include/asm/clocksource.h \ - arch/x86/include/uapi/asm/vsyscall.h \ - include/asm-generic/fixmap.h \ - arch/x86/include/asm/hardirq.h \ - $(wildcard include/config/kvm/intel.h) \ - $(wildcard include/config/have/kvm.h) \ - $(wildcard include/config/x86/thermal/vector.h) \ - $(wildcard include/config/x86/mce/threshold.h) \ - $(wildcard include/config/x86/mce/amd.h) \ - $(wildcard include/config/hyperv.h) \ - arch/x86/include/asm/idle.h \ - arch/x86/include/asm/io_apic.h \ - arch/x86/include/asm/irq_vectors.h \ - $(wildcard include/config/pci/msi.h) \ - include/linux/topology.h \ - $(wildcard include/config/use/percpu/numa/node/id.h) \ - $(wildcard include/config/sched/smt.h) \ - include/linux/smp.h \ - $(wildcard include/config/up/late/init.h) \ - include/linux/llist.h \ - $(wildcard include/config/arch/have/nmi/safe/cmpxchg.h) \ - include/linux/percpu.h \ - $(wildcard include/config/need/per/cpu/embed/first/chunk.h) \ - $(wildcard include/config/need/per/cpu/page/first/chunk.h) \ - include/linux/debug_locks.h \ - $(wildcard include/config/debug/locking/api/selftests.h) \ - include/linux/mm_types.h \ - $(wildcard include/config/split/ptlock/cpus.h) \ - $(wildcard include/config/arch/enable/split/pmd/ptlock.h) \ - $(wildcard include/config/have/cmpxchg/double.h) \ - $(wildcard include/config/have/aligned/struct/page.h) \ - $(wildcard include/config/userfaultfd.h) \ - $(wildcard include/config/aio.h) \ - $(wildcard include/config/mmu/notifier.h) \ - $(wildcard include/config/arch/want/batched/unmap/tlb/flush.h) \ - include/linux/auxvec.h \ - include/uapi/linux/auxvec.h \ - arch/x86/include/uapi/asm/auxvec.h \ - include/linux/uprobes.h \ - $(wildcard include/config/uprobes.h) \ - arch/x86/include/asm/uprobes.h \ - include/linux/bit_spinlock.h \ - include/linux/shrinker.h \ - include/linux/resource.h \ - include/uapi/linux/resource.h \ - arch/x86/include/uapi/asm/resource.h \ - include/asm-generic/resource.h \ - include/uapi/asm-generic/resource.h \ - include/linux/page_ext.h \ - $(wildcard include/config/idle/page/tracking.h) \ - $(wildcard include/config/page/owner.h) \ - include/linux/stacktrace.h \ - $(wildcard include/config/stacktrace.h) \ - $(wildcard include/config/user/stacktrace/support.h) \ - arch/x86/include/asm/pgtable.h \ - $(wildcard include/config/debug/wx.h) \ - $(wildcard include/config/have/arch/soft/dirty.h) \ - arch/x86/include/asm/pgtable_64.h \ - arch/x86/include/asm/pgtable-invert.h \ - include/asm-generic/pgtable.h \ - $(wildcard include/config/have/arch/huge/vmap.h) \ - include/linux/page-flags.h \ - $(wildcard include/config/arch/uses/pg/uncached.h) \ - $(wildcard include/config/memory/failure.h) \ - $(wildcard include/config/swap.h) \ - $(wildcard include/config/ksm.h) \ - include/linux/huge_mm.h \ - include/linux/vmstat.h \ - $(wildcard include/config/vm/event/counters.h) \ - $(wildcard include/config/debug/tlbflush.h) \ - $(wildcard include/config/debug/vm/vmacache.h) \ - include/linux/vm_event_item.h \ - $(wildcard include/config/migration.h) \ - $(wildcard include/config/memory/balloon.h) \ - $(wildcard include/config/balloon/compaction.h) \ - include/linux/interrupt.h \ - $(wildcard include/config/irq/forced/threading.h) \ - $(wildcard include/config/generic/irq/probe.h) \ - include/linux/irqreturn.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/hardirq.h \ - include/linux/ftrace_irq.h \ - $(wildcard include/config/ftrace/nmi/enter.h) \ - include/linux/vtime.h \ - $(wildcard include/config/virt/cpu/accounting/native.h) \ - $(wildcard include/config/virt/cpu/accounting/gen.h) \ - $(wildcard include/config/virt/cpu/accounting.h) \ - $(wildcard include/config/irq/time/accounting.h) \ - include/linux/context_tracking_state.h \ - $(wildcard include/config/context/tracking.h) \ - include/linux/hrtimer.h \ - $(wildcard include/config/high/res/timers.h) \ - $(wildcard include/config/time/low/res.h) \ - $(wildcard include/config/timerfd.h) \ - include/linux/timerqueue.h \ - include/linux/kref.h \ - arch/x86/include/asm/irq.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.h \ - $(wildcard include/config/block/id.h) \ - include/generated/uapi/linux/version.h \ - include/linux/uaccess.h \ - include/linux/sched.h \ - $(wildcard include/config/sched/debug.h) \ - $(wildcard include/config/lockup/detector.h) \ - $(wildcard include/config/detect/hung/task.h) \ - $(wildcard include/config/core/dump/default/elf/headers.h) \ - $(wildcard include/config/sched/autogroup.h) \ - $(wildcard include/config/bsd/process/acct.h) \ - $(wildcard include/config/taskstats.h) \ - $(wildcard include/config/audit.h) \ - $(wildcard include/config/inotify/user.h) \ - $(wildcard include/config/fanotify.h) \ - $(wildcard include/config/epoll.h) \ - $(wildcard include/config/posix/mqueue.h) \ - $(wildcard include/config/keys.h) \ - $(wildcard include/config/perf/events.h) \ - $(wildcard include/config/bpf/syscall.h) \ - $(wildcard include/config/sched/info.h) \ - $(wildcard include/config/task/delay/acct.h) \ - $(wildcard include/config/schedstats.h) \ - $(wildcard include/config/sched/mc.h) \ - $(wildcard include/config/fair/group/sched.h) \ - $(wildcard include/config/rt/group/sched.h) \ - $(wildcard include/config/cgroup/sched.h) \ - $(wildcard include/config/blk/dev/io/trace.h) \ - $(wildcard include/config/memcg/kmem.h) \ - $(wildcard include/config/compat/brk.h) \ - $(wildcard include/config/cgroups.h) \ - $(wildcard include/config/sysvipc.h) \ - $(wildcard include/config/auditsyscall.h) \ - $(wildcard include/config/rt/mutexes.h) \ - $(wildcard include/config/block.h) \ - $(wildcard include/config/task/xacct.h) \ - $(wildcard include/config/cpusets.h) \ - $(wildcard include/config/futex.h) \ - $(wildcard include/config/fault/injection.h) \ - $(wildcard include/config/latencytop.h) \ - $(wildcard include/config/function/graph/tracer.h) \ - $(wildcard include/config/bcache.h) \ - $(wildcard include/config/arch/wants/dynamic/task/struct.h) \ - $(wildcard include/config/have/unstable/sched/clock.h) \ - $(wildcard include/config/have/copy/thread/tls.h) \ - $(wildcard include/config/debug/stack/usage.h) \ - include/uapi/linux/sched.h \ - include/linux/sched/prio.h \ - include/linux/capability.h \ - $(wildcard include/config/multiuser.h) \ - include/uapi/linux/capability.h \ - include/linux/plist.h \ - $(wildcard include/config/debug/pi/list.h) \ - include/linux/cputime.h \ - arch/x86/include/generated/asm/cputime.h \ - include/asm-generic/cputime.h \ - include/asm-generic/cputime_jiffies.h \ - include/linux/sem.h \ - include/uapi/linux/sem.h \ - include/linux/ipc.h \ - include/linux/uidgid.h \ - $(wildcard include/config/user/ns.h) \ - include/linux/highuid.h \ - include/uapi/linux/ipc.h \ - arch/x86/include/uapi/asm/ipcbuf.h \ - include/uapi/asm-generic/ipcbuf.h \ - arch/x86/include/uapi/asm/sembuf.h \ - include/linux/shm.h \ - include/uapi/linux/shm.h \ - arch/x86/include/uapi/asm/shmbuf.h \ - include/uapi/asm-generic/shmbuf.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/signal.h \ - $(wildcard include/config/old/sigaction.h) \ - include/uapi/linux/signal.h \ - arch/x86/include/asm/signal.h \ - arch/x86/include/uapi/asm/signal.h \ - include/uapi/asm-generic/signal-defs.h \ - arch/x86/include/uapi/asm/siginfo.h \ - include/asm-generic/siginfo.h \ - include/uapi/asm-generic/siginfo.h \ - include/linux/pid.h \ - include/linux/proportions.h \ - include/linux/percpu_counter.h \ - include/linux/seccomp.h \ - $(wildcard include/config/seccomp.h) \ - $(wildcard include/config/have/arch/seccomp/filter.h) \ - $(wildcard include/config/seccomp/filter.h) \ - $(wildcard include/config/checkpoint/restore.h) \ - include/uapi/linux/seccomp.h \ - arch/x86/include/asm/seccomp.h \ - arch/x86/include/asm/unistd.h \ - $(wildcard include/config/x86/x32/abi.h) \ - arch/x86/include/uapi/asm/unistd.h \ - arch/x86/include/generated/uapi/asm/unistd_64.h \ - arch/x86/include/generated/asm/unistd_64_x32.h \ - arch/x86/include/asm/ia32_unistd.h \ - arch/x86/include/generated/asm/unistd_32_ia32.h \ - include/asm-generic/seccomp.h \ - include/uapi/linux/unistd.h \ - include/linux/rculist.h \ - include/linux/rtmutex.h \ - $(wildcard include/config/debug/rt/mutexes.h) \ - include/linux/task_io_accounting.h \ - $(wildcard include/config/task/io/accounting.h) \ - include/linux/latencytop.h \ - include/linux/cred.h \ - $(wildcard include/config/debug/credentials.h) \ - $(wildcard include/config/security.h) \ - include/linux/key.h \ - include/linux/assoc_array.h \ - $(wildcard include/config/associative/array.h) \ - include/linux/selinux.h \ - $(wildcard include/config/security/selinux.h) \ - include/uapi/linux/magic.h \ - include/linux/cgroup-defs.h \ - include/uapi/linux/limits.h \ - include/linux/idr.h \ - include/linux/percpu-refcount.h \ - include/linux/percpu-rwsem.h \ - include/linux/rcu_sync.h \ - include/linux/cgroup_subsys.h \ - $(wildcard include/config/cgroup/cpuacct.h) \ - $(wildcard include/config/blk/cgroup.h) \ - $(wildcard include/config/cgroup/device.h) \ - $(wildcard include/config/cgroup/freezer.h) \ - $(wildcard include/config/cgroup/net/classid.h) \ - $(wildcard include/config/cgroup/perf.h) \ - $(wildcard include/config/cgroup/net/prio.h) \ - $(wildcard include/config/cgroup/hugetlb.h) \ - $(wildcard include/config/cgroup/pids.h) \ - $(wildcard include/config/cgroup/debug.h) \ - arch/x86/include/asm/uaccess.h \ - $(wildcard include/config/x86/intel/usercopy.h) \ - $(wildcard include/config/debug/strict/user/copy/checks.h) \ - arch/x86/include/asm/smap.h \ - $(wildcard include/config/x86/smap.h) \ - arch/x86/include/asm/uaccess_64.h \ - include/linux/module.h \ - $(wildcard include/config/module/sig.h) \ - $(wildcard include/config/modules/tree/lookup.h) \ - $(wildcard include/config/kallsyms.h) \ - $(wildcard include/config/tracepoints.h) \ - $(wildcard include/config/event/tracing.h) \ - $(wildcard include/config/livepatch.h) \ - $(wildcard include/config/module/unload.h) \ - $(wildcard include/config/constructors.h) \ - $(wildcard include/config/debug/set/module/ronx.h) \ - include/linux/stat.h \ - arch/x86/include/uapi/asm/stat.h \ - include/uapi/linux/stat.h \ - include/linux/kmod.h \ - include/linux/elf.h \ - arch/x86/include/asm/elf.h \ - arch/x86/include/asm/user.h \ - arch/x86/include/asm/user_64.h \ - arch/x86/include/asm/vdso.h \ - $(wildcard include/config/x86/x32.h) \ - include/uapi/linux/elf.h \ - include/uapi/linux/elf-em.h \ - include/linux/kobject.h \ - $(wildcard include/config/uevent/helper.h) \ - $(wildcard include/config/debug/kobject/release.h) \ - include/linux/sysfs.h \ - include/linux/kernfs.h \ - $(wildcard include/config/kernfs.h) \ - include/linux/kobject_ns.h \ - include/linux/moduleparam.h \ - $(wildcard include/config/alpha.h) \ - $(wildcard include/config/ppc64.h) \ - include/linux/rbtree_latch.h \ - arch/x86/include/asm/module.h \ - $(wildcard include/config/m486.h) \ - $(wildcard include/config/m586.h) \ - $(wildcard include/config/m586tsc.h) \ - $(wildcard include/config/m586mmx.h) \ - $(wildcard include/config/mcore2.h) \ - $(wildcard include/config/m686.h) \ - $(wildcard include/config/mpentiumii.h) \ - $(wildcard include/config/mpentiumiii.h) \ - $(wildcard include/config/mpentiumm.h) \ - $(wildcard include/config/mpentium4.h) \ - $(wildcard include/config/mk6.h) \ - $(wildcard include/config/mk8.h) \ - $(wildcard include/config/melan.h) \ - $(wildcard include/config/mcrusoe.h) \ - $(wildcard include/config/mefficeon.h) \ - $(wildcard include/config/mwinchipc6.h) \ - $(wildcard include/config/mwinchip3d.h) \ - $(wildcard include/config/mcyrixiii.h) \ - $(wildcard include/config/mviac3/2.h) \ - $(wildcard include/config/mviac7.h) \ - $(wildcard include/config/mgeodegx1.h) \ - $(wildcard include/config/mgeode/lx.h) \ - include/asm-generic/module.h \ - $(wildcard include/config/have/mod/arch/specific.h) \ - $(wildcard include/config/modules/use/elf/rel.h) \ - $(wildcard include/config/modules/use/elf/rela.h) \ - include/linux/dma-mapping.h \ - $(wildcard include/config/has/dma.h) \ - $(wildcard include/config/arch/has/dma/set/coherent/mask.h) \ - $(wildcard include/config/have/dma/attrs.h) \ - $(wildcard include/config/need/dma/map/state.h) \ - include/linux/sizes.h \ - include/linux/device.h \ - $(wildcard include/config/debug/devres.h) \ - $(wildcard include/config/generic/msi/irq/domain.h) \ - $(wildcard include/config/pinctrl.h) \ - $(wildcard include/config/generic/msi/irq.h) \ - $(wildcard include/config/dma/cma.h) \ - $(wildcard include/config/of.h) \ - $(wildcard include/config/devtmpfs.h) \ - $(wildcard include/config/sysfs/deprecated.h) \ - include/linux/klist.h \ - include/linux/pinctrl/devinfo.h \ - include/linux/pinctrl/consumer.h \ - include/linux/seq_file.h \ - include/linux/fs.h \ - $(wildcard include/config/fs/posix/acl.h) \ - $(wildcard include/config/cgroup/writeback.h) \ - $(wildcard include/config/ima.h) \ - $(wildcard include/config/fsnotify.h) \ - $(wildcard include/config/file/locking.h) \ - $(wildcard include/config/quota.h) \ - $(wildcard include/config/blk/dev/loop.h) \ - $(wildcard include/config/fs/dax.h) \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/dcache.h \ - include/linux/rculist_bl.h \ - include/linux/list_bl.h \ - include/linux/lockref.h \ - $(wildcard include/config/arch/use/cmpxchg/lockref.h) \ - include/linux/path.h \ - include/linux/list_lru.h \ - include/linux/radix-tree.h \ - include/linux/semaphore.h \ - include/uapi/linux/fiemap.h \ - include/linux/migrate_mode.h \ - include/linux/blk_types.h \ - $(wildcard include/config/blk/dev/integrity.h) \ - include/uapi/linux/fs.h \ - include/linux/quota.h \ - $(wildcard include/config/quota/netlink/interface.h) \ - include/uapi/linux/dqblk_xfs.h \ - include/linux/dqblk_v1.h \ - include/linux/dqblk_v2.h \ - include/linux/dqblk_qtree.h \ - include/linux/projid.h \ - include/uapi/linux/quota.h \ - include/linux/nfs_fs_i.h \ - include/linux/fcntl.h \ - include/uapi/linux/fcntl.h \ - arch/x86/include/uapi/asm/fcntl.h \ - include/uapi/asm-generic/fcntl.h \ - include/linux/pinctrl/pinctrl-state.h \ - include/linux/ratelimit.h \ - arch/x86/include/asm/device.h \ - $(wildcard include/config/x86/dev/dma/ops.h) \ - $(wildcard include/config/intel/iommu.h) \ - $(wildcard include/config/amd/iommu.h) \ - include/linux/pm_wakeup.h \ - include/linux/dma-attrs.h \ - include/linux/dma-direction.h \ - arch/x86/include/asm/dma-mapping.h \ - $(wildcard include/config/isa.h) \ - $(wildcard include/config/x86/dma/remap.h) \ - include/linux/kmemcheck.h \ - include/linux/dma-debug.h \ - $(wildcard include/config/dma/api/debug.h) \ - arch/x86/include/asm/swiotlb.h \ - $(wildcard include/config/swiotlb.h) \ - include/linux/swiotlb.h \ - include/linux/dma-contiguous.h \ - include/asm-generic/dma-mapping-common.h \ - include/asm-generic/dma-coherent.h \ - $(wildcard include/config/have/generic/dma/coherent.h) \ - include/linux/pci.h \ - $(wildcard include/config/pci/iov.h) \ - $(wildcard include/config/pcieaspm.h) \ - $(wildcard include/config/pci/ats.h) \ - $(wildcard include/config/pci/domains/generic.h) \ - $(wildcard include/config/pci/bus/addr/t/64bit.h) \ - $(wildcard include/config/pcieportbus.h) \ - $(wildcard include/config/pcie/ecrc.h) \ - $(wildcard include/config/ht/irq.h) \ - $(wildcard include/config/pci/domains.h) \ - $(wildcard include/config/pci/quirks.h) \ - $(wildcard include/config/hibernate/callbacks.h) \ - $(wildcard include/config/acpi/mcfg.h) \ - $(wildcard include/config/hotplug/pci.h) \ - $(wildcard include/config/eeh.h) \ - include/linux/mod_devicetable.h \ - include/linux/uuid.h \ - include/uapi/linux/uuid.h \ - include/linux/io.h \ - include/linux/resource_ext.h \ - include/linux/slab.h \ - $(wildcard include/config/debug/slab.h) \ - $(wildcard include/config/failslab.h) \ - $(wildcard include/config/slab.h) \ - $(wildcard include/config/slub.h) \ - $(wildcard include/config/slob.h) \ - include/linux/kmemleak.h \ - $(wildcard include/config/debug/kmemleak.h) \ - include/linux/kasan.h \ - include/uapi/linux/pci.h \ - include/uapi/linux/pci_regs.h \ - include/linux/pci_ids.h \ - include/linux/pci-dma.h \ - include/linux/dmapool.h \ - arch/x86/include/asm/pci.h \ - $(wildcard include/config/pci/msi/irq/domain.h) \ - arch/x86/include/asm/pci_64.h \ - $(wildcard include/config/calgary/iommu.h) \ - include/asm-generic/pci-dma-compat.h \ - include/asm-generic/pci.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_mod.h \ - include/linux/cdev.h \ - include/linux/delay.h \ - arch/x86/include/asm/delay.h \ - include/asm-generic/delay.h \ - include/linux/fb.h \ - $(wildcard include/config/fb/deferred/io.h) \ - $(wildcard include/config/fb/tileblitting.h) \ - $(wildcard include/config/fb/backlight.h) \ - $(wildcard include/config/fb/foreign/endian.h) \ - $(wildcard include/config/fb/both/endian.h) \ - $(wildcard include/config/fb/big/endian.h) \ - $(wildcard include/config/fb/little/endian.h) \ - include/linux/kgdb.h \ - $(wildcard include/config/have/arch/kgdb.h) \ - $(wildcard include/config/kgdb.h) \ - $(wildcard include/config/serial/kgdb/nmi.h) \ - arch/x86/include/asm/kgdb.h \ - include/uapi/linux/fb.h \ - include/linux/i2c.h \ - $(wildcard include/config/i2c.h) \ - $(wildcard include/config/i2c/slave.h) \ - $(wildcard include/config/i2c/boardinfo.h) \ - $(wildcard include/config/i2c/mux.h) \ - include/linux/of.h \ - $(wildcard include/config/sparc.h) \ - $(wildcard include/config/of/dynamic.h) \ - $(wildcard include/config/attach/node.h) \ - $(wildcard include/config/detach/node.h) \ - $(wildcard include/config/add/property.h) \ - $(wildcard include/config/remove/property.h) \ - $(wildcard include/config/update/property.h) \ - $(wildcard include/config/of/numa.h) \ - $(wildcard include/config/no/change.h) \ - $(wildcard include/config/change/add.h) \ - $(wildcard include/config/change/remove.h) \ - $(wildcard include/config/of/resolve.h) \ - $(wildcard include/config/of/overlay.h) \ - include/linux/property.h \ - include/linux/fwnode.h \ - include/uapi/linux/i2c.h \ - include/linux/backlight.h \ - include/linux/poll.h \ - include/uapi/linux/poll.h \ - arch/x86/include/uapi/asm/poll.h \ - include/uapi/asm-generic/poll.h \ - include/linux/vmalloc.h \ - include/linux/aio.h \ - include/uapi/linux/aio_abi.h \ - include/linux/splice.h \ - include/linux/pipe_fs_i.h \ - include/linux/uio.h \ - include/uapi/linux/uio.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_cdev.h \ - /home/wangxuan/pcie_xdma_host_software/driver/xdma/version.h \ - -/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_mod.o: $(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_mod.o) - -$(deps_/home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma_mod.o): diff --git a/host_software/driver/xdma/Module.symvers b/host_software/driver/xdma/Module.symvers deleted file mode 100644 index 22ac4f1..0000000 --- a/host_software/driver/xdma/Module.symvers +++ /dev/null @@ -1,14 +0,0 @@ -0xbbbebfae xdma_device_online /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma EXPORT_SYMBOL_GPL -0x9aca3f0a xdma_user_isr_disable /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma EXPORT_SYMBOL_GPL -0xc53cdaca xdev_find_by_pdev /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma EXPORT_SYMBOL_GPL -0x35125a44 enable_perf /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma EXPORT_SYMBOL_GPL -0x7e5ef4e4 xdma_device_restart /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma EXPORT_SYMBOL_GPL -0x8fe1a762 xdma_performance_submit /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma EXPORT_SYMBOL_GPL -0xde603d17 xdma_device_close /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma EXPORT_SYMBOL_GPL -0x763aa2cd xdma_xfer_submit /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma EXPORT_SYMBOL_GPL -0x335e0f18 xdma_device_open /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma EXPORT_SYMBOL_GPL -0x11b39090 engine_cyclic_stop /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma EXPORT_SYMBOL_GPL -0x138e6908 xdma_user_isr_register /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma EXPORT_SYMBOL_GPL -0x82bdcc10 xdma_device_offline /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma EXPORT_SYMBOL_GPL -0xfe6e6574 get_perf_stats /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma EXPORT_SYMBOL_GPL -0x9ce7b42d xdma_user_isr_enable /home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma EXPORT_SYMBOL_GPL diff --git a/host_software/driver/xdma/cdev_sgdma.c b/host_software/driver/xdma/cdev_sgdma.c deleted file mode 100644 index 410ef45..0000000 --- a/host_software/driver/xdma/cdev_sgdma.c +++ /dev/null @@ -1,552 +0,0 @@ -/* - * This file is part of the Xilinx DMA IP Core driver for Linux - * - * Copyright (c) 2016-present, Xilinx, Inc. - * All rights reserved. - * - * This source code is licensed under both the BSD-style license (found in the - * LICENSE file in the root directory of this source tree) and the GPLv2 (found - * in the COPYING file in the root directory of this source tree). - * You may select, at your option, one of the above-listed licenses. - */ - -#define pr_fmt(fmt) KBUILD_MODNAME ":%s: " fmt, __func__ - -#include -#include "libxdma_api.h" -#include "xdma_cdev.h" -#include "cdev_sgdma.h" - -/* Module Parameters */ -unsigned int sgdma_timeout = 10; -module_param(sgdma_timeout, uint, 0644); -MODULE_PARM_DESC(sgdma_timeout, "timeout in seconds for sgdma, default is 10 sec."); - -/* - * character device file operations for SG DMA engine - */ -static loff_t char_sgdma_llseek(struct file *file, loff_t off, int whence) -{ - loff_t newpos = 0; - - switch (whence) { - case 0: /* SEEK_SET */ - newpos = off; - break; - case 1: /* SEEK_CUR */ - newpos = file->f_pos + off; - break; - case 2: /* SEEK_END, @TODO should work from end of address space */ - newpos = UINT_MAX + off; - break; - default: /* can't happen */ - return -EINVAL; - } - if (newpos < 0) - return -EINVAL; - file->f_pos = newpos; - dbg_fops("char_sgdma_llseek: pos=%lld\n", (signed long long)newpos); - -#if 0 - pr_err("0x%p, off 0x%lld, whence %d -> pos %lld.\n", - file, (signed long long)off, whence, (signed long long)off); -#endif - - return newpos; -} - -/* char_sgdma_read_write() -- Read from or write to the device - * - * @buf userspace buffer - * @count number of bytes in the userspace buffer - * @pos byte-address in device - * @dir_to_device If !0, a write to the device is performed - * - * Iterate over the userspace buffer, taking at most 255 * PAGE_SIZE bytes for - * each DMA transfer. - * - * For each transfer, get the user pages, build a sglist, map, build a - * descriptor table. submit the transfer. wait for the interrupt handler - * to wake us on completion. - */ - -static int check_transfer_align(struct xdma_engine *engine, - const char __user *buf, size_t count, loff_t pos, int sync) -{ - BUG_ON(!engine); - - /* AXI ST or AXI MM non-incremental addressing mode? */ - if (engine->non_incr_addr) { - int buf_lsb = (int)((uintptr_t)buf) & (engine->addr_align - 1); - size_t len_lsb = count & ((size_t)engine->len_granularity - 1); - int pos_lsb = (int)pos & (engine->addr_align - 1); - - dbg_tfr("AXI ST or MM non-incremental\n"); - dbg_tfr("buf_lsb = %d, pos_lsb = %d, len_lsb = %ld\n", buf_lsb, - pos_lsb, len_lsb); - - if (buf_lsb != 0) { - dbg_tfr("FAIL: non-aligned buffer address %p\n", buf); - return -EINVAL; - } - - if ((pos_lsb != 0) && (sync)) { - dbg_tfr("FAIL: non-aligned AXI MM FPGA addr 0x%llx\n", - (unsigned long long)pos); - return -EINVAL; - } - - if (len_lsb != 0) { - dbg_tfr("FAIL: len %d is not a multiple of %d\n", - (int)count, - (int)engine->len_granularity); - return -EINVAL; - } - /* AXI MM incremental addressing mode */ - } else { - int buf_lsb = (int)((uintptr_t)buf) & (engine->addr_align - 1); - int pos_lsb = (int)pos & (engine->addr_align - 1); - - if (buf_lsb != pos_lsb) { - dbg_tfr("FAIL: Misalignment error\n"); - dbg_tfr("host addr %p, FPGA addr 0x%llx\n", buf, pos); - return -EINVAL; - } - } - - return 0; -} - -/* - * Map a user memory range into a scatterlist - * inspired by vhost_scsi_map_to_sgl() - * Returns the number of scatterlist entries used or -errno on error. - */ -static inline void xdma_io_cb_release(struct xdma_io_cb *cb) -{ - int i; - - for (i = 0; i < cb->pages_nr; i++) - put_page(cb->pages[i]); - - sg_free_table(&cb->sgt); - kfree(cb->pages); - - memset(cb, 0, sizeof(*cb)); -} - -static void char_sgdma_unmap_user_buf(struct xdma_io_cb *cb, bool write) -{ - int i; - - sg_free_table(&cb->sgt); - - if (!cb->pages || !cb->pages_nr) - return; - - for (i = 0; i < cb->pages_nr; i++) { - if (cb->pages[i]) { - if (!write) - set_page_dirty_lock(cb->pages[i]); - put_page(cb->pages[i]); - } else - break; - } - - if (i != cb->pages_nr) - pr_info("sgl pages %d/%u.\n", i, cb->pages_nr); - - kfree(cb->pages); - cb->pages = NULL; -} - -static int char_sgdma_map_user_buf_to_sgl(struct xdma_io_cb *cb, bool write) -{ - struct sg_table *sgt = &cb->sgt; - unsigned long len = cb->len; - char *buf = cb->buf; - struct scatterlist *sg; - unsigned int pages_nr = (((unsigned long)buf + len + PAGE_SIZE -1) - - ((unsigned long)buf & PAGE_MASK)) - >> PAGE_SHIFT; - int i; - int rv; - - if (pages_nr == 0) { - return -EINVAL; - } - - if (sg_alloc_table(sgt, pages_nr, GFP_KERNEL)) { - pr_err("sgl OOM.\n"); - return -ENOMEM; - } - - cb->pages = kcalloc(pages_nr, sizeof(struct page *), GFP_KERNEL); - if (!cb->pages) { - pr_err("pages OOM.\n"); - rv = -ENOMEM; - goto err_out; - } - - rv = get_user_pages_fast((unsigned long)buf, pages_nr, 1/* write */, - cb->pages); - /* No pages were pinned */ - if (rv < 0) { - pr_err("unable to pin down %u user pages, %d.\n", - pages_nr, rv); - goto err_out; - } - /* Less pages pinned than wanted */ - if (rv != pages_nr) { - pr_err("unable to pin down all %u user pages, %d.\n", - pages_nr, rv); - rv = -EFAULT; - cb->pages_nr = rv; - goto err_out; - } - - for (i = 1; i < pages_nr; i++) { - if (cb->pages[i - 1] == cb->pages[i]) { - pr_err("duplicate pages, %d, %d.\n", - i - 1, i); - rv = -EFAULT; - cb->pages_nr = pages_nr; - goto err_out; - } - } - - sg = sgt->sgl; - for (i = 0; i < pages_nr; i++, sg = sg_next(sg)) { - //unsigned int offset = (uintptr_t)buf & ~PAGE_MASK; - unsigned int offset = offset_in_page(buf); - unsigned int nbytes = min_t(unsigned int, PAGE_SIZE - offset, len); - - flush_dcache_page(cb->pages[i]); - sg_set_page(sg, cb->pages[i], nbytes, offset); - - buf += nbytes; - len -= nbytes; - } - - BUG_ON(len); - cb->pages_nr = pages_nr; - return 0; - -err_out: - char_sgdma_unmap_user_buf(cb, write); - - return rv; -} - -static ssize_t char_sgdma_read_write(struct file *file, char __user *buf, - size_t count, loff_t *pos, bool write) -{ - int rv; - ssize_t res = 0; - struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data; - struct xdma_dev *xdev; - struct xdma_engine *engine; - struct xdma_io_cb cb; - - rv = xcdev_check(__func__, xcdev, 1); - if (rv < 0) - return rv; - xdev = xcdev->xdev; - engine = xcdev->engine; - - dbg_tfr("file 0x%p, priv 0x%p, buf 0x%p,%llu, pos %llu, W %d, %s.\n", - file, file->private_data, buf, (u64)count, (u64)*pos, write, - engine->name); - - if ((write && engine->dir != DMA_TO_DEVICE) || - (!write && engine->dir != DMA_FROM_DEVICE)) { - pr_err("r/w mismatch. W %d, dir %d.\n", - write, engine->dir); - return -EINVAL; - } - - rv = check_transfer_align(engine, buf, count, *pos, 1); - if (rv) { - pr_info("Invalid transfer alignment detected\n"); - return rv; - } - - memset(&cb, 0, sizeof(struct xdma_io_cb)); - cb.buf = buf; - cb.len = count; - rv = char_sgdma_map_user_buf_to_sgl(&cb, write); - if (rv < 0) - return rv; - - res = xdma_xfer_submit(xdev, engine->channel, write, *pos, &cb.sgt, - 0, sgdma_timeout * 1000); - //pr_err("xfer_submit return=%lld.\n", (s64)res); - - //interrupt_status(xdev); - - char_sgdma_unmap_user_buf(&cb, write); - - return res; -} - - -static ssize_t char_sgdma_write(struct file *file, const char __user *buf, - size_t count, loff_t *pos) -{ - return char_sgdma_read_write(file, (char *)buf, count, pos, 1); -} - -static ssize_t char_sgdma_read(struct file *file, char __user *buf, - size_t count, loff_t *pos) -{ - struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data; - struct xdma_engine *engine; - int rv; - - rv = xcdev_check(__func__, xcdev, 1); - if (rv < 0) - return rv; - - engine = xcdev->engine; - - if (engine->streaming && engine->dir == DMA_FROM_DEVICE) { - rv = xdma_cyclic_transfer_setup(engine); - if (rv < 0 && rv != -EBUSY) - return rv; - /* 600 sec. timeout */ - return xdma_engine_read_cyclic(engine, buf, count, 600000); - } - - return char_sgdma_read_write(file, (char *)buf, count, pos, 0); -} - -static int ioctl_do_perf_start(struct xdma_engine *engine, unsigned long arg) -{ - int rv; - struct xdma_dev *xdev; - - BUG_ON(!engine); - xdev = engine->xdev; - BUG_ON(!xdev); - - /* performance measurement already running on this engine? */ - if (engine->xdma_perf) { - dbg_perf("IOCTL_XDMA_PERF_START failed!\n"); - dbg_perf("Perf measurement already seems to be running!\n"); - return -EBUSY; - } - engine->xdma_perf = kzalloc(sizeof(struct xdma_performance_ioctl), - GFP_KERNEL); - - if (!engine->xdma_perf) - return -ENOMEM; - - rv = copy_from_user(engine->xdma_perf, - (struct xdma_performance_ioctl *)arg, - sizeof(struct xdma_performance_ioctl)); - - if (rv < 0) { - dbg_perf("Failed to copy from user space 0x%lx\n", arg); - return -EINVAL; - } - if (engine->xdma_perf->version != IOCTL_XDMA_PERF_V1) { - dbg_perf("Unsupported IOCTL version %d\n", - engine->xdma_perf->version); - return -EINVAL; - } - - enable_perf(engine); - dbg_perf("transfer_size = %d\n", engine->xdma_perf->transfer_size); - /* initialize wait queue */ - init_waitqueue_head(&engine->xdma_perf_wq); - xdma_performance_submit(xdev, engine); - - return 0; -} - -static int ioctl_do_perf_stop(struct xdma_engine *engine, unsigned long arg) -{ - struct xdma_transfer *transfer = NULL; - int rv; - - dbg_perf("IOCTL_XDMA_PERF_STOP\n"); - - /* no performance measurement running on this engine? */ - if (!engine->xdma_perf) { - dbg_perf("No measurement in progress\n"); - return -EINVAL; - } - - /* stop measurement */ - transfer = engine_cyclic_stop(engine); - dbg_perf("Waiting for measurement to stop\n"); - - if (engine->xdma_perf) { - get_perf_stats(engine); - - rv = copy_to_user((void __user *)arg, engine->xdma_perf, - sizeof(struct xdma_performance_ioctl)); - if (rv) { - dbg_perf("Error copying result to user\n"); - return -EINVAL; - } - } else { - dbg_perf("engine->xdma_perf == NULL?\n"); - } - - kfree(engine->xdma_perf); - engine->xdma_perf = NULL; - - return 0; -} - -static int ioctl_do_perf_get(struct xdma_engine *engine, unsigned long arg) -{ - int rc; - - BUG_ON(!engine); - - dbg_perf("IOCTL_XDMA_PERF_GET\n"); - - if (engine->xdma_perf) { - get_perf_stats(engine); - - rc = copy_to_user((void __user *)arg, engine->xdma_perf, - sizeof(struct xdma_performance_ioctl)); - if (rc) { - dbg_perf("Error copying result to user\n"); - return -EINVAL; - } - } else { - dbg_perf("engine->xdma_perf == NULL?\n"); - return -EPROTO; - } - - return 0; -} - -static int ioctl_do_addrmode_set(struct xdma_engine *engine, unsigned long arg) -{ - return engine_addrmode_set(engine, arg); -} - -static int ioctl_do_addrmode_get(struct xdma_engine *engine, unsigned long arg) -{ - int rv; - unsigned long src; - - BUG_ON(!engine); - src = !!engine->non_incr_addr; - - dbg_perf("IOCTL_XDMA_ADDRMODE_GET\n"); - rv = put_user(src, (int __user *)arg); - - return rv; -} - -static int ioctl_do_align_get(struct xdma_engine *engine, unsigned long arg) -{ - BUG_ON(!engine); - - dbg_perf("IOCTL_XDMA_ALIGN_GET\n"); - return put_user(engine->addr_align, (int __user *)arg); -} - -static long char_sgdma_ioctl(struct file *file, unsigned int cmd, - unsigned long arg) -{ - struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data; - struct xdma_dev *xdev; - struct xdma_engine *engine; - - int rv = 0; - - rv = xcdev_check(__func__, xcdev, 1); - if (rv < 0) - return rv; - - xdev = xcdev->xdev; - engine = xcdev->engine; - - switch (cmd) { - case IOCTL_XDMA_PERF_START: - rv = ioctl_do_perf_start(engine, arg); - break; - case IOCTL_XDMA_PERF_STOP: - rv = ioctl_do_perf_stop(engine, arg); - break; - case IOCTL_XDMA_PERF_GET: - rv = ioctl_do_perf_get(engine, arg); - break; - case IOCTL_XDMA_ADDRMODE_SET: - rv = ioctl_do_addrmode_set(engine, arg); - break; - case IOCTL_XDMA_ADDRMODE_GET: - rv = ioctl_do_addrmode_get(engine, arg); - break; - case IOCTL_XDMA_ALIGN_GET: - rv = ioctl_do_align_get(engine, arg); - break; - default: - dbg_perf("Unsupported operation\n"); - rv = -EINVAL; - break; - } - - return rv; -} - -static int char_sgdma_open(struct inode *inode, struct file *file) -{ - struct xdma_cdev *xcdev; - struct xdma_engine *engine; - - char_open(inode, file); - - xcdev = (struct xdma_cdev *)file->private_data; - engine = xcdev->engine; - - if (engine->streaming && engine->dir == DMA_FROM_DEVICE) { - if (engine->device_open == 1) - return -EBUSY; - else - engine->device_open = 1; - } - - return 0; -} - -static int char_sgdma_close(struct inode *inode, struct file *file) -{ - struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data; - struct xdma_engine *engine; - int rv; - - rv = xcdev_check(__func__, xcdev, 1); - if (rv < 0) - return rv; - - engine = xcdev->engine; - - if (engine->streaming && engine->dir == DMA_FROM_DEVICE) { - engine->device_open = 0; - if (engine->cyclic_req) - return xdma_cyclic_transfer_teardown(engine); - } - - return 0; -} -static const struct file_operations sgdma_fops = { - .owner = THIS_MODULE, - .open = char_sgdma_open, - .release = char_sgdma_close, - .write = char_sgdma_write, - .read = char_sgdma_read, - .unlocked_ioctl = char_sgdma_ioctl, - .llseek = char_sgdma_llseek, -}; - -void cdev_sgdma_init(struct xdma_cdev *xcdev) -{ - cdev_init(&xcdev->cdev, &sgdma_fops); -} diff --git a/host_software/driver/xdma/cdev_xvc.h b/host_software/driver/xdma/cdev_xvc.h deleted file mode 100644 index e689706..0000000 --- a/host_software/driver/xdma/cdev_xvc.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * This file is part of the Xilinx DMA IP Core driver for Linux - * - * Copyright (c) 2016-present, Xilinx, Inc. - * All rights reserved. - * - * This source code is licensed under both the BSD-style license (found in the - * LICENSE file in the root directory of this source tree) and the GPLv2 (found - * in the COPYING file in the root directory of this source tree). - * You may select, at your option, one of the above-listed licenses. - */ - -#ifndef __XVC_IOCTL_H__ -#define __XVC_IOCTL_H__ - -#include - -/* - * !!! TODO !!! - * need a better way set the bar offset dynamicly - */ -#define XVC_BAR_OFFSET_DFLT 0x40000 /* DSA 4.0 */ - -#define XVC_MAGIC 0x58564344 // "XVCD" - -struct xvc_ioc { - unsigned int opcode; - unsigned int length; - unsigned char *tms_buf; - unsigned char *tdi_buf; - unsigned char *tdo_buf; -}; - -#define XDMA_IOCXVC _IOWR(XVC_MAGIC, 1, struct xvc_ioc) - -#endif /* __XVC_IOCTL_H__ */ diff --git a/host_software/driver/xdma/libxdma.o.ur-safe b/host_software/driver/xdma/libxdma.o.ur-safe deleted file mode 100644 index befa7eb..0000000 --- a/host_software/driver/xdma/libxdma.o.ur-safe +++ /dev/null @@ -1,3 +0,0 @@ -/home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.o-.text-29f300000001 -/home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.o-.text-2a5f00000001 -/home/wangxuan/pcie_xdma_host_software/driver/xdma/libxdma.o-.text-2ac300000001 diff --git a/host_software/driver/xdma/modules.order b/host_software/driver/xdma/modules.order deleted file mode 100644 index 0ade9ac..0000000 --- a/host_software/driver/xdma/modules.order +++ /dev/null @@ -1 +0,0 @@ -kernel//home/wangxuan/pcie_xdma_host_software/driver/xdma/xdma.ko diff --git a/host_software/driver/xdma/version.h b/host_software/driver/xdma/version.h deleted file mode 100644 index edd3abf..0000000 --- a/host_software/driver/xdma/version.h +++ /dev/null @@ -1,28 +0,0 @@ -/* - * This file is part of the Xilinx DMA IP Core driver for Linux - * - * Copyright (c) 2016-present, Xilinx, Inc. - * All rights reserved. - * - * This source code is licensed under both the BSD-style license (found in the - * LICENSE file in the root directory of this source tree) and the GPLv2 (found - * in the COPYING file in the root directory of this source tree). - * You may select, at your option, one of the above-listed licenses. - */ - -#ifndef __XDMA_VERSION_H__ -#define __XDMA_VERSION_H__ - -#define DRV_MOD_MAJOR 2017 -#define DRV_MOD_MINOR 1 -#define DRV_MOD_PATCHLEVEL 47 - -#define DRV_MODULE_VERSION \ - __stringify(DRV_MOD_MAJOR) "." \ - __stringify(DRV_MOD_MINOR) "." \ - __stringify(DRV_MOD_PATCHLEVEL) - -#define DRV_MOD_VERSION_NUMBER \ - ((DRV_MOD_MAJOR)*1000 + (DRV_MOD_MINOR)*100 + DRV_MOD_PATCHLEVEL) - -#endif /* ifndef __XDMA_VERSION_H__ */ diff --git a/host_software/driver/xdma/xdma.mod.c b/host_software/driver/xdma/xdma.mod.c deleted file mode 100644 index c4e906f..0000000 --- a/host_software/driver/xdma/xdma.mod.c +++ /dev/null @@ -1,178 +0,0 @@ -#include -#include -#include - -MODULE_INFO(vermagic, VERMAGIC_STRING); - -__visible struct module __this_module -__attribute__((section(".gnu.linkonce.this_module"))) = { - .name = KBUILD_MODNAME, - .init = init_module, -#ifdef CONFIG_MODULE_UNLOAD - .exit = cleanup_module, -#endif - .arch = MODULE_ARCH_INIT, -}; - -#ifdef RETPOLINE -MODULE_INFO(retpoline, "Y"); -#endif - -static const struct modversion_info ____versions[] -__used -__attribute__((section("__versions"))) = { - { 0x89c51293, __VMLINUX_SYMBOL_STR(module_layout) }, - { 0x8e2f32a6, __VMLINUX_SYMBOL_STR(alloc_pages_current) }, - { 0x2d3385d3, __VMLINUX_SYMBOL_STR(system_wq) }, - { 0xbdc6b187, __VMLINUX_SYMBOL_STR(cpu_tss) }, - { 0x232e610a, __VMLINUX_SYMBOL_STR(cdev_del) }, - { 0xe31697f9, __VMLINUX_SYMBOL_STR(kmalloc_caches) }, - { 0x827f70bf, __VMLINUX_SYMBOL_STR(pci_bus_read_config_byte) }, - { 0xd2b09ce5, __VMLINUX_SYMBOL_STR(__kmalloc) }, - { 0x5c323e32, __VMLINUX_SYMBOL_STR(cdev_init) }, - { 0xda3e43d1, __VMLINUX_SYMBOL_STR(_raw_spin_unlock) }, - { 0xd6ee688f, __VMLINUX_SYMBOL_STR(vmalloc) }, - { 0x27d1be59, __VMLINUX_SYMBOL_STR(pcie_set_readrq) }, - { 0x75f2ad62, __VMLINUX_SYMBOL_STR(boot_cpu_data) }, - { 0x5183e5fe, __VMLINUX_SYMBOL_STR(pci_disable_device) }, - { 0x57e85623, __VMLINUX_SYMBOL_STR(pci_disable_msix) }, - { 0x1337872a, __VMLINUX_SYMBOL_STR(set_page_dirty_lock) }, - { 0x44b1d426, __VMLINUX_SYMBOL_STR(__dynamic_pr_debug) }, - { 0xaecf7e88, __VMLINUX_SYMBOL_STR(device_destroy) }, - { 0xa49d2674, __VMLINUX_SYMBOL_STR(kobject_set_name) }, - { 0x6729d3df, __VMLINUX_SYMBOL_STR(__get_user_4) }, - { 0x3fec048f, __VMLINUX_SYMBOL_STR(sg_next) }, - { 0x178f6728, __VMLINUX_SYMBOL_STR(pci_release_regions) }, - { 0x51ed2cb, __VMLINUX_SYMBOL_STR(pcie_capability_clear_and_set_word) }, - { 0x91b95795, __VMLINUX_SYMBOL_STR(mutex_unlock) }, - { 0x7485e15e, __VMLINUX_SYMBOL_STR(unregister_chrdev_region) }, - { 0x999e8297, __VMLINUX_SYMBOL_STR(vfree) }, - { 0xc9f60e27, __VMLINUX_SYMBOL_STR(pci_bus_write_config_word) }, - { 0x7a2af7b4, __VMLINUX_SYMBOL_STR(cpu_number) }, - { 0x91715312, __VMLINUX_SYMBOL_STR(sprintf) }, - { 0x15ba50a6, __VMLINUX_SYMBOL_STR(jiffies) }, - { 0xf432dd3d, __VMLINUX_SYMBOL_STR(__init_waitqueue_head) }, - { 0x4f8b5ddb, __VMLINUX_SYMBOL_STR(_copy_to_user) }, - { 0x4ff8cf3f, __VMLINUX_SYMBOL_STR(pci_set_master) }, - { 0x7e526bfa, __VMLINUX_SYMBOL_STR(__x86_indirect_thunk_r10) }, - { 0xfb578fc5, __VMLINUX_SYMBOL_STR(memset) }, - { 0x5632f5a5, __VMLINUX_SYMBOL_STR(pci_enable_msix) }, - { 0x8ac48649, __VMLINUX_SYMBOL_STR(pci_restore_state) }, - { 0x6355b6e1, __VMLINUX_SYMBOL_STR(pci_iounmap) }, - { 0x8f64aa4, __VMLINUX_SYMBOL_STR(_raw_spin_unlock_irqrestore) }, - { 0x27e1a049, __VMLINUX_SYMBOL_STR(printk) }, - { 0xa1c76e0a, __VMLINUX_SYMBOL_STR(_cond_resched) }, - { 0x16305289, __VMLINUX_SYMBOL_STR(warn_slowpath_null) }, - { 0x7ba1676c, __VMLINUX_SYMBOL_STR(mutex_lock) }, - { 0x5c9a0cac, __VMLINUX_SYMBOL_STR(device_create) }, - { 0xc2cdbf1, __VMLINUX_SYMBOL_STR(synchronize_sched) }, - { 0x2072ee9b, __VMLINUX_SYMBOL_STR(request_threaded_irq) }, - { 0x76ecc95b, __VMLINUX_SYMBOL_STR(pci_find_capability) }, - { 0x7cb63639, __VMLINUX_SYMBOL_STR(cdev_add) }, - { 0xb3822de, __VMLINUX_SYMBOL_STR(arch_dma_alloc_attrs) }, - { 0x9c491f60, __VMLINUX_SYMBOL_STR(sg_alloc_table) }, - { 0x78764f4e, __VMLINUX_SYMBOL_STR(pv_irq_ops) }, - { 0xf8c41092, __VMLINUX_SYMBOL_STR(__free_pages) }, - { 0xb601be4c, __VMLINUX_SYMBOL_STR(__x86_indirect_thunk_rdx) }, - { 0xb2fd5ceb, __VMLINUX_SYMBOL_STR(__put_user_4) }, - { 0xff8913b7, __VMLINUX_SYMBOL_STR(pci_bus_read_config_word) }, - { 0x5944d015, __VMLINUX_SYMBOL_STR(__cachemode2pte_tbl) }, - { 0xb0efe3d3, __VMLINUX_SYMBOL_STR(pci_cleanup_aer_uncorrect_error_status) }, - { 0xdb7305a1, __VMLINUX_SYMBOL_STR(__stack_chk_fail) }, - { 0xd62c833f, __VMLINUX_SYMBOL_STR(schedule_timeout) }, - { 0x1000e51, __VMLINUX_SYMBOL_STR(schedule) }, - { 0x2ea2c95c, __VMLINUX_SYMBOL_STR(__x86_indirect_thunk_rax) }, - { 0xbdfb6dbb, __VMLINUX_SYMBOL_STR(__fentry__) }, - { 0xea40e2cf, __VMLINUX_SYMBOL_STR(pci_enable_msi_range) }, - { 0xab5589d9, __VMLINUX_SYMBOL_STR(pci_unregister_driver) }, - { 0x386d8fc2, __VMLINUX_SYMBOL_STR(kmem_cache_alloc_trace) }, - { 0xd52bf1ce, __VMLINUX_SYMBOL_STR(_raw_spin_lock) }, - { 0x9327f5ce, __VMLINUX_SYMBOL_STR(_raw_spin_lock_irqsave) }, - { 0xcf21d241, __VMLINUX_SYMBOL_STR(__wake_up) }, - { 0x34f22f94, __VMLINUX_SYMBOL_STR(prepare_to_wait_event) }, - { 0x37a0cba, __VMLINUX_SYMBOL_STR(kfree) }, - { 0x69ba99d1, __VMLINUX_SYMBOL_STR(remap_pfn_range) }, - { 0x67ab2926, __VMLINUX_SYMBOL_STR(pci_request_regions) }, - { 0x1908ca5, __VMLINUX_SYMBOL_STR(pci_disable_msi) }, - { 0xcd40f77f, __VMLINUX_SYMBOL_STR(dma_supported) }, - { 0x6128b5fc, __VMLINUX_SYMBOL_STR(__printk_ratelimit) }, - { 0x8c76c736, __VMLINUX_SYMBOL_STR(__pci_register_driver) }, - { 0x198434aa, __VMLINUX_SYMBOL_STR(put_page) }, - { 0xc7ba2c33, __VMLINUX_SYMBOL_STR(class_destroy) }, - { 0xfa66f77c, __VMLINUX_SYMBOL_STR(finish_wait) }, - { 0xb1645a2e, __VMLINUX_SYMBOL_STR(sg_free_table) }, - { 0x2e0d2f7f, __VMLINUX_SYMBOL_STR(queue_work_on) }, - { 0xad4a697b, __VMLINUX_SYMBOL_STR(pci_iomap) }, - { 0xe50fa66e, __VMLINUX_SYMBOL_STR(pci_enable_device_mem) }, - { 0x7f02188f, __VMLINUX_SYMBOL_STR(__msecs_to_jiffies) }, - { 0x436c2179, __VMLINUX_SYMBOL_STR(iowrite32) }, - { 0x9dde0499, __VMLINUX_SYMBOL_STR(pci_enable_device) }, - { 0x4f6b400b, __VMLINUX_SYMBOL_STR(_copy_from_user) }, - { 0xdeb1aafa, __VMLINUX_SYMBOL_STR(param_ops_uint) }, - { 0x490b4d86, __VMLINUX_SYMBOL_STR(__class_create) }, - { 0xb24d80c5, __VMLINUX_SYMBOL_STR(dma_ops) }, - { 0x29537c9e, __VMLINUX_SYMBOL_STR(alloc_chrdev_region) }, - { 0xe484e35f, __VMLINUX_SYMBOL_STR(ioread32) }, - { 0xa4921e57, __VMLINUX_SYMBOL_STR(get_user_pages_fast) }, - { 0x833c4e37, __VMLINUX_SYMBOL_STR(pcie_capability_read_word) }, - { 0xf20dabd8, __VMLINUX_SYMBOL_STR(free_irq) }, - { 0xffd9eac0, __VMLINUX_SYMBOL_STR(pci_save_state) }, -}; - -static const char __module_depends[] -__used -__attribute__((section(".modinfo"))) = -"depends="; - -MODULE_ALIAS("pci:v000010EEd0000903Fsv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00009038sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00009028sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00009018sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00009034sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00009024sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00009014sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00009032sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00009022sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00009012sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00009031sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00009021sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00009011sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00008011sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00008012sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00008014sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00008018sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00008021sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00008022sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00008024sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00008028sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00008031sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00008032sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00008034sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00008038sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00007011sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00007012sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00007014sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00007018sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00007021sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00007022sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00007024sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00007028sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00007031sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00007032sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00007034sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00007038sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00006828sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00006830sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00006928sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00006930sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00006A28sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00006A30sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00006D30sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00004808sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00004828sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00004908sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00004A28sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00004B28sv*sd*bc*sc*i*"); -MODULE_ALIAS("pci:v000010EEd00002808sv*sd*bc*sc*i*"); - -MODULE_INFO(srcversion, "7F40379C2ABE3F8094CCBAC");