diff --git a/xdma/linux-kernel/COPYING b/xdma/linux-kernel/COPYING deleted file mode 100644 index 3912109..0000000 --- a/xdma/linux-kernel/COPYING +++ /dev/null @@ -1,340 +0,0 @@ - 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/xdma/linux-kernel/LICENSE b/xdma/linux-kernel/LICENSE deleted file mode 100644 index 703e647..0000000 --- a/xdma/linux-kernel/LICENSE +++ /dev/null @@ -1,30 +0,0 @@ -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/xdma/linux-kernel/RELEASE b/xdma/linux-kernel/RELEASE deleted file mode 100644 index 5ef3bbd..0000000 --- a/xdma/linux-kernel/RELEASE +++ /dev/null @@ -1,43 +0,0 @@ -v2024.1.0 -======== -- added support for AlmaOS 9.4 and Ubuntu 24.04 - -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/xdma/linux-kernel/include/libxdma_api.h b/xdma/linux-kernel/include/libxdma_api.h deleted file mode 100644 index 640a158..0000000 --- a/xdma/linux-kernel/include/libxdma_api.h +++ /dev/null @@ -1,150 +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 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__ -#define __XDMA_BASE_API_H__ - -#include -#include -#include - -/* - * functions exported by the xdma driver - */ - -typedef struct { - u64 write_submitted; - u64 write_completed; - u64 read_requested; - u64 read_completed; - u64 restart; - u64 open; - u64 close; - u64 msix_trigger; -} xdma_statistics; - -/* - * This struct should be constantly updated by XMDA using u64_stats_* APIs - * The front end will read the structure without locking (That's why updating atomically is a must) - * every time it prints the statistics. - */ -//static XDMA_Statistics stats; - -/* - * xdma_device_open - read the pci bars and configure the fpga - * should be called from probe() - * NOTE: - * user interrupt will not enabled until xdma_user_isr_enable() - * is called - * @pdev: ptr to pci_dev - * @mod_name: the module name to be used for request_irq - * @user_max: max # of user/event (interrupts) to be configured - * @channel_max: max # of c2h and h2c channels to be configured - * NOTE: if the user/channel provisioned is less than the max specified, - * libxdma will update the user_max/channel_max - * returns - * a opaque handle (for libxdma to identify the device) - * NULL, in case of error - */ -void *xdma_device_open(const char *mod_name, struct pci_dev *pdev, - int *user_max, int *h2c_channel_max, int *c2h_channel_max); - -/* - * xdma_device_close - prepare fpga for removal: disable all interrupts (users - * and xdma) and release all resources - * should called from remove() - * @pdev: ptr to struct pci_dev - * @tuples: from xdma_device_open() - */ -void xdma_device_close(struct pci_dev *pdev, void *dev_handle); - -/* - * xdma_device_restart - restart the fpga - * @pdev: ptr to struct pci_dev - * TODO: - * may need more refining on the parameter list - * return < 0 in case of error - * TODO: exact error code will be defined later - */ -int xdma_device_restart(struct pci_dev *pdev, void *dev_handle); - -/* - * xdma_user_isr_register - register a user ISR handler - * It is expected that the xdma will register the ISR, and for the user - * interrupt, it will call the corresponding handle if it is registered and - * enabled. - * - * @pdev: ptr to the the pci_dev struct - * @mask: bitmask of user interrupts (0 ~ 15)to be registered - * bit 0: user interrupt 0 - * ... - * bit 15: user interrupt 15 - * any bit above bit 15 will be ignored. - * @handler: the correspoinding handler - * a NULL handler will be treated as de-registeration - * @name: to be passed to the handler, ignored if handler is NULL` - * @dev: to be passed to the handler, ignored if handler is NULL` - * return < 0 in case of error - * TODO: exact error code will be defined later - */ -int xdma_user_isr_register(void *dev_hndl, unsigned int mask, - irq_handler_t handler, void *dev); - -/* - * xdma_user_isr_enable/disable - enable or disable user interrupt - * @pdev: ptr to the the pci_dev struct - * @mask: bitmask of user interrupts (0 ~ 15)to be registered - * return < 0 in case of error - * TODO: exact error code will be defined later - */ -int xdma_user_isr_enable(void *dev_hndl, unsigned int mask); -int xdma_user_isr_disable(void *dev_hndl, unsigned int mask); - -/* - * xdma_xfer_submit - submit data for dma operation (for both read and write) - * This is a blocking call - * @channel: channle number (< channel_max) - * == channel_max means libxdma can pick any channel available:q - - * @dir: DMA_FROM/TO_DEVICE - * @offset: offset into the DDR/BRAM memory to read from or write to - * @sg_tbl: the scatter-gather list of data buffers - * @timeout: timeout in mili-seconds, *currently ignored - * return # of bytes transfered or - * < 0 in case of error - * TODO: exact error code will be defined later - */ -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/xdma/linux-kernel/readme.txt b/xdma/linux-kernel/readme.txt deleted file mode 100644 index f24aaf1..0000000 --- a/xdma/linux-kernel/readme.txt +++ /dev/null @@ -1,178 +0,0 @@ -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, 4.18.0, 5.14.0, 5.15, 6.8 -RHEL/CentOS: 7.6, 7.7, 7.8, 7.9, - 8.1, 8.2 -ALMA OS: 8.10, 9.4 -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 LTS, 22.04 LTS, 24.04 LTS - -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/xdma/linux-kernel/tests/data/datafile0_4K.bin b/xdma/linux-kernel/tests/data/datafile0_4K.bin deleted file mode 100644 index 753f535..0000000 Binary files a/xdma/linux-kernel/tests/data/datafile0_4K.bin and /dev/null differ diff --git a/xdma/linux-kernel/tests/data/datafile1_4K.bin b/xdma/linux-kernel/tests/data/datafile1_4K.bin deleted file mode 100644 index 2080c25..0000000 Binary files a/xdma/linux-kernel/tests/data/datafile1_4K.bin and /dev/null differ diff --git a/xdma/linux-kernel/tests/data/datafile2_4K.bin b/xdma/linux-kernel/tests/data/datafile2_4K.bin deleted file mode 100644 index 9e91efc..0000000 Binary files a/xdma/linux-kernel/tests/data/datafile2_4K.bin and /dev/null differ diff --git a/xdma/linux-kernel/tests/data/datafile3_4K.bin b/xdma/linux-kernel/tests/data/datafile3_4K.bin deleted file mode 100644 index df437f4..0000000 Binary files a/xdma/linux-kernel/tests/data/datafile3_4K.bin and /dev/null differ diff --git a/xdma/linux-kernel/tests/data/datafile_256K.bin b/xdma/linux-kernel/tests/data/datafile_256K.bin deleted file mode 100644 index dd68b67..0000000 Binary files a/xdma/linux-kernel/tests/data/datafile_256K.bin and /dev/null differ diff --git a/xdma/linux-kernel/tests/data/datafile_32M.bin b/xdma/linux-kernel/tests/data/datafile_32M.bin deleted file mode 100644 index 31ba1fe..0000000 Binary files a/xdma/linux-kernel/tests/data/datafile_32M.bin and /dev/null differ diff --git a/xdma/linux-kernel/tests/data/datafile_8K.bin b/xdma/linux-kernel/tests/data/datafile_8K.bin deleted file mode 100644 index 2790a82..0000000 Binary files a/xdma/linux-kernel/tests/data/datafile_8K.bin and /dev/null differ diff --git a/xdma/linux-kernel/tests/data/output_datafile0_4K.bin b/xdma/linux-kernel/tests/data/output_datafile0_4K.bin deleted file mode 100644 index e69de29..0000000 diff --git a/xdma/linux-kernel/tests/data/output_datafile1_4K.bin b/xdma/linux-kernel/tests/data/output_datafile1_4K.bin deleted file mode 100644 index e69de29..0000000 diff --git a/xdma/linux-kernel/tests/data/output_datafile2_4K.bin b/xdma/linux-kernel/tests/data/output_datafile2_4K.bin deleted file mode 100644 index e69de29..0000000 diff --git a/xdma/linux-kernel/tests/data/output_datafile3_4K.bin b/xdma/linux-kernel/tests/data/output_datafile3_4K.bin deleted file mode 100644 index e69de29..0000000 diff --git a/xdma/linux-kernel/tests/dma_memory_mapped_test.sh b/xdma/linux-kernel/tests/dma_memory_mapped_test.sh deleted file mode 100755 index a833eca..0000000 --- a/xdma/linux-kernel/tests/dma_memory_mapped_test.sh +++ /dev/null @@ -1,115 +0,0 @@ -#!/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/xdma/linux-kernel/tests/dma_streaming_test.sh b/xdma/linux-kernel/tests/dma_streaming_test.sh deleted file mode 100755 index 9f62c48..0000000 --- a/xdma/linux-kernel/tests/dma_streaming_test.sh +++ /dev/null @@ -1,65 +0,0 @@ -#!/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/xdma/linux-kernel/tests/load_driver.sh b/xdma/linux-kernel/tests/load_driver.sh deleted file mode 100755 index a669481..0000000 --- a/xdma/linux-kernel/tests/load_driver.sh +++ /dev/null @@ -1,100 +0,0 @@ -#!/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/xdma/linux-kernel/tests/perform_hwcount.sh b/xdma/linux-kernel/tests/perform_hwcount.sh deleted file mode 100755 index 457bcfd..0000000 --- a/xdma/linux-kernel/tests/perform_hwcount.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/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/xdma/linux-kernel/tests/scripts_mm/fio_parse_result.sh b/xdma/linux-kernel/tests/scripts_mm/fio_parse_result.sh deleted file mode 100755 index d1589b2..0000000 --- a/xdma/linux-kernel/tests/scripts_mm/fio_parse_result.sh +++ /dev/null @@ -1,180 +0,0 @@ -#!/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/xdma/linux-kernel/tests/scripts_mm/fio_test.sh b/xdma/linux-kernel/tests/scripts_mm/fio_test.sh deleted file mode 100755 index 79b3e4c..0000000 --- a/xdma/linux-kernel/tests/scripts_mm/fio_test.sh +++ /dev/null @@ -1,70 +0,0 @@ -#!/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/xdma/linux-kernel/tests/scripts_mm/io.sh b/xdma/linux-kernel/tests/scripts_mm/io.sh deleted file mode 100755 index 2436da5..0000000 --- a/xdma/linux-kernel/tests/scripts_mm/io.sh +++ /dev/null @@ -1,130 +0,0 @@ -#!/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/xdma/linux-kernel/tests/scripts_mm/io_sweep.sh b/xdma/linux-kernel/tests/scripts_mm/io_sweep.sh deleted file mode 100755 index fffd8ec..0000000 --- a/xdma/linux-kernel/tests/scripts_mm/io_sweep.sh +++ /dev/null @@ -1,87 +0,0 @@ -#!/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/xdma/linux-kernel/tests/scripts_mm/libtest.sh b/xdma/linux-kernel/tests/scripts_mm/libtest.sh deleted file mode 100644 index 6b04fb7..0000000 --- a/xdma/linux-kernel/tests/scripts_mm/libtest.sh +++ /dev/null @@ -1,187 +0,0 @@ -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/xdma/linux-kernel/tests/scripts_mm/unaligned.sh b/xdma/linux-kernel/tests/scripts_mm/unaligned.sh deleted file mode 100755 index f9160fb..0000000 --- a/xdma/linux-kernel/tests/scripts_mm/unaligned.sh +++ /dev/null @@ -1,93 +0,0 @@ -#!/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/xdma/linux-kernel/tests/scripts_mm/xdma_mm.sh b/xdma/linux-kernel/tests/scripts_mm/xdma_mm.sh deleted file mode 100755 index a480dd7..0000000 --- a/xdma/linux-kernel/tests/scripts_mm/xdma_mm.sh +++ /dev/null @@ -1,164 +0,0 @@ -#!/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/xdma/linux-kernel/tools/Makefile b/xdma/linux-kernel/tools/Makefile deleted file mode 100644 index 80f6366..0000000 --- a/xdma/linux-kernel/tools/Makefile +++ /dev/null @@ -1,24 +0,0 @@ -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/xdma/linux-kernel/tools/dma_from_device b/xdma/linux-kernel/tools/dma_from_device deleted file mode 100755 index faeb86d..0000000 Binary files a/xdma/linux-kernel/tools/dma_from_device and /dev/null differ diff --git a/xdma/linux-kernel/tools/dma_from_device.c b/xdma/linux-kernel/tools/dma_from_device.c deleted file mode 100644 index ba4515d..0000000 --- a/xdma/linux-kernel/tools/dma_from_device.c +++ /dev/null @@ -1,304 +0,0 @@ -/* - * 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/xdma/linux-kernel/tools/dma_from_device.o b/xdma/linux-kernel/tools/dma_from_device.o deleted file mode 100644 index 93ff0de..0000000 Binary files a/xdma/linux-kernel/tools/dma_from_device.o and /dev/null differ diff --git a/xdma/linux-kernel/tools/dma_to_device b/xdma/linux-kernel/tools/dma_to_device deleted file mode 100755 index bf09f93..0000000 Binary files a/xdma/linux-kernel/tools/dma_to_device and /dev/null differ diff --git a/xdma/linux-kernel/tools/dma_to_device.c b/xdma/linux-kernel/tools/dma_to_device.c deleted file mode 100644 index 6d8eada..0000000 --- a/xdma/linux-kernel/tools/dma_to_device.c +++ /dev/null @@ -1,318 +0,0 @@ -/* - * 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/xdma/linux-kernel/tools/dma_to_device.o b/xdma/linux-kernel/tools/dma_to_device.o deleted file mode 100644 index f6563a3..0000000 Binary files a/xdma/linux-kernel/tools/dma_to_device.o and /dev/null differ diff --git a/xdma/linux-kernel/tools/dma_utils.c b/xdma/linux-kernel/tools/dma_utils.c deleted file mode 100644 index 9812279..0000000 --- a/xdma/linux-kernel/tools/dma_utils.c +++ /dev/null @@ -1,183 +0,0 @@ -/* - * 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/xdma/linux-kernel/tools/performance b/xdma/linux-kernel/tools/performance deleted file mode 100755 index e89b6ec..0000000 Binary files a/xdma/linux-kernel/tools/performance and /dev/null differ diff --git a/xdma/linux-kernel/tools/performance.c b/xdma/linux-kernel/tools/performance.c deleted file mode 100644 index f5536e5..0000000 --- a/xdma/linux-kernel/tools/performance.c +++ /dev/null @@ -1,174 +0,0 @@ -/* - * 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/xdma/linux-kernel/tools/performance.o b/xdma/linux-kernel/tools/performance.o deleted file mode 100644 index 795385b..0000000 Binary files a/xdma/linux-kernel/tools/performance.o and /dev/null differ diff --git a/xdma/linux-kernel/tools/reg_rw b/xdma/linux-kernel/tools/reg_rw deleted file mode 100755 index e854cb4..0000000 Binary files a/xdma/linux-kernel/tools/reg_rw and /dev/null differ diff --git a/xdma/linux-kernel/tools/reg_rw.c b/xdma/linux-kernel/tools/reg_rw.c deleted file mode 100644 index 9965a16..0000000 --- a/xdma/linux-kernel/tools/reg_rw.c +++ /dev/null @@ -1,179 +0,0 @@ -/* - * 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/xdma/linux-kernel/tools/reg_rw.o b/xdma/linux-kernel/tools/reg_rw.o deleted file mode 100644 index 1614051..0000000 Binary files a/xdma/linux-kernel/tools/reg_rw.o and /dev/null differ diff --git a/xdma/linux-kernel/tools/test_chrdev b/xdma/linux-kernel/tools/test_chrdev deleted file mode 100755 index 2db24ac..0000000 Binary files a/xdma/linux-kernel/tools/test_chrdev and /dev/null differ diff --git a/xdma/linux-kernel/tools/test_chrdev.c b/xdma/linux-kernel/tools/test_chrdev.c deleted file mode 100644 index 3d48634..0000000 --- a/xdma/linux-kernel/tools/test_chrdev.c +++ /dev/null @@ -1,46 +0,0 @@ -/* - * 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/xdma/linux-kernel/tools/test_chrdev.o b/xdma/linux-kernel/tools/test_chrdev.o deleted file mode 100644 index 6517a5f..0000000 Binary files a/xdma/linux-kernel/tools/test_chrdev.o and /dev/null differ diff --git a/xdma/linux-kernel/xdma/.Module.symvers.cmd b/xdma/linux-kernel/xdma/.Module.symvers.cmd deleted file mode 100644 index f978969..0000000 --- a/xdma/linux-kernel/xdma/.Module.symvers.cmd +++ /dev/null @@ -1 +0,0 @@ -savedcmd_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/Module.symvers := scripts/mod/modpost -M -m -a -o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/Module.symvers -T /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/modules.order -i Module.symvers -e diff --git a/xdma/linux-kernel/xdma/.cdev_bypass.o.cmd b/xdma/linux-kernel/xdma/.cdev_bypass.o.cmd deleted file mode 100644 index 5692ec3..0000000 --- a/xdma/linux-kernel/xdma/.cdev_bypass.o.cmd +++ /dev/null @@ -1,1526 +0,0 @@ -savedcmd_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_bypass.o := gcc-12 -Wp,-MMD,/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/.cdev_bypass.o.d -nostdinc -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=./= -std=gnu11 -fshort-wchar -funsigned-char -fno-common -fno-PIE -fno-strict-aliasing -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 -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mindirect-branch-cs-prefix -mfunction-return=thunk-extern -fno-jump-tables -mharden-sls=all -fpatchable-function-entry=16,16 -fno-delete-null-pointer-checks -O2 -fno-allow-store-data-races -fstack-protector-strong -fno-omit-frame-pointer -fno-optimize-sibling-calls -ftrivial-auto-var-init=zero -fno-stack-clash-protection -fzero-call-used-regs=used-gpr -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -falign-functions=16 -fno-strict-overflow -fno-stack-check -fconserve-stack -Wall -Wundef -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Werror=strict-prototypes -Wno-format-security -Wno-trigraphs -Wno-frame-address -Wno-address-of-packed-member -Wmissing-declarations -Wmissing-prototypes -Wframe-larger-than=1024 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-overflow -Wno-array-bounds -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wenum-conversion -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-restrict -Wno-packed-not-aligned -Wno-format-overflow -Wno-format-truncation -Wno-stringop-truncation -Wno-override-init -Wno-missing-field-initializers -Wno-type-limits -Wno-shift-negative-value -Wno-maybe-uninitialized -Wno-sign-compare -g -gdwarf-5 -I/home/colin/develop/xc7k480t/xdma/linux-kernel/include -fsanitize=bounds-strict -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"cdev_bypass"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_bypass.o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_bypass.c ; ./tools/objtool/objtool --hacks=jump_label --hacks=noinstr --hacks=skylake --retpoline --rethunk --sls --stackval --static-call --uaccess --prefix=16 --module /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_bypass.o - -source_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_bypass.o := /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_bypass.c - -deps_/home/colin/develop/xc7k480t/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/DEBUG_INFO_BTF) \ - $(wildcard include/config/PAHOLE_HAS_BTF_TAG) \ - $(wildcard include/config/FUNCTION_ALIGNMENT) \ - $(wildcard include/config/CC_IS_GCC) \ - $(wildcard include/config/X86_64) \ - $(wildcard include/config/ARM64) \ - $(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/GCC_ASM_GOTO_OUTPUT_WORKAROUND) \ - $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ - $(wildcard include/config/SHADOW_CALL_STACK) \ - $(wildcard include/config/KCOV) \ - /home/colin/develop/xc7k480t/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 \ - 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/NEED_SG_DMA_FLAGS) \ - $(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/array_size.h \ - include/linux/compiler.h \ - $(wildcard include/config/TRACE_BRANCH_PROFILING) \ - $(wildcard include/config/PROFILE_ALL_BRANCHES) \ - $(wildcard include/config/OBJTOOL) \ - 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_WEAK_MEMORY) \ - $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ - include/linux/err.h \ - arch/x86/include/generated/uapi/asm/errno.h \ - include/uapi/asm-generic/errno.h \ - include/uapi/asm-generic/errno-base.h \ - include/linux/errno.h \ - include/uapi/linux/errno.h \ - include/linux/overflow.h \ - include/linux/limits.h \ - include/uapi/linux/limits.h \ - include/vdso/limits.h \ - include/linux/const.h \ - include/vdso/const.h \ - include/uapi/linux/const.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/KMSAN) \ - $(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 \ - $(wildcard include/config/HAVE_JUMP_LABEL_HACK) \ - 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 \ - $(wildcard include/config/CC_HAS_KASAN_MEMINTRINSIC_PREFIX) \ - $(wildcard include/config/GENERIC_ENTRY) \ - 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/NOINSTR_VALIDATION) \ - include/linux/objtool.h \ - $(wildcard include/config/FRAME_POINTER) \ - $(wildcard include/config/CPU_UNRET_ENTRY) \ - $(wildcard include/config/CPU_SRSO) \ - include/linux/objtool_types.h \ - include/asm-generic/bug.h \ - $(wildcard include/config/BUG) \ - $(wildcard include/config/GENERIC_BUG_RELATIVE_POINTERS) \ - $(wildcard include/config/SMP) \ - 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/build_bug.h \ - include/linux/kern_levels.h \ - include/linux/linkage.h \ - $(wildcard include/config/ARCH_USE_SYM_ANNOTATIONS) \ - include/linux/export.h \ - $(wildcard include/config/MODVERSIONS) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/CALL_PADDING) \ - $(wildcard include/config/RETHUNK) \ - $(wildcard include/config/SLS) \ - $(wildcard include/config/FUNCTION_PADDING_BYTES) \ - $(wildcard include/config/UML) \ - arch/x86/include/asm/ibt.h \ - $(wildcard include/config/X86_KERNEL_IBT) \ - include/linux/ratelimit_types.h \ - include/linux/bits.h \ - include/vdso/bits.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_raw.h \ - $(wildcard include/config/DEBUG_SPINLOCK) \ - $(wildcard include/config/DEBUG_LOCK_ALLOC) \ - 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/LOCKDEP) \ - $(wildcard include/config/LOCK_STAT) \ - 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/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_USER_SHADOW_STACK) \ - $(wildcard include/config/X86) \ - $(wildcard include/config/PARISC) \ - $(wildcard include/config/SPARC64) \ - $(wildcard include/config/ARM64_MTE) \ - $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ - $(wildcard include/config/STACK_GROWSUP) \ - $(wildcard include/config/NUMA_BALANCING) \ - $(wildcard include/config/PER_VMA_LOCK) \ - $(wildcard include/config/SHMEM) \ - $(wildcard include/config/ZONE_DEVICE) \ - $(wildcard include/config/FS_DAX) \ - $(wildcard include/config/KASAN_HW_TAGS) \ - $(wildcard include/config/MIGRATION) \ - $(wildcard include/config/CMA) \ - $(wildcard include/config/HIGHMEM) \ - $(wildcard include/config/SCHED_MM_CID) \ - $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ - $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ - $(wildcard include/config/TRANSPARENT_HUGEPAGE) \ - $(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/ARCH_WANT_OPTIMIZE_DAX_VMEMMAP) \ - $(wildcard include/config/MEMORY_FAILURE) \ - $(wildcard include/config/KSM) \ - $(wildcard include/config/HUGETLBFS) \ - $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ - $(wildcard include/config/ANON_VMA_NAME) \ - $(wildcard include/config/UNACCEPTED_MEMORY) \ - include/linux/mmdebug.h \ - $(wildcard include/config/DEBUG_VM) \ - $(wildcard include/config/DEBUG_VM_IRQSOFF) \ - $(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/COMPACTION) \ - $(wildcard include/config/CONTIG_ALLOC) \ - include/linux/gfp_types.h \ - include/linux/mmzone.h \ - $(wildcard include/config/ARCH_FORCE_MAX_ORDER) \ - $(wildcard include/config/MEMORY_ISOLATION) \ - $(wildcard include/config/ZSMALLOC) \ - $(wildcard include/config/SWAP) \ - $(wildcard include/config/LRU_GEN) \ - $(wildcard include/config/LRU_GEN_STATS) \ - $(wildcard include/config/LRU_GEN_WALKS_MMU) \ - $(wildcard include/config/MEMCG) \ - $(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) \ - $(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) \ - $(wildcard include/config/PREEMPT_DYNAMIC) \ - $(wildcard include/config/PREEMPT_NONE) \ - $(wildcard include/config/PREEMPT_VOLUNTARY) \ - $(wildcard include/config/PREEMPT) \ - include/linux/cleanup.h \ - arch/x86/include/asm/preempt.h \ - arch/x86/include/asm/rmwcc.h \ - include/linux/args.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) \ - arch/x86/include/asm/current.h \ - $(wildcard include/config/CALL_DEPTH_TRACKING) \ - include/linux/cache.h \ - $(wildcard include/config/ARCH_HAS_CACHE_LINE_SIZE) \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.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/static_call_types.h \ - $(wildcard include/config/HAVE_STATIC_CALL) \ - $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ - include/linux/irqflags.h \ - $(wildcard include/config/PROVE_LOCKING) \ - $(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) \ - include/linux/irqflags_types.h \ - arch/x86/include/asm/irqflags.h \ - $(wildcard include/config/PARAVIRT_XXL) \ - $(wildcard include/config/DEBUG_ENTRY) \ - arch/x86/include/asm/processor-flags.h \ - $(wildcard include/config/VM86) \ - $(wildcard include/config/PAGE_TABLE_ISOLATION) \ - 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 \ - $(wildcard include/config/X86_MEM_ENCRYPT) \ - include/linux/cc_platform.h \ - $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ - arch/x86/include/asm/nospec-branch.h \ - $(wildcard include/config/CALL_THUNKS_DEBUG) \ - $(wildcard include/config/CPU_IBPB_ENTRY) \ - include/linux/static_key.h \ - arch/x86/include/asm/alternative.h \ - $(wildcard include/config/CALL_THUNKS) \ - 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_CMOV) \ - $(wildcard include/config/X86_P6_NOP) \ - $(wildcard include/config/MATOM) \ - arch/x86/include/asm/disabled-features.h \ - $(wildcard include/config/X86_UMIP) \ - $(wildcard include/config/X86_INTEL_MEMORY_PROTECTION_KEYS) \ - $(wildcard include/config/X86_5LEVEL) \ - $(wildcard include/config/ADDRESS_MASKING) \ - $(wildcard include/config/INTEL_IOMMU_SVM) \ - $(wildcard include/config/X86_SGX) \ - $(wildcard include/config/XEN_PV) \ - $(wildcard include/config/INTEL_TDX_GUEST) \ - 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/asm-offsets.h \ - include/generated/asm-offsets.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/paravirt_types.h \ - $(wildcard include/config/ZERO_CALL_USED_REGS) \ - $(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/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/NUMA_KEEP_MEMINFO) \ - include/linux/cpumask.h \ - $(wildcard include/config/FORCE_NR_CPUS) \ - $(wildcard include/config/HOTPLUG_CPU) \ - $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ - $(wildcard include/config/CPUMASK_OFFSTACK) \ - include/linux/kernel.h \ - $(wildcard include/config/PREEMPT_VOLUNTARY_BUILD) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_CALL) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_KEY) \ - $(wildcard include/config/PREEMPT_) \ - $(wildcard include/config/DEBUG_ATOMIC_SLEEP) \ - $(wildcard include/config/TRACING) \ - $(wildcard include/config/FTRACE_MCOUNT_RECORD) \ - include/linux/align.h \ - include/linux/container_of.h \ - include/linux/bitops.h \ - include/asm-generic/bitops/generic-non-atomic.h \ - arch/x86/include/asm/barrier.h \ - include/asm-generic/barrier.h \ - arch/x86/include/asm/bitops.h \ - include/asm-generic/bitops/sched.h \ - arch/x86/include/asm/arch_hweight.h \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/instrumented-atomic.h \ - include/linux/instrumented.h \ - include/linux/kmsan-checks.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/hex.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/sprintf.h \ - include/linux/instruction_pointer.h \ - include/linux/bitmap.h \ - include/linux/find.h \ - include/linux/bitmap-str.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/numa.h \ - $(wildcard include/config/NODES_SHIFT) \ - $(wildcard include/config/HAVE_ARCH_NODE_DEV_GROUP) \ - arch/x86/include/asm/frame.h \ - include/linux/thread_info.h \ - $(wildcard include/config/THREAD_INFO_IN_TASK) \ - $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ - $(wildcard include/config/HARDENED_USERCOPY) \ - $(wildcard include/config/SH) \ - include/linux/restart_block.h \ - arch/x86/include/asm/thread_info.h \ - $(wildcard include/config/COMPAT) \ - $(wildcard include/config/IA32_EMULATION) \ - arch/x86/include/asm/page.h \ - 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 \ - 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/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/cpuid.h \ - arch/x86/include/asm/msr.h \ - $(wildcard include/config/TRACEPOINTS) \ - arch/x86/include/asm/cpumask.h \ - arch/x86/include/uapi/asm/msr.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 \ - arch/x86/include/asm/shared/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 \ - arch/x86/include/asm/shstk.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - include/linux/math64.h \ - $(wildcard include/config/ARCH_SUPPORTS_INT128) \ - include/vdso/math64.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/list.h \ - $(wildcard include/config/LIST_HARDENED) \ - $(wildcard include/config/DEBUG_LIST) \ - include/linux/poison.h \ - $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ - 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/DEBUG_NMI_SELFTEST) \ - arch/x86/include/generated/asm/mmiowb.h \ - include/asm-generic/mmiowb.h \ - $(wildcard include/config/MMIOWB) \ - include/linux/spinlock_types.h \ - include/linux/rwlock_types.h \ - 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 \ - 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/list_nulls.h \ - include/linux/wait.h \ - include/linux/seqlock.h \ - include/linux/mutex.h \ - $(wildcard include/config/DEBUG_MUTEXES) \ - include/linux/osq_lock.h \ - include/linux/debug_locks.h \ - include/linux/mutex_types.h \ - $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ - include/linux/seqlock_types.h \ - include/linux/nodemask.h \ - include/linux/nodemask_types.h \ - include/linux/random.h \ - $(wildcard include/config/VMGENID) \ - include/uapi/linux/random.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/prandom.h \ - include/linux/once.h \ - include/linux/pageblock-flags.h \ - $(wildcard include/config/HUGETLB_PAGE) \ - $(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_MM_DATA) \ - 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/kref.h \ - include/linux/refcount.h \ - include/linux/refcount_types.h \ - 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/RCU_STRICT_GRACE_PERIOD) \ - $(wildcard include/config/RCU_LAZY) \ - $(wildcard include/config/TASKS_RCU_GENERIC) \ - $(wildcard include/config/RCU_STALL_COMMON) \ - $(wildcard include/config/NO_HZ_FULL) \ - $(wildcard include/config/KVM_XFER_TO_GUEST_WORK) \ - $(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/context_tracking_irq.h \ - $(wildcard include/config/CONTEXT_TRACKING_IDLE) \ - include/linux/rcutree.h \ - include/linux/maple_tree.h \ - $(wildcard include/config/MAPLE_RCU_DISABLED) \ - $(wildcard include/config/DEBUG_MAPLE_TREE) \ - 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/NEED_SRCU_NMI_SAFE) \ - 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) \ - include/linux/ktime.h \ - include/linux/jiffies.h \ - include/linux/time.h \ - $(wildcard include/config/POSIX_TIMERS) \ - 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/tsc.h \ - include/vdso/time32.h \ - include/vdso/time.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/timer_types.h \ - include/linux/workqueue_types.h \ - 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/percpu_counter.h \ - include/linux/percpu.h \ - $(wildcard include/config/MODULES) \ - $(wildcard include/config/RANDOM_KMALLOC_CACHES) \ - $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ - 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/ARCH_USES_PG_ARCH_X) \ - $(wildcard include/config/HUGETLB_PAGE_OPTIMIZE_VMEMMAP) \ - include/linux/local_lock.h \ - include/linux/local_lock_internal.h \ - include/linux/zswap.h \ - $(wildcard include/config/ZSWAP) \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ - $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ - $(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/ACPI_CPPC_LIB) \ - $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ - arch/x86/include/asm/topology.h \ - $(wildcard include/config/SCHED_MC_PRIO) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/EISA) \ - $(wildcard include/config/X86_LOCAL_APIC) \ - $(wildcard include/config/X86_MPPARSE) \ - 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 \ - $(wildcard include/config/PCI) \ - 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/apicdef.h \ - include/asm-generic/topology.h \ - include/linux/cpu_smt.h \ - $(wildcard include/config/HOTPLUG_SMT) \ - include/linux/mmap_lock.h \ - include/linux/percpu-refcount.h \ - include/linux/bit_spinlock.h \ - include/linux/shrinker.h \ - $(wildcard include/config/SHRINKER_DEBUG) \ - 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/ARCH_STACKWALK) \ - $(wildcard include/config/STACKTRACE) \ - $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ - include/linux/stackdepot.h \ - $(wildcard include/config/STACKDEPOT) \ - $(wildcard include/config/STACKDEPOT_MAX_FRAMES) \ - $(wildcard include/config/STACKDEPOT_ALWAYS_INIT) \ - include/linux/page_ref.h \ - $(wildcard include/config/DEBUG_PAGE_REF) \ - 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/SCHED_CORE) \ - $(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/CGROUP_SCHED) \ - $(wildcard include/config/BLK_DEV_IO_TRACE) \ - $(wildcard include/config/COMPAT_BRK) \ - $(wildcard include/config/CGROUPS) \ - $(wildcard include/config/BLK_CGROUP) \ - $(wildcard include/config/PSI) \ - $(wildcard include/config/PAGE_OWNER) \ - $(wildcard include/config/EVENTFD) \ - $(wildcard include/config/ARCH_HAS_CPU_PASID) \ - $(wildcard include/config/CPU_SUP_INTEL) \ - $(wildcard include/config/TASK_DELAY_ACCT) \ - $(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/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/FAULT_INJECTION) \ - $(wildcard include/config/LATENCYTOP) \ - $(wildcard include/config/KUNIT) \ - $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ - $(wildcard include/config/MEMCG_KMEM) \ - $(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/RETHOOK) \ - $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ - $(wildcard include/config/RV) \ - $(wildcard include/config/USER_EVENTS) \ - include/uapi/linux/sched.h \ - include/linux/pid_types.h \ - include/linux/sem_types.h \ - include/linux/shm.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/kmsan_types.h \ - include/linux/plist_types.h \ - include/linux/hrtimer_types.h \ - include/linux/timerqueue_types.h \ - include/linux/seccomp_types.h \ - $(wildcard include/config/SECCOMP) \ - 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_types.h \ - include/linux/task_io_accounting.h \ - $(wildcard include/config/TASK_IO_ACCOUNTING) \ - include/linux/posix-timers_types.h \ - include/uapi/linux/rseq.h \ - include/linux/kcsan.h \ - include/linux/rv.h \ - $(wildcard include/config/RV_REACTORS) \ - include/linux/livepatch_sched.h \ - include/linux/uidgid_types.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/ARCH_HAS_NONLEAF_PMD_YOUNG) \ - $(wildcard include/config/ARCH_HAS_HW_PTE_YOUNG) \ - $(wildcard include/config/GUP_GET_PXX_LOW_HIGH) \ - $(wildcard include/config/ARCH_WANT_PMD_MKWRITE) \ - $(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) \ - $(wildcard include/config/PAGE_TABLE_CHECK) \ - arch/x86/include/asm/pkru.h \ - arch/x86/include/asm/fpu/api.h \ - $(wildcard include/config/X86_DEBUG_FPU) \ - arch/x86/include/asm/coco.h \ - include/asm-generic/pgtable_uffd.h \ - include/linux/page_table_check.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) \ - include/linux/kasan-enabled.h \ - include/linux/kasan-tags.h \ - include/linux/memremap.h \ - $(wildcard include/config/DEVICE_PRIVATE) \ - $(wildcard include/config/PCI_P2PDMA) \ - include/linux/ioport.h \ - include/linux/slab.h \ - $(wildcard include/config/SLUB_DEBUG) \ - $(wildcard include/config/SLUB_TINY) \ - $(wildcard include/config/FAILSLAB) \ - $(wildcard include/config/KFENCE) \ - include/linux/hash.h \ - $(wildcard include/config/HAVE_ARCH_HASH) \ - include/linux/huge_mm.h \ - $(wildcard include/config/READ_ONLY_THP_FOR_FS) \ - include/linux/sched/coredump.h \ - $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ - include/linux/fs.h \ - $(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/BLOCK) \ - include/linux/wait_bit.h \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/dcache.h \ - include/linux/rculist.h \ - $(wildcard include/config/PROVE_RCU_LIST) \ - 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/path.h \ - include/linux/stat.h \ - arch/x86/include/uapi/asm/stat.h \ - include/uapi/linux/stat.h \ - include/linux/uidgid.h \ - $(wildcard include/config/MULTIUSER) \ - $(wildcard include/config/USER_NS) \ - include/linux/highuid.h \ - include/linux/list_lru.h \ - include/linux/xarray.h \ - $(wildcard include/config/XARRAY_MULTI) \ - include/linux/sched/mm.h \ - $(wildcard include/config/MMU_LAZY_TLB_REFCOUNT) \ - $(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/radix-tree.h \ - include/linux/pid.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/ARCH_HAS_SUBPAGE_FAULTS) \ - 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_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/tlbflush.h \ - include/linux/mmu_notifier.h \ - include/linux/interval_tree.h \ - arch/x86/include/asm/invpcid.h \ - arch/x86/include/asm/pti.h \ - arch/x86/include/asm/uaccess_64.h \ - include/asm-generic/access_ok.h \ - $(wildcard include/config/ALTERNATE_USER_ADDRESS_SPACE) \ - include/linux/cred.h \ - 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/VFIO_PCI_ZDEV_KVM) \ - $(wildcard include/config/IOMMUFD) \ - $(wildcard include/config/WATCH_QUEUE) \ - include/linux/ratelimit.h \ - include/linux/posix-timers.h \ - include/linux/alarmtimer.h \ - $(wildcard include/config/RTC_CLASS) \ - 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/rcu_sync.h \ - include/linux/delayed_call.h \ - include/linux/uuid.h \ - include/linux/errseq.h \ - include/linux/ioprio.h \ - include/linux/sched/rt.h \ - include/linux/iocontext.h \ - $(wildcard include/config/BLK_ICQ) \ - 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/vmstat.h \ - $(wildcard include/config/VM_EVENT_COUNTERS) \ - $(wildcard include/config/DEBUG_TLBFLUSH) \ - $(wildcard include/config/PER_VMA_LOCK_STATS) \ - 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) \ - arch/x86/include/asm/shared/io.h \ - include/asm-generic/io.h \ - $(wildcard include/config/GENERIC_IOMAP) \ - $(wildcard include/config/TRACE_MMIO_ACCESS) \ - $(wildcard include/config/GENERIC_IOREMAP) \ - $(wildcard include/config/HAS_IOPORT_MAP) \ - include/asm-generic/iomap.h \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ - $(wildcard include/config/GENERIC_PCI_IOMAP) \ - 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/hardirq.h \ - include/linux/context_tracking_state.h \ - $(wildcard include/config/CONTEXT_TRACKING_USER) \ - $(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 \ - $(wildcard include/config/HAVE_FUNCTION_DESCRIPTORS) \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.h \ - /home/colin/develop/xc7k480t/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/ARCH_USES_CFI_TRAPS) \ - $(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/ia32.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/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/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 \ - include/uapi/linux/unistd.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/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 \ - 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 \ - 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 \ - 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) \ - include/linux/cdev.h \ - include/linux/device.h \ - $(wildcard include/config/HAS_IOMEM) \ - $(wildcard include/config/GENERIC_MSI_IRQ) \ - $(wildcard include/config/ENERGY_MODEL) \ - $(wildcard include/config/PINCTRL) \ - $(wildcard include/config/DMA_OPS) \ - $(wildcard include/config/DMA_DECLARE_COHERENT) \ - $(wildcard include/config/DMA_CMA) \ - $(wildcard include/config/SWIOTLB) \ - $(wildcard include/config/SWIOTLB_DYNAMIC) \ - $(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/PM_SLEEP) \ - $(wildcard include/config/OF) \ - $(wildcard include/config/DEVTMPFS) \ - 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_CLUSTER) \ - $(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/CXL_SUSPEND) \ - $(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_DEVICE) \ - $(wildcard include/config/FB_FOREIGN_ENDIAN) \ - $(wildcard include/config/FB_BOTH_ENDIAN) \ - $(wildcard include/config/FB_BIG_ENDIAN) \ - $(wildcard include/config/FB_LITTLE_ENDIAN) \ - $(wildcard include/config/VIDEO_NOMODESET) \ - 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/KRETPROBE_ON_RETHOOK) \ - $(wildcard include/config/KPROBES_SANITY_TEST) \ - $(wildcard include/config/OPTPROBES) \ - $(wildcard include/config/KPROBES_ON_FTRACE) \ - include/linux/ftrace.h \ - $(wildcard include/config/HAVE_FUNCTION_GRAPH_RETVAL) \ - $(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_ARGS) \ - $(wildcard include/config/DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ - $(wildcard include/config/STACK_TRACER) \ - $(wildcard include/config/DYNAMIC_FTRACE_WITH_CALL_OPS) \ - $(wildcard include/config/FUNCTION_GRAPH_RETVAL) \ - $(wildcard include/config/FUNCTION_PROFILER) \ - $(wildcard include/config/FTRACE_SYSCALLS) \ - include/linux/trace_recursion.h \ - $(wildcard include/config/FTRACE_RECORD_RECURSION) \ - $(wildcard include/config/ARCH_WANTS_NO_INSTR) \ - 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/MEMFD_CREATE) \ - $(wildcard include/config/PID_NS) \ - include/linux/nsproxy.h \ - include/linux/ns_common.h \ - include/uapi/linux/ptrace.h \ - include/linux/seccomp.h \ - $(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/ia32_unistd.h \ - include/asm-generic/seccomp.h \ - arch/x86/include/asm/ftrace.h \ - $(wildcard include/config/HAVE_FENTRY) \ - include/linux/objpool.h \ - include/linux/rethook.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_TABLE_LIB) \ - $(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_THERMAL_LIB) \ - $(wildcard include/config/ACPI_HMAT) \ - $(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/SUSPEND) \ - $(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_PROCESSOR_IDLE) \ - $(wildcard include/config/ACPI_PPTT) \ - $(wildcard include/config/ACPI_PCC) \ - $(wildcard include/config/ACPI_FFH) \ - include/linux/resource_ext.h \ - include/linux/mod_devicetable.h \ - include/uapi/linux/mei.h \ - include/uapi/linux/mei_uuid.h \ - include/linux/property.h \ - include/linux/node.h \ - $(wildcard include/config/HMEM_REPORTING) \ - 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/linux/fw_table.h \ - $(wildcard include/config/CXL_BUS) \ - include/acpi/acpi_bus.h \ - $(wildcard include/config/X86_ANDROID_TABLETS) \ - $(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 \ - include/acpi/acpi_io.h \ - include/linux/io.h \ - arch/x86/include/asm/acpi.h \ - $(wildcard include/config/ACPI_APEI) \ - include/acpi/proc_cap_intel.h \ - arch/x86/include/asm/numa.h \ - $(wildcard include/config/NUMA_EMU) \ - arch/x86/include/asm/xen/hypervisor.h \ - $(wildcard include/config/XEN_PV_DOM0) \ - $(wildcard include/config/PVH) \ - $(wildcard include/config/XEN_PVH) \ - $(wildcard include/config/XEN_DOM0) \ - include/xen/xen.h \ - $(wildcard include/config/XEN_BALLOON) \ - $(wildcard include/config/XEN_UNPOPULATED_ALLOC) \ - include/xen/interface/hvm/start_info.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/emulate_prefix.h \ - include/linux/regulator/consumer.h \ - $(wildcard include/config/REGULATOR) \ - include/linux/suspend.h \ - $(wildcard include/config/VT) \ - $(wildcard include/config/HIBERNATION_SNAPSHOT_DEV) \ - $(wildcard include/config/PM_SLEEP_DEBUG) \ - $(wildcard include/config/PM_AUTOSLEEP) \ - include/linux/swap.h \ - $(wildcard include/config/THP_SWAP) \ - include/linux/memcontrol.h \ - include/linux/cgroup.h \ - $(wildcard include/config/DEBUG_CGROUP_REF) \ - $(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/string_helpers.h \ - include/linux/string_choices.h \ - include/linux/user_namespace.h \ - $(wildcard include/config/INOTIFY_USER) \ - $(wildcard include/config/FANOTIFY) \ - $(wildcard include/config/BINFMT_MISC) \ - $(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-defs.h \ - $(wildcard include/config/BPF_LSM) \ - 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/cgroup_refcnt.h \ - include/linux/page_counter.h \ - include/linux/vmpressure.h \ - include/linux/eventfd.h \ - include/uapi/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/cacheflush.h \ - arch/x86/include/asm/cacheflush.h \ - include/asm-generic/cacheflush.h \ - include/linux/kmsan.h \ - include/linux/highmem-internal.h \ - include/linux/bio.h \ - include/linux/mempool.h \ - include/linux/pagemap.h \ - include/linux/hugetlb_inline.h \ - include/uapi/linux/mempolicy.h \ - include/linux/freezer.h \ - include/uapi/regulator/regulator.h \ - include/linux/rtmutex.h \ - $(wildcard include/config/DEBUG_RT_MUTEXES) \ - 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/irqdomain_defs.h \ - 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/uapi/linux/i2c.h \ - include/linux/backlight.h \ - $(wildcard include/config/BACKLIGHT_CLASS_DEVICE) \ - arch/x86/include/asm/fb.h \ - include/asm-generic/fb.h \ - 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_DOE) \ - $(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/msi_api.h \ - 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/VMD) \ - arch/x86/include/asm/memtype.h \ - include/linux/aio.h \ - include/linux/splice.h \ - include/linux/pipe_fs_i.h \ - include/generated/uapi/linux/version.h \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.h \ - $(wildcard include/config/BLOCK_ID) \ - /home/colin/develop/xc7k480t/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) \ - include/linux/static_call.h \ - include/linux/cpu.h \ - $(wildcard include/config/GENERIC_CPU_DEVICES) \ - $(wildcard include/config/PM_SLEEP_SMP) \ - $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ - $(wildcard include/config/ARCH_HAS_CPU_FINALIZE_INIT) \ - $(wildcard include/config/CPU_MITIGATIONS) \ - include/linux/cpuhotplug.h \ - $(wildcard include/config/HOTPLUG_CORE_SYNC_DEAD) \ - arch/x86/include/asm/static_call.h \ - include/trace/define_trace.h \ - arch/x86/include/asm/debugreg.h \ - arch/x86/include/uapi/asm/debugreg.h \ - arch/x86/include/asm/gsseg.h \ - include/asm-generic/mmu_context.h \ - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_bypass.o: $(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_bypass.o) - -$(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_bypass.o): - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_bypass.o: $(wildcard ./tools/objtool/objtool) diff --git a/xdma/linux-kernel/xdma/.cdev_ctrl.o.cmd b/xdma/linux-kernel/xdma/.cdev_ctrl.o.cmd deleted file mode 100644 index 110a935..0000000 --- a/xdma/linux-kernel/xdma/.cdev_ctrl.o.cmd +++ /dev/null @@ -1,1527 +0,0 @@ -savedcmd_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_ctrl.o := gcc-12 -Wp,-MMD,/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/.cdev_ctrl.o.d -nostdinc -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=./= -std=gnu11 -fshort-wchar -funsigned-char -fno-common -fno-PIE -fno-strict-aliasing -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 -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mindirect-branch-cs-prefix -mfunction-return=thunk-extern -fno-jump-tables -mharden-sls=all -fpatchable-function-entry=16,16 -fno-delete-null-pointer-checks -O2 -fno-allow-store-data-races -fstack-protector-strong -fno-omit-frame-pointer -fno-optimize-sibling-calls -ftrivial-auto-var-init=zero -fno-stack-clash-protection -fzero-call-used-regs=used-gpr -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -falign-functions=16 -fno-strict-overflow -fno-stack-check -fconserve-stack -Wall -Wundef -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Werror=strict-prototypes -Wno-format-security -Wno-trigraphs -Wno-frame-address -Wno-address-of-packed-member -Wmissing-declarations -Wmissing-prototypes -Wframe-larger-than=1024 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-overflow -Wno-array-bounds -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wenum-conversion -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-restrict -Wno-packed-not-aligned -Wno-format-overflow -Wno-format-truncation -Wno-stringop-truncation -Wno-override-init -Wno-missing-field-initializers -Wno-type-limits -Wno-shift-negative-value -Wno-maybe-uninitialized -Wno-sign-compare -g -gdwarf-5 -I/home/colin/develop/xc7k480t/xdma/linux-kernel/include -fsanitize=bounds-strict -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"cdev_ctrl"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_ctrl.o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_ctrl.c ; ./tools/objtool/objtool --hacks=jump_label --hacks=noinstr --hacks=skylake --retpoline --rethunk --sls --stackval --static-call --uaccess --prefix=16 --module /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_ctrl.o - -source_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_ctrl.o := /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_ctrl.c - -deps_/home/colin/develop/xc7k480t/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/DEBUG_INFO_BTF) \ - $(wildcard include/config/PAHOLE_HAS_BTF_TAG) \ - $(wildcard include/config/FUNCTION_ALIGNMENT) \ - $(wildcard include/config/CC_IS_GCC) \ - $(wildcard include/config/X86_64) \ - $(wildcard include/config/ARM64) \ - $(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/GCC_ASM_GOTO_OUTPUT_WORKAROUND) \ - $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ - $(wildcard include/config/SHADOW_CALL_STACK) \ - $(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/colin/develop/xc7k480t/xdma/linux-kernel/xdma/version.h \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.h \ - include/linux/kernel.h \ - $(wildcard include/config/PREEMPT_VOLUNTARY_BUILD) \ - $(wildcard include/config/PREEMPT_DYNAMIC) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_CALL) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_KEY) \ - $(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/array_size.h \ - include/linux/compiler.h \ - $(wildcard include/config/TRACE_BRANCH_PROFILING) \ - $(wildcard include/config/PROFILE_ALL_BRANCHES) \ - $(wildcard include/config/OBJTOOL) \ - 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_WEAK_MEMORY) \ - $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ - 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) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/CALL_PADDING) \ - $(wildcard include/config/RETHUNK) \ - $(wildcard include/config/SLS) \ - $(wildcard include/config/FUNCTION_PADDING_BYTES) \ - $(wildcard include/config/UML) \ - arch/x86/include/asm/ibt.h \ - $(wildcard include/config/X86_KERNEL_IBT) \ - include/linux/container_of.h \ - include/linux/build_bug.h \ - include/linux/bitops.h \ - include/linux/bits.h \ - include/vdso/bits.h \ - include/linux/typecheck.h \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.h \ - include/asm-generic/bitops/generic-non-atomic.h \ - arch/x86/include/asm/barrier.h \ - arch/x86/include/asm/alternative.h \ - $(wildcard include/config/CALL_THUNKS) \ - 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/asm-generic/barrier.h \ - arch/x86/include/asm/bitops.h \ - $(wildcard include/config/X86_CMOV) \ - arch/x86/include/asm/rmwcc.h \ - include/linux/args.h \ - 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_P6_NOP) \ - $(wildcard include/config/MATOM) \ - $(wildcard include/config/PARAVIRT_XXL) \ - arch/x86/include/asm/disabled-features.h \ - $(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/CALL_DEPTH_TRACKING) \ - $(wildcard include/config/ADDRESS_MASKING) \ - $(wildcard include/config/INTEL_IOMMU_SVM) \ - $(wildcard include/config/X86_SGX) \ - $(wildcard include/config/XEN_PV) \ - $(wildcard include/config/INTEL_TDX_GUEST) \ - $(wildcard include/config/X86_USER_SHADOW_STACK) \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/instrumented-atomic.h \ - include/linux/instrumented.h \ - include/linux/kmsan-checks.h \ - $(wildcard include/config/KMSAN) \ - 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/hex.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/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/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_raw.h \ - $(wildcard include/config/DEBUG_SPINLOCK) \ - $(wildcard include/config/DEBUG_LOCK_ALLOC) \ - 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/LOCKDEP) \ - $(wildcard include/config/LOCK_STAT) \ - 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 \ - $(wildcard include/config/HAVE_JUMP_LABEL_HACK) \ - include/linux/sprintf.h \ - include/linux/static_call_types.h \ - $(wildcard include/config/HAVE_STATIC_CALL) \ - $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ - include/linux/instruction_pointer.h \ - include/linux/uaccess.h \ - $(wildcard include/config/PREEMPT_COUNT) \ - $(wildcard include/config/ARCH_HAS_SUBPAGE_FAULTS) \ - $(wildcard include/config/HARDENED_USERCOPY) \ - include/linux/fault-inject-usercopy.h \ - $(wildcard include/config/FAULT_INJECTION_USERCOPY) \ - include/linux/sched.h \ - $(wildcard include/config/PREEMPT_RT) \ - $(wildcard include/config/VIRT_CPU_ACCOUNTING_NATIVE) \ - $(wildcard include/config/SCHED_INFO) \ - $(wildcard include/config/SCHEDSTATS) \ - $(wildcard include/config/SCHED_CORE) \ - $(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/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/MEMCG) \ - $(wildcard include/config/LRU_GEN) \ - $(wildcard include/config/COMPAT_BRK) \ - $(wildcard include/config/CGROUPS) \ - $(wildcard include/config/BLK_CGROUP) \ - $(wildcard include/config/PSI) \ - $(wildcard include/config/PAGE_OWNER) \ - $(wildcard include/config/EVENTFD) \ - $(wildcard include/config/ARCH_HAS_CPU_PASID) \ - $(wildcard include/config/CPU_SUP_INTEL) \ - $(wildcard include/config/TASK_DELAY_ACCT) \ - $(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/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/SCHED_MM_CID) \ - $(wildcard include/config/FAULT_INJECTION) \ - $(wildcard include/config/LATENCYTOP) \ - $(wildcard include/config/KUNIT) \ - $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ - $(wildcard include/config/MEMCG_KMEM) \ - $(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/RETHOOK) \ - $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ - $(wildcard include/config/RV) \ - $(wildcard include/config/USER_EVENTS) \ - $(wildcard include/config/PREEMPTION) \ - include/uapi/linux/sched.h \ - arch/x86/include/asm/current.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) \ - 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) \ - arch/x86/include/asm/processor.h \ - $(wildcard include/config/X86_VMX_FEATURE_NAMES) \ - $(wildcard include/config/X86_IOPL_IOPERM) \ - $(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) \ - arch/x86/include/asm/mem_encrypt.h \ - $(wildcard include/config/X86_MEM_ENCRYPT) \ - include/linux/cc_platform.h \ - $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ - 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 \ - 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/ZERO_CALL_USED_REGS) \ - $(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/CALL_THUNKS_DEBUG) \ - $(wildcard include/config/NOINSTR_VALIDATION) \ - $(wildcard include/config/CPU_SRSO) \ - $(wildcard include/config/CPU_IBPB_ENTRY) \ - include/linux/static_key.h \ - include/linux/objtool.h \ - $(wildcard include/config/FRAME_POINTER) \ - include/linux/objtool_types.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/asm-offsets.h \ - include/generated/asm-offsets.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/cpuid.h \ - arch/x86/include/asm/string.h \ - arch/x86/include/asm/string_64.h \ - $(wildcard include/config/ARCH_HAS_UACCESS_FLUSHCACHE) \ - arch/x86/include/asm/paravirt.h \ - $(wildcard include/config/PARAVIRT_SPINLOCKS) \ - $(wildcard include/config/DEBUG_ENTRY) \ - 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/FORCE_NR_CPUS) \ - $(wildcard include/config/HOTPLUG_CPU) \ - $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ - $(wildcard include/config/CPUMASK_OFFSTACK) \ - include/linux/bitmap.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/find.h \ - include/linux/string.h \ - $(wildcard include/config/BINARY_PRINTF) \ - $(wildcard include/config/FORTIFY_SOURCE) \ - include/linux/err.h \ - include/linux/overflow.h \ - include/uapi/linux/string.h \ - include/linux/fortify-string.h \ - $(wildcard include/config/CC_HAS_KASAN_MEMINTRINSIC_PREFIX) \ - $(wildcard include/config/GENERIC_ENTRY) \ - include/linux/bitmap-str.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/gfp_types.h \ - $(wildcard include/config/KASAN_HW_TAGS) \ - include/linux/numa.h \ - $(wildcard include/config/NODES_SHIFT) \ - $(wildcard include/config/HAVE_ARCH_NODE_DEV_GROUP) \ - arch/x86/include/asm/frame.h \ - arch/x86/include/asm/page.h \ - arch/x86/include/asm/page_64.h \ - $(wildcard include/config/DEBUG_VIRTUAL) \ - $(wildcard include/config/X86_VSYSCALL_EMULATION) \ - include/linux/range.h \ - include/asm-generic/memory_model.h \ - $(wildcard include/config/FLATMEM) \ - $(wildcard include/config/SPARSEMEM_VMEMMAP) \ - include/linux/pfn.h \ - include/asm-generic/getorder.h \ - arch/x86/include/asm/msr.h \ - $(wildcard include/config/TRACEPOINTS) \ - arch/x86/include/asm/cpumask.h \ - arch/x86/include/uapi/asm/msr.h \ - arch/x86/include/asm/shared/msr.h \ - include/linux/tracepoint-defs.h \ - arch/x86/include/asm/special_insns.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) \ - include/linux/irqflags_types.h \ - include/linux/cleanup.h \ - 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 \ - arch/x86/include/asm/shstk.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - include/linux/math64.h \ - $(wildcard include/config/ARCH_SUPPORTS_INT128) \ - include/vdso/math64.h \ - include/linux/thread_info.h \ - $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ - $(wildcard include/config/SH) \ - include/linux/restart_block.h \ - arch/x86/include/asm/thread_info.h \ - arch/x86/include/asm/cpufeature.h \ - include/linux/preempt.h \ - $(wildcard include/config/TRACE_PREEMPT_TOGGLE) \ - $(wildcard include/config/PREEMPT_NONE) \ - $(wildcard include/config/PREEMPT_VOLUNTARY) \ - $(wildcard include/config/PREEMPT) \ - arch/x86/include/asm/preempt.h \ - include/linux/smp_types.h \ - include/linux/llist.h \ - $(wildcard include/config/ARCH_HAVE_NMI_SAFE_CMPXCHG) \ - include/linux/pid_types.h \ - include/linux/sem_types.h \ - include/linux/shm.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/kmsan_types.h \ - include/linux/mutex_types.h \ - $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ - include/linux/osq_lock.h \ - include/linux/spinlock_types.h \ - include/linux/rwlock_types.h \ - include/linux/plist_types.h \ - include/linux/hrtimer_types.h \ - include/linux/timerqueue_types.h \ - include/linux/rbtree_types.h \ - include/linux/timer_types.h \ - include/linux/seccomp_types.h \ - $(wildcard include/config/SECCOMP) \ - include/linux/nodemask_types.h \ - include/linux/refcount_types.h \ - include/linux/resource.h \ - include/uapi/linux/resource.h \ - include/uapi/linux/time_types.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_types.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_types.h \ - $(wildcard include/config/POSIX_TIMERS) \ - include/uapi/linux/rseq.h \ - include/linux/seqlock_types.h \ - include/linux/kcsan.h \ - include/linux/rv.h \ - $(wildcard include/config/RV_REACTORS) \ - include/linux/livepatch_sched.h \ - include/linux/uidgid_types.h \ - arch/x86/include/generated/asm/kmap_size.h \ - include/asm-generic/kmap_size.h \ - $(wildcard include/config/DEBUG_KMAP_LOCAL) \ - include/linux/spinlock.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/list.h \ - $(wildcard include/config/LIST_HARDENED) \ - $(wildcard include/config/DEBUG_LIST) \ - include/linux/poison.h \ - $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ - arch/x86/include/asm/smp.h \ - $(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 \ - 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) \ - arch/x86/include/asm/uaccess.h \ - $(wildcard include/config/CC_HAS_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) \ - include/linux/mm_types.h \ - $(wildcard include/config/HAVE_ALIGNED_STRUCT_PAGE) \ - $(wildcard include/config/USERFAULTFD) \ - $(wildcard include/config/ANON_VMA_NAME) \ - $(wildcard include/config/PER_VMA_LOCK) \ - $(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_MM_DATA) \ - $(wildcard include/config/KSM) \ - $(wildcard include/config/LRU_GEN_WALKS_MMU) \ - include/linux/auxvec.h \ - include/uapi/linux/auxvec.h \ - arch/x86/include/uapi/asm/auxvec.h \ - include/linux/kref.h \ - include/linux/refcount.h \ - include/linux/rbtree.h \ - include/linux/rcupdate.h \ - $(wildcard include/config/TINY_RCU) \ - $(wildcard include/config/RCU_STRICT_GRACE_PERIOD) \ - $(wildcard include/config/RCU_LAZY) \ - $(wildcard include/config/TASKS_RCU_GENERIC) \ - $(wildcard include/config/RCU_STALL_COMMON) \ - $(wildcard include/config/KVM_XFER_TO_GUEST_WORK) \ - $(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/context_tracking_irq.h \ - $(wildcard include/config/CONTEXT_TRACKING_IDLE) \ - include/linux/rcutree.h \ - include/linux/maple_tree.h \ - $(wildcard include/config/MAPLE_RCU_DISABLED) \ - $(wildcard include/config/DEBUG_MAPLE_TREE) \ - 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/wait.h \ - include/linux/uprobes.h \ - arch/x86/include/asm/uprobes.h \ - include/linux/notifier.h \ - $(wildcard include/config/TREE_SRCU) \ - include/linux/mutex.h \ - include/linux/debug_locks.h \ - include/linux/srcu.h \ - $(wildcard include/config/TINY_SRCU) \ - $(wildcard include/config/NEED_SRCU_NMI_SAFE) \ - 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) \ - include/linux/ktime.h \ - include/linux/jiffies.h \ - include/linux/time.h \ - include/linux/time64.h \ - include/vdso/time64.h \ - include/uapi/linux/time.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/tsc.h \ - include/vdso/time32.h \ - include/vdso/time.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/workqueue_types.h \ - 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 \ - include/generated/bounds.h \ - include/linux/seqlock.h \ - include/linux/percpu_counter.h \ - include/linux/percpu.h \ - $(wildcard include/config/MODULES) \ - $(wildcard include/config/RANDOM_KMALLOC_CACHES) \ - $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ - include/linux/mmdebug.h \ - $(wildcard include/config/DEBUG_VM) \ - $(wildcard include/config/DEBUG_VM_IRQSOFF) \ - $(wildcard include/config/DEBUG_VM_PGFLAGS) \ - arch/x86/include/asm/mmu.h \ - $(wildcard include/config/MODIFY_LDT_SYSCALL) \ - include/linux/mmap_lock.h \ - arch/x86/include/asm/smap.h \ - arch/x86/include/asm/extable.h \ - $(wildcard include/config/BPF_JIT) \ - arch/x86/include/asm/tlbflush.h \ - include/linux/mmu_notifier.h \ - include/linux/interval_tree.h \ - arch/x86/include/asm/invpcid.h \ - arch/x86/include/asm/pti.h \ - arch/x86/include/asm/pgtable.h \ - $(wildcard include/config/DEBUG_WX) \ - $(wildcard include/config/HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD) \ - $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ - $(wildcard include/config/HAVE_ARCH_SOFT_DIRTY) \ - $(wildcard include/config/ARCH_ENABLE_THP_MIGRATION) \ - $(wildcard include/config/PAGE_TABLE_CHECK) \ - arch/x86/include/asm/x86_init.h \ - arch/x86/include/uapi/asm/bootparam.h \ - include/linux/screen_info.h \ - $(wildcard include/config/PCI) \ - 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/pkru.h \ - arch/x86/include/asm/fpu/api.h \ - $(wildcard include/config/X86_DEBUG_FPU) \ - arch/x86/include/asm/coco.h \ - include/asm-generic/pgtable_uffd.h \ - include/linux/page_table_check.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_LOCAL_APIC) \ - $(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/asm/apicdef.h \ - arch/x86/include/uapi/asm/vsyscall.h \ - include/asm-generic/fixmap.h \ - arch/x86/include/asm/pgtable-invert.h \ - arch/x86/include/asm/uaccess_64.h \ - include/asm-generic/access_ok.h \ - $(wildcard include/config/ALTERNATE_USER_ADDRESS_SPACE) \ - /home/colin/develop/xc7k480t/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/ARCH_USES_CFI_TRAPS) \ - $(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/stat.h \ - arch/x86/include/uapi/asm/stat.h \ - include/uapi/linux/stat.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/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/CONTIG_ALLOC) \ - include/linux/mmzone.h \ - $(wildcard include/config/ARCH_FORCE_MAX_ORDER) \ - $(wildcard include/config/CMA) \ - $(wildcard include/config/MEMORY_ISOLATION) \ - $(wildcard include/config/ZSMALLOC) \ - $(wildcard include/config/UNACCEPTED_MEMORY) \ - $(wildcard include/config/LRU_GEN_STATS) \ - $(wildcard include/config/MEMORY_HOTPLUG) \ - $(wildcard include/config/MEMORY_FAILURE) \ - $(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/list_nulls.h \ - include/linux/nodemask.h \ - include/linux/random.h \ - $(wildcard include/config/VMGENID) \ - include/uapi/linux/random.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/prandom.h \ - include/linux/once.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/PAGE_IDLE_FLAG) \ - $(wildcard include/config/ARCH_USES_PG_ARCH_X) \ - $(wildcard include/config/HUGETLB_PAGE_OPTIMIZE_VMEMMAP) \ - include/linux/local_lock.h \ - include/linux/local_lock_internal.h \ - include/linux/zswap.h \ - $(wildcard include/config/ZSWAP) \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ - $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ - $(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/ACPI_CPPC_LIB) \ - $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ - arch/x86/include/asm/topology.h \ - $(wildcard include/config/SCHED_MC_PRIO) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/EISA) \ - $(wildcard include/config/X86_MPPARSE) \ - arch/x86/include/asm/mpspec_def.h \ - include/asm-generic/topology.h \ - include/linux/cpu_smt.h \ - $(wildcard include/config/HOTPLUG_SMT) \ - 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/ia32.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/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/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/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/FS_DAX) \ - $(wildcard include/config/BLOCK) \ - include/linux/wait_bit.h \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/dcache.h \ - include/linux/rculist.h \ - $(wildcard include/config/PROVE_RCU_LIST) \ - 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) \ - 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 \ - include/linux/shrinker.h \ - $(wildcard include/config/SHRINKER_DEBUG) \ - include/linux/xarray.h \ - $(wildcard include/config/XARRAY_MULTI) \ - include/linux/sched/mm.h \ - $(wildcard include/config/MMU_LAZY_TLB_REFCOUNT) \ - $(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/radix-tree.h \ - include/linux/pid.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) \ - $(wildcard include/config/STACK_GROWSUP) \ - 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 \ - 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/VFIO_PCI_ZDEV_KVM) \ - $(wildcard include/config/IOMMUFD) \ - $(wildcard include/config/WATCH_QUEUE) \ - include/linux/ratelimit.h \ - include/linux/posix-timers.h \ - include/linux/alarmtimer.h \ - $(wildcard include/config/RTC_CLASS) \ - 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/rcu_sync.h \ - include/linux/delayed_call.h \ - include/linux/uuid.h \ - include/linux/errseq.h \ - include/linux/ioprio.h \ - include/linux/sched/rt.h \ - include/linux/iocontext.h \ - $(wildcard include/config/BLK_ICQ) \ - include/uapi/linux/ioprio.h \ - include/linux/fs_types.h \ - include/linux/mount.h \ - include/linux/mnt_idmapping.h \ - include/linux/slab.h \ - $(wildcard include/config/SLUB_DEBUG) \ - $(wildcard include/config/SLUB_TINY) \ - $(wildcard include/config/FAILSLAB) \ - $(wildcard include/config/KFENCE) \ - include/linux/percpu-refcount.h \ - include/linux/kasan.h \ - $(wildcard include/config/KASAN_STACK) \ - $(wildcard include/config/KASAN_VMALLOC) \ - include/linux/kasan-enabled.h \ - include/linux/kasan-tags.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/uapi/linux/aio_abi.h \ - include/uapi/linux/unistd.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/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 \ - 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 \ - 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 \ - 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) \ - include/linux/cdev.h \ - include/linux/device.h \ - $(wildcard include/config/HAS_IOMEM) \ - $(wildcard include/config/GENERIC_MSI_IRQ) \ - $(wildcard include/config/ENERGY_MODEL) \ - $(wildcard include/config/PINCTRL) \ - $(wildcard include/config/DMA_OPS) \ - $(wildcard include/config/DMA_DECLARE_COHERENT) \ - $(wildcard include/config/DMA_CMA) \ - $(wildcard include/config/SWIOTLB) \ - $(wildcard include/config/SWIOTLB_DYNAMIC) \ - $(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/PM_SLEEP) \ - $(wildcard include/config/OF) \ - $(wildcard include/config/DEVTMPFS) \ - 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_CLUSTER) \ - $(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/CXL_SUSPEND) \ - $(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/sizes.h \ - include/linux/dma-direction.h \ - include/linux/scatterlist.h \ - $(wildcard include/config/NEED_SG_DMA_LENGTH) \ - $(wildcard include/config/NEED_SG_DMA_FLAGS) \ - $(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/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_MTE) \ - $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ - $(wildcard include/config/SHMEM) \ - $(wildcard include/config/MIGRATION) \ - $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ - $(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/ARCH_WANT_OPTIMIZE_DAX_VMEMMAP) \ - $(wildcard include/config/HUGETLBFS) \ - $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ - include/linux/page_ext.h \ - include/linux/stacktrace.h \ - $(wildcard include/config/ARCH_STACKWALK) \ - $(wildcard include/config/STACKTRACE) \ - $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ - include/linux/stackdepot.h \ - $(wildcard include/config/STACKDEPOT) \ - $(wildcard include/config/STACKDEPOT_MAX_FRAMES) \ - $(wildcard include/config/STACKDEPOT_ALWAYS_INIT) \ - include/linux/page_ref.h \ - $(wildcard include/config/DEBUG_PAGE_REF) \ - include/linux/pgtable.h \ - $(wildcard include/config/HIGHPTE) \ - $(wildcard include/config/ARCH_HAS_NONLEAF_PMD_YOUNG) \ - $(wildcard include/config/ARCH_HAS_HW_PTE_YOUNG) \ - $(wildcard include/config/GUP_GET_PXX_LOW_HIGH) \ - $(wildcard include/config/ARCH_WANT_PMD_MKWRITE) \ - $(wildcard include/config/HAVE_ARCH_HUGE_VMAP) \ - $(wildcard include/config/X86_ESPFIX64) \ - include/linux/memremap.h \ - $(wildcard include/config/DEVICE_PRIVATE) \ - $(wildcard include/config/PCI_P2PDMA) \ - include/linux/huge_mm.h \ - include/linux/sched/coredump.h \ - $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ - include/linux/vmstat.h \ - $(wildcard include/config/VM_EVENT_COUNTERS) \ - $(wildcard include/config/DEBUG_TLBFLUSH) \ - $(wildcard include/config/PER_VMA_LOCK_STATS) \ - 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) \ - arch/x86/include/asm/shared/io.h \ - include/asm-generic/io.h \ - $(wildcard include/config/GENERIC_IOMAP) \ - $(wildcard include/config/TRACE_MMIO_ACCESS) \ - $(wildcard include/config/GENERIC_IOREMAP) \ - $(wildcard include/config/HAS_IOPORT_MAP) \ - include/asm-generic/iomap.h \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ - $(wildcard include/config/GENERIC_PCI_IOMAP) \ - 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_DEVICE) \ - $(wildcard include/config/FB_FOREIGN_ENDIAN) \ - $(wildcard include/config/FB_BOTH_ENDIAN) \ - $(wildcard include/config/FB_BIG_ENDIAN) \ - $(wildcard include/config/FB_LITTLE_ENDIAN) \ - $(wildcard include/config/VIDEO_NOMODESET) \ - 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/KRETPROBE_ON_RETHOOK) \ - $(wildcard include/config/KPROBES_SANITY_TEST) \ - $(wildcard include/config/OPTPROBES) \ - $(wildcard include/config/KPROBES_ON_FTRACE) \ - include/linux/ftrace.h \ - $(wildcard include/config/HAVE_FUNCTION_GRAPH_RETVAL) \ - $(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_ARGS) \ - $(wildcard include/config/DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ - $(wildcard include/config/STACK_TRACER) \ - $(wildcard include/config/DYNAMIC_FTRACE_WITH_CALL_OPS) \ - $(wildcard include/config/FUNCTION_GRAPH_RETVAL) \ - $(wildcard include/config/FUNCTION_PROFILER) \ - $(wildcard include/config/FTRACE_SYSCALLS) \ - include/linux/trace_recursion.h \ - $(wildcard include/config/FTRACE_RECORD_RECURSION) \ - $(wildcard include/config/ARCH_WANTS_NO_INSTR) \ - 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/hardirq.h \ - include/linux/context_tracking_state.h \ - $(wildcard include/config/CONTEXT_TRACKING_USER) \ - $(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 \ - $(wildcard include/config/HAVE_FUNCTION_DESCRIPTORS) \ - 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/MEMFD_CREATE) \ - $(wildcard include/config/PID_NS) \ - include/linux/nsproxy.h \ - include/linux/ns_common.h \ - include/uapi/linux/ptrace.h \ - include/linux/seccomp.h \ - $(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/ia32_unistd.h \ - include/asm-generic/seccomp.h \ - arch/x86/include/asm/ftrace.h \ - $(wildcard include/config/HAVE_FENTRY) \ - include/linux/objpool.h \ - include/linux/rethook.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_TABLE_LIB) \ - $(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_THERMAL_LIB) \ - $(wildcard include/config/ACPI_HMAT) \ - $(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/SUSPEND) \ - $(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_PROCESSOR_IDLE) \ - $(wildcard include/config/ACPI_PPTT) \ - $(wildcard include/config/ACPI_PCC) \ - $(wildcard include/config/ACPI_FFH) \ - include/linux/resource_ext.h \ - include/linux/mod_devicetable.h \ - include/uapi/linux/mei.h \ - include/uapi/linux/mei_uuid.h \ - include/linux/property.h \ - include/linux/node.h \ - $(wildcard include/config/HMEM_REPORTING) \ - 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/linux/fw_table.h \ - $(wildcard include/config/CXL_BUS) \ - include/acpi/acpi_bus.h \ - $(wildcard include/config/X86_ANDROID_TABLETS) \ - $(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 \ - include/acpi/acpi_io.h \ - include/linux/io.h \ - arch/x86/include/asm/acpi.h \ - $(wildcard include/config/ACPI_APEI) \ - include/acpi/proc_cap_intel.h \ - arch/x86/include/asm/numa.h \ - $(wildcard include/config/NUMA_EMU) \ - arch/x86/include/asm/xen/hypervisor.h \ - $(wildcard include/config/XEN_PV_DOM0) \ - $(wildcard include/config/PVH) \ - $(wildcard include/config/XEN_PVH) \ - $(wildcard include/config/XEN_DOM0) \ - include/xen/xen.h \ - $(wildcard include/config/XEN_BALLOON) \ - $(wildcard include/config/XEN_UNPOPULATED_ALLOC) \ - include/xen/interface/hvm/start_info.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/emulate_prefix.h \ - include/linux/regulator/consumer.h \ - $(wildcard include/config/REGULATOR) \ - include/linux/suspend.h \ - $(wildcard include/config/VT) \ - $(wildcard include/config/HIBERNATION_SNAPSHOT_DEV) \ - $(wildcard include/config/PM_SLEEP_DEBUG) \ - $(wildcard include/config/PM_AUTOSLEEP) \ - include/linux/swap.h \ - $(wildcard include/config/THP_SWAP) \ - include/linux/memcontrol.h \ - include/linux/cgroup.h \ - $(wildcard include/config/DEBUG_CGROUP_REF) \ - $(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/string_helpers.h \ - include/linux/string_choices.h \ - include/linux/user_namespace.h \ - $(wildcard include/config/INOTIFY_USER) \ - $(wildcard include/config/FANOTIFY) \ - $(wildcard include/config/BINFMT_MISC) \ - $(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-defs.h \ - $(wildcard include/config/BPF_LSM) \ - 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/cgroup_refcnt.h \ - include/linux/page_counter.h \ - include/linux/vmpressure.h \ - include/linux/eventfd.h \ - include/uapi/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/cacheflush.h \ - arch/x86/include/asm/cacheflush.h \ - include/asm-generic/cacheflush.h \ - include/linux/kmsan.h \ - include/linux/highmem-internal.h \ - include/linux/bio.h \ - include/linux/mempool.h \ - include/linux/pagemap.h \ - include/linux/hugetlb_inline.h \ - include/uapi/linux/mempolicy.h \ - include/linux/freezer.h \ - include/uapi/regulator/regulator.h \ - include/linux/rtmutex.h \ - $(wildcard include/config/DEBUG_RT_MUTEXES) \ - 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/irqdomain_defs.h \ - 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/uapi/linux/i2c.h \ - include/linux/backlight.h \ - $(wildcard include/config/BACKLIGHT_CLASS_DEVICE) \ - arch/x86/include/asm/fb.h \ - include/asm-generic/fb.h \ - 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_DOE) \ - $(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/msi_api.h \ - 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/VMD) \ - arch/x86/include/asm/memtype.h \ - include/linux/aio.h \ - include/linux/splice.h \ - include/linux/pipe_fs_i.h \ - include/generated/uapi/linux/version.h \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.h \ - $(wildcard include/config/BLOCK_ID) \ - /home/colin/develop/xc7k480t/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) \ - include/linux/static_call.h \ - include/linux/cpu.h \ - $(wildcard include/config/GENERIC_CPU_DEVICES) \ - $(wildcard include/config/PM_SLEEP_SMP) \ - $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ - $(wildcard include/config/ARCH_HAS_CPU_FINALIZE_INIT) \ - $(wildcard include/config/CPU_MITIGATIONS) \ - include/linux/cpuhotplug.h \ - $(wildcard include/config/HOTPLUG_CORE_SYNC_DEAD) \ - arch/x86/include/asm/static_call.h \ - include/trace/define_trace.h \ - arch/x86/include/asm/debugreg.h \ - arch/x86/include/uapi/asm/debugreg.h \ - arch/x86/include/asm/gsseg.h \ - include/asm-generic/mmu_context.h \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_ctrl.h \ - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_ctrl.o: $(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_ctrl.o) - -$(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_ctrl.o): - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_ctrl.o: $(wildcard ./tools/objtool/objtool) diff --git a/xdma/linux-kernel/xdma/.cdev_events.o.cmd b/xdma/linux-kernel/xdma/.cdev_events.o.cmd deleted file mode 100644 index e9d28e3..0000000 --- a/xdma/linux-kernel/xdma/.cdev_events.o.cmd +++ /dev/null @@ -1,1525 +0,0 @@ -savedcmd_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_events.o := gcc-12 -Wp,-MMD,/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/.cdev_events.o.d -nostdinc -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=./= -std=gnu11 -fshort-wchar -funsigned-char -fno-common -fno-PIE -fno-strict-aliasing -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 -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mindirect-branch-cs-prefix -mfunction-return=thunk-extern -fno-jump-tables -mharden-sls=all -fpatchable-function-entry=16,16 -fno-delete-null-pointer-checks -O2 -fno-allow-store-data-races -fstack-protector-strong -fno-omit-frame-pointer -fno-optimize-sibling-calls -ftrivial-auto-var-init=zero -fno-stack-clash-protection -fzero-call-used-regs=used-gpr -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -falign-functions=16 -fno-strict-overflow -fno-stack-check -fconserve-stack -Wall -Wundef -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Werror=strict-prototypes -Wno-format-security -Wno-trigraphs -Wno-frame-address -Wno-address-of-packed-member -Wmissing-declarations -Wmissing-prototypes -Wframe-larger-than=1024 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-overflow -Wno-array-bounds -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wenum-conversion -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-restrict -Wno-packed-not-aligned -Wno-format-overflow -Wno-format-truncation -Wno-stringop-truncation -Wno-override-init -Wno-missing-field-initializers -Wno-type-limits -Wno-shift-negative-value -Wno-maybe-uninitialized -Wno-sign-compare -g -gdwarf-5 -I/home/colin/develop/xc7k480t/xdma/linux-kernel/include -fsanitize=bounds-strict -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"cdev_events"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_events.o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_events.c ; ./tools/objtool/objtool --hacks=jump_label --hacks=noinstr --hacks=skylake --retpoline --rethunk --sls --stackval --static-call --uaccess --prefix=16 --module /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_events.o - -source_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_events.o := /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_events.c - -deps_/home/colin/develop/xc7k480t/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/DEBUG_INFO_BTF) \ - $(wildcard include/config/PAHOLE_HAS_BTF_TAG) \ - $(wildcard include/config/FUNCTION_ALIGNMENT) \ - $(wildcard include/config/CC_IS_GCC) \ - $(wildcard include/config/X86_64) \ - $(wildcard include/config/ARM64) \ - $(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/GCC_ASM_GOTO_OUTPUT_WORKAROUND) \ - $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ - $(wildcard include/config/SHADOW_CALL_STACK) \ - $(wildcard include/config/KCOV) \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.h \ - include/linux/kernel.h \ - $(wildcard include/config/PREEMPT_VOLUNTARY_BUILD) \ - $(wildcard include/config/PREEMPT_DYNAMIC) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_CALL) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_KEY) \ - $(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/array_size.h \ - include/linux/compiler.h \ - $(wildcard include/config/TRACE_BRANCH_PROFILING) \ - $(wildcard include/config/PROFILE_ALL_BRANCHES) \ - $(wildcard include/config/OBJTOOL) \ - 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_WEAK_MEMORY) \ - $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ - 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) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/CALL_PADDING) \ - $(wildcard include/config/RETHUNK) \ - $(wildcard include/config/SLS) \ - $(wildcard include/config/FUNCTION_PADDING_BYTES) \ - $(wildcard include/config/UML) \ - arch/x86/include/asm/ibt.h \ - $(wildcard include/config/X86_KERNEL_IBT) \ - include/linux/container_of.h \ - include/linux/build_bug.h \ - include/linux/bitops.h \ - include/linux/bits.h \ - include/vdso/bits.h \ - include/linux/typecheck.h \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.h \ - include/asm-generic/bitops/generic-non-atomic.h \ - arch/x86/include/asm/barrier.h \ - arch/x86/include/asm/alternative.h \ - $(wildcard include/config/CALL_THUNKS) \ - 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/asm-generic/barrier.h \ - arch/x86/include/asm/bitops.h \ - $(wildcard include/config/X86_CMOV) \ - arch/x86/include/asm/rmwcc.h \ - include/linux/args.h \ - 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_P6_NOP) \ - $(wildcard include/config/MATOM) \ - $(wildcard include/config/PARAVIRT_XXL) \ - arch/x86/include/asm/disabled-features.h \ - $(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/CALL_DEPTH_TRACKING) \ - $(wildcard include/config/ADDRESS_MASKING) \ - $(wildcard include/config/INTEL_IOMMU_SVM) \ - $(wildcard include/config/X86_SGX) \ - $(wildcard include/config/XEN_PV) \ - $(wildcard include/config/INTEL_TDX_GUEST) \ - $(wildcard include/config/X86_USER_SHADOW_STACK) \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/instrumented-atomic.h \ - include/linux/instrumented.h \ - include/linux/kmsan-checks.h \ - $(wildcard include/config/KMSAN) \ - 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/hex.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/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/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_raw.h \ - $(wildcard include/config/DEBUG_SPINLOCK) \ - $(wildcard include/config/DEBUG_LOCK_ALLOC) \ - 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/LOCKDEP) \ - $(wildcard include/config/LOCK_STAT) \ - 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 \ - $(wildcard include/config/HAVE_JUMP_LABEL_HACK) \ - include/linux/sprintf.h \ - include/linux/static_call_types.h \ - $(wildcard include/config/HAVE_STATIC_CALL) \ - $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ - include/linux/instruction_pointer.h \ - include/linux/uaccess.h \ - $(wildcard include/config/PREEMPT_COUNT) \ - $(wildcard include/config/ARCH_HAS_SUBPAGE_FAULTS) \ - $(wildcard include/config/HARDENED_USERCOPY) \ - include/linux/fault-inject-usercopy.h \ - $(wildcard include/config/FAULT_INJECTION_USERCOPY) \ - include/linux/sched.h \ - $(wildcard include/config/PREEMPT_RT) \ - $(wildcard include/config/VIRT_CPU_ACCOUNTING_NATIVE) \ - $(wildcard include/config/SCHED_INFO) \ - $(wildcard include/config/SCHEDSTATS) \ - $(wildcard include/config/SCHED_CORE) \ - $(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/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/MEMCG) \ - $(wildcard include/config/LRU_GEN) \ - $(wildcard include/config/COMPAT_BRK) \ - $(wildcard include/config/CGROUPS) \ - $(wildcard include/config/BLK_CGROUP) \ - $(wildcard include/config/PSI) \ - $(wildcard include/config/PAGE_OWNER) \ - $(wildcard include/config/EVENTFD) \ - $(wildcard include/config/ARCH_HAS_CPU_PASID) \ - $(wildcard include/config/CPU_SUP_INTEL) \ - $(wildcard include/config/TASK_DELAY_ACCT) \ - $(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/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/SCHED_MM_CID) \ - $(wildcard include/config/FAULT_INJECTION) \ - $(wildcard include/config/LATENCYTOP) \ - $(wildcard include/config/KUNIT) \ - $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ - $(wildcard include/config/MEMCG_KMEM) \ - $(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/RETHOOK) \ - $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ - $(wildcard include/config/RV) \ - $(wildcard include/config/USER_EVENTS) \ - $(wildcard include/config/PREEMPTION) \ - include/uapi/linux/sched.h \ - arch/x86/include/asm/current.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) \ - 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) \ - arch/x86/include/asm/processor.h \ - $(wildcard include/config/X86_VMX_FEATURE_NAMES) \ - $(wildcard include/config/X86_IOPL_IOPERM) \ - $(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) \ - arch/x86/include/asm/mem_encrypt.h \ - $(wildcard include/config/X86_MEM_ENCRYPT) \ - include/linux/cc_platform.h \ - $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ - 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 \ - 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/ZERO_CALL_USED_REGS) \ - $(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/CALL_THUNKS_DEBUG) \ - $(wildcard include/config/NOINSTR_VALIDATION) \ - $(wildcard include/config/CPU_SRSO) \ - $(wildcard include/config/CPU_IBPB_ENTRY) \ - include/linux/static_key.h \ - include/linux/objtool.h \ - $(wildcard include/config/FRAME_POINTER) \ - include/linux/objtool_types.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/asm-offsets.h \ - include/generated/asm-offsets.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/cpuid.h \ - arch/x86/include/asm/string.h \ - arch/x86/include/asm/string_64.h \ - $(wildcard include/config/ARCH_HAS_UACCESS_FLUSHCACHE) \ - arch/x86/include/asm/paravirt.h \ - $(wildcard include/config/PARAVIRT_SPINLOCKS) \ - $(wildcard include/config/DEBUG_ENTRY) \ - 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/FORCE_NR_CPUS) \ - $(wildcard include/config/HOTPLUG_CPU) \ - $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ - $(wildcard include/config/CPUMASK_OFFSTACK) \ - include/linux/bitmap.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/find.h \ - include/linux/string.h \ - $(wildcard include/config/BINARY_PRINTF) \ - $(wildcard include/config/FORTIFY_SOURCE) \ - include/linux/err.h \ - include/linux/overflow.h \ - include/uapi/linux/string.h \ - include/linux/fortify-string.h \ - $(wildcard include/config/CC_HAS_KASAN_MEMINTRINSIC_PREFIX) \ - $(wildcard include/config/GENERIC_ENTRY) \ - include/linux/bitmap-str.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/gfp_types.h \ - $(wildcard include/config/KASAN_HW_TAGS) \ - include/linux/numa.h \ - $(wildcard include/config/NODES_SHIFT) \ - $(wildcard include/config/HAVE_ARCH_NODE_DEV_GROUP) \ - arch/x86/include/asm/frame.h \ - arch/x86/include/asm/page.h \ - arch/x86/include/asm/page_64.h \ - $(wildcard include/config/DEBUG_VIRTUAL) \ - $(wildcard include/config/X86_VSYSCALL_EMULATION) \ - include/linux/range.h \ - include/asm-generic/memory_model.h \ - $(wildcard include/config/FLATMEM) \ - $(wildcard include/config/SPARSEMEM_VMEMMAP) \ - include/linux/pfn.h \ - include/asm-generic/getorder.h \ - arch/x86/include/asm/msr.h \ - $(wildcard include/config/TRACEPOINTS) \ - arch/x86/include/asm/cpumask.h \ - arch/x86/include/uapi/asm/msr.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 \ - arch/x86/include/asm/shared/msr.h \ - include/linux/tracepoint-defs.h \ - arch/x86/include/asm/special_insns.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) \ - include/linux/irqflags_types.h \ - include/linux/cleanup.h \ - 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 \ - arch/x86/include/asm/shstk.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - include/linux/math64.h \ - $(wildcard include/config/ARCH_SUPPORTS_INT128) \ - include/vdso/math64.h \ - include/linux/thread_info.h \ - $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ - $(wildcard include/config/SH) \ - include/linux/restart_block.h \ - arch/x86/include/asm/thread_info.h \ - arch/x86/include/asm/cpufeature.h \ - include/linux/preempt.h \ - $(wildcard include/config/TRACE_PREEMPT_TOGGLE) \ - $(wildcard include/config/PREEMPT_NONE) \ - $(wildcard include/config/PREEMPT_VOLUNTARY) \ - $(wildcard include/config/PREEMPT) \ - arch/x86/include/asm/preempt.h \ - include/linux/smp_types.h \ - include/linux/llist.h \ - $(wildcard include/config/ARCH_HAVE_NMI_SAFE_CMPXCHG) \ - include/linux/pid_types.h \ - include/linux/sem_types.h \ - include/linux/shm.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/kmsan_types.h \ - include/linux/mutex_types.h \ - $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ - include/linux/osq_lock.h \ - include/linux/spinlock_types.h \ - include/linux/rwlock_types.h \ - include/linux/plist_types.h \ - include/linux/hrtimer_types.h \ - include/linux/timerqueue_types.h \ - include/linux/rbtree_types.h \ - include/linux/timer_types.h \ - include/linux/seccomp_types.h \ - $(wildcard include/config/SECCOMP) \ - include/linux/nodemask_types.h \ - include/linux/refcount_types.h \ - include/linux/resource.h \ - include/uapi/linux/resource.h \ - include/uapi/linux/time_types.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_types.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_types.h \ - $(wildcard include/config/POSIX_TIMERS) \ - include/uapi/linux/rseq.h \ - include/linux/seqlock_types.h \ - include/linux/kcsan.h \ - include/linux/rv.h \ - $(wildcard include/config/RV_REACTORS) \ - include/linux/livepatch_sched.h \ - include/linux/uidgid_types.h \ - arch/x86/include/generated/asm/kmap_size.h \ - include/asm-generic/kmap_size.h \ - $(wildcard include/config/DEBUG_KMAP_LOCAL) \ - include/linux/spinlock.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/list.h \ - $(wildcard include/config/LIST_HARDENED) \ - $(wildcard include/config/DEBUG_LIST) \ - include/linux/poison.h \ - $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ - arch/x86/include/asm/smp.h \ - $(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 \ - 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) \ - arch/x86/include/asm/uaccess.h \ - $(wildcard include/config/CC_HAS_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) \ - include/linux/mm_types.h \ - $(wildcard include/config/HAVE_ALIGNED_STRUCT_PAGE) \ - $(wildcard include/config/USERFAULTFD) \ - $(wildcard include/config/ANON_VMA_NAME) \ - $(wildcard include/config/PER_VMA_LOCK) \ - $(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_MM_DATA) \ - $(wildcard include/config/KSM) \ - $(wildcard include/config/LRU_GEN_WALKS_MMU) \ - include/linux/auxvec.h \ - include/uapi/linux/auxvec.h \ - arch/x86/include/uapi/asm/auxvec.h \ - include/linux/kref.h \ - include/linux/refcount.h \ - include/linux/rbtree.h \ - include/linux/rcupdate.h \ - $(wildcard include/config/TINY_RCU) \ - $(wildcard include/config/RCU_STRICT_GRACE_PERIOD) \ - $(wildcard include/config/RCU_LAZY) \ - $(wildcard include/config/TASKS_RCU_GENERIC) \ - $(wildcard include/config/RCU_STALL_COMMON) \ - $(wildcard include/config/KVM_XFER_TO_GUEST_WORK) \ - $(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/context_tracking_irq.h \ - $(wildcard include/config/CONTEXT_TRACKING_IDLE) \ - include/linux/rcutree.h \ - include/linux/maple_tree.h \ - $(wildcard include/config/MAPLE_RCU_DISABLED) \ - $(wildcard include/config/DEBUG_MAPLE_TREE) \ - 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/wait.h \ - include/linux/uprobes.h \ - arch/x86/include/asm/uprobes.h \ - include/linux/notifier.h \ - $(wildcard include/config/TREE_SRCU) \ - include/linux/mutex.h \ - include/linux/debug_locks.h \ - include/linux/srcu.h \ - $(wildcard include/config/TINY_SRCU) \ - $(wildcard include/config/NEED_SRCU_NMI_SAFE) \ - 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) \ - include/linux/ktime.h \ - include/linux/jiffies.h \ - include/linux/time.h \ - include/linux/time64.h \ - include/vdso/time64.h \ - include/uapi/linux/time.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/tsc.h \ - include/vdso/time32.h \ - include/vdso/time.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/workqueue_types.h \ - 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 \ - include/generated/bounds.h \ - include/linux/seqlock.h \ - include/linux/percpu_counter.h \ - include/linux/percpu.h \ - $(wildcard include/config/MODULES) \ - $(wildcard include/config/RANDOM_KMALLOC_CACHES) \ - $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ - include/linux/mmdebug.h \ - $(wildcard include/config/DEBUG_VM) \ - $(wildcard include/config/DEBUG_VM_IRQSOFF) \ - $(wildcard include/config/DEBUG_VM_PGFLAGS) \ - arch/x86/include/asm/mmu.h \ - $(wildcard include/config/MODIFY_LDT_SYSCALL) \ - include/linux/mmap_lock.h \ - arch/x86/include/asm/smap.h \ - arch/x86/include/asm/extable.h \ - $(wildcard include/config/BPF_JIT) \ - arch/x86/include/asm/tlbflush.h \ - include/linux/mmu_notifier.h \ - include/linux/interval_tree.h \ - arch/x86/include/asm/invpcid.h \ - arch/x86/include/asm/pti.h \ - arch/x86/include/asm/pgtable.h \ - $(wildcard include/config/DEBUG_WX) \ - $(wildcard include/config/HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD) \ - $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ - $(wildcard include/config/HAVE_ARCH_SOFT_DIRTY) \ - $(wildcard include/config/ARCH_ENABLE_THP_MIGRATION) \ - $(wildcard include/config/PAGE_TABLE_CHECK) \ - arch/x86/include/asm/x86_init.h \ - arch/x86/include/uapi/asm/bootparam.h \ - include/linux/screen_info.h \ - $(wildcard include/config/PCI) \ - 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/pkru.h \ - arch/x86/include/asm/fpu/api.h \ - $(wildcard include/config/X86_DEBUG_FPU) \ - arch/x86/include/asm/coco.h \ - include/asm-generic/pgtable_uffd.h \ - include/linux/page_table_check.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_LOCAL_APIC) \ - $(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/asm/apicdef.h \ - arch/x86/include/uapi/asm/vsyscall.h \ - include/asm-generic/fixmap.h \ - arch/x86/include/asm/pgtable-invert.h \ - arch/x86/include/asm/uaccess_64.h \ - include/asm-generic/access_ok.h \ - $(wildcard include/config/ALTERNATE_USER_ADDRESS_SPACE) \ - /home/colin/develop/xc7k480t/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/ARCH_USES_CFI_TRAPS) \ - $(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/stat.h \ - arch/x86/include/uapi/asm/stat.h \ - include/uapi/linux/stat.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/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/CONTIG_ALLOC) \ - include/linux/mmzone.h \ - $(wildcard include/config/ARCH_FORCE_MAX_ORDER) \ - $(wildcard include/config/CMA) \ - $(wildcard include/config/MEMORY_ISOLATION) \ - $(wildcard include/config/ZSMALLOC) \ - $(wildcard include/config/UNACCEPTED_MEMORY) \ - $(wildcard include/config/LRU_GEN_STATS) \ - $(wildcard include/config/MEMORY_HOTPLUG) \ - $(wildcard include/config/MEMORY_FAILURE) \ - $(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/list_nulls.h \ - include/linux/nodemask.h \ - include/linux/random.h \ - $(wildcard include/config/VMGENID) \ - include/uapi/linux/random.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/prandom.h \ - include/linux/once.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/PAGE_IDLE_FLAG) \ - $(wildcard include/config/ARCH_USES_PG_ARCH_X) \ - $(wildcard include/config/HUGETLB_PAGE_OPTIMIZE_VMEMMAP) \ - include/linux/local_lock.h \ - include/linux/local_lock_internal.h \ - include/linux/zswap.h \ - $(wildcard include/config/ZSWAP) \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ - $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ - $(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/ACPI_CPPC_LIB) \ - $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ - arch/x86/include/asm/topology.h \ - $(wildcard include/config/SCHED_MC_PRIO) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/EISA) \ - $(wildcard include/config/X86_MPPARSE) \ - arch/x86/include/asm/mpspec_def.h \ - include/asm-generic/topology.h \ - include/linux/cpu_smt.h \ - $(wildcard include/config/HOTPLUG_SMT) \ - 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/ia32.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/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/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/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/FS_DAX) \ - $(wildcard include/config/BLOCK) \ - include/linux/wait_bit.h \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/dcache.h \ - include/linux/rculist.h \ - $(wildcard include/config/PROVE_RCU_LIST) \ - 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) \ - 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 \ - include/linux/shrinker.h \ - $(wildcard include/config/SHRINKER_DEBUG) \ - include/linux/xarray.h \ - $(wildcard include/config/XARRAY_MULTI) \ - include/linux/sched/mm.h \ - $(wildcard include/config/MMU_LAZY_TLB_REFCOUNT) \ - $(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/radix-tree.h \ - include/linux/pid.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) \ - $(wildcard include/config/STACK_GROWSUP) \ - 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 \ - 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/VFIO_PCI_ZDEV_KVM) \ - $(wildcard include/config/IOMMUFD) \ - $(wildcard include/config/WATCH_QUEUE) \ - include/linux/ratelimit.h \ - include/linux/posix-timers.h \ - include/linux/alarmtimer.h \ - $(wildcard include/config/RTC_CLASS) \ - 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/rcu_sync.h \ - include/linux/delayed_call.h \ - include/linux/uuid.h \ - include/linux/errseq.h \ - include/linux/ioprio.h \ - include/linux/sched/rt.h \ - include/linux/iocontext.h \ - $(wildcard include/config/BLK_ICQ) \ - include/uapi/linux/ioprio.h \ - include/linux/fs_types.h \ - include/linux/mount.h \ - include/linux/mnt_idmapping.h \ - include/linux/slab.h \ - $(wildcard include/config/SLUB_DEBUG) \ - $(wildcard include/config/SLUB_TINY) \ - $(wildcard include/config/FAILSLAB) \ - $(wildcard include/config/KFENCE) \ - include/linux/percpu-refcount.h \ - include/linux/kasan.h \ - $(wildcard include/config/KASAN_STACK) \ - $(wildcard include/config/KASAN_VMALLOC) \ - include/linux/kasan-enabled.h \ - include/linux/kasan-tags.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/uapi/linux/aio_abi.h \ - include/uapi/linux/unistd.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/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 \ - 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 \ - 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 \ - 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) \ - include/linux/cdev.h \ - include/linux/device.h \ - $(wildcard include/config/HAS_IOMEM) \ - $(wildcard include/config/GENERIC_MSI_IRQ) \ - $(wildcard include/config/ENERGY_MODEL) \ - $(wildcard include/config/PINCTRL) \ - $(wildcard include/config/DMA_OPS) \ - $(wildcard include/config/DMA_DECLARE_COHERENT) \ - $(wildcard include/config/DMA_CMA) \ - $(wildcard include/config/SWIOTLB) \ - $(wildcard include/config/SWIOTLB_DYNAMIC) \ - $(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/PM_SLEEP) \ - $(wildcard include/config/OF) \ - $(wildcard include/config/DEVTMPFS) \ - 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_CLUSTER) \ - $(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/CXL_SUSPEND) \ - $(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/sizes.h \ - include/linux/dma-direction.h \ - include/linux/scatterlist.h \ - $(wildcard include/config/NEED_SG_DMA_LENGTH) \ - $(wildcard include/config/NEED_SG_DMA_FLAGS) \ - $(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/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_MTE) \ - $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ - $(wildcard include/config/SHMEM) \ - $(wildcard include/config/MIGRATION) \ - $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ - $(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/ARCH_WANT_OPTIMIZE_DAX_VMEMMAP) \ - $(wildcard include/config/HUGETLBFS) \ - $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ - include/linux/page_ext.h \ - include/linux/stacktrace.h \ - $(wildcard include/config/ARCH_STACKWALK) \ - $(wildcard include/config/STACKTRACE) \ - $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ - include/linux/stackdepot.h \ - $(wildcard include/config/STACKDEPOT) \ - $(wildcard include/config/STACKDEPOT_MAX_FRAMES) \ - $(wildcard include/config/STACKDEPOT_ALWAYS_INIT) \ - include/linux/page_ref.h \ - $(wildcard include/config/DEBUG_PAGE_REF) \ - include/linux/pgtable.h \ - $(wildcard include/config/HIGHPTE) \ - $(wildcard include/config/ARCH_HAS_NONLEAF_PMD_YOUNG) \ - $(wildcard include/config/ARCH_HAS_HW_PTE_YOUNG) \ - $(wildcard include/config/GUP_GET_PXX_LOW_HIGH) \ - $(wildcard include/config/ARCH_WANT_PMD_MKWRITE) \ - $(wildcard include/config/HAVE_ARCH_HUGE_VMAP) \ - $(wildcard include/config/X86_ESPFIX64) \ - include/linux/memremap.h \ - $(wildcard include/config/DEVICE_PRIVATE) \ - $(wildcard include/config/PCI_P2PDMA) \ - include/linux/huge_mm.h \ - include/linux/sched/coredump.h \ - $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ - include/linux/vmstat.h \ - $(wildcard include/config/VM_EVENT_COUNTERS) \ - $(wildcard include/config/DEBUG_TLBFLUSH) \ - $(wildcard include/config/PER_VMA_LOCK_STATS) \ - 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) \ - arch/x86/include/asm/shared/io.h \ - include/asm-generic/io.h \ - $(wildcard include/config/GENERIC_IOMAP) \ - $(wildcard include/config/TRACE_MMIO_ACCESS) \ - $(wildcard include/config/GENERIC_IOREMAP) \ - $(wildcard include/config/HAS_IOPORT_MAP) \ - include/asm-generic/iomap.h \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ - $(wildcard include/config/GENERIC_PCI_IOMAP) \ - 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_DEVICE) \ - $(wildcard include/config/FB_FOREIGN_ENDIAN) \ - $(wildcard include/config/FB_BOTH_ENDIAN) \ - $(wildcard include/config/FB_BIG_ENDIAN) \ - $(wildcard include/config/FB_LITTLE_ENDIAN) \ - $(wildcard include/config/VIDEO_NOMODESET) \ - 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/KRETPROBE_ON_RETHOOK) \ - $(wildcard include/config/KPROBES_SANITY_TEST) \ - $(wildcard include/config/OPTPROBES) \ - $(wildcard include/config/KPROBES_ON_FTRACE) \ - include/linux/ftrace.h \ - $(wildcard include/config/HAVE_FUNCTION_GRAPH_RETVAL) \ - $(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_ARGS) \ - $(wildcard include/config/DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ - $(wildcard include/config/STACK_TRACER) \ - $(wildcard include/config/DYNAMIC_FTRACE_WITH_CALL_OPS) \ - $(wildcard include/config/FUNCTION_GRAPH_RETVAL) \ - $(wildcard include/config/FUNCTION_PROFILER) \ - $(wildcard include/config/FTRACE_SYSCALLS) \ - include/linux/trace_recursion.h \ - $(wildcard include/config/FTRACE_RECORD_RECURSION) \ - $(wildcard include/config/ARCH_WANTS_NO_INSTR) \ - 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/hardirq.h \ - include/linux/context_tracking_state.h \ - $(wildcard include/config/CONTEXT_TRACKING_USER) \ - $(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 \ - $(wildcard include/config/HAVE_FUNCTION_DESCRIPTORS) \ - 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/MEMFD_CREATE) \ - $(wildcard include/config/PID_NS) \ - include/linux/nsproxy.h \ - include/linux/ns_common.h \ - include/uapi/linux/ptrace.h \ - include/linux/seccomp.h \ - $(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/ia32_unistd.h \ - include/asm-generic/seccomp.h \ - arch/x86/include/asm/ftrace.h \ - $(wildcard include/config/HAVE_FENTRY) \ - include/linux/objpool.h \ - include/linux/rethook.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_TABLE_LIB) \ - $(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_THERMAL_LIB) \ - $(wildcard include/config/ACPI_HMAT) \ - $(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/SUSPEND) \ - $(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_PROCESSOR_IDLE) \ - $(wildcard include/config/ACPI_PPTT) \ - $(wildcard include/config/ACPI_PCC) \ - $(wildcard include/config/ACPI_FFH) \ - include/linux/resource_ext.h \ - include/linux/mod_devicetable.h \ - include/uapi/linux/mei.h \ - include/uapi/linux/mei_uuid.h \ - include/linux/property.h \ - include/linux/node.h \ - $(wildcard include/config/HMEM_REPORTING) \ - 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/linux/fw_table.h \ - $(wildcard include/config/CXL_BUS) \ - include/acpi/acpi_bus.h \ - $(wildcard include/config/X86_ANDROID_TABLETS) \ - $(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 \ - include/acpi/acpi_io.h \ - include/linux/io.h \ - arch/x86/include/asm/acpi.h \ - $(wildcard include/config/ACPI_APEI) \ - include/acpi/proc_cap_intel.h \ - arch/x86/include/asm/numa.h \ - $(wildcard include/config/NUMA_EMU) \ - arch/x86/include/asm/xen/hypervisor.h \ - $(wildcard include/config/XEN_PV_DOM0) \ - $(wildcard include/config/PVH) \ - $(wildcard include/config/XEN_PVH) \ - $(wildcard include/config/XEN_DOM0) \ - include/xen/xen.h \ - $(wildcard include/config/XEN_BALLOON) \ - $(wildcard include/config/XEN_UNPOPULATED_ALLOC) \ - include/xen/interface/hvm/start_info.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/emulate_prefix.h \ - include/linux/regulator/consumer.h \ - $(wildcard include/config/REGULATOR) \ - include/linux/suspend.h \ - $(wildcard include/config/VT) \ - $(wildcard include/config/HIBERNATION_SNAPSHOT_DEV) \ - $(wildcard include/config/PM_SLEEP_DEBUG) \ - $(wildcard include/config/PM_AUTOSLEEP) \ - include/linux/swap.h \ - $(wildcard include/config/THP_SWAP) \ - include/linux/memcontrol.h \ - include/linux/cgroup.h \ - $(wildcard include/config/DEBUG_CGROUP_REF) \ - $(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/string_helpers.h \ - include/linux/string_choices.h \ - include/linux/user_namespace.h \ - $(wildcard include/config/INOTIFY_USER) \ - $(wildcard include/config/FANOTIFY) \ - $(wildcard include/config/BINFMT_MISC) \ - $(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-defs.h \ - $(wildcard include/config/BPF_LSM) \ - 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/cgroup_refcnt.h \ - include/linux/page_counter.h \ - include/linux/vmpressure.h \ - include/linux/eventfd.h \ - include/uapi/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/cacheflush.h \ - arch/x86/include/asm/cacheflush.h \ - include/asm-generic/cacheflush.h \ - include/linux/kmsan.h \ - include/linux/highmem-internal.h \ - include/linux/bio.h \ - include/linux/mempool.h \ - include/linux/pagemap.h \ - include/linux/hugetlb_inline.h \ - include/uapi/linux/mempolicy.h \ - include/linux/freezer.h \ - include/uapi/regulator/regulator.h \ - include/linux/rtmutex.h \ - $(wildcard include/config/DEBUG_RT_MUTEXES) \ - 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/irqdomain_defs.h \ - 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/uapi/linux/i2c.h \ - include/linux/backlight.h \ - $(wildcard include/config/BACKLIGHT_CLASS_DEVICE) \ - arch/x86/include/asm/fb.h \ - include/asm-generic/fb.h \ - 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_DOE) \ - $(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/msi_api.h \ - 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/VMD) \ - arch/x86/include/asm/memtype.h \ - include/linux/aio.h \ - include/linux/splice.h \ - include/linux/pipe_fs_i.h \ - include/generated/uapi/linux/version.h \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.h \ - $(wildcard include/config/BLOCK_ID) \ - /home/colin/develop/xc7k480t/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) \ - include/linux/static_call.h \ - include/linux/cpu.h \ - $(wildcard include/config/GENERIC_CPU_DEVICES) \ - $(wildcard include/config/PM_SLEEP_SMP) \ - $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ - $(wildcard include/config/ARCH_HAS_CPU_FINALIZE_INIT) \ - $(wildcard include/config/CPU_MITIGATIONS) \ - include/linux/cpuhotplug.h \ - $(wildcard include/config/HOTPLUG_CORE_SYNC_DEAD) \ - arch/x86/include/asm/static_call.h \ - include/trace/define_trace.h \ - arch/x86/include/asm/debugreg.h \ - arch/x86/include/uapi/asm/debugreg.h \ - arch/x86/include/asm/gsseg.h \ - include/asm-generic/mmu_context.h \ - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_events.o: $(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_events.o) - -$(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_events.o): - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_events.o: $(wildcard ./tools/objtool/objtool) diff --git a/xdma/linux-kernel/xdma/.cdev_sgdma.o.cmd b/xdma/linux-kernel/xdma/.cdev_sgdma.o.cmd deleted file mode 100644 index 7af3e7b..0000000 --- a/xdma/linux-kernel/xdma/.cdev_sgdma.o.cmd +++ /dev/null @@ -1,1527 +0,0 @@ -savedcmd_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_sgdma.o := gcc-12 -Wp,-MMD,/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/.cdev_sgdma.o.d -nostdinc -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=./= -std=gnu11 -fshort-wchar -funsigned-char -fno-common -fno-PIE -fno-strict-aliasing -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 -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mindirect-branch-cs-prefix -mfunction-return=thunk-extern -fno-jump-tables -mharden-sls=all -fpatchable-function-entry=16,16 -fno-delete-null-pointer-checks -O2 -fno-allow-store-data-races -fstack-protector-strong -fno-omit-frame-pointer -fno-optimize-sibling-calls -ftrivial-auto-var-init=zero -fno-stack-clash-protection -fzero-call-used-regs=used-gpr -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -falign-functions=16 -fno-strict-overflow -fno-stack-check -fconserve-stack -Wall -Wundef -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Werror=strict-prototypes -Wno-format-security -Wno-trigraphs -Wno-frame-address -Wno-address-of-packed-member -Wmissing-declarations -Wmissing-prototypes -Wframe-larger-than=1024 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-overflow -Wno-array-bounds -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wenum-conversion -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-restrict -Wno-packed-not-aligned -Wno-format-overflow -Wno-format-truncation -Wno-stringop-truncation -Wno-override-init -Wno-missing-field-initializers -Wno-type-limits -Wno-shift-negative-value -Wno-maybe-uninitialized -Wno-sign-compare -g -gdwarf-5 -I/home/colin/develop/xc7k480t/xdma/linux-kernel/include -fsanitize=bounds-strict -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"cdev_sgdma"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_sgdma.o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_sgdma.c ; ./tools/objtool/objtool --hacks=jump_label --hacks=noinstr --hacks=skylake --retpoline --rethunk --sls --stackval --static-call --uaccess --prefix=16 --module /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_sgdma.o - -source_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_sgdma.o := /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_sgdma.c - -deps_/home/colin/develop/xc7k480t/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/DEBUG_INFO_BTF) \ - $(wildcard include/config/PAHOLE_HAS_BTF_TAG) \ - $(wildcard include/config/FUNCTION_ALIGNMENT) \ - $(wildcard include/config/CC_IS_GCC) \ - $(wildcard include/config/X86_64) \ - $(wildcard include/config/ARM64) \ - $(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/GCC_ASM_GOTO_OUTPUT_WORKAROUND) \ - $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ - $(wildcard include/config/SHADOW_CALL_STACK) \ - $(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 \ - 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/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_USER_SHADOW_STACK) \ - $(wildcard include/config/X86) \ - $(wildcard include/config/PARISC) \ - $(wildcard include/config/SPARC64) \ - $(wildcard include/config/ARM64_MTE) \ - $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ - $(wildcard include/config/STACK_GROWSUP) \ - $(wildcard include/config/NUMA_BALANCING) \ - $(wildcard include/config/PER_VMA_LOCK) \ - $(wildcard include/config/SHMEM) \ - $(wildcard include/config/ZONE_DEVICE) \ - $(wildcard include/config/FS_DAX) \ - $(wildcard include/config/KASAN_SW_TAGS) \ - $(wildcard include/config/KASAN_HW_TAGS) \ - $(wildcard include/config/MIGRATION) \ - $(wildcard include/config/CMA) \ - $(wildcard include/config/HIGHMEM) \ - $(wildcard include/config/SCHED_MM_CID) \ - $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ - $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ - $(wildcard include/config/TRANSPARENT_HUGEPAGE) \ - $(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/ARCH_WANT_OPTIMIZE_DAX_VMEMMAP) \ - $(wildcard include/config/MEMORY_FAILURE) \ - $(wildcard include/config/KSM) \ - $(wildcard include/config/HUGETLBFS) \ - $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ - $(wildcard include/config/PRINTK) \ - $(wildcard include/config/ANON_VMA_NAME) \ - $(wildcard include/config/UNACCEPTED_MEMORY) \ - 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_VM_IRQSOFF) \ - $(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/NOINSTR_VALIDATION) \ - include/linux/objtool.h \ - $(wildcard include/config/OBJTOOL) \ - $(wildcard include/config/FRAME_POINTER) \ - $(wildcard include/config/CPU_UNRET_ENTRY) \ - $(wildcard include/config/CPU_SRSO) \ - include/linux/objtool_types.h \ - arch/x86/include/asm/asm.h \ - $(wildcard include/config/KPROBES) \ - arch/x86/include/asm/extable_fixup_types.h \ - include/asm-generic/bug.h \ - $(wildcard include/config/BUG) \ - $(wildcard include/config/GENERIC_BUG_RELATIVE_POINTERS) \ - $(wildcard include/config/SMP) \ - 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_WEAK_MEMORY) \ - $(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/build_bug.h \ - include/linux/kern_levels.h \ - include/linux/linkage.h \ - $(wildcard include/config/ARCH_USE_SYM_ANNOTATIONS) \ - include/linux/export.h \ - $(wildcard include/config/MODVERSIONS) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/CALL_PADDING) \ - $(wildcard include/config/RETHUNK) \ - $(wildcard include/config/SLS) \ - $(wildcard include/config/FUNCTION_PADDING_BYTES) \ - $(wildcard include/config/UML) \ - arch/x86/include/asm/ibt.h \ - $(wildcard include/config/X86_KERNEL_IBT) \ - include/linux/ratelimit_types.h \ - include/linux/bits.h \ - include/linux/const.h \ - include/vdso/const.h \ - include/uapi/linux/const.h \ - include/vdso/bits.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_raw.h \ - $(wildcard include/config/DEBUG_SPINLOCK) \ - $(wildcard include/config/DEBUG_LOCK_ALLOC) \ - 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/LOCKDEP) \ - $(wildcard include/config/LOCK_STAT) \ - 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 \ - $(wildcard include/config/HAVE_JUMP_LABEL_HACK) \ - arch/x86/include/asm/nops.h \ - include/linux/gfp.h \ - $(wildcard include/config/ZONE_DMA) \ - $(wildcard include/config/ZONE_DMA32) \ - $(wildcard include/config/COMPACTION) \ - $(wildcard include/config/CONTIG_ALLOC) \ - include/linux/gfp_types.h \ - include/linux/mmzone.h \ - $(wildcard include/config/ARCH_FORCE_MAX_ORDER) \ - $(wildcard include/config/MEMORY_ISOLATION) \ - $(wildcard include/config/ZSMALLOC) \ - $(wildcard include/config/SWAP) \ - $(wildcard include/config/LRU_GEN) \ - $(wildcard include/config/LRU_GEN_STATS) \ - $(wildcard include/config/LRU_GEN_WALKS_MMU) \ - $(wildcard include/config/MEMCG) \ - $(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) \ - $(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) \ - $(wildcard include/config/PREEMPT_DYNAMIC) \ - $(wildcard include/config/PREEMPT_NONE) \ - $(wildcard include/config/PREEMPT_VOLUNTARY) \ - $(wildcard include/config/PREEMPT) \ - include/linux/cleanup.h \ - arch/x86/include/asm/preempt.h \ - arch/x86/include/asm/rmwcc.h \ - include/linux/args.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) \ - arch/x86/include/asm/current.h \ - $(wildcard include/config/CALL_DEPTH_TRACKING) \ - include/linux/cache.h \ - $(wildcard include/config/ARCH_HAS_CACHE_LINE_SIZE) \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.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/static_call_types.h \ - $(wildcard include/config/HAVE_STATIC_CALL) \ - $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ - include/linux/irqflags.h \ - $(wildcard include/config/PROVE_LOCKING) \ - $(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) \ - include/linux/irqflags_types.h \ - arch/x86/include/asm/irqflags.h \ - $(wildcard include/config/PARAVIRT_XXL) \ - $(wildcard include/config/DEBUG_ENTRY) \ - arch/x86/include/asm/processor-flags.h \ - $(wildcard include/config/VM86) \ - $(wildcard include/config/PAGE_TABLE_ISOLATION) \ - 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 \ - $(wildcard include/config/X86_MEM_ENCRYPT) \ - include/linux/cc_platform.h \ - $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ - arch/x86/include/asm/nospec-branch.h \ - $(wildcard include/config/CALL_THUNKS_DEBUG) \ - $(wildcard include/config/CPU_IBPB_ENTRY) \ - include/linux/static_key.h \ - arch/x86/include/asm/alternative.h \ - $(wildcard include/config/CALL_THUNKS) \ - 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_CMOV) \ - $(wildcard include/config/X86_P6_NOP) \ - $(wildcard include/config/MATOM) \ - arch/x86/include/asm/disabled-features.h \ - $(wildcard include/config/X86_UMIP) \ - $(wildcard include/config/X86_INTEL_MEMORY_PROTECTION_KEYS) \ - $(wildcard include/config/X86_5LEVEL) \ - $(wildcard include/config/ADDRESS_MASKING) \ - $(wildcard include/config/INTEL_IOMMU_SVM) \ - $(wildcard include/config/X86_SGX) \ - $(wildcard include/config/XEN_PV) \ - $(wildcard include/config/INTEL_TDX_GUEST) \ - 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/asm-offsets.h \ - include/generated/asm-offsets.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/paravirt_types.h \ - $(wildcard include/config/ZERO_CALL_USED_REGS) \ - $(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/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/KMSAN) \ - $(wildcard include/config/DEBUG_KMAP_LOCAL_FORCE_MAP) \ - arch/x86/include/asm/sparsemem.h \ - $(wildcard include/config/NUMA_KEEP_MEMINFO) \ - include/linux/cpumask.h \ - $(wildcard include/config/FORCE_NR_CPUS) \ - $(wildcard include/config/HOTPLUG_CPU) \ - $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ - $(wildcard include/config/CPUMASK_OFFSTACK) \ - include/linux/kernel.h \ - $(wildcard include/config/PREEMPT_VOLUNTARY_BUILD) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_CALL) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_KEY) \ - $(wildcard include/config/PREEMPT_) \ - $(wildcard include/config/DEBUG_ATOMIC_SLEEP) \ - $(wildcard include/config/TRACING) \ - $(wildcard include/config/FTRACE_MCOUNT_RECORD) \ - include/linux/align.h \ - include/linux/array_size.h \ - include/linux/limits.h \ - include/uapi/linux/limits.h \ - include/vdso/limits.h \ - include/linux/container_of.h \ - include/linux/bitops.h \ - include/asm-generic/bitops/generic-non-atomic.h \ - arch/x86/include/asm/barrier.h \ - include/asm-generic/barrier.h \ - arch/x86/include/asm/bitops.h \ - include/asm-generic/bitops/sched.h \ - arch/x86/include/asm/arch_hweight.h \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/instrumented-atomic.h \ - include/linux/instrumented.h \ - include/linux/kmsan-checks.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/hex.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/sprintf.h \ - include/linux/instruction_pointer.h \ - include/linux/bitmap.h \ - include/linux/find.h \ - include/linux/string.h \ - $(wildcard include/config/BINARY_PRINTF) \ - $(wildcard include/config/FORTIFY_SOURCE) \ - include/linux/err.h \ - include/linux/overflow.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 \ - $(wildcard include/config/CC_HAS_KASAN_MEMINTRINSIC_PREFIX) \ - $(wildcard include/config/GENERIC_ENTRY) \ - include/linux/bitmap-str.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/numa.h \ - $(wildcard include/config/NODES_SHIFT) \ - $(wildcard include/config/HAVE_ARCH_NODE_DEV_GROUP) \ - arch/x86/include/asm/frame.h \ - include/linux/thread_info.h \ - $(wildcard include/config/THREAD_INFO_IN_TASK) \ - $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ - $(wildcard include/config/HARDENED_USERCOPY) \ - $(wildcard include/config/SH) \ - include/linux/restart_block.h \ - arch/x86/include/asm/thread_info.h \ - $(wildcard include/config/COMPAT) \ - $(wildcard include/config/IA32_EMULATION) \ - arch/x86/include/asm/page.h \ - 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 \ - 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/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/cpuid.h \ - arch/x86/include/asm/msr.h \ - $(wildcard include/config/TRACEPOINTS) \ - arch/x86/include/asm/cpumask.h \ - arch/x86/include/uapi/asm/msr.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 \ - arch/x86/include/asm/shared/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 \ - arch/x86/include/asm/shstk.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - include/linux/math64.h \ - $(wildcard include/config/ARCH_SUPPORTS_INT128) \ - include/vdso/math64.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/list.h \ - $(wildcard include/config/LIST_HARDENED) \ - $(wildcard include/config/DEBUG_LIST) \ - include/linux/poison.h \ - $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ - 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/DEBUG_NMI_SELFTEST) \ - arch/x86/include/generated/asm/mmiowb.h \ - include/asm-generic/mmiowb.h \ - $(wildcard include/config/MMIOWB) \ - include/linux/spinlock_types.h \ - include/linux/rwlock_types.h \ - 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 \ - 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/list_nulls.h \ - include/linux/wait.h \ - include/linux/seqlock.h \ - include/linux/mutex.h \ - $(wildcard include/config/DEBUG_MUTEXES) \ - include/linux/osq_lock.h \ - include/linux/debug_locks.h \ - include/linux/mutex_types.h \ - $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ - include/linux/seqlock_types.h \ - include/linux/nodemask.h \ - include/linux/nodemask_types.h \ - include/linux/random.h \ - $(wildcard include/config/VMGENID) \ - include/uapi/linux/random.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/prandom.h \ - include/linux/once.h \ - include/linux/pageblock-flags.h \ - $(wildcard include/config/HUGETLB_PAGE) \ - $(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_MM_DATA) \ - 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/kref.h \ - include/linux/refcount.h \ - include/linux/refcount_types.h \ - 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/RCU_STRICT_GRACE_PERIOD) \ - $(wildcard include/config/RCU_LAZY) \ - $(wildcard include/config/TASKS_RCU_GENERIC) \ - $(wildcard include/config/RCU_STALL_COMMON) \ - $(wildcard include/config/NO_HZ_FULL) \ - $(wildcard include/config/KVM_XFER_TO_GUEST_WORK) \ - $(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/context_tracking_irq.h \ - $(wildcard include/config/CONTEXT_TRACKING_IDLE) \ - include/linux/rcutree.h \ - include/linux/maple_tree.h \ - $(wildcard include/config/MAPLE_RCU_DISABLED) \ - $(wildcard include/config/DEBUG_MAPLE_TREE) \ - 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/NEED_SRCU_NMI_SAFE) \ - 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) \ - include/linux/ktime.h \ - include/linux/jiffies.h \ - include/linux/time.h \ - $(wildcard include/config/POSIX_TIMERS) \ - 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/tsc.h \ - include/vdso/time32.h \ - include/vdso/time.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/timer_types.h \ - include/linux/workqueue_types.h \ - 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/percpu_counter.h \ - include/linux/percpu.h \ - $(wildcard include/config/MODULES) \ - $(wildcard include/config/RANDOM_KMALLOC_CACHES) \ - $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ - 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/ARCH_USES_PG_ARCH_X) \ - $(wildcard include/config/HUGETLB_PAGE_OPTIMIZE_VMEMMAP) \ - include/linux/local_lock.h \ - include/linux/local_lock_internal.h \ - include/linux/zswap.h \ - $(wildcard include/config/ZSWAP) \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ - $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ - $(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/ACPI_CPPC_LIB) \ - $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ - arch/x86/include/asm/topology.h \ - $(wildcard include/config/SCHED_MC_PRIO) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/EISA) \ - $(wildcard include/config/X86_LOCAL_APIC) \ - $(wildcard include/config/X86_MPPARSE) \ - 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 \ - $(wildcard include/config/PCI) \ - 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/apicdef.h \ - include/asm-generic/topology.h \ - include/linux/cpu_smt.h \ - $(wildcard include/config/HOTPLUG_SMT) \ - include/linux/mmap_lock.h \ - include/linux/percpu-refcount.h \ - include/linux/bit_spinlock.h \ - include/linux/shrinker.h \ - $(wildcard include/config/SHRINKER_DEBUG) \ - 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/ARCH_STACKWALK) \ - $(wildcard include/config/STACKTRACE) \ - $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ - include/linux/stackdepot.h \ - $(wildcard include/config/STACKDEPOT) \ - $(wildcard include/config/STACKDEPOT_MAX_FRAMES) \ - $(wildcard include/config/STACKDEPOT_ALWAYS_INIT) \ - include/linux/page_ref.h \ - $(wildcard include/config/DEBUG_PAGE_REF) \ - 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/SCHED_CORE) \ - $(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/CGROUP_SCHED) \ - $(wildcard include/config/BLK_DEV_IO_TRACE) \ - $(wildcard include/config/COMPAT_BRK) \ - $(wildcard include/config/CGROUPS) \ - $(wildcard include/config/BLK_CGROUP) \ - $(wildcard include/config/PSI) \ - $(wildcard include/config/PAGE_OWNER) \ - $(wildcard include/config/EVENTFD) \ - $(wildcard include/config/ARCH_HAS_CPU_PASID) \ - $(wildcard include/config/CPU_SUP_INTEL) \ - $(wildcard include/config/TASK_DELAY_ACCT) \ - $(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/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/FAULT_INJECTION) \ - $(wildcard include/config/LATENCYTOP) \ - $(wildcard include/config/KUNIT) \ - $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ - $(wildcard include/config/MEMCG_KMEM) \ - $(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/RETHOOK) \ - $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ - $(wildcard include/config/RV) \ - $(wildcard include/config/USER_EVENTS) \ - include/uapi/linux/sched.h \ - include/linux/pid_types.h \ - include/linux/sem_types.h \ - include/linux/shm.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/kmsan_types.h \ - include/linux/plist_types.h \ - include/linux/hrtimer_types.h \ - include/linux/timerqueue_types.h \ - include/linux/seccomp_types.h \ - $(wildcard include/config/SECCOMP) \ - 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_types.h \ - include/linux/task_io_accounting.h \ - $(wildcard include/config/TASK_IO_ACCOUNTING) \ - include/linux/posix-timers_types.h \ - include/uapi/linux/rseq.h \ - include/linux/kcsan.h \ - include/linux/rv.h \ - $(wildcard include/config/RV_REACTORS) \ - include/linux/livepatch_sched.h \ - include/linux/uidgid_types.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/ARCH_HAS_NONLEAF_PMD_YOUNG) \ - $(wildcard include/config/ARCH_HAS_HW_PTE_YOUNG) \ - $(wildcard include/config/GUP_GET_PXX_LOW_HIGH) \ - $(wildcard include/config/ARCH_WANT_PMD_MKWRITE) \ - $(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) \ - $(wildcard include/config/PAGE_TABLE_CHECK) \ - arch/x86/include/asm/pkru.h \ - arch/x86/include/asm/fpu/api.h \ - $(wildcard include/config/X86_DEBUG_FPU) \ - arch/x86/include/asm/coco.h \ - include/asm-generic/pgtable_uffd.h \ - include/linux/page_table_check.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) \ - include/linux/kasan-enabled.h \ - include/linux/kasan-tags.h \ - include/linux/memremap.h \ - $(wildcard include/config/DEVICE_PRIVATE) \ - $(wildcard include/config/PCI_P2PDMA) \ - include/linux/ioport.h \ - include/linux/slab.h \ - $(wildcard include/config/SLUB_DEBUG) \ - $(wildcard include/config/SLUB_TINY) \ - $(wildcard include/config/FAILSLAB) \ - $(wildcard include/config/KFENCE) \ - include/linux/hash.h \ - $(wildcard include/config/HAVE_ARCH_HASH) \ - include/linux/huge_mm.h \ - $(wildcard include/config/READ_ONLY_THP_FOR_FS) \ - include/linux/sched/coredump.h \ - $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ - include/linux/fs.h \ - $(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/BLOCK) \ - include/linux/wait_bit.h \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/dcache.h \ - include/linux/rculist.h \ - $(wildcard include/config/PROVE_RCU_LIST) \ - 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/path.h \ - include/linux/stat.h \ - arch/x86/include/uapi/asm/stat.h \ - include/uapi/linux/stat.h \ - include/linux/uidgid.h \ - $(wildcard include/config/MULTIUSER) \ - $(wildcard include/config/USER_NS) \ - include/linux/highuid.h \ - include/linux/list_lru.h \ - include/linux/xarray.h \ - $(wildcard include/config/XARRAY_MULTI) \ - include/linux/sched/mm.h \ - $(wildcard include/config/MMU_LAZY_TLB_REFCOUNT) \ - $(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/radix-tree.h \ - include/linux/pid.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/ARCH_HAS_SUBPAGE_FAULTS) \ - 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_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/tlbflush.h \ - include/linux/mmu_notifier.h \ - include/linux/interval_tree.h \ - arch/x86/include/asm/invpcid.h \ - arch/x86/include/asm/pti.h \ - arch/x86/include/asm/uaccess_64.h \ - include/asm-generic/access_ok.h \ - $(wildcard include/config/ALTERNATE_USER_ADDRESS_SPACE) \ - include/linux/cred.h \ - 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/VFIO_PCI_ZDEV_KVM) \ - $(wildcard include/config/IOMMUFD) \ - $(wildcard include/config/WATCH_QUEUE) \ - include/linux/ratelimit.h \ - include/linux/posix-timers.h \ - include/linux/alarmtimer.h \ - $(wildcard include/config/RTC_CLASS) \ - 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/rcu_sync.h \ - include/linux/delayed_call.h \ - include/linux/uuid.h \ - include/linux/errseq.h \ - include/linux/ioprio.h \ - include/linux/sched/rt.h \ - include/linux/iocontext.h \ - $(wildcard include/config/BLK_ICQ) \ - 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/vmstat.h \ - $(wildcard include/config/VM_EVENT_COUNTERS) \ - $(wildcard include/config/DEBUG_TLBFLUSH) \ - $(wildcard include/config/PER_VMA_LOCK_STATS) \ - include/linux/vm_event_item.h \ - $(wildcard include/config/MEMORY_BALLOON) \ - $(wildcard include/config/BALLOON_COMPACTION) \ - include/asm-generic/cacheflush.h \ - 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/colin/develop/xc7k480t/xdma/linux-kernel/include/libxdma_api.h \ - include/linux/scatterlist.h \ - $(wildcard include/config/NEED_SG_DMA_LENGTH) \ - $(wildcard include/config/NEED_SG_DMA_FLAGS) \ - $(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) \ - arch/x86/include/asm/shared/io.h \ - include/asm-generic/io.h \ - $(wildcard include/config/GENERIC_IOMAP) \ - $(wildcard include/config/TRACE_MMIO_ACCESS) \ - $(wildcard include/config/GENERIC_IOREMAP) \ - $(wildcard include/config/HAS_IOPORT_MAP) \ - include/asm-generic/iomap.h \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ - $(wildcard include/config/GENERIC_PCI_IOMAP) \ - 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/hardirq.h \ - include/linux/context_tracking_state.h \ - $(wildcard include/config/CONTEXT_TRACKING_USER) \ - $(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 \ - $(wildcard include/config/HAVE_FUNCTION_DESCRIPTORS) \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.h \ - /home/colin/develop/xc7k480t/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/ARCH_USES_CFI_TRAPS) \ - $(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/ia32.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/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/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 \ - include/uapi/linux/unistd.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/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 \ - 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 \ - 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 \ - 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) \ - include/linux/cdev.h \ - include/linux/device.h \ - $(wildcard include/config/HAS_IOMEM) \ - $(wildcard include/config/GENERIC_MSI_IRQ) \ - $(wildcard include/config/ENERGY_MODEL) \ - $(wildcard include/config/PINCTRL) \ - $(wildcard include/config/DMA_OPS) \ - $(wildcard include/config/DMA_DECLARE_COHERENT) \ - $(wildcard include/config/DMA_CMA) \ - $(wildcard include/config/SWIOTLB) \ - $(wildcard include/config/SWIOTLB_DYNAMIC) \ - $(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/PM_SLEEP) \ - $(wildcard include/config/OF) \ - $(wildcard include/config/DEVTMPFS) \ - 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_CLUSTER) \ - $(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/CXL_SUSPEND) \ - $(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_DEVICE) \ - $(wildcard include/config/FB_FOREIGN_ENDIAN) \ - $(wildcard include/config/FB_BOTH_ENDIAN) \ - $(wildcard include/config/FB_BIG_ENDIAN) \ - $(wildcard include/config/FB_LITTLE_ENDIAN) \ - $(wildcard include/config/VIDEO_NOMODESET) \ - 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/KRETPROBE_ON_RETHOOK) \ - $(wildcard include/config/KPROBES_SANITY_TEST) \ - $(wildcard include/config/OPTPROBES) \ - $(wildcard include/config/KPROBES_ON_FTRACE) \ - include/linux/ftrace.h \ - $(wildcard include/config/HAVE_FUNCTION_GRAPH_RETVAL) \ - $(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_ARGS) \ - $(wildcard include/config/DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ - $(wildcard include/config/STACK_TRACER) \ - $(wildcard include/config/DYNAMIC_FTRACE_WITH_CALL_OPS) \ - $(wildcard include/config/FUNCTION_GRAPH_RETVAL) \ - $(wildcard include/config/FUNCTION_PROFILER) \ - $(wildcard include/config/FTRACE_SYSCALLS) \ - include/linux/trace_recursion.h \ - $(wildcard include/config/FTRACE_RECORD_RECURSION) \ - $(wildcard include/config/ARCH_WANTS_NO_INSTR) \ - 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/MEMFD_CREATE) \ - $(wildcard include/config/PID_NS) \ - include/linux/nsproxy.h \ - include/linux/ns_common.h \ - include/uapi/linux/ptrace.h \ - include/linux/seccomp.h \ - $(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/ia32_unistd.h \ - include/asm-generic/seccomp.h \ - arch/x86/include/asm/ftrace.h \ - $(wildcard include/config/HAVE_FENTRY) \ - include/linux/objpool.h \ - include/linux/rethook.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_TABLE_LIB) \ - $(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_THERMAL_LIB) \ - $(wildcard include/config/ACPI_HMAT) \ - $(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/SUSPEND) \ - $(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_PROCESSOR_IDLE) \ - $(wildcard include/config/ACPI_PPTT) \ - $(wildcard include/config/ACPI_PCC) \ - $(wildcard include/config/ACPI_FFH) \ - include/linux/resource_ext.h \ - include/linux/mod_devicetable.h \ - include/uapi/linux/mei.h \ - include/uapi/linux/mei_uuid.h \ - include/linux/property.h \ - include/linux/node.h \ - $(wildcard include/config/HMEM_REPORTING) \ - 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/linux/fw_table.h \ - $(wildcard include/config/CXL_BUS) \ - include/acpi/acpi_bus.h \ - $(wildcard include/config/X86_ANDROID_TABLETS) \ - $(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 \ - include/acpi/acpi_io.h \ - include/linux/io.h \ - arch/x86/include/asm/acpi.h \ - $(wildcard include/config/ACPI_APEI) \ - include/acpi/proc_cap_intel.h \ - arch/x86/include/asm/numa.h \ - $(wildcard include/config/NUMA_EMU) \ - arch/x86/include/asm/xen/hypervisor.h \ - $(wildcard include/config/XEN_PV_DOM0) \ - $(wildcard include/config/PVH) \ - $(wildcard include/config/XEN_PVH) \ - $(wildcard include/config/XEN_DOM0) \ - include/xen/xen.h \ - $(wildcard include/config/XEN_BALLOON) \ - $(wildcard include/config/XEN_UNPOPULATED_ALLOC) \ - include/xen/interface/hvm/start_info.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/emulate_prefix.h \ - include/linux/regulator/consumer.h \ - $(wildcard include/config/REGULATOR) \ - include/linux/suspend.h \ - $(wildcard include/config/VT) \ - $(wildcard include/config/HIBERNATION_SNAPSHOT_DEV) \ - $(wildcard include/config/PM_SLEEP_DEBUG) \ - $(wildcard include/config/PM_AUTOSLEEP) \ - include/linux/swap.h \ - $(wildcard include/config/THP_SWAP) \ - include/linux/memcontrol.h \ - include/linux/cgroup.h \ - $(wildcard include/config/DEBUG_CGROUP_REF) \ - $(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/string_helpers.h \ - include/linux/string_choices.h \ - include/linux/user_namespace.h \ - $(wildcard include/config/INOTIFY_USER) \ - $(wildcard include/config/FANOTIFY) \ - $(wildcard include/config/BINFMT_MISC) \ - $(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-defs.h \ - $(wildcard include/config/BPF_LSM) \ - 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/cgroup_refcnt.h \ - include/linux/page_counter.h \ - include/linux/vmpressure.h \ - include/linux/eventfd.h \ - include/uapi/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/cacheflush.h \ - include/linux/kmsan.h \ - include/linux/highmem-internal.h \ - include/linux/bio.h \ - include/linux/mempool.h \ - include/linux/pagemap.h \ - include/linux/hugetlb_inline.h \ - include/uapi/linux/mempolicy.h \ - include/linux/freezer.h \ - include/uapi/regulator/regulator.h \ - include/linux/rtmutex.h \ - $(wildcard include/config/DEBUG_RT_MUTEXES) \ - 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/irqdomain_defs.h \ - 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/uapi/linux/i2c.h \ - include/linux/backlight.h \ - $(wildcard include/config/BACKLIGHT_CLASS_DEVICE) \ - arch/x86/include/asm/fb.h \ - include/asm-generic/fb.h \ - 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_DOE) \ - $(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/msi_api.h \ - 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/VMD) \ - arch/x86/include/asm/memtype.h \ - include/linux/splice.h \ - include/linux/pipe_fs_i.h \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.h \ - $(wildcard include/config/BLOCK_ID) \ - /home/colin/develop/xc7k480t/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) \ - include/linux/static_call.h \ - include/linux/cpu.h \ - $(wildcard include/config/GENERIC_CPU_DEVICES) \ - $(wildcard include/config/PM_SLEEP_SMP) \ - $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ - $(wildcard include/config/ARCH_HAS_CPU_FINALIZE_INIT) \ - $(wildcard include/config/CPU_MITIGATIONS) \ - include/linux/cpuhotplug.h \ - $(wildcard include/config/HOTPLUG_CORE_SYNC_DEAD) \ - arch/x86/include/asm/static_call.h \ - include/trace/define_trace.h \ - arch/x86/include/asm/debugreg.h \ - arch/x86/include/uapi/asm/debugreg.h \ - arch/x86/include/asm/gsseg.h \ - include/asm-generic/mmu_context.h \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_sgdma.h \ - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_sgdma.o: $(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_sgdma.o) - -$(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_sgdma.o): - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_sgdma.o: $(wildcard ./tools/objtool/objtool) diff --git a/xdma/linux-kernel/xdma/.cdev_xvc.o.cmd b/xdma/linux-kernel/xdma/.cdev_xvc.o.cmd deleted file mode 100644 index 2cc5056..0000000 --- a/xdma/linux-kernel/xdma/.cdev_xvc.o.cmd +++ /dev/null @@ -1,1526 +0,0 @@ -savedcmd_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_xvc.o := gcc-12 -Wp,-MMD,/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/.cdev_xvc.o.d -nostdinc -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=./= -std=gnu11 -fshort-wchar -funsigned-char -fno-common -fno-PIE -fno-strict-aliasing -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 -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mindirect-branch-cs-prefix -mfunction-return=thunk-extern -fno-jump-tables -mharden-sls=all -fpatchable-function-entry=16,16 -fno-delete-null-pointer-checks -O2 -fno-allow-store-data-races -fstack-protector-strong -fno-omit-frame-pointer -fno-optimize-sibling-calls -ftrivial-auto-var-init=zero -fno-stack-clash-protection -fzero-call-used-regs=used-gpr -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -falign-functions=16 -fno-strict-overflow -fno-stack-check -fconserve-stack -Wall -Wundef -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Werror=strict-prototypes -Wno-format-security -Wno-trigraphs -Wno-frame-address -Wno-address-of-packed-member -Wmissing-declarations -Wmissing-prototypes -Wframe-larger-than=1024 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-overflow -Wno-array-bounds -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wenum-conversion -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-restrict -Wno-packed-not-aligned -Wno-format-overflow -Wno-format-truncation -Wno-stringop-truncation -Wno-override-init -Wno-missing-field-initializers -Wno-type-limits -Wno-shift-negative-value -Wno-maybe-uninitialized -Wno-sign-compare -g -gdwarf-5 -I/home/colin/develop/xc7k480t/xdma/linux-kernel/include -fsanitize=bounds-strict -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"cdev_xvc"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_xvc.o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_xvc.c ; ./tools/objtool/objtool --hacks=jump_label --hacks=noinstr --hacks=skylake --retpoline --rethunk --sls --stackval --static-call --uaccess --prefix=16 --module /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_xvc.o - -source_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_xvc.o := /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_xvc.c - -deps_/home/colin/develop/xc7k480t/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/DEBUG_INFO_BTF) \ - $(wildcard include/config/PAHOLE_HAS_BTF_TAG) \ - $(wildcard include/config/FUNCTION_ALIGNMENT) \ - $(wildcard include/config/CC_IS_GCC) \ - $(wildcard include/config/X86_64) \ - $(wildcard include/config/ARM64) \ - $(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/GCC_ASM_GOTO_OUTPUT_WORKAROUND) \ - $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ - $(wildcard include/config/SHADOW_CALL_STACK) \ - $(wildcard include/config/KCOV) \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.h \ - include/linux/kernel.h \ - $(wildcard include/config/PREEMPT_VOLUNTARY_BUILD) \ - $(wildcard include/config/PREEMPT_DYNAMIC) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_CALL) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_KEY) \ - $(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/array_size.h \ - include/linux/compiler.h \ - $(wildcard include/config/TRACE_BRANCH_PROFILING) \ - $(wildcard include/config/PROFILE_ALL_BRANCHES) \ - $(wildcard include/config/OBJTOOL) \ - 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_WEAK_MEMORY) \ - $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ - 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) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/CALL_PADDING) \ - $(wildcard include/config/RETHUNK) \ - $(wildcard include/config/SLS) \ - $(wildcard include/config/FUNCTION_PADDING_BYTES) \ - $(wildcard include/config/UML) \ - arch/x86/include/asm/ibt.h \ - $(wildcard include/config/X86_KERNEL_IBT) \ - include/linux/container_of.h \ - include/linux/build_bug.h \ - include/linux/bitops.h \ - include/linux/bits.h \ - include/vdso/bits.h \ - include/linux/typecheck.h \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.h \ - include/asm-generic/bitops/generic-non-atomic.h \ - arch/x86/include/asm/barrier.h \ - arch/x86/include/asm/alternative.h \ - $(wildcard include/config/CALL_THUNKS) \ - 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/asm-generic/barrier.h \ - arch/x86/include/asm/bitops.h \ - $(wildcard include/config/X86_CMOV) \ - arch/x86/include/asm/rmwcc.h \ - include/linux/args.h \ - 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_P6_NOP) \ - $(wildcard include/config/MATOM) \ - $(wildcard include/config/PARAVIRT_XXL) \ - arch/x86/include/asm/disabled-features.h \ - $(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/CALL_DEPTH_TRACKING) \ - $(wildcard include/config/ADDRESS_MASKING) \ - $(wildcard include/config/INTEL_IOMMU_SVM) \ - $(wildcard include/config/X86_SGX) \ - $(wildcard include/config/XEN_PV) \ - $(wildcard include/config/INTEL_TDX_GUEST) \ - $(wildcard include/config/X86_USER_SHADOW_STACK) \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/instrumented-atomic.h \ - include/linux/instrumented.h \ - include/linux/kmsan-checks.h \ - $(wildcard include/config/KMSAN) \ - 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/hex.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/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/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_raw.h \ - $(wildcard include/config/DEBUG_SPINLOCK) \ - $(wildcard include/config/DEBUG_LOCK_ALLOC) \ - 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/LOCKDEP) \ - $(wildcard include/config/LOCK_STAT) \ - 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 \ - $(wildcard include/config/HAVE_JUMP_LABEL_HACK) \ - include/linux/sprintf.h \ - include/linux/static_call_types.h \ - $(wildcard include/config/HAVE_STATIC_CALL) \ - $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ - include/linux/instruction_pointer.h \ - include/linux/uaccess.h \ - $(wildcard include/config/PREEMPT_COUNT) \ - $(wildcard include/config/ARCH_HAS_SUBPAGE_FAULTS) \ - $(wildcard include/config/HARDENED_USERCOPY) \ - include/linux/fault-inject-usercopy.h \ - $(wildcard include/config/FAULT_INJECTION_USERCOPY) \ - include/linux/sched.h \ - $(wildcard include/config/PREEMPT_RT) \ - $(wildcard include/config/VIRT_CPU_ACCOUNTING_NATIVE) \ - $(wildcard include/config/SCHED_INFO) \ - $(wildcard include/config/SCHEDSTATS) \ - $(wildcard include/config/SCHED_CORE) \ - $(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/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/MEMCG) \ - $(wildcard include/config/LRU_GEN) \ - $(wildcard include/config/COMPAT_BRK) \ - $(wildcard include/config/CGROUPS) \ - $(wildcard include/config/BLK_CGROUP) \ - $(wildcard include/config/PSI) \ - $(wildcard include/config/PAGE_OWNER) \ - $(wildcard include/config/EVENTFD) \ - $(wildcard include/config/ARCH_HAS_CPU_PASID) \ - $(wildcard include/config/CPU_SUP_INTEL) \ - $(wildcard include/config/TASK_DELAY_ACCT) \ - $(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/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/SCHED_MM_CID) \ - $(wildcard include/config/FAULT_INJECTION) \ - $(wildcard include/config/LATENCYTOP) \ - $(wildcard include/config/KUNIT) \ - $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ - $(wildcard include/config/MEMCG_KMEM) \ - $(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/RETHOOK) \ - $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ - $(wildcard include/config/RV) \ - $(wildcard include/config/USER_EVENTS) \ - $(wildcard include/config/PREEMPTION) \ - include/uapi/linux/sched.h \ - arch/x86/include/asm/current.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) \ - 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) \ - arch/x86/include/asm/processor.h \ - $(wildcard include/config/X86_VMX_FEATURE_NAMES) \ - $(wildcard include/config/X86_IOPL_IOPERM) \ - $(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) \ - arch/x86/include/asm/mem_encrypt.h \ - $(wildcard include/config/X86_MEM_ENCRYPT) \ - include/linux/cc_platform.h \ - $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ - 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 \ - 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/ZERO_CALL_USED_REGS) \ - $(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/CALL_THUNKS_DEBUG) \ - $(wildcard include/config/NOINSTR_VALIDATION) \ - $(wildcard include/config/CPU_SRSO) \ - $(wildcard include/config/CPU_IBPB_ENTRY) \ - include/linux/static_key.h \ - include/linux/objtool.h \ - $(wildcard include/config/FRAME_POINTER) \ - include/linux/objtool_types.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/asm-offsets.h \ - include/generated/asm-offsets.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/cpuid.h \ - arch/x86/include/asm/string.h \ - arch/x86/include/asm/string_64.h \ - $(wildcard include/config/ARCH_HAS_UACCESS_FLUSHCACHE) \ - arch/x86/include/asm/paravirt.h \ - $(wildcard include/config/PARAVIRT_SPINLOCKS) \ - $(wildcard include/config/DEBUG_ENTRY) \ - 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/FORCE_NR_CPUS) \ - $(wildcard include/config/HOTPLUG_CPU) \ - $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ - $(wildcard include/config/CPUMASK_OFFSTACK) \ - include/linux/bitmap.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/find.h \ - include/linux/string.h \ - $(wildcard include/config/BINARY_PRINTF) \ - $(wildcard include/config/FORTIFY_SOURCE) \ - include/linux/err.h \ - include/linux/overflow.h \ - include/uapi/linux/string.h \ - include/linux/fortify-string.h \ - $(wildcard include/config/CC_HAS_KASAN_MEMINTRINSIC_PREFIX) \ - $(wildcard include/config/GENERIC_ENTRY) \ - include/linux/bitmap-str.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/gfp_types.h \ - $(wildcard include/config/KASAN_HW_TAGS) \ - include/linux/numa.h \ - $(wildcard include/config/NODES_SHIFT) \ - $(wildcard include/config/HAVE_ARCH_NODE_DEV_GROUP) \ - arch/x86/include/asm/frame.h \ - arch/x86/include/asm/page.h \ - arch/x86/include/asm/page_64.h \ - $(wildcard include/config/DEBUG_VIRTUAL) \ - $(wildcard include/config/X86_VSYSCALL_EMULATION) \ - include/linux/range.h \ - include/asm-generic/memory_model.h \ - $(wildcard include/config/FLATMEM) \ - $(wildcard include/config/SPARSEMEM_VMEMMAP) \ - include/linux/pfn.h \ - include/asm-generic/getorder.h \ - arch/x86/include/asm/msr.h \ - $(wildcard include/config/TRACEPOINTS) \ - arch/x86/include/asm/cpumask.h \ - arch/x86/include/uapi/asm/msr.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 \ - arch/x86/include/asm/shared/msr.h \ - include/linux/tracepoint-defs.h \ - arch/x86/include/asm/special_insns.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) \ - include/linux/irqflags_types.h \ - include/linux/cleanup.h \ - 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 \ - arch/x86/include/asm/shstk.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - include/linux/math64.h \ - $(wildcard include/config/ARCH_SUPPORTS_INT128) \ - include/vdso/math64.h \ - include/linux/thread_info.h \ - $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ - $(wildcard include/config/SH) \ - include/linux/restart_block.h \ - arch/x86/include/asm/thread_info.h \ - arch/x86/include/asm/cpufeature.h \ - include/linux/preempt.h \ - $(wildcard include/config/TRACE_PREEMPT_TOGGLE) \ - $(wildcard include/config/PREEMPT_NONE) \ - $(wildcard include/config/PREEMPT_VOLUNTARY) \ - $(wildcard include/config/PREEMPT) \ - arch/x86/include/asm/preempt.h \ - include/linux/smp_types.h \ - include/linux/llist.h \ - $(wildcard include/config/ARCH_HAVE_NMI_SAFE_CMPXCHG) \ - include/linux/pid_types.h \ - include/linux/sem_types.h \ - include/linux/shm.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/kmsan_types.h \ - include/linux/mutex_types.h \ - $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ - include/linux/osq_lock.h \ - include/linux/spinlock_types.h \ - include/linux/rwlock_types.h \ - include/linux/plist_types.h \ - include/linux/hrtimer_types.h \ - include/linux/timerqueue_types.h \ - include/linux/rbtree_types.h \ - include/linux/timer_types.h \ - include/linux/seccomp_types.h \ - $(wildcard include/config/SECCOMP) \ - include/linux/nodemask_types.h \ - include/linux/refcount_types.h \ - include/linux/resource.h \ - include/uapi/linux/resource.h \ - include/uapi/linux/time_types.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_types.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_types.h \ - $(wildcard include/config/POSIX_TIMERS) \ - include/uapi/linux/rseq.h \ - include/linux/seqlock_types.h \ - include/linux/kcsan.h \ - include/linux/rv.h \ - $(wildcard include/config/RV_REACTORS) \ - include/linux/livepatch_sched.h \ - include/linux/uidgid_types.h \ - arch/x86/include/generated/asm/kmap_size.h \ - include/asm-generic/kmap_size.h \ - $(wildcard include/config/DEBUG_KMAP_LOCAL) \ - include/linux/spinlock.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/list.h \ - $(wildcard include/config/LIST_HARDENED) \ - $(wildcard include/config/DEBUG_LIST) \ - include/linux/poison.h \ - $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ - arch/x86/include/asm/smp.h \ - $(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 \ - 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) \ - arch/x86/include/asm/uaccess.h \ - $(wildcard include/config/CC_HAS_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) \ - include/linux/mm_types.h \ - $(wildcard include/config/HAVE_ALIGNED_STRUCT_PAGE) \ - $(wildcard include/config/USERFAULTFD) \ - $(wildcard include/config/ANON_VMA_NAME) \ - $(wildcard include/config/PER_VMA_LOCK) \ - $(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_MM_DATA) \ - $(wildcard include/config/KSM) \ - $(wildcard include/config/LRU_GEN_WALKS_MMU) \ - include/linux/auxvec.h \ - include/uapi/linux/auxvec.h \ - arch/x86/include/uapi/asm/auxvec.h \ - include/linux/kref.h \ - include/linux/refcount.h \ - include/linux/rbtree.h \ - include/linux/rcupdate.h \ - $(wildcard include/config/TINY_RCU) \ - $(wildcard include/config/RCU_STRICT_GRACE_PERIOD) \ - $(wildcard include/config/RCU_LAZY) \ - $(wildcard include/config/TASKS_RCU_GENERIC) \ - $(wildcard include/config/RCU_STALL_COMMON) \ - $(wildcard include/config/KVM_XFER_TO_GUEST_WORK) \ - $(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/context_tracking_irq.h \ - $(wildcard include/config/CONTEXT_TRACKING_IDLE) \ - include/linux/rcutree.h \ - include/linux/maple_tree.h \ - $(wildcard include/config/MAPLE_RCU_DISABLED) \ - $(wildcard include/config/DEBUG_MAPLE_TREE) \ - 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/wait.h \ - include/linux/uprobes.h \ - arch/x86/include/asm/uprobes.h \ - include/linux/notifier.h \ - $(wildcard include/config/TREE_SRCU) \ - include/linux/mutex.h \ - include/linux/debug_locks.h \ - include/linux/srcu.h \ - $(wildcard include/config/TINY_SRCU) \ - $(wildcard include/config/NEED_SRCU_NMI_SAFE) \ - 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) \ - include/linux/ktime.h \ - include/linux/jiffies.h \ - include/linux/time.h \ - include/linux/time64.h \ - include/vdso/time64.h \ - include/uapi/linux/time.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/tsc.h \ - include/vdso/time32.h \ - include/vdso/time.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/workqueue_types.h \ - 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 \ - include/generated/bounds.h \ - include/linux/seqlock.h \ - include/linux/percpu_counter.h \ - include/linux/percpu.h \ - $(wildcard include/config/MODULES) \ - $(wildcard include/config/RANDOM_KMALLOC_CACHES) \ - $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ - include/linux/mmdebug.h \ - $(wildcard include/config/DEBUG_VM) \ - $(wildcard include/config/DEBUG_VM_IRQSOFF) \ - $(wildcard include/config/DEBUG_VM_PGFLAGS) \ - arch/x86/include/asm/mmu.h \ - $(wildcard include/config/MODIFY_LDT_SYSCALL) \ - include/linux/mmap_lock.h \ - arch/x86/include/asm/smap.h \ - arch/x86/include/asm/extable.h \ - $(wildcard include/config/BPF_JIT) \ - arch/x86/include/asm/tlbflush.h \ - include/linux/mmu_notifier.h \ - include/linux/interval_tree.h \ - arch/x86/include/asm/invpcid.h \ - arch/x86/include/asm/pti.h \ - arch/x86/include/asm/pgtable.h \ - $(wildcard include/config/DEBUG_WX) \ - $(wildcard include/config/HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD) \ - $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ - $(wildcard include/config/HAVE_ARCH_SOFT_DIRTY) \ - $(wildcard include/config/ARCH_ENABLE_THP_MIGRATION) \ - $(wildcard include/config/PAGE_TABLE_CHECK) \ - arch/x86/include/asm/x86_init.h \ - arch/x86/include/uapi/asm/bootparam.h \ - include/linux/screen_info.h \ - $(wildcard include/config/PCI) \ - 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/pkru.h \ - arch/x86/include/asm/fpu/api.h \ - $(wildcard include/config/X86_DEBUG_FPU) \ - arch/x86/include/asm/coco.h \ - include/asm-generic/pgtable_uffd.h \ - include/linux/page_table_check.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_LOCAL_APIC) \ - $(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/asm/apicdef.h \ - arch/x86/include/uapi/asm/vsyscall.h \ - include/asm-generic/fixmap.h \ - arch/x86/include/asm/pgtable-invert.h \ - arch/x86/include/asm/uaccess_64.h \ - include/asm-generic/access_ok.h \ - $(wildcard include/config/ALTERNATE_USER_ADDRESS_SPACE) \ - /home/colin/develop/xc7k480t/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/ARCH_USES_CFI_TRAPS) \ - $(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/stat.h \ - arch/x86/include/uapi/asm/stat.h \ - include/uapi/linux/stat.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/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/CONTIG_ALLOC) \ - include/linux/mmzone.h \ - $(wildcard include/config/ARCH_FORCE_MAX_ORDER) \ - $(wildcard include/config/CMA) \ - $(wildcard include/config/MEMORY_ISOLATION) \ - $(wildcard include/config/ZSMALLOC) \ - $(wildcard include/config/UNACCEPTED_MEMORY) \ - $(wildcard include/config/LRU_GEN_STATS) \ - $(wildcard include/config/MEMORY_HOTPLUG) \ - $(wildcard include/config/MEMORY_FAILURE) \ - $(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/list_nulls.h \ - include/linux/nodemask.h \ - include/linux/random.h \ - $(wildcard include/config/VMGENID) \ - include/uapi/linux/random.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/prandom.h \ - include/linux/once.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/PAGE_IDLE_FLAG) \ - $(wildcard include/config/ARCH_USES_PG_ARCH_X) \ - $(wildcard include/config/HUGETLB_PAGE_OPTIMIZE_VMEMMAP) \ - include/linux/local_lock.h \ - include/linux/local_lock_internal.h \ - include/linux/zswap.h \ - $(wildcard include/config/ZSWAP) \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ - $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ - $(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/ACPI_CPPC_LIB) \ - $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ - arch/x86/include/asm/topology.h \ - $(wildcard include/config/SCHED_MC_PRIO) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/EISA) \ - $(wildcard include/config/X86_MPPARSE) \ - arch/x86/include/asm/mpspec_def.h \ - include/asm-generic/topology.h \ - include/linux/cpu_smt.h \ - $(wildcard include/config/HOTPLUG_SMT) \ - 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/ia32.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/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/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/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/FS_DAX) \ - $(wildcard include/config/BLOCK) \ - include/linux/wait_bit.h \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/dcache.h \ - include/linux/rculist.h \ - $(wildcard include/config/PROVE_RCU_LIST) \ - 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) \ - 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 \ - include/linux/shrinker.h \ - $(wildcard include/config/SHRINKER_DEBUG) \ - include/linux/xarray.h \ - $(wildcard include/config/XARRAY_MULTI) \ - include/linux/sched/mm.h \ - $(wildcard include/config/MMU_LAZY_TLB_REFCOUNT) \ - $(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/radix-tree.h \ - include/linux/pid.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) \ - $(wildcard include/config/STACK_GROWSUP) \ - 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 \ - 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/VFIO_PCI_ZDEV_KVM) \ - $(wildcard include/config/IOMMUFD) \ - $(wildcard include/config/WATCH_QUEUE) \ - include/linux/ratelimit.h \ - include/linux/posix-timers.h \ - include/linux/alarmtimer.h \ - $(wildcard include/config/RTC_CLASS) \ - 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/rcu_sync.h \ - include/linux/delayed_call.h \ - include/linux/uuid.h \ - include/linux/errseq.h \ - include/linux/ioprio.h \ - include/linux/sched/rt.h \ - include/linux/iocontext.h \ - $(wildcard include/config/BLK_ICQ) \ - include/uapi/linux/ioprio.h \ - include/linux/fs_types.h \ - include/linux/mount.h \ - include/linux/mnt_idmapping.h \ - include/linux/slab.h \ - $(wildcard include/config/SLUB_DEBUG) \ - $(wildcard include/config/SLUB_TINY) \ - $(wildcard include/config/FAILSLAB) \ - $(wildcard include/config/KFENCE) \ - include/linux/percpu-refcount.h \ - include/linux/kasan.h \ - $(wildcard include/config/KASAN_STACK) \ - $(wildcard include/config/KASAN_VMALLOC) \ - include/linux/kasan-enabled.h \ - include/linux/kasan-tags.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/uapi/linux/aio_abi.h \ - include/uapi/linux/unistd.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/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 \ - 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 \ - 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 \ - 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) \ - include/linux/cdev.h \ - include/linux/device.h \ - $(wildcard include/config/HAS_IOMEM) \ - $(wildcard include/config/GENERIC_MSI_IRQ) \ - $(wildcard include/config/ENERGY_MODEL) \ - $(wildcard include/config/PINCTRL) \ - $(wildcard include/config/DMA_OPS) \ - $(wildcard include/config/DMA_DECLARE_COHERENT) \ - $(wildcard include/config/DMA_CMA) \ - $(wildcard include/config/SWIOTLB) \ - $(wildcard include/config/SWIOTLB_DYNAMIC) \ - $(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/PM_SLEEP) \ - $(wildcard include/config/OF) \ - $(wildcard include/config/DEVTMPFS) \ - 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_CLUSTER) \ - $(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/CXL_SUSPEND) \ - $(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/sizes.h \ - include/linux/dma-direction.h \ - include/linux/scatterlist.h \ - $(wildcard include/config/NEED_SG_DMA_LENGTH) \ - $(wildcard include/config/NEED_SG_DMA_FLAGS) \ - $(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/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_MTE) \ - $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ - $(wildcard include/config/SHMEM) \ - $(wildcard include/config/MIGRATION) \ - $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ - $(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/ARCH_WANT_OPTIMIZE_DAX_VMEMMAP) \ - $(wildcard include/config/HUGETLBFS) \ - $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ - include/linux/page_ext.h \ - include/linux/stacktrace.h \ - $(wildcard include/config/ARCH_STACKWALK) \ - $(wildcard include/config/STACKTRACE) \ - $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ - include/linux/stackdepot.h \ - $(wildcard include/config/STACKDEPOT) \ - $(wildcard include/config/STACKDEPOT_MAX_FRAMES) \ - $(wildcard include/config/STACKDEPOT_ALWAYS_INIT) \ - include/linux/page_ref.h \ - $(wildcard include/config/DEBUG_PAGE_REF) \ - include/linux/pgtable.h \ - $(wildcard include/config/HIGHPTE) \ - $(wildcard include/config/ARCH_HAS_NONLEAF_PMD_YOUNG) \ - $(wildcard include/config/ARCH_HAS_HW_PTE_YOUNG) \ - $(wildcard include/config/GUP_GET_PXX_LOW_HIGH) \ - $(wildcard include/config/ARCH_WANT_PMD_MKWRITE) \ - $(wildcard include/config/HAVE_ARCH_HUGE_VMAP) \ - $(wildcard include/config/X86_ESPFIX64) \ - include/linux/memremap.h \ - $(wildcard include/config/DEVICE_PRIVATE) \ - $(wildcard include/config/PCI_P2PDMA) \ - include/linux/huge_mm.h \ - include/linux/sched/coredump.h \ - $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ - include/linux/vmstat.h \ - $(wildcard include/config/VM_EVENT_COUNTERS) \ - $(wildcard include/config/DEBUG_TLBFLUSH) \ - $(wildcard include/config/PER_VMA_LOCK_STATS) \ - 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) \ - arch/x86/include/asm/shared/io.h \ - include/asm-generic/io.h \ - $(wildcard include/config/GENERIC_IOMAP) \ - $(wildcard include/config/TRACE_MMIO_ACCESS) \ - $(wildcard include/config/GENERIC_IOREMAP) \ - $(wildcard include/config/HAS_IOPORT_MAP) \ - include/asm-generic/iomap.h \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ - $(wildcard include/config/GENERIC_PCI_IOMAP) \ - 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_DEVICE) \ - $(wildcard include/config/FB_FOREIGN_ENDIAN) \ - $(wildcard include/config/FB_BOTH_ENDIAN) \ - $(wildcard include/config/FB_BIG_ENDIAN) \ - $(wildcard include/config/FB_LITTLE_ENDIAN) \ - $(wildcard include/config/VIDEO_NOMODESET) \ - 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/KRETPROBE_ON_RETHOOK) \ - $(wildcard include/config/KPROBES_SANITY_TEST) \ - $(wildcard include/config/OPTPROBES) \ - $(wildcard include/config/KPROBES_ON_FTRACE) \ - include/linux/ftrace.h \ - $(wildcard include/config/HAVE_FUNCTION_GRAPH_RETVAL) \ - $(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_ARGS) \ - $(wildcard include/config/DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ - $(wildcard include/config/STACK_TRACER) \ - $(wildcard include/config/DYNAMIC_FTRACE_WITH_CALL_OPS) \ - $(wildcard include/config/FUNCTION_GRAPH_RETVAL) \ - $(wildcard include/config/FUNCTION_PROFILER) \ - $(wildcard include/config/FTRACE_SYSCALLS) \ - include/linux/trace_recursion.h \ - $(wildcard include/config/FTRACE_RECORD_RECURSION) \ - $(wildcard include/config/ARCH_WANTS_NO_INSTR) \ - 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/hardirq.h \ - include/linux/context_tracking_state.h \ - $(wildcard include/config/CONTEXT_TRACKING_USER) \ - $(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 \ - $(wildcard include/config/HAVE_FUNCTION_DESCRIPTORS) \ - 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/MEMFD_CREATE) \ - $(wildcard include/config/PID_NS) \ - include/linux/nsproxy.h \ - include/linux/ns_common.h \ - include/uapi/linux/ptrace.h \ - include/linux/seccomp.h \ - $(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/ia32_unistd.h \ - include/asm-generic/seccomp.h \ - arch/x86/include/asm/ftrace.h \ - $(wildcard include/config/HAVE_FENTRY) \ - include/linux/objpool.h \ - include/linux/rethook.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_TABLE_LIB) \ - $(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_THERMAL_LIB) \ - $(wildcard include/config/ACPI_HMAT) \ - $(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/SUSPEND) \ - $(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_PROCESSOR_IDLE) \ - $(wildcard include/config/ACPI_PPTT) \ - $(wildcard include/config/ACPI_PCC) \ - $(wildcard include/config/ACPI_FFH) \ - include/linux/resource_ext.h \ - include/linux/mod_devicetable.h \ - include/uapi/linux/mei.h \ - include/uapi/linux/mei_uuid.h \ - include/linux/property.h \ - include/linux/node.h \ - $(wildcard include/config/HMEM_REPORTING) \ - 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/linux/fw_table.h \ - $(wildcard include/config/CXL_BUS) \ - include/acpi/acpi_bus.h \ - $(wildcard include/config/X86_ANDROID_TABLETS) \ - $(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 \ - include/acpi/acpi_io.h \ - include/linux/io.h \ - arch/x86/include/asm/acpi.h \ - $(wildcard include/config/ACPI_APEI) \ - include/acpi/proc_cap_intel.h \ - arch/x86/include/asm/numa.h \ - $(wildcard include/config/NUMA_EMU) \ - arch/x86/include/asm/xen/hypervisor.h \ - $(wildcard include/config/XEN_PV_DOM0) \ - $(wildcard include/config/PVH) \ - $(wildcard include/config/XEN_PVH) \ - $(wildcard include/config/XEN_DOM0) \ - include/xen/xen.h \ - $(wildcard include/config/XEN_BALLOON) \ - $(wildcard include/config/XEN_UNPOPULATED_ALLOC) \ - include/xen/interface/hvm/start_info.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/emulate_prefix.h \ - include/linux/regulator/consumer.h \ - $(wildcard include/config/REGULATOR) \ - include/linux/suspend.h \ - $(wildcard include/config/VT) \ - $(wildcard include/config/HIBERNATION_SNAPSHOT_DEV) \ - $(wildcard include/config/PM_SLEEP_DEBUG) \ - $(wildcard include/config/PM_AUTOSLEEP) \ - include/linux/swap.h \ - $(wildcard include/config/THP_SWAP) \ - include/linux/memcontrol.h \ - include/linux/cgroup.h \ - $(wildcard include/config/DEBUG_CGROUP_REF) \ - $(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/string_helpers.h \ - include/linux/string_choices.h \ - include/linux/user_namespace.h \ - $(wildcard include/config/INOTIFY_USER) \ - $(wildcard include/config/FANOTIFY) \ - $(wildcard include/config/BINFMT_MISC) \ - $(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-defs.h \ - $(wildcard include/config/BPF_LSM) \ - 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/cgroup_refcnt.h \ - include/linux/page_counter.h \ - include/linux/vmpressure.h \ - include/linux/eventfd.h \ - include/uapi/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/cacheflush.h \ - arch/x86/include/asm/cacheflush.h \ - include/asm-generic/cacheflush.h \ - include/linux/kmsan.h \ - include/linux/highmem-internal.h \ - include/linux/bio.h \ - include/linux/mempool.h \ - include/linux/pagemap.h \ - include/linux/hugetlb_inline.h \ - include/uapi/linux/mempolicy.h \ - include/linux/freezer.h \ - include/uapi/regulator/regulator.h \ - include/linux/rtmutex.h \ - $(wildcard include/config/DEBUG_RT_MUTEXES) \ - 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/irqdomain_defs.h \ - 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/uapi/linux/i2c.h \ - include/linux/backlight.h \ - $(wildcard include/config/BACKLIGHT_CLASS_DEVICE) \ - arch/x86/include/asm/fb.h \ - include/asm-generic/fb.h \ - 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_DOE) \ - $(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/msi_api.h \ - 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/VMD) \ - arch/x86/include/asm/memtype.h \ - include/linux/aio.h \ - include/linux/splice.h \ - include/linux/pipe_fs_i.h \ - include/generated/uapi/linux/version.h \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.h \ - $(wildcard include/config/BLOCK_ID) \ - /home/colin/develop/xc7k480t/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) \ - include/linux/static_call.h \ - include/linux/cpu.h \ - $(wildcard include/config/GENERIC_CPU_DEVICES) \ - $(wildcard include/config/PM_SLEEP_SMP) \ - $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ - $(wildcard include/config/ARCH_HAS_CPU_FINALIZE_INIT) \ - $(wildcard include/config/CPU_MITIGATIONS) \ - include/linux/cpuhotplug.h \ - $(wildcard include/config/HOTPLUG_CORE_SYNC_DEAD) \ - arch/x86/include/asm/static_call.h \ - include/trace/define_trace.h \ - arch/x86/include/asm/debugreg.h \ - arch/x86/include/uapi/asm/debugreg.h \ - arch/x86/include/asm/gsseg.h \ - include/asm-generic/mmu_context.h \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_xvc.h \ - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_xvc.o: $(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_xvc.o) - -$(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_xvc.o): - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_xvc.o: $(wildcard ./tools/objtool/objtool) diff --git a/xdma/linux-kernel/xdma/.libxdma.o.cmd b/xdma/linux-kernel/xdma/.libxdma.o.cmd deleted file mode 100644 index 8269813..0000000 --- a/xdma/linux-kernel/xdma/.libxdma.o.cmd +++ /dev/null @@ -1,1265 +0,0 @@ -savedcmd_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.o := gcc-12 -Wp,-MMD,/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/.libxdma.o.d -nostdinc -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=./= -std=gnu11 -fshort-wchar -funsigned-char -fno-common -fno-PIE -fno-strict-aliasing -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 -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mindirect-branch-cs-prefix -mfunction-return=thunk-extern -fno-jump-tables -mharden-sls=all -fpatchable-function-entry=16,16 -fno-delete-null-pointer-checks -O2 -fno-allow-store-data-races -fstack-protector-strong -fno-omit-frame-pointer -fno-optimize-sibling-calls -ftrivial-auto-var-init=zero -fno-stack-clash-protection -fzero-call-used-regs=used-gpr -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -falign-functions=16 -fno-strict-overflow -fno-stack-check -fconserve-stack -Wall -Wundef -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Werror=strict-prototypes -Wno-format-security -Wno-trigraphs -Wno-frame-address -Wno-address-of-packed-member -Wmissing-declarations -Wmissing-prototypes -Wframe-larger-than=1024 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-overflow -Wno-array-bounds -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wenum-conversion -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-restrict -Wno-packed-not-aligned -Wno-format-overflow -Wno-format-truncation -Wno-stringop-truncation -Wno-override-init -Wno-missing-field-initializers -Wno-type-limits -Wno-shift-negative-value -Wno-maybe-uninitialized -Wno-sign-compare -g -gdwarf-5 -I/home/colin/develop/xc7k480t/xdma/linux-kernel/include -fsanitize=bounds-strict -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"libxdma"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.c ; ./tools/objtool/objtool --hacks=jump_label --hacks=noinstr --hacks=skylake --retpoline --rethunk --sls --stackval --static-call --uaccess --prefix=16 --module /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.o - -source_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.o := /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.c - -deps_/home/colin/develop/xc7k480t/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/DEBUG_INFO_BTF) \ - $(wildcard include/config/PAHOLE_HAS_BTF_TAG) \ - $(wildcard include/config/FUNCTION_ALIGNMENT) \ - $(wildcard include/config/CC_IS_GCC) \ - $(wildcard include/config/X86_64) \ - $(wildcard include/config/ARM64) \ - $(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/GCC_ASM_GOTO_OUTPUT_WORKAROUND) \ - $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ - $(wildcard include/config/SHADOW_CALL_STACK) \ - $(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/ARCH_USES_CFI_TRAPS) \ - $(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/KUNIT) \ - $(wildcard include/config/PRINTK_INDEX) \ - $(wildcard include/config/MODULE_UNLOAD) \ - $(wildcard include/config/CONSTRUCTORS) \ - $(wildcard include/config/FUNCTION_ERROR_INJECTION) \ - $(wildcard include/config/DYNAMIC_DEBUG_CORE) \ - include/linux/list.h \ - $(wildcard include/config/LIST_HARDENED) \ - $(wildcard include/config/DEBUG_LIST) \ - include/linux/container_of.h \ - include/linux/build_bug.h \ - include/linux/compiler.h \ - $(wildcard include/config/TRACE_BRANCH_PROFILING) \ - $(wildcard include/config/PROFILE_ALL_BRANCHES) \ - $(wildcard include/config/OBJTOOL) \ - 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_WEAK_MEMORY) \ - $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ - include/linux/poison.h \ - $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ - include/linux/const.h \ - include/vdso/const.h \ - include/uapi/linux/const.h \ - arch/x86/include/asm/barrier.h \ - arch/x86/include/asm/alternative.h \ - $(wildcard include/config/CALL_THUNKS) \ - include/linux/stringify.h \ - arch/x86/include/asm/asm.h \ - arch/x86/include/asm/extable_fixup_types.h \ - arch/x86/include/asm/nops.h \ - include/asm-generic/barrier.h \ - 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/cache.h \ - $(wildcard include/config/ARCH_HAS_CACHE_LINE_SIZE) \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.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/linkage.h \ - $(wildcard include/config/ARCH_USE_SYM_ANNOTATIONS) \ - include/linux/export.h \ - $(wildcard include/config/MODVERSIONS) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/CALL_PADDING) \ - $(wildcard include/config/RETHUNK) \ - $(wildcard include/config/SLS) \ - $(wildcard include/config/FUNCTION_PADDING_BYTES) \ - $(wildcard include/config/UML) \ - arch/x86/include/asm/ibt.h \ - $(wildcard include/config/X86_KERNEL_IBT) \ - include/linux/math64.h \ - $(wildcard include/config/ARCH_SUPPORTS_INT128) \ - include/linux/math.h \ - arch/x86/include/asm/div64.h \ - include/asm-generic/div64.h \ - 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 \ - 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 \ - 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_USER_SHADOW_STACK) \ - $(wildcard include/config/PARAVIRT_XXL) \ - $(wildcard include/config/X86_DEBUGCTLMSR) \ - $(wildcard include/config/CPU_SUP_AMD) \ - $(wildcard include/config/XEN) \ - arch/x86/include/asm/processor-flags.h \ - $(wildcard include/config/PAGE_TABLE_ISOLATION) \ - 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 \ - $(wildcard include/config/X86_MEM_ENCRYPT) \ - 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/cc_platform.h \ - $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ - 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/X86_5LEVEL) \ - $(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/ZERO_CALL_USED_REGS) \ - $(wildcard include/config/PARAVIRT_DEBUG) \ - arch/x86/include/asm/desc_defs.h \ - arch/x86/include/asm/pgtable_types.h \ - $(wildcard include/config/X86_INTEL_MEMORY_PROTECTION_KEYS) \ - $(wildcard include/config/X86_PAE) \ - $(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/KMSAN) \ - $(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/CALL_THUNKS_DEBUG) \ - $(wildcard include/config/CALL_DEPTH_TRACKING) \ - $(wildcard include/config/NOINSTR_VALIDATION) \ - $(wildcard include/config/CPU_UNRET_ENTRY) \ - $(wildcard include/config/CPU_SRSO) \ - $(wildcard include/config/CPU_IBPB_ENTRY) \ - include/linux/static_key.h \ - include/linux/jump_label.h \ - $(wildcard include/config/HAVE_ARCH_JUMP_LABEL_RELATIVE) \ - arch/x86/include/asm/jump_label.h \ - $(wildcard include/config/HAVE_JUMP_LABEL_HACK) \ - include/linux/objtool.h \ - $(wildcard include/config/FRAME_POINTER) \ - include/linux/objtool_types.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_CMPXCHG64) \ - $(wildcard include/config/X86_CMOV) \ - $(wildcard include/config/X86_P6_NOP) \ - $(wildcard include/config/MATOM) \ - arch/x86/include/asm/disabled-features.h \ - $(wildcard include/config/X86_UMIP) \ - $(wildcard include/config/ADDRESS_MASKING) \ - $(wildcard include/config/INTEL_IOMMU_SVM) \ - $(wildcard include/config/X86_SGX) \ - $(wildcard include/config/INTEL_TDX_GUEST) \ - arch/x86/include/asm/msr-index.h \ - include/linux/bits.h \ - include/vdso/bits.h \ - arch/x86/include/asm/unwind_hints.h \ - arch/x86/include/asm/orc_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 \ - 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/NR_CPUS) \ - $(wildcard include/config/BASE_SMALL) \ - include/linux/percpu-defs.h \ - $(wildcard include/config/DEBUG_FORCE_WEAK_PER_CPU) \ - arch/x86/include/asm/current.h \ - arch/x86/include/asm/asm-offsets.h \ - include/generated/asm-offsets.h \ - arch/x86/include/asm/GEN-for-each-reg.h \ - arch/x86/include/asm/spinlock_types.h \ - include/asm-generic/qspinlock_types.h \ - include/asm-generic/qrwlock_types.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/cpuid.h \ - arch/x86/include/asm/string.h \ - arch/x86/include/asm/string_64.h \ - $(wildcard include/config/ARCH_HAS_UACCESS_FLUSHCACHE) \ - arch/x86/include/asm/paravirt.h \ - $(wildcard include/config/PARAVIRT_SPINLOCKS) \ - $(wildcard include/config/DEBUG_ENTRY) \ - 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) \ - 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/DYNAMIC_DEBUG) \ - include/linux/stdarg.h \ - include/linux/kern_levels.h \ - include/linux/ratelimit_types.h \ - include/linux/spinlock_types_raw.h \ - $(wildcard include/config/DEBUG_SPINLOCK) \ - $(wildcard include/config/DEBUG_LOCK_ALLOC) \ - include/linux/lockdep_types.h \ - $(wildcard include/config/PROVE_RAW_LOCK_NESTING) \ - $(wildcard include/config/LOCKDEP) \ - $(wildcard include/config/LOCK_STAT) \ - include/linux/dynamic_debug.h \ - include/linux/cpumask.h \ - $(wildcard include/config/FORCE_NR_CPUS) \ - $(wildcard include/config/HOTPLUG_CPU) \ - $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ - $(wildcard include/config/CPUMASK_OFFSTACK) \ - include/linux/kernel.h \ - $(wildcard include/config/PREEMPT_VOLUNTARY_BUILD) \ - $(wildcard include/config/PREEMPT_DYNAMIC) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_CALL) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_KEY) \ - $(wildcard include/config/PREEMPT_) \ - $(wildcard include/config/DEBUG_ATOMIC_SLEEP) \ - $(wildcard include/config/MMU) \ - $(wildcard include/config/PROVE_LOCKING) \ - include/linux/align.h \ - include/linux/array_size.h \ - include/linux/limits.h \ - include/uapi/linux/limits.h \ - include/vdso/limits.h \ - include/linux/bitops.h \ - include/linux/typecheck.h \ - include/asm-generic/bitops/generic-non-atomic.h \ - arch/x86/include/asm/bitops.h \ - arch/x86/include/asm/rmwcc.h \ - include/linux/args.h \ - include/asm-generic/bitops/sched.h \ - arch/x86/include/asm/arch_hweight.h \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/instrumented-atomic.h \ - include/linux/instrumented.h \ - include/linux/kmsan-checks.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/hex.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/minmax.h \ - include/linux/sprintf.h \ - include/linux/static_call_types.h \ - $(wildcard include/config/HAVE_STATIC_CALL) \ - include/linux/instruction_pointer.h \ - include/linux/bitmap.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/find.h \ - include/linux/string.h \ - $(wildcard include/config/BINARY_PRINTF) \ - $(wildcard include/config/FORTIFY_SOURCE) \ - include/linux/err.h \ - include/linux/overflow.h \ - include/uapi/linux/string.h \ - include/linux/fortify-string.h \ - $(wildcard include/config/CC_HAS_KASAN_MEMINTRINSIC_PREFIX) \ - $(wildcard include/config/GENERIC_ENTRY) \ - include/linux/bitmap-str.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/gfp_types.h \ - $(wildcard include/config/KASAN_HW_TAGS) \ - include/linux/numa.h \ - $(wildcard include/config/NODES_SHIFT) \ - $(wildcard include/config/NUMA) \ - $(wildcard include/config/HAVE_ARCH_NODE_DEV_GROUP) \ - arch/x86/include/asm/frame.h \ - arch/x86/include/asm/page.h \ - arch/x86/include/asm/page_64.h \ - $(wildcard include/config/DEBUG_VIRTUAL) \ - $(wildcard include/config/X86_VSYSCALL_EMULATION) \ - include/linux/range.h \ - include/asm-generic/memory_model.h \ - $(wildcard include/config/FLATMEM) \ - $(wildcard include/config/SPARSEMEM_VMEMMAP) \ - include/linux/pfn.h \ - include/asm-generic/getorder.h \ - arch/x86/include/asm/msr.h \ - arch/x86/include/asm/cpumask.h \ - arch/x86/include/uapi/asm/msr.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 \ - arch/x86/include/asm/shared/msr.h \ - include/linux/tracepoint-defs.h \ - arch/x86/include/asm/special_insns.h \ - include/linux/irqflags.h \ - $(wildcard include/config/TRACE_IRQFLAGS) \ - $(wildcard include/config/PREEMPT_RT) \ - $(wildcard include/config/IRQSOFF_TRACER) \ - $(wildcard include/config/PREEMPT_TRACER) \ - $(wildcard include/config/DEBUG_IRQFLAGS) \ - $(wildcard include/config/TRACE_IRQFLAGS_SUPPORT) \ - include/linux/irqflags_types.h \ - include/linux/cleanup.h \ - 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 \ - arch/x86/include/asm/shstk.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - arch/x86/include/asm/tsc.h \ - arch/x86/include/asm/cpufeature.h \ - include/vdso/time32.h \ - include/vdso/time.h \ - include/linux/uidgid.h \ - $(wildcard include/config/MULTIUSER) \ - $(wildcard include/config/USER_NS) \ - include/linux/uidgid_types.h \ - include/linux/highuid.h \ - include/linux/buildid.h \ - $(wildcard include/config/CRASH_CORE) \ - 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/COMPACTION) \ - $(wildcard include/config/CONTIG_ALLOC) \ - include/linux/mmzone.h \ - $(wildcard include/config/ARCH_FORCE_MAX_ORDER) \ - $(wildcard include/config/CMA) \ - $(wildcard include/config/MEMORY_ISOLATION) \ - $(wildcard include/config/ZSMALLOC) \ - $(wildcard include/config/UNACCEPTED_MEMORY) \ - $(wildcard include/config/SWAP) \ - $(wildcard include/config/NUMA_BALANCING) \ - $(wildcard include/config/TRANSPARENT_HUGEPAGE) \ - $(wildcard include/config/LRU_GEN) \ - $(wildcard include/config/LRU_GEN_STATS) \ - $(wildcard include/config/LRU_GEN_WALKS_MMU) \ - $(wildcard include/config/MEMCG) \ - $(wildcard include/config/MEMORY_HOTPLUG) \ - $(wildcard include/config/MEMORY_FAILURE) \ - $(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/preempt.h \ - $(wildcard include/config/PREEMPT_COUNT) \ - $(wildcard include/config/TRACE_PREEMPT_TOGGLE) \ - $(wildcard include/config/PREEMPT_NOTIFIERS) \ - $(wildcard include/config/PREEMPT_NONE) \ - $(wildcard include/config/PREEMPT_VOLUNTARY) \ - $(wildcard include/config/PREEMPT) \ - arch/x86/include/asm/preempt.h \ - include/linux/thread_info.h \ - $(wildcard include/config/THREAD_INFO_IN_TASK) \ - $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ - $(wildcard include/config/HARDENED_USERCOPY) \ - $(wildcard include/config/SH) \ - 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/DEBUG_NMI_SELFTEST) \ - arch/x86/include/generated/asm/mmiowb.h \ - include/asm-generic/mmiowb.h \ - $(wildcard include/config/MMIOWB) \ - include/linux/spinlock_types.h \ - include/linux/rwlock_types.h \ - 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 \ - 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/list_nulls.h \ - include/linux/wait.h \ - include/linux/seqlock.h \ - include/linux/mutex.h \ - $(wildcard include/config/DEBUG_MUTEXES) \ - include/linux/osq_lock.h \ - include/linux/debug_locks.h \ - include/linux/mutex_types.h \ - $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ - include/linux/seqlock_types.h \ - include/linux/nodemask.h \ - include/linux/nodemask_types.h \ - include/linux/random.h \ - $(wildcard include/config/VMGENID) \ - include/uapi/linux/random.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/prandom.h \ - include/linux/once.h \ - include/linux/pageblock-flags.h \ - $(wildcard include/config/HUGETLB_PAGE) \ - $(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/ANON_VMA_NAME) \ - $(wildcard include/config/PER_VMA_LOCK) \ - $(wildcard include/config/SCHED_MM_CID) \ - $(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_MM_DATA) \ - $(wildcard include/config/KSM) \ - 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/kref.h \ - include/linux/refcount.h \ - include/linux/refcount_types.h \ - 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/RCU_STRICT_GRACE_PERIOD) \ - $(wildcard include/config/RCU_LAZY) \ - $(wildcard include/config/TASKS_RCU_GENERIC) \ - $(wildcard include/config/RCU_STALL_COMMON) \ - $(wildcard include/config/NO_HZ_FULL) \ - $(wildcard include/config/KVM_XFER_TO_GUEST_WORK) \ - $(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/context_tracking_irq.h \ - $(wildcard include/config/CONTEXT_TRACKING_IDLE) \ - include/linux/rcutree.h \ - include/linux/maple_tree.h \ - $(wildcard include/config/MAPLE_RCU_DISABLED) \ - $(wildcard include/config/DEBUG_MAPLE_TREE) \ - 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 \ - include/linux/srcu.h \ - $(wildcard include/config/TINY_SRCU) \ - $(wildcard include/config/NEED_SRCU_NMI_SAFE) \ - 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) \ - 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/timer_types.h \ - include/linux/workqueue_types.h \ - 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/percpu_counter.h \ - include/linux/percpu.h \ - $(wildcard include/config/RANDOM_KMALLOC_CACHES) \ - $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ - include/linux/mmdebug.h \ - $(wildcard include/config/DEBUG_VM) \ - $(wildcard include/config/DEBUG_VM_IRQSOFF) \ - $(wildcard include/config/DEBUG_VM_PGFLAGS) \ - 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/ARCH_USES_PG_ARCH_X) \ - $(wildcard include/config/HUGETLB_PAGE_OPTIMIZE_VMEMMAP) \ - include/linux/local_lock.h \ - include/linux/local_lock_internal.h \ - include/linux/zswap.h \ - $(wildcard include/config/ZSWAP) \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ - $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ - $(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/ACPI_CPPC_LIB) \ - $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ - arch/x86/include/asm/topology.h \ - $(wildcard include/config/SCHED_MC_PRIO) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/EISA) \ - $(wildcard include/config/X86_LOCAL_APIC) \ - $(wildcard include/config/X86_MPPARSE) \ - 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 \ - $(wildcard include/config/PCI) \ - 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/apicdef.h \ - include/asm-generic/topology.h \ - include/linux/cpu_smt.h \ - $(wildcard include/config/HOTPLUG_SMT) \ - 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/ia32.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/sem.h \ - $(wildcard include/config/SYSVIPC) \ - 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/sem_types.h \ - 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 \ - $(wildcard include/config/ARCH_HAS_COPY_MC) \ - 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/linux/fs.h \ - $(wildcard include/config/READ_ONLY_THP_FOR_FS) \ - $(wildcard include/config/FS_POSIX_ACL) \ - $(wildcard include/config/SECURITY) \ - $(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/FS_DAX) \ - $(wildcard include/config/BLOCK) \ - include/linux/wait_bit.h \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/dcache.h \ - include/linux/rculist.h \ - $(wildcard include/config/PROVE_RCU_LIST) \ - 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) \ - 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/shrinker.h \ - $(wildcard include/config/SHRINKER_DEBUG) \ - include/linux/xarray.h \ - $(wildcard include/config/XARRAY_MULTI) \ - include/linux/sched/mm.h \ - $(wildcard include/config/MMU_LAZY_TLB_REFCOUNT) \ - $(wildcard include/config/ARCH_HAS_MEMBARRIER_CALLBACKS) \ - include/linux/sched.h \ - $(wildcard include/config/VIRT_CPU_ACCOUNTING_NATIVE) \ - $(wildcard include/config/SCHED_INFO) \ - $(wildcard include/config/SCHEDSTATS) \ - $(wildcard include/config/SCHED_CORE) \ - $(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/CGROUP_SCHED) \ - $(wildcard include/config/BLK_DEV_IO_TRACE) \ - $(wildcard include/config/COMPAT_BRK) \ - $(wildcard include/config/CGROUPS) \ - $(wildcard include/config/BLK_CGROUP) \ - $(wildcard include/config/PSI) \ - $(wildcard include/config/PAGE_OWNER) \ - $(wildcard include/config/EVENTFD) \ - $(wildcard include/config/ARCH_HAS_CPU_PASID) \ - $(wildcard include/config/CPU_SUP_INTEL) \ - $(wildcard include/config/TASK_DELAY_ACCT) \ - $(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/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/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/FAULT_INJECTION) \ - $(wildcard include/config/LATENCYTOP) \ - $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ - $(wildcard include/config/BCACHE) \ - $(wildcard include/config/VMAP_STACK) \ - $(wildcard include/config/BPF_SYSCALL) \ - $(wildcard include/config/GCC_PLUGIN_STACKLEAK) \ - $(wildcard include/config/X86_MCE) \ - $(wildcard include/config/KRETPROBES) \ - $(wildcard include/config/RETHOOK) \ - $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ - $(wildcard include/config/RV) \ - $(wildcard include/config/USER_EVENTS) \ - include/uapi/linux/sched.h \ - include/linux/pid_types.h \ - include/linux/shm.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/kmsan_types.h \ - include/linux/plist_types.h \ - include/linux/hrtimer_types.h \ - include/linux/timerqueue_types.h \ - include/linux/seccomp_types.h \ - $(wildcard include/config/SECCOMP) \ - 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_types.h \ - include/linux/task_io_accounting.h \ - $(wildcard include/config/TASK_IO_ACCOUNTING) \ - include/linux/posix-timers_types.h \ - include/uapi/linux/rseq.h \ - include/linux/kcsan.h \ - include/linux/rv.h \ - $(wildcard include/config/RV_REACTORS) \ - include/linux/livepatch_sched.h \ - arch/x86/include/generated/asm/kmap_size.h \ - include/asm-generic/kmap_size.h \ - $(wildcard include/config/DEBUG_KMAP_LOCAL) \ - include/linux/sync_core.h \ - $(wildcard include/config/ARCH_HAS_SYNC_CORE_BEFORE_USERMODE) \ - arch/x86/include/asm/sync_core.h \ - include/linux/radix-tree.h \ - include/linux/pid.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) \ - $(wildcard include/config/STACK_GROWSUP) \ - 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/ARCH_HAS_SUBPAGE_FAULTS) \ - 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_HAS_ASM_GOTO_TIED_OUTPUT) \ - $(wildcard include/config/X86_INTEL_USERCOPY) \ - include/linux/mmap_lock.h \ - arch/x86/include/asm/smap.h \ - arch/x86/include/asm/extable.h \ - $(wildcard include/config/BPF_JIT) \ - arch/x86/include/asm/tlbflush.h \ - include/linux/mmu_notifier.h \ - include/linux/interval_tree.h \ - arch/x86/include/asm/invpcid.h \ - arch/x86/include/asm/pti.h \ - arch/x86/include/asm/pgtable.h \ - $(wildcard include/config/DEBUG_WX) \ - $(wildcard include/config/HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD) \ - $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ - $(wildcard include/config/HAVE_ARCH_SOFT_DIRTY) \ - $(wildcard include/config/ARCH_ENABLE_THP_MIGRATION) \ - $(wildcard include/config/PAGE_TABLE_CHECK) \ - arch/x86/include/asm/pkru.h \ - arch/x86/include/asm/fpu/api.h \ - $(wildcard include/config/X86_DEBUG_FPU) \ - arch/x86/include/asm/coco.h \ - include/asm-generic/pgtable_uffd.h \ - include/linux/page_table_check.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 \ - arch/x86/include/asm/uaccess_64.h \ - include/asm-generic/access_ok.h \ - $(wildcard include/config/ALTERNATE_USER_ADDRESS_SPACE) \ - include/linux/cred.h \ - 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/VFIO_PCI_ZDEV_KVM) \ - $(wildcard include/config/IOMMUFD) \ - $(wildcard include/config/WATCH_QUEUE) \ - include/linux/ratelimit.h \ - include/linux/posix-timers.h \ - include/linux/alarmtimer.h \ - $(wildcard include/config/RTC_CLASS) \ - 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/rcu_sync.h \ - include/linux/delayed_call.h \ - include/linux/uuid.h \ - include/linux/errseq.h \ - include/linux/ioprio.h \ - include/linux/sched/rt.h \ - include/linux/iocontext.h \ - $(wildcard include/config/BLK_ICQ) \ - include/uapi/linux/ioprio.h \ - include/linux/fs_types.h \ - include/linux/mount.h \ - include/linux/mnt_idmapping.h \ - include/linux/slab.h \ - $(wildcard include/config/SLUB_DEBUG) \ - $(wildcard include/config/SLUB_TINY) \ - $(wildcard include/config/FAILSLAB) \ - $(wildcard include/config/KFENCE) \ - include/linux/percpu-refcount.h \ - include/linux/kasan.h \ - $(wildcard include/config/KASAN_STACK) \ - $(wildcard include/config/KASAN_VMALLOC) \ - include/linux/kasan-enabled.h \ - include/linux/kasan-tags.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/uapi/linux/aio_abi.h \ - include/uapi/linux/unistd.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/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 \ - 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 \ - 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 \ - 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) \ - include/linux/mm.h \ - $(wildcard include/config/HAVE_ARCH_MMAP_RND_BITS) \ - $(wildcard include/config/HAVE_ARCH_MMAP_RND_COMPAT_BITS) \ - $(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_MTE) \ - $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ - $(wildcard include/config/SHMEM) \ - $(wildcard include/config/MIGRATION) \ - $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ - $(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/ARCH_WANT_OPTIMIZE_DAX_VMEMMAP) \ - $(wildcard include/config/HUGETLBFS) \ - $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ - include/linux/page_ext.h \ - include/linux/stacktrace.h \ - $(wildcard include/config/ARCH_STACKWALK) \ - $(wildcard include/config/STACKTRACE) \ - $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ - include/linux/stackdepot.h \ - $(wildcard include/config/STACKDEPOT) \ - $(wildcard include/config/STACKDEPOT_MAX_FRAMES) \ - $(wildcard include/config/STACKDEPOT_ALWAYS_INIT) \ - include/linux/page_ref.h \ - $(wildcard include/config/DEBUG_PAGE_REF) \ - include/linux/sizes.h \ - include/linux/pgtable.h \ - $(wildcard include/config/HIGHPTE) \ - $(wildcard include/config/ARCH_HAS_NONLEAF_PMD_YOUNG) \ - $(wildcard include/config/ARCH_HAS_HW_PTE_YOUNG) \ - $(wildcard include/config/GUP_GET_PXX_LOW_HIGH) \ - $(wildcard include/config/ARCH_WANT_PMD_MKWRITE) \ - $(wildcard include/config/HAVE_ARCH_HUGE_VMAP) \ - $(wildcard include/config/X86_ESPFIX64) \ - include/linux/memremap.h \ - $(wildcard include/config/DEVICE_PRIVATE) \ - $(wildcard include/config/PCI_P2PDMA) \ - include/linux/ioport.h \ - include/linux/huge_mm.h \ - include/linux/sched/coredump.h \ - $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ - include/linux/vmstat.h \ - $(wildcard include/config/VM_EVENT_COUNTERS) \ - $(wildcard include/config/DEBUG_TLBFLUSH) \ - $(wildcard include/config/PER_VMA_LOCK_STATS) \ - 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/colin/develop/xc7k480t/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/HAS_IOMEM) \ - $(wildcard include/config/GENERIC_MSI_IRQ) \ - $(wildcard include/config/ENERGY_MODEL) \ - $(wildcard include/config/PINCTRL) \ - $(wildcard include/config/DMA_OPS) \ - $(wildcard include/config/DMA_DECLARE_COHERENT) \ - $(wildcard include/config/DMA_CMA) \ - $(wildcard include/config/SWIOTLB) \ - $(wildcard include/config/SWIOTLB_DYNAMIC) \ - $(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/PM_SLEEP) \ - $(wildcard include/config/OF) \ - $(wildcard include/config/DEVTMPFS) \ - 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_CLUSTER) \ - $(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/CXL_SUSPEND) \ - $(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/NEED_SG_DMA_FLAGS) \ - $(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) \ - arch/x86/include/asm/shared/io.h \ - include/asm-generic/io.h \ - $(wildcard include/config/GENERIC_IOMAP) \ - $(wildcard include/config/TRACE_MMIO_ACCESS) \ - $(wildcard include/config/GENERIC_IOREMAP) \ - $(wildcard include/config/HAS_IOPORT_MAP) \ - include/asm-generic/iomap.h \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ - $(wildcard include/config/GENERIC_PCI_IOMAP) \ - 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/hardirq.h \ - include/linux/context_tracking_state.h \ - $(wildcard include/config/CONTEXT_TRACKING_USER) \ - $(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 \ - $(wildcard include/config/HAVE_FUNCTION_DESCRIPTORS) \ - 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_DOE) \ - $(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/uapi/linux/mei.h \ - include/uapi/linux/mei_uuid.h \ - include/linux/io.h \ - include/linux/resource_ext.h \ - include/linux/msi_api.h \ - 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/VMD) \ - arch/x86/include/asm/memtype.h \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/include/libxdma_api.h \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_sgdma.h \ - /home/colin/develop/xc7k480t/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/ARCH_WANTS_NO_INSTR) \ - include/linux/static_call.h \ - include/linux/cpu.h \ - $(wildcard include/config/GENERIC_CPU_DEVICES) \ - $(wildcard include/config/PM_SLEEP_SMP) \ - $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ - $(wildcard include/config/ARCH_HAS_CPU_FINALIZE_INIT) \ - $(wildcard include/config/CPU_MITIGATIONS) \ - include/linux/node.h \ - $(wildcard include/config/HMEM_REPORTING) \ - include/linux/cpuhotplug.h \ - $(wildcard include/config/HOTPLUG_CORE_SYNC_DEAD) \ - 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/debugreg.h \ - arch/x86/include/uapi/asm/debugreg.h \ - arch/x86/include/asm/gsseg.h \ - include/asm-generic/mmu_context.h \ - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.o: $(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.o) - -$(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.o): - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.o: $(wildcard ./tools/objtool/objtool) diff --git a/xdma/linux-kernel/xdma/.modules.order.cmd b/xdma/linux-kernel/xdma/.modules.order.cmd deleted file mode 100644 index 144232b..0000000 --- a/xdma/linux-kernel/xdma/.modules.order.cmd +++ /dev/null @@ -1 +0,0 @@ -savedcmd_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/modules.order := { echo /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.o; :; } > /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/modules.order diff --git a/xdma/linux-kernel/xdma/.xdma.ko.cmd b/xdma/linux-kernel/xdma/.xdma.ko.cmd deleted file mode 100644 index e8abf9b..0000000 --- a/xdma/linux-kernel/xdma/.xdma.ko.cmd +++ /dev/null @@ -1 +0,0 @@ -savedcmd_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.ko := ld -r -m elf_x86_64 -z noexecstack --build-id=sha1 -T scripts/module.lds -o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.ko /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.mod.o diff --git a/xdma/linux-kernel/xdma/.xdma.mod.cmd b/xdma/linux-kernel/xdma/.xdma.mod.cmd deleted file mode 100644 index d127aed..0000000 --- a/xdma/linux-kernel/xdma/.xdma.mod.cmd +++ /dev/null @@ -1 +0,0 @@ -savedcmd_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.mod := printf '%s\n' 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 | awk '!x[$$0]++ { print("/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/"$$0) }' > /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.mod diff --git a/xdma/linux-kernel/xdma/.xdma.mod.o.cmd b/xdma/linux-kernel/xdma/.xdma.mod.o.cmd deleted file mode 100644 index 75db25c..0000000 --- a/xdma/linux-kernel/xdma/.xdma.mod.o.cmd +++ /dev/null @@ -1,1069 +0,0 @@ -savedcmd_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.mod.o := gcc-12 -Wp,-MMD,/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/.xdma.mod.o.d -nostdinc -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=./= -std=gnu11 -fshort-wchar -funsigned-char -fno-common -fno-PIE -fno-strict-aliasing -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 -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mindirect-branch-cs-prefix -mfunction-return=thunk-extern -fno-jump-tables -mharden-sls=all -fpatchable-function-entry=16,16 -fno-delete-null-pointer-checks -O2 -fno-allow-store-data-races -fstack-protector-strong -fno-omit-frame-pointer -fno-optimize-sibling-calls -ftrivial-auto-var-init=zero -fno-stack-clash-protection -fzero-call-used-regs=used-gpr -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -falign-functions=16 -fno-strict-overflow -fno-stack-check -fconserve-stack -Wall -Wundef -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Werror=strict-prototypes -Wno-format-security -Wno-trigraphs -Wno-frame-address -Wno-address-of-packed-member -Wmissing-declarations -Wmissing-prototypes -Wframe-larger-than=1024 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-overflow -Wno-array-bounds -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wenum-conversion -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-restrict -Wno-packed-not-aligned -Wno-format-overflow -Wno-format-truncation -Wno-stringop-truncation -Wno-override-init -Wno-missing-field-initializers -Wno-type-limits -Wno-shift-negative-value -Wno-maybe-uninitialized -Wno-sign-compare -g -gdwarf-5 -fsanitize=bounds-strict -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"xdma.mod"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.mod.o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.mod.c - -source_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.mod.o := /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.mod.c - -deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.mod.o := \ - $(wildcard include/config/UNWINDER_ORC) \ - $(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/DEBUG_INFO_BTF) \ - $(wildcard include/config/PAHOLE_HAS_BTF_TAG) \ - $(wildcard include/config/FUNCTION_ALIGNMENT) \ - $(wildcard include/config/CC_IS_GCC) \ - $(wildcard include/config/X86_64) \ - $(wildcard include/config/ARM64) \ - $(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/GCC_ASM_GOTO_OUTPUT_WORKAROUND) \ - $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ - $(wildcard include/config/SHADOW_CALL_STACK) \ - $(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/ARCH_USES_CFI_TRAPS) \ - $(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/KUNIT) \ - $(wildcard include/config/PRINTK_INDEX) \ - $(wildcard include/config/CONSTRUCTORS) \ - $(wildcard include/config/FUNCTION_ERROR_INJECTION) \ - $(wildcard include/config/DYNAMIC_DEBUG_CORE) \ - include/linux/list.h \ - $(wildcard include/config/LIST_HARDENED) \ - $(wildcard include/config/DEBUG_LIST) \ - include/linux/container_of.h \ - include/linux/build_bug.h \ - include/linux/compiler.h \ - $(wildcard include/config/TRACE_BRANCH_PROFILING) \ - $(wildcard include/config/PROFILE_ALL_BRANCHES) \ - $(wildcard include/config/OBJTOOL) \ - 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_WEAK_MEMORY) \ - $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ - include/linux/poison.h \ - $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ - include/linux/const.h \ - include/vdso/const.h \ - include/uapi/linux/const.h \ - arch/x86/include/asm/barrier.h \ - arch/x86/include/asm/alternative.h \ - $(wildcard include/config/CALL_THUNKS) \ - include/linux/stringify.h \ - arch/x86/include/asm/asm.h \ - arch/x86/include/asm/extable_fixup_types.h \ - arch/x86/include/asm/nops.h \ - include/asm-generic/barrier.h \ - 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/cache.h \ - $(wildcard include/config/ARCH_HAS_CACHE_LINE_SIZE) \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.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/linkage.h \ - $(wildcard include/config/ARCH_USE_SYM_ANNOTATIONS) \ - include/linux/export.h \ - $(wildcard include/config/MODVERSIONS) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/CALL_PADDING) \ - $(wildcard include/config/RETHUNK) \ - $(wildcard include/config/SLS) \ - $(wildcard include/config/FUNCTION_PADDING_BYTES) \ - $(wildcard include/config/UML) \ - arch/x86/include/asm/ibt.h \ - $(wildcard include/config/X86_KERNEL_IBT) \ - include/linux/math64.h \ - $(wildcard include/config/ARCH_SUPPORTS_INT128) \ - include/linux/math.h \ - arch/x86/include/asm/div64.h \ - include/asm-generic/div64.h \ - 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 \ - 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 \ - 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_USER_SHADOW_STACK) \ - $(wildcard include/config/PARAVIRT_XXL) \ - $(wildcard include/config/X86_DEBUGCTLMSR) \ - $(wildcard include/config/CPU_SUP_AMD) \ - $(wildcard include/config/XEN) \ - arch/x86/include/asm/processor-flags.h \ - $(wildcard include/config/PAGE_TABLE_ISOLATION) \ - 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 \ - $(wildcard include/config/X86_MEM_ENCRYPT) \ - 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/cc_platform.h \ - $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ - 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/X86_5LEVEL) \ - $(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/ZERO_CALL_USED_REGS) \ - $(wildcard include/config/PARAVIRT_DEBUG) \ - arch/x86/include/asm/desc_defs.h \ - arch/x86/include/asm/pgtable_types.h \ - $(wildcard include/config/X86_INTEL_MEMORY_PROTECTION_KEYS) \ - $(wildcard include/config/X86_PAE) \ - $(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/KMSAN) \ - $(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/CALL_THUNKS_DEBUG) \ - $(wildcard include/config/CALL_DEPTH_TRACKING) \ - $(wildcard include/config/NOINSTR_VALIDATION) \ - $(wildcard include/config/CPU_UNRET_ENTRY) \ - $(wildcard include/config/CPU_SRSO) \ - $(wildcard include/config/CPU_IBPB_ENTRY) \ - include/linux/static_key.h \ - include/linux/jump_label.h \ - $(wildcard include/config/HAVE_ARCH_JUMP_LABEL_RELATIVE) \ - arch/x86/include/asm/jump_label.h \ - $(wildcard include/config/HAVE_JUMP_LABEL_HACK) \ - include/linux/objtool.h \ - $(wildcard include/config/FRAME_POINTER) \ - include/linux/objtool_types.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_CMPXCHG64) \ - $(wildcard include/config/X86_CMOV) \ - $(wildcard include/config/X86_P6_NOP) \ - $(wildcard include/config/MATOM) \ - arch/x86/include/asm/disabled-features.h \ - $(wildcard include/config/X86_UMIP) \ - $(wildcard include/config/ADDRESS_MASKING) \ - $(wildcard include/config/INTEL_IOMMU_SVM) \ - $(wildcard include/config/X86_SGX) \ - $(wildcard include/config/INTEL_TDX_GUEST) \ - arch/x86/include/asm/msr-index.h \ - include/linux/bits.h \ - include/vdso/bits.h \ - arch/x86/include/asm/unwind_hints.h \ - arch/x86/include/asm/orc_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 \ - 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/NR_CPUS) \ - $(wildcard include/config/BASE_SMALL) \ - include/linux/percpu-defs.h \ - $(wildcard include/config/DEBUG_FORCE_WEAK_PER_CPU) \ - arch/x86/include/asm/current.h \ - arch/x86/include/asm/asm-offsets.h \ - include/generated/asm-offsets.h \ - arch/x86/include/asm/GEN-for-each-reg.h \ - arch/x86/include/asm/spinlock_types.h \ - include/asm-generic/qspinlock_types.h \ - include/asm-generic/qrwlock_types.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/cpuid.h \ - arch/x86/include/asm/string.h \ - arch/x86/include/asm/string_64.h \ - $(wildcard include/config/ARCH_HAS_UACCESS_FLUSHCACHE) \ - arch/x86/include/asm/paravirt.h \ - $(wildcard include/config/PARAVIRT_SPINLOCKS) \ - $(wildcard include/config/DEBUG_ENTRY) \ - 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) \ - 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/DYNAMIC_DEBUG) \ - include/linux/stdarg.h \ - include/linux/kern_levels.h \ - include/linux/ratelimit_types.h \ - include/linux/spinlock_types_raw.h \ - $(wildcard include/config/DEBUG_SPINLOCK) \ - $(wildcard include/config/DEBUG_LOCK_ALLOC) \ - include/linux/lockdep_types.h \ - $(wildcard include/config/PROVE_RAW_LOCK_NESTING) \ - $(wildcard include/config/LOCKDEP) \ - $(wildcard include/config/LOCK_STAT) \ - include/linux/dynamic_debug.h \ - include/linux/cpumask.h \ - $(wildcard include/config/FORCE_NR_CPUS) \ - $(wildcard include/config/HOTPLUG_CPU) \ - $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ - $(wildcard include/config/CPUMASK_OFFSTACK) \ - include/linux/kernel.h \ - $(wildcard include/config/PREEMPT_VOLUNTARY_BUILD) \ - $(wildcard include/config/PREEMPT_DYNAMIC) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_CALL) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_KEY) \ - $(wildcard include/config/PREEMPT_) \ - $(wildcard include/config/DEBUG_ATOMIC_SLEEP) \ - $(wildcard include/config/MMU) \ - $(wildcard include/config/PROVE_LOCKING) \ - include/linux/align.h \ - include/linux/array_size.h \ - include/linux/limits.h \ - include/uapi/linux/limits.h \ - include/vdso/limits.h \ - include/linux/bitops.h \ - include/linux/typecheck.h \ - include/asm-generic/bitops/generic-non-atomic.h \ - arch/x86/include/asm/bitops.h \ - arch/x86/include/asm/rmwcc.h \ - include/linux/args.h \ - include/asm-generic/bitops/sched.h \ - arch/x86/include/asm/arch_hweight.h \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/instrumented-atomic.h \ - include/linux/instrumented.h \ - include/linux/kmsan-checks.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/hex.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/minmax.h \ - include/linux/sprintf.h \ - include/linux/static_call_types.h \ - $(wildcard include/config/HAVE_STATIC_CALL) \ - include/linux/instruction_pointer.h \ - include/linux/bitmap.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/find.h \ - include/linux/string.h \ - $(wildcard include/config/BINARY_PRINTF) \ - $(wildcard include/config/FORTIFY_SOURCE) \ - include/linux/err.h \ - include/linux/overflow.h \ - include/uapi/linux/string.h \ - include/linux/fortify-string.h \ - $(wildcard include/config/CC_HAS_KASAN_MEMINTRINSIC_PREFIX) \ - $(wildcard include/config/GENERIC_ENTRY) \ - include/linux/bitmap-str.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/gfp_types.h \ - $(wildcard include/config/KASAN_HW_TAGS) \ - include/linux/numa.h \ - $(wildcard include/config/NODES_SHIFT) \ - $(wildcard include/config/NUMA) \ - $(wildcard include/config/HAVE_ARCH_NODE_DEV_GROUP) \ - arch/x86/include/asm/frame.h \ - arch/x86/include/asm/page.h \ - arch/x86/include/asm/page_64.h \ - $(wildcard include/config/DEBUG_VIRTUAL) \ - $(wildcard include/config/X86_VSYSCALL_EMULATION) \ - include/linux/range.h \ - include/asm-generic/memory_model.h \ - $(wildcard include/config/FLATMEM) \ - $(wildcard include/config/SPARSEMEM_VMEMMAP) \ - include/linux/pfn.h \ - include/asm-generic/getorder.h \ - arch/x86/include/asm/msr.h \ - arch/x86/include/asm/cpumask.h \ - arch/x86/include/uapi/asm/msr.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 \ - arch/x86/include/asm/shared/msr.h \ - include/linux/tracepoint-defs.h \ - arch/x86/include/asm/special_insns.h \ - include/linux/irqflags.h \ - $(wildcard include/config/TRACE_IRQFLAGS) \ - $(wildcard include/config/PREEMPT_RT) \ - $(wildcard include/config/IRQSOFF_TRACER) \ - $(wildcard include/config/PREEMPT_TRACER) \ - $(wildcard include/config/DEBUG_IRQFLAGS) \ - $(wildcard include/config/TRACE_IRQFLAGS_SUPPORT) \ - include/linux/irqflags_types.h \ - include/linux/cleanup.h \ - 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 \ - arch/x86/include/asm/shstk.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - arch/x86/include/asm/tsc.h \ - arch/x86/include/asm/cpufeature.h \ - include/vdso/time32.h \ - include/vdso/time.h \ - include/linux/uidgid.h \ - $(wildcard include/config/MULTIUSER) \ - $(wildcard include/config/USER_NS) \ - include/linux/uidgid_types.h \ - include/linux/highuid.h \ - include/linux/buildid.h \ - $(wildcard include/config/CRASH_CORE) \ - 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/COMPACTION) \ - $(wildcard include/config/CONTIG_ALLOC) \ - include/linux/mmzone.h \ - $(wildcard include/config/ARCH_FORCE_MAX_ORDER) \ - $(wildcard include/config/CMA) \ - $(wildcard include/config/MEMORY_ISOLATION) \ - $(wildcard include/config/ZSMALLOC) \ - $(wildcard include/config/UNACCEPTED_MEMORY) \ - $(wildcard include/config/SWAP) \ - $(wildcard include/config/NUMA_BALANCING) \ - $(wildcard include/config/TRANSPARENT_HUGEPAGE) \ - $(wildcard include/config/LRU_GEN) \ - $(wildcard include/config/LRU_GEN_STATS) \ - $(wildcard include/config/LRU_GEN_WALKS_MMU) \ - $(wildcard include/config/MEMCG) \ - $(wildcard include/config/MEMORY_HOTPLUG) \ - $(wildcard include/config/MEMORY_FAILURE) \ - $(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/preempt.h \ - $(wildcard include/config/PREEMPT_COUNT) \ - $(wildcard include/config/TRACE_PREEMPT_TOGGLE) \ - $(wildcard include/config/PREEMPT_NOTIFIERS) \ - $(wildcard include/config/PREEMPT_NONE) \ - $(wildcard include/config/PREEMPT_VOLUNTARY) \ - $(wildcard include/config/PREEMPT) \ - arch/x86/include/asm/preempt.h \ - include/linux/thread_info.h \ - $(wildcard include/config/THREAD_INFO_IN_TASK) \ - $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ - $(wildcard include/config/HARDENED_USERCOPY) \ - $(wildcard include/config/SH) \ - 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/DEBUG_NMI_SELFTEST) \ - arch/x86/include/generated/asm/mmiowb.h \ - include/asm-generic/mmiowb.h \ - $(wildcard include/config/MMIOWB) \ - include/linux/spinlock_types.h \ - include/linux/rwlock_types.h \ - 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 \ - 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/list_nulls.h \ - include/linux/wait.h \ - include/linux/seqlock.h \ - include/linux/mutex.h \ - $(wildcard include/config/DEBUG_MUTEXES) \ - include/linux/osq_lock.h \ - include/linux/debug_locks.h \ - include/linux/mutex_types.h \ - $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ - include/linux/seqlock_types.h \ - include/linux/nodemask.h \ - include/linux/nodemask_types.h \ - include/linux/random.h \ - $(wildcard include/config/VMGENID) \ - include/uapi/linux/random.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/prandom.h \ - include/linux/once.h \ - include/linux/pageblock-flags.h \ - $(wildcard include/config/HUGETLB_PAGE) \ - $(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/ANON_VMA_NAME) \ - $(wildcard include/config/PER_VMA_LOCK) \ - $(wildcard include/config/SCHED_MM_CID) \ - $(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_MM_DATA) \ - $(wildcard include/config/KSM) \ - 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/kref.h \ - include/linux/refcount.h \ - include/linux/refcount_types.h \ - 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/RCU_STRICT_GRACE_PERIOD) \ - $(wildcard include/config/RCU_LAZY) \ - $(wildcard include/config/TASKS_RCU_GENERIC) \ - $(wildcard include/config/RCU_STALL_COMMON) \ - $(wildcard include/config/NO_HZ_FULL) \ - $(wildcard include/config/KVM_XFER_TO_GUEST_WORK) \ - $(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/context_tracking_irq.h \ - $(wildcard include/config/CONTEXT_TRACKING_IDLE) \ - include/linux/rcutree.h \ - include/linux/maple_tree.h \ - $(wildcard include/config/MAPLE_RCU_DISABLED) \ - $(wildcard include/config/DEBUG_MAPLE_TREE) \ - 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 \ - include/linux/srcu.h \ - $(wildcard include/config/TINY_SRCU) \ - $(wildcard include/config/NEED_SRCU_NMI_SAFE) \ - 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) \ - 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/timer_types.h \ - include/linux/workqueue_types.h \ - 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/percpu_counter.h \ - include/linux/percpu.h \ - $(wildcard include/config/RANDOM_KMALLOC_CACHES) \ - $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ - include/linux/mmdebug.h \ - $(wildcard include/config/DEBUG_VM) \ - $(wildcard include/config/DEBUG_VM_IRQSOFF) \ - $(wildcard include/config/DEBUG_VM_PGFLAGS) \ - 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/ARCH_USES_PG_ARCH_X) \ - $(wildcard include/config/HUGETLB_PAGE_OPTIMIZE_VMEMMAP) \ - include/linux/local_lock.h \ - include/linux/local_lock_internal.h \ - include/linux/zswap.h \ - $(wildcard include/config/ZSWAP) \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ - $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ - $(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/ACPI_CPPC_LIB) \ - $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ - arch/x86/include/asm/topology.h \ - $(wildcard include/config/SCHED_MC_PRIO) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/EISA) \ - $(wildcard include/config/X86_LOCAL_APIC) \ - $(wildcard include/config/X86_MPPARSE) \ - 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 \ - $(wildcard include/config/PCI) \ - 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/apicdef.h \ - include/asm-generic/topology.h \ - include/linux/cpu_smt.h \ - $(wildcard include/config/HOTPLUG_SMT) \ - 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/ia32.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/sem.h \ - $(wildcard include/config/SYSVIPC) \ - 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/sem_types.h \ - 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 \ - $(wildcard include/config/ARCH_HAS_COPY_MC) \ - 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/linux/fs.h \ - $(wildcard include/config/READ_ONLY_THP_FOR_FS) \ - $(wildcard include/config/FS_POSIX_ACL) \ - $(wildcard include/config/SECURITY) \ - $(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/FS_DAX) \ - $(wildcard include/config/BLOCK) \ - include/linux/wait_bit.h \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/dcache.h \ - include/linux/rculist.h \ - $(wildcard include/config/PROVE_RCU_LIST) \ - 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) \ - 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/shrinker.h \ - $(wildcard include/config/SHRINKER_DEBUG) \ - include/linux/xarray.h \ - $(wildcard include/config/XARRAY_MULTI) \ - include/linux/sched/mm.h \ - $(wildcard include/config/MMU_LAZY_TLB_REFCOUNT) \ - $(wildcard include/config/ARCH_HAS_MEMBARRIER_CALLBACKS) \ - include/linux/sched.h \ - $(wildcard include/config/VIRT_CPU_ACCOUNTING_NATIVE) \ - $(wildcard include/config/SCHED_INFO) \ - $(wildcard include/config/SCHEDSTATS) \ - $(wildcard include/config/SCHED_CORE) \ - $(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/CGROUP_SCHED) \ - $(wildcard include/config/BLK_DEV_IO_TRACE) \ - $(wildcard include/config/COMPAT_BRK) \ - $(wildcard include/config/CGROUPS) \ - $(wildcard include/config/BLK_CGROUP) \ - $(wildcard include/config/PSI) \ - $(wildcard include/config/PAGE_OWNER) \ - $(wildcard include/config/EVENTFD) \ - $(wildcard include/config/ARCH_HAS_CPU_PASID) \ - $(wildcard include/config/CPU_SUP_INTEL) \ - $(wildcard include/config/TASK_DELAY_ACCT) \ - $(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/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/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/FAULT_INJECTION) \ - $(wildcard include/config/LATENCYTOP) \ - $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ - $(wildcard include/config/BCACHE) \ - $(wildcard include/config/VMAP_STACK) \ - $(wildcard include/config/BPF_SYSCALL) \ - $(wildcard include/config/GCC_PLUGIN_STACKLEAK) \ - $(wildcard include/config/X86_MCE) \ - $(wildcard include/config/KRETPROBES) \ - $(wildcard include/config/RETHOOK) \ - $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ - $(wildcard include/config/RV) \ - $(wildcard include/config/USER_EVENTS) \ - include/uapi/linux/sched.h \ - include/linux/pid_types.h \ - include/linux/shm.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/kmsan_types.h \ - include/linux/plist_types.h \ - include/linux/hrtimer_types.h \ - include/linux/timerqueue_types.h \ - include/linux/seccomp_types.h \ - $(wildcard include/config/SECCOMP) \ - 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_types.h \ - include/linux/task_io_accounting.h \ - $(wildcard include/config/TASK_IO_ACCOUNTING) \ - include/linux/posix-timers_types.h \ - include/uapi/linux/rseq.h \ - include/linux/kcsan.h \ - include/linux/rv.h \ - $(wildcard include/config/RV_REACTORS) \ - include/linux/livepatch_sched.h \ - arch/x86/include/generated/asm/kmap_size.h \ - include/asm-generic/kmap_size.h \ - $(wildcard include/config/DEBUG_KMAP_LOCAL) \ - include/linux/sync_core.h \ - $(wildcard include/config/ARCH_HAS_SYNC_CORE_BEFORE_USERMODE) \ - arch/x86/include/asm/sync_core.h \ - include/linux/radix-tree.h \ - include/linux/pid.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) \ - $(wildcard include/config/STACK_GROWSUP) \ - 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/ARCH_HAS_SUBPAGE_FAULTS) \ - 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_HAS_ASM_GOTO_TIED_OUTPUT) \ - $(wildcard include/config/X86_INTEL_USERCOPY) \ - include/linux/mmap_lock.h \ - arch/x86/include/asm/smap.h \ - arch/x86/include/asm/extable.h \ - $(wildcard include/config/BPF_JIT) \ - arch/x86/include/asm/tlbflush.h \ - include/linux/mmu_notifier.h \ - include/linux/interval_tree.h \ - arch/x86/include/asm/invpcid.h \ - arch/x86/include/asm/pti.h \ - arch/x86/include/asm/pgtable.h \ - $(wildcard include/config/DEBUG_WX) \ - $(wildcard include/config/HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD) \ - $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ - $(wildcard include/config/HAVE_ARCH_SOFT_DIRTY) \ - $(wildcard include/config/ARCH_ENABLE_THP_MIGRATION) \ - $(wildcard include/config/PAGE_TABLE_CHECK) \ - arch/x86/include/asm/pkru.h \ - arch/x86/include/asm/fpu/api.h \ - $(wildcard include/config/X86_DEBUG_FPU) \ - arch/x86/include/asm/coco.h \ - include/asm-generic/pgtable_uffd.h \ - include/linux/page_table_check.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 \ - arch/x86/include/asm/uaccess_64.h \ - include/asm-generic/access_ok.h \ - $(wildcard include/config/ALTERNATE_USER_ADDRESS_SPACE) \ - include/linux/cred.h \ - 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/VFIO_PCI_ZDEV_KVM) \ - $(wildcard include/config/IOMMUFD) \ - $(wildcard include/config/WATCH_QUEUE) \ - include/linux/ratelimit.h \ - include/linux/posix-timers.h \ - include/linux/alarmtimer.h \ - $(wildcard include/config/RTC_CLASS) \ - 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/rcu_sync.h \ - include/linux/delayed_call.h \ - include/linux/uuid.h \ - include/linux/errseq.h \ - include/linux/ioprio.h \ - include/linux/sched/rt.h \ - include/linux/iocontext.h \ - $(wildcard include/config/BLK_ICQ) \ - include/uapi/linux/ioprio.h \ - include/linux/fs_types.h \ - include/linux/mount.h \ - include/linux/mnt_idmapping.h \ - include/linux/slab.h \ - $(wildcard include/config/SLUB_DEBUG) \ - $(wildcard include/config/SLUB_TINY) \ - $(wildcard include/config/FAILSLAB) \ - $(wildcard include/config/KFENCE) \ - include/linux/percpu-refcount.h \ - include/linux/kasan.h \ - $(wildcard include/config/KASAN_STACK) \ - $(wildcard include/config/KASAN_VMALLOC) \ - include/linux/kasan-enabled.h \ - include/linux/kasan-tags.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/uapi/linux/aio_abi.h \ - include/uapi/linux/unistd.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/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 \ - 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 \ - 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 \ - arch/x86/include/asm/module.h \ - 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) \ - 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/export-internal.h \ - $(wildcard include/config/PARISC) \ - include/linux/vermagic.h \ - $(wildcard include/config/PREEMPT_BUILD) \ - 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/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.mod.o: $(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.mod.o) - -$(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.mod.o): diff --git a/xdma/linux-kernel/xdma/.xdma.o.cmd b/xdma/linux-kernel/xdma/.xdma.o.cmd deleted file mode 100644 index 7e980a5..0000000 --- a/xdma/linux-kernel/xdma/.xdma.o.cmd +++ /dev/null @@ -1 +0,0 @@ -savedcmd_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.o := ld -m elf_x86_64 -z noexecstack -r -o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.o @/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.mod diff --git a/xdma/linux-kernel/xdma/.xdma_cdev.o.cmd b/xdma/linux-kernel/xdma/.xdma_cdev.o.cmd deleted file mode 100644 index 1690c7a..0000000 --- a/xdma/linux-kernel/xdma/.xdma_cdev.o.cmd +++ /dev/null @@ -1,1525 +0,0 @@ -savedcmd_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.o := gcc-12 -Wp,-MMD,/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/.xdma_cdev.o.d -nostdinc -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=./= -std=gnu11 -fshort-wchar -funsigned-char -fno-common -fno-PIE -fno-strict-aliasing -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 -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mindirect-branch-cs-prefix -mfunction-return=thunk-extern -fno-jump-tables -mharden-sls=all -fpatchable-function-entry=16,16 -fno-delete-null-pointer-checks -O2 -fno-allow-store-data-races -fstack-protector-strong -fno-omit-frame-pointer -fno-optimize-sibling-calls -ftrivial-auto-var-init=zero -fno-stack-clash-protection -fzero-call-used-regs=used-gpr -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -falign-functions=16 -fno-strict-overflow -fno-stack-check -fconserve-stack -Wall -Wundef -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Werror=strict-prototypes -Wno-format-security -Wno-trigraphs -Wno-frame-address -Wno-address-of-packed-member -Wmissing-declarations -Wmissing-prototypes -Wframe-larger-than=1024 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-overflow -Wno-array-bounds -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wenum-conversion -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-restrict -Wno-packed-not-aligned -Wno-format-overflow -Wno-format-truncation -Wno-stringop-truncation -Wno-override-init -Wno-missing-field-initializers -Wno-type-limits -Wno-shift-negative-value -Wno-maybe-uninitialized -Wno-sign-compare -g -gdwarf-5 -I/home/colin/develop/xc7k480t/xdma/linux-kernel/include -fsanitize=bounds-strict -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"xdma_cdev"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.c ; ./tools/objtool/objtool --hacks=jump_label --hacks=noinstr --hacks=skylake --retpoline --rethunk --sls --stackval --static-call --uaccess --prefix=16 --module /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.o - -source_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.o := /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.c - -deps_/home/colin/develop/xc7k480t/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/DEBUG_INFO_BTF) \ - $(wildcard include/config/PAHOLE_HAS_BTF_TAG) \ - $(wildcard include/config/FUNCTION_ALIGNMENT) \ - $(wildcard include/config/CC_IS_GCC) \ - $(wildcard include/config/X86_64) \ - $(wildcard include/config/ARM64) \ - $(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/GCC_ASM_GOTO_OUTPUT_WORKAROUND) \ - $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ - $(wildcard include/config/SHADOW_CALL_STACK) \ - $(wildcard include/config/KCOV) \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.h \ - include/linux/kernel.h \ - $(wildcard include/config/PREEMPT_VOLUNTARY_BUILD) \ - $(wildcard include/config/PREEMPT_DYNAMIC) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_CALL) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_KEY) \ - $(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/array_size.h \ - include/linux/compiler.h \ - $(wildcard include/config/TRACE_BRANCH_PROFILING) \ - $(wildcard include/config/PROFILE_ALL_BRANCHES) \ - $(wildcard include/config/OBJTOOL) \ - 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_WEAK_MEMORY) \ - $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ - 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) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/CALL_PADDING) \ - $(wildcard include/config/RETHUNK) \ - $(wildcard include/config/SLS) \ - $(wildcard include/config/FUNCTION_PADDING_BYTES) \ - $(wildcard include/config/UML) \ - arch/x86/include/asm/ibt.h \ - $(wildcard include/config/X86_KERNEL_IBT) \ - include/linux/container_of.h \ - include/linux/build_bug.h \ - include/linux/bitops.h \ - include/linux/bits.h \ - include/vdso/bits.h \ - include/linux/typecheck.h \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.h \ - include/asm-generic/bitops/generic-non-atomic.h \ - arch/x86/include/asm/barrier.h \ - arch/x86/include/asm/alternative.h \ - $(wildcard include/config/CALL_THUNKS) \ - 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/asm-generic/barrier.h \ - arch/x86/include/asm/bitops.h \ - $(wildcard include/config/X86_CMOV) \ - arch/x86/include/asm/rmwcc.h \ - include/linux/args.h \ - 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_P6_NOP) \ - $(wildcard include/config/MATOM) \ - $(wildcard include/config/PARAVIRT_XXL) \ - arch/x86/include/asm/disabled-features.h \ - $(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/CALL_DEPTH_TRACKING) \ - $(wildcard include/config/ADDRESS_MASKING) \ - $(wildcard include/config/INTEL_IOMMU_SVM) \ - $(wildcard include/config/X86_SGX) \ - $(wildcard include/config/XEN_PV) \ - $(wildcard include/config/INTEL_TDX_GUEST) \ - $(wildcard include/config/X86_USER_SHADOW_STACK) \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/instrumented-atomic.h \ - include/linux/instrumented.h \ - include/linux/kmsan-checks.h \ - $(wildcard include/config/KMSAN) \ - 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/hex.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/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/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_raw.h \ - $(wildcard include/config/DEBUG_SPINLOCK) \ - $(wildcard include/config/DEBUG_LOCK_ALLOC) \ - 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/LOCKDEP) \ - $(wildcard include/config/LOCK_STAT) \ - 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 \ - $(wildcard include/config/HAVE_JUMP_LABEL_HACK) \ - include/linux/sprintf.h \ - include/linux/static_call_types.h \ - $(wildcard include/config/HAVE_STATIC_CALL) \ - $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ - include/linux/instruction_pointer.h \ - include/linux/uaccess.h \ - $(wildcard include/config/PREEMPT_COUNT) \ - $(wildcard include/config/ARCH_HAS_SUBPAGE_FAULTS) \ - $(wildcard include/config/HARDENED_USERCOPY) \ - include/linux/fault-inject-usercopy.h \ - $(wildcard include/config/FAULT_INJECTION_USERCOPY) \ - include/linux/sched.h \ - $(wildcard include/config/PREEMPT_RT) \ - $(wildcard include/config/VIRT_CPU_ACCOUNTING_NATIVE) \ - $(wildcard include/config/SCHED_INFO) \ - $(wildcard include/config/SCHEDSTATS) \ - $(wildcard include/config/SCHED_CORE) \ - $(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/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/MEMCG) \ - $(wildcard include/config/LRU_GEN) \ - $(wildcard include/config/COMPAT_BRK) \ - $(wildcard include/config/CGROUPS) \ - $(wildcard include/config/BLK_CGROUP) \ - $(wildcard include/config/PSI) \ - $(wildcard include/config/PAGE_OWNER) \ - $(wildcard include/config/EVENTFD) \ - $(wildcard include/config/ARCH_HAS_CPU_PASID) \ - $(wildcard include/config/CPU_SUP_INTEL) \ - $(wildcard include/config/TASK_DELAY_ACCT) \ - $(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/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/SCHED_MM_CID) \ - $(wildcard include/config/FAULT_INJECTION) \ - $(wildcard include/config/LATENCYTOP) \ - $(wildcard include/config/KUNIT) \ - $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ - $(wildcard include/config/MEMCG_KMEM) \ - $(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/RETHOOK) \ - $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ - $(wildcard include/config/RV) \ - $(wildcard include/config/USER_EVENTS) \ - $(wildcard include/config/PREEMPTION) \ - include/uapi/linux/sched.h \ - arch/x86/include/asm/current.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) \ - 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) \ - arch/x86/include/asm/processor.h \ - $(wildcard include/config/X86_VMX_FEATURE_NAMES) \ - $(wildcard include/config/X86_IOPL_IOPERM) \ - $(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) \ - arch/x86/include/asm/mem_encrypt.h \ - $(wildcard include/config/X86_MEM_ENCRYPT) \ - include/linux/cc_platform.h \ - $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ - 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 \ - 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/ZERO_CALL_USED_REGS) \ - $(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/CALL_THUNKS_DEBUG) \ - $(wildcard include/config/NOINSTR_VALIDATION) \ - $(wildcard include/config/CPU_SRSO) \ - $(wildcard include/config/CPU_IBPB_ENTRY) \ - include/linux/static_key.h \ - include/linux/objtool.h \ - $(wildcard include/config/FRAME_POINTER) \ - include/linux/objtool_types.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/asm-offsets.h \ - include/generated/asm-offsets.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/cpuid.h \ - arch/x86/include/asm/string.h \ - arch/x86/include/asm/string_64.h \ - $(wildcard include/config/ARCH_HAS_UACCESS_FLUSHCACHE) \ - arch/x86/include/asm/paravirt.h \ - $(wildcard include/config/PARAVIRT_SPINLOCKS) \ - $(wildcard include/config/DEBUG_ENTRY) \ - 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/FORCE_NR_CPUS) \ - $(wildcard include/config/HOTPLUG_CPU) \ - $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ - $(wildcard include/config/CPUMASK_OFFSTACK) \ - include/linux/bitmap.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/find.h \ - include/linux/string.h \ - $(wildcard include/config/BINARY_PRINTF) \ - $(wildcard include/config/FORTIFY_SOURCE) \ - include/linux/err.h \ - include/linux/overflow.h \ - include/uapi/linux/string.h \ - include/linux/fortify-string.h \ - $(wildcard include/config/CC_HAS_KASAN_MEMINTRINSIC_PREFIX) \ - $(wildcard include/config/GENERIC_ENTRY) \ - include/linux/bitmap-str.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/gfp_types.h \ - $(wildcard include/config/KASAN_HW_TAGS) \ - include/linux/numa.h \ - $(wildcard include/config/NODES_SHIFT) \ - $(wildcard include/config/HAVE_ARCH_NODE_DEV_GROUP) \ - arch/x86/include/asm/frame.h \ - arch/x86/include/asm/page.h \ - arch/x86/include/asm/page_64.h \ - $(wildcard include/config/DEBUG_VIRTUAL) \ - $(wildcard include/config/X86_VSYSCALL_EMULATION) \ - include/linux/range.h \ - include/asm-generic/memory_model.h \ - $(wildcard include/config/FLATMEM) \ - $(wildcard include/config/SPARSEMEM_VMEMMAP) \ - include/linux/pfn.h \ - include/asm-generic/getorder.h \ - arch/x86/include/asm/msr.h \ - $(wildcard include/config/TRACEPOINTS) \ - arch/x86/include/asm/cpumask.h \ - arch/x86/include/uapi/asm/msr.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 \ - arch/x86/include/asm/shared/msr.h \ - include/linux/tracepoint-defs.h \ - arch/x86/include/asm/special_insns.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) \ - include/linux/irqflags_types.h \ - include/linux/cleanup.h \ - 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 \ - arch/x86/include/asm/shstk.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - include/linux/math64.h \ - $(wildcard include/config/ARCH_SUPPORTS_INT128) \ - include/vdso/math64.h \ - include/linux/thread_info.h \ - $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ - $(wildcard include/config/SH) \ - include/linux/restart_block.h \ - arch/x86/include/asm/thread_info.h \ - arch/x86/include/asm/cpufeature.h \ - include/linux/preempt.h \ - $(wildcard include/config/TRACE_PREEMPT_TOGGLE) \ - $(wildcard include/config/PREEMPT_NONE) \ - $(wildcard include/config/PREEMPT_VOLUNTARY) \ - $(wildcard include/config/PREEMPT) \ - arch/x86/include/asm/preempt.h \ - include/linux/smp_types.h \ - include/linux/llist.h \ - $(wildcard include/config/ARCH_HAVE_NMI_SAFE_CMPXCHG) \ - include/linux/pid_types.h \ - include/linux/sem_types.h \ - include/linux/shm.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/kmsan_types.h \ - include/linux/mutex_types.h \ - $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ - include/linux/osq_lock.h \ - include/linux/spinlock_types.h \ - include/linux/rwlock_types.h \ - include/linux/plist_types.h \ - include/linux/hrtimer_types.h \ - include/linux/timerqueue_types.h \ - include/linux/rbtree_types.h \ - include/linux/timer_types.h \ - include/linux/seccomp_types.h \ - $(wildcard include/config/SECCOMP) \ - include/linux/nodemask_types.h \ - include/linux/refcount_types.h \ - include/linux/resource.h \ - include/uapi/linux/resource.h \ - include/uapi/linux/time_types.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_types.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_types.h \ - $(wildcard include/config/POSIX_TIMERS) \ - include/uapi/linux/rseq.h \ - include/linux/seqlock_types.h \ - include/linux/kcsan.h \ - include/linux/rv.h \ - $(wildcard include/config/RV_REACTORS) \ - include/linux/livepatch_sched.h \ - include/linux/uidgid_types.h \ - arch/x86/include/generated/asm/kmap_size.h \ - include/asm-generic/kmap_size.h \ - $(wildcard include/config/DEBUG_KMAP_LOCAL) \ - include/linux/spinlock.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/list.h \ - $(wildcard include/config/LIST_HARDENED) \ - $(wildcard include/config/DEBUG_LIST) \ - include/linux/poison.h \ - $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ - arch/x86/include/asm/smp.h \ - $(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 \ - 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) \ - arch/x86/include/asm/uaccess.h \ - $(wildcard include/config/CC_HAS_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) \ - include/linux/mm_types.h \ - $(wildcard include/config/HAVE_ALIGNED_STRUCT_PAGE) \ - $(wildcard include/config/USERFAULTFD) \ - $(wildcard include/config/ANON_VMA_NAME) \ - $(wildcard include/config/PER_VMA_LOCK) \ - $(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_MM_DATA) \ - $(wildcard include/config/KSM) \ - $(wildcard include/config/LRU_GEN_WALKS_MMU) \ - include/linux/auxvec.h \ - include/uapi/linux/auxvec.h \ - arch/x86/include/uapi/asm/auxvec.h \ - include/linux/kref.h \ - include/linux/refcount.h \ - include/linux/rbtree.h \ - include/linux/rcupdate.h \ - $(wildcard include/config/TINY_RCU) \ - $(wildcard include/config/RCU_STRICT_GRACE_PERIOD) \ - $(wildcard include/config/RCU_LAZY) \ - $(wildcard include/config/TASKS_RCU_GENERIC) \ - $(wildcard include/config/RCU_STALL_COMMON) \ - $(wildcard include/config/KVM_XFER_TO_GUEST_WORK) \ - $(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/context_tracking_irq.h \ - $(wildcard include/config/CONTEXT_TRACKING_IDLE) \ - include/linux/rcutree.h \ - include/linux/maple_tree.h \ - $(wildcard include/config/MAPLE_RCU_DISABLED) \ - $(wildcard include/config/DEBUG_MAPLE_TREE) \ - 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/wait.h \ - include/linux/uprobes.h \ - arch/x86/include/asm/uprobes.h \ - include/linux/notifier.h \ - $(wildcard include/config/TREE_SRCU) \ - include/linux/mutex.h \ - include/linux/debug_locks.h \ - include/linux/srcu.h \ - $(wildcard include/config/TINY_SRCU) \ - $(wildcard include/config/NEED_SRCU_NMI_SAFE) \ - 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) \ - include/linux/ktime.h \ - include/linux/jiffies.h \ - include/linux/time.h \ - include/linux/time64.h \ - include/vdso/time64.h \ - include/uapi/linux/time.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/tsc.h \ - include/vdso/time32.h \ - include/vdso/time.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/workqueue_types.h \ - 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 \ - include/generated/bounds.h \ - include/linux/seqlock.h \ - include/linux/percpu_counter.h \ - include/linux/percpu.h \ - $(wildcard include/config/MODULES) \ - $(wildcard include/config/RANDOM_KMALLOC_CACHES) \ - $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ - include/linux/mmdebug.h \ - $(wildcard include/config/DEBUG_VM) \ - $(wildcard include/config/DEBUG_VM_IRQSOFF) \ - $(wildcard include/config/DEBUG_VM_PGFLAGS) \ - arch/x86/include/asm/mmu.h \ - $(wildcard include/config/MODIFY_LDT_SYSCALL) \ - include/linux/mmap_lock.h \ - arch/x86/include/asm/smap.h \ - arch/x86/include/asm/extable.h \ - $(wildcard include/config/BPF_JIT) \ - arch/x86/include/asm/tlbflush.h \ - include/linux/mmu_notifier.h \ - include/linux/interval_tree.h \ - arch/x86/include/asm/invpcid.h \ - arch/x86/include/asm/pti.h \ - arch/x86/include/asm/pgtable.h \ - $(wildcard include/config/DEBUG_WX) \ - $(wildcard include/config/HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD) \ - $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ - $(wildcard include/config/HAVE_ARCH_SOFT_DIRTY) \ - $(wildcard include/config/ARCH_ENABLE_THP_MIGRATION) \ - $(wildcard include/config/PAGE_TABLE_CHECK) \ - arch/x86/include/asm/x86_init.h \ - arch/x86/include/uapi/asm/bootparam.h \ - include/linux/screen_info.h \ - $(wildcard include/config/PCI) \ - 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/pkru.h \ - arch/x86/include/asm/fpu/api.h \ - $(wildcard include/config/X86_DEBUG_FPU) \ - arch/x86/include/asm/coco.h \ - include/asm-generic/pgtable_uffd.h \ - include/linux/page_table_check.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_LOCAL_APIC) \ - $(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/asm/apicdef.h \ - arch/x86/include/uapi/asm/vsyscall.h \ - include/asm-generic/fixmap.h \ - arch/x86/include/asm/pgtable-invert.h \ - arch/x86/include/asm/uaccess_64.h \ - include/asm-generic/access_ok.h \ - $(wildcard include/config/ALTERNATE_USER_ADDRESS_SPACE) \ - /home/colin/develop/xc7k480t/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/ARCH_USES_CFI_TRAPS) \ - $(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/stat.h \ - arch/x86/include/uapi/asm/stat.h \ - include/uapi/linux/stat.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/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/CONTIG_ALLOC) \ - include/linux/mmzone.h \ - $(wildcard include/config/ARCH_FORCE_MAX_ORDER) \ - $(wildcard include/config/CMA) \ - $(wildcard include/config/MEMORY_ISOLATION) \ - $(wildcard include/config/ZSMALLOC) \ - $(wildcard include/config/UNACCEPTED_MEMORY) \ - $(wildcard include/config/LRU_GEN_STATS) \ - $(wildcard include/config/MEMORY_HOTPLUG) \ - $(wildcard include/config/MEMORY_FAILURE) \ - $(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/list_nulls.h \ - include/linux/nodemask.h \ - include/linux/random.h \ - $(wildcard include/config/VMGENID) \ - include/uapi/linux/random.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/prandom.h \ - include/linux/once.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/PAGE_IDLE_FLAG) \ - $(wildcard include/config/ARCH_USES_PG_ARCH_X) \ - $(wildcard include/config/HUGETLB_PAGE_OPTIMIZE_VMEMMAP) \ - include/linux/local_lock.h \ - include/linux/local_lock_internal.h \ - include/linux/zswap.h \ - $(wildcard include/config/ZSWAP) \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ - $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ - $(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/ACPI_CPPC_LIB) \ - $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ - arch/x86/include/asm/topology.h \ - $(wildcard include/config/SCHED_MC_PRIO) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/EISA) \ - $(wildcard include/config/X86_MPPARSE) \ - arch/x86/include/asm/mpspec_def.h \ - include/asm-generic/topology.h \ - include/linux/cpu_smt.h \ - $(wildcard include/config/HOTPLUG_SMT) \ - 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/ia32.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/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/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/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/FS_DAX) \ - $(wildcard include/config/BLOCK) \ - include/linux/wait_bit.h \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/dcache.h \ - include/linux/rculist.h \ - $(wildcard include/config/PROVE_RCU_LIST) \ - 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) \ - 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 \ - include/linux/shrinker.h \ - $(wildcard include/config/SHRINKER_DEBUG) \ - include/linux/xarray.h \ - $(wildcard include/config/XARRAY_MULTI) \ - include/linux/sched/mm.h \ - $(wildcard include/config/MMU_LAZY_TLB_REFCOUNT) \ - $(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/radix-tree.h \ - include/linux/pid.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) \ - $(wildcard include/config/STACK_GROWSUP) \ - 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 \ - 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/VFIO_PCI_ZDEV_KVM) \ - $(wildcard include/config/IOMMUFD) \ - $(wildcard include/config/WATCH_QUEUE) \ - include/linux/ratelimit.h \ - include/linux/posix-timers.h \ - include/linux/alarmtimer.h \ - $(wildcard include/config/RTC_CLASS) \ - 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/rcu_sync.h \ - include/linux/delayed_call.h \ - include/linux/uuid.h \ - include/linux/errseq.h \ - include/linux/ioprio.h \ - include/linux/sched/rt.h \ - include/linux/iocontext.h \ - $(wildcard include/config/BLK_ICQ) \ - include/uapi/linux/ioprio.h \ - include/linux/fs_types.h \ - include/linux/mount.h \ - include/linux/mnt_idmapping.h \ - include/linux/slab.h \ - $(wildcard include/config/SLUB_DEBUG) \ - $(wildcard include/config/SLUB_TINY) \ - $(wildcard include/config/FAILSLAB) \ - $(wildcard include/config/KFENCE) \ - include/linux/percpu-refcount.h \ - include/linux/kasan.h \ - $(wildcard include/config/KASAN_STACK) \ - $(wildcard include/config/KASAN_VMALLOC) \ - include/linux/kasan-enabled.h \ - include/linux/kasan-tags.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/uapi/linux/aio_abi.h \ - include/uapi/linux/unistd.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/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 \ - 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 \ - 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 \ - 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) \ - include/linux/cdev.h \ - include/linux/device.h \ - $(wildcard include/config/HAS_IOMEM) \ - $(wildcard include/config/GENERIC_MSI_IRQ) \ - $(wildcard include/config/ENERGY_MODEL) \ - $(wildcard include/config/PINCTRL) \ - $(wildcard include/config/DMA_OPS) \ - $(wildcard include/config/DMA_DECLARE_COHERENT) \ - $(wildcard include/config/DMA_CMA) \ - $(wildcard include/config/SWIOTLB) \ - $(wildcard include/config/SWIOTLB_DYNAMIC) \ - $(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/PM_SLEEP) \ - $(wildcard include/config/OF) \ - $(wildcard include/config/DEVTMPFS) \ - 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_CLUSTER) \ - $(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/CXL_SUSPEND) \ - $(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/sizes.h \ - include/linux/dma-direction.h \ - include/linux/scatterlist.h \ - $(wildcard include/config/NEED_SG_DMA_LENGTH) \ - $(wildcard include/config/NEED_SG_DMA_FLAGS) \ - $(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/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_MTE) \ - $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ - $(wildcard include/config/SHMEM) \ - $(wildcard include/config/MIGRATION) \ - $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ - $(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/ARCH_WANT_OPTIMIZE_DAX_VMEMMAP) \ - $(wildcard include/config/HUGETLBFS) \ - $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ - include/linux/page_ext.h \ - include/linux/stacktrace.h \ - $(wildcard include/config/ARCH_STACKWALK) \ - $(wildcard include/config/STACKTRACE) \ - $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ - include/linux/stackdepot.h \ - $(wildcard include/config/STACKDEPOT) \ - $(wildcard include/config/STACKDEPOT_MAX_FRAMES) \ - $(wildcard include/config/STACKDEPOT_ALWAYS_INIT) \ - include/linux/page_ref.h \ - $(wildcard include/config/DEBUG_PAGE_REF) \ - include/linux/pgtable.h \ - $(wildcard include/config/HIGHPTE) \ - $(wildcard include/config/ARCH_HAS_NONLEAF_PMD_YOUNG) \ - $(wildcard include/config/ARCH_HAS_HW_PTE_YOUNG) \ - $(wildcard include/config/GUP_GET_PXX_LOW_HIGH) \ - $(wildcard include/config/ARCH_WANT_PMD_MKWRITE) \ - $(wildcard include/config/HAVE_ARCH_HUGE_VMAP) \ - $(wildcard include/config/X86_ESPFIX64) \ - include/linux/memremap.h \ - $(wildcard include/config/DEVICE_PRIVATE) \ - $(wildcard include/config/PCI_P2PDMA) \ - include/linux/huge_mm.h \ - include/linux/sched/coredump.h \ - $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ - include/linux/vmstat.h \ - $(wildcard include/config/VM_EVENT_COUNTERS) \ - $(wildcard include/config/DEBUG_TLBFLUSH) \ - $(wildcard include/config/PER_VMA_LOCK_STATS) \ - 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) \ - arch/x86/include/asm/shared/io.h \ - include/asm-generic/io.h \ - $(wildcard include/config/GENERIC_IOMAP) \ - $(wildcard include/config/TRACE_MMIO_ACCESS) \ - $(wildcard include/config/GENERIC_IOREMAP) \ - $(wildcard include/config/HAS_IOPORT_MAP) \ - include/asm-generic/iomap.h \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ - $(wildcard include/config/GENERIC_PCI_IOMAP) \ - 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_DEVICE) \ - $(wildcard include/config/FB_FOREIGN_ENDIAN) \ - $(wildcard include/config/FB_BOTH_ENDIAN) \ - $(wildcard include/config/FB_BIG_ENDIAN) \ - $(wildcard include/config/FB_LITTLE_ENDIAN) \ - $(wildcard include/config/VIDEO_NOMODESET) \ - 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/KRETPROBE_ON_RETHOOK) \ - $(wildcard include/config/KPROBES_SANITY_TEST) \ - $(wildcard include/config/OPTPROBES) \ - $(wildcard include/config/KPROBES_ON_FTRACE) \ - include/linux/ftrace.h \ - $(wildcard include/config/HAVE_FUNCTION_GRAPH_RETVAL) \ - $(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_ARGS) \ - $(wildcard include/config/DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ - $(wildcard include/config/STACK_TRACER) \ - $(wildcard include/config/DYNAMIC_FTRACE_WITH_CALL_OPS) \ - $(wildcard include/config/FUNCTION_GRAPH_RETVAL) \ - $(wildcard include/config/FUNCTION_PROFILER) \ - $(wildcard include/config/FTRACE_SYSCALLS) \ - include/linux/trace_recursion.h \ - $(wildcard include/config/FTRACE_RECORD_RECURSION) \ - $(wildcard include/config/ARCH_WANTS_NO_INSTR) \ - 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/hardirq.h \ - include/linux/context_tracking_state.h \ - $(wildcard include/config/CONTEXT_TRACKING_USER) \ - $(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 \ - $(wildcard include/config/HAVE_FUNCTION_DESCRIPTORS) \ - 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/MEMFD_CREATE) \ - $(wildcard include/config/PID_NS) \ - include/linux/nsproxy.h \ - include/linux/ns_common.h \ - include/uapi/linux/ptrace.h \ - include/linux/seccomp.h \ - $(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/ia32_unistd.h \ - include/asm-generic/seccomp.h \ - arch/x86/include/asm/ftrace.h \ - $(wildcard include/config/HAVE_FENTRY) \ - include/linux/objpool.h \ - include/linux/rethook.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_TABLE_LIB) \ - $(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_THERMAL_LIB) \ - $(wildcard include/config/ACPI_HMAT) \ - $(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/SUSPEND) \ - $(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_PROCESSOR_IDLE) \ - $(wildcard include/config/ACPI_PPTT) \ - $(wildcard include/config/ACPI_PCC) \ - $(wildcard include/config/ACPI_FFH) \ - include/linux/resource_ext.h \ - include/linux/mod_devicetable.h \ - include/uapi/linux/mei.h \ - include/uapi/linux/mei_uuid.h \ - include/linux/property.h \ - include/linux/node.h \ - $(wildcard include/config/HMEM_REPORTING) \ - 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/linux/fw_table.h \ - $(wildcard include/config/CXL_BUS) \ - include/acpi/acpi_bus.h \ - $(wildcard include/config/X86_ANDROID_TABLETS) \ - $(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 \ - include/acpi/acpi_io.h \ - include/linux/io.h \ - arch/x86/include/asm/acpi.h \ - $(wildcard include/config/ACPI_APEI) \ - include/acpi/proc_cap_intel.h \ - arch/x86/include/asm/numa.h \ - $(wildcard include/config/NUMA_EMU) \ - arch/x86/include/asm/xen/hypervisor.h \ - $(wildcard include/config/XEN_PV_DOM0) \ - $(wildcard include/config/PVH) \ - $(wildcard include/config/XEN_PVH) \ - $(wildcard include/config/XEN_DOM0) \ - include/xen/xen.h \ - $(wildcard include/config/XEN_BALLOON) \ - $(wildcard include/config/XEN_UNPOPULATED_ALLOC) \ - include/xen/interface/hvm/start_info.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/emulate_prefix.h \ - include/linux/regulator/consumer.h \ - $(wildcard include/config/REGULATOR) \ - include/linux/suspend.h \ - $(wildcard include/config/VT) \ - $(wildcard include/config/HIBERNATION_SNAPSHOT_DEV) \ - $(wildcard include/config/PM_SLEEP_DEBUG) \ - $(wildcard include/config/PM_AUTOSLEEP) \ - include/linux/swap.h \ - $(wildcard include/config/THP_SWAP) \ - include/linux/memcontrol.h \ - include/linux/cgroup.h \ - $(wildcard include/config/DEBUG_CGROUP_REF) \ - $(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/string_helpers.h \ - include/linux/string_choices.h \ - include/linux/user_namespace.h \ - $(wildcard include/config/INOTIFY_USER) \ - $(wildcard include/config/FANOTIFY) \ - $(wildcard include/config/BINFMT_MISC) \ - $(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-defs.h \ - $(wildcard include/config/BPF_LSM) \ - 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/cgroup_refcnt.h \ - include/linux/page_counter.h \ - include/linux/vmpressure.h \ - include/linux/eventfd.h \ - include/uapi/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/cacheflush.h \ - arch/x86/include/asm/cacheflush.h \ - include/asm-generic/cacheflush.h \ - include/linux/kmsan.h \ - include/linux/highmem-internal.h \ - include/linux/bio.h \ - include/linux/mempool.h \ - include/linux/pagemap.h \ - include/linux/hugetlb_inline.h \ - include/uapi/linux/mempolicy.h \ - include/linux/freezer.h \ - include/uapi/regulator/regulator.h \ - include/linux/rtmutex.h \ - $(wildcard include/config/DEBUG_RT_MUTEXES) \ - 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/irqdomain_defs.h \ - 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/uapi/linux/i2c.h \ - include/linux/backlight.h \ - $(wildcard include/config/BACKLIGHT_CLASS_DEVICE) \ - arch/x86/include/asm/fb.h \ - include/asm-generic/fb.h \ - 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_DOE) \ - $(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/msi_api.h \ - 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/VMD) \ - arch/x86/include/asm/memtype.h \ - include/linux/aio.h \ - include/linux/splice.h \ - include/linux/pipe_fs_i.h \ - include/generated/uapi/linux/version.h \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.h \ - $(wildcard include/config/BLOCK_ID) \ - /home/colin/develop/xc7k480t/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) \ - include/linux/static_call.h \ - include/linux/cpu.h \ - $(wildcard include/config/GENERIC_CPU_DEVICES) \ - $(wildcard include/config/PM_SLEEP_SMP) \ - $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ - $(wildcard include/config/ARCH_HAS_CPU_FINALIZE_INIT) \ - $(wildcard include/config/CPU_MITIGATIONS) \ - include/linux/cpuhotplug.h \ - $(wildcard include/config/HOTPLUG_CORE_SYNC_DEAD) \ - arch/x86/include/asm/static_call.h \ - include/trace/define_trace.h \ - arch/x86/include/asm/debugreg.h \ - arch/x86/include/uapi/asm/debugreg.h \ - arch/x86/include/asm/gsseg.h \ - include/asm-generic/mmu_context.h \ - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.o: $(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.o) - -$(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.o): - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.o: $(wildcard ./tools/objtool/objtool) diff --git a/xdma/linux-kernel/xdma/.xdma_mod.o.cmd b/xdma/linux-kernel/xdma/.xdma_mod.o.cmd deleted file mode 100644 index 3413a50..0000000 --- a/xdma/linux-kernel/xdma/.xdma_mod.o.cmd +++ /dev/null @@ -1,1528 +0,0 @@ -savedcmd_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_mod.o := gcc-12 -Wp,-MMD,/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/.xdma_mod.o.d -nostdinc -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=./= -std=gnu11 -fshort-wchar -funsigned-char -fno-common -fno-PIE -fno-strict-aliasing -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 -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mindirect-branch-cs-prefix -mfunction-return=thunk-extern -fno-jump-tables -mharden-sls=all -fpatchable-function-entry=16,16 -fno-delete-null-pointer-checks -O2 -fno-allow-store-data-races -fstack-protector-strong -fno-omit-frame-pointer -fno-optimize-sibling-calls -ftrivial-auto-var-init=zero -fno-stack-clash-protection -fzero-call-used-regs=used-gpr -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -falign-functions=16 -fno-strict-overflow -fno-stack-check -fconserve-stack -Wall -Wundef -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Werror=strict-prototypes -Wno-format-security -Wno-trigraphs -Wno-frame-address -Wno-address-of-packed-member -Wmissing-declarations -Wmissing-prototypes -Wframe-larger-than=1024 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-overflow -Wno-array-bounds -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wenum-conversion -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-restrict -Wno-packed-not-aligned -Wno-format-overflow -Wno-format-truncation -Wno-stringop-truncation -Wno-override-init -Wno-missing-field-initializers -Wno-type-limits -Wno-shift-negative-value -Wno-maybe-uninitialized -Wno-sign-compare -g -gdwarf-5 -I/home/colin/develop/xc7k480t/xdma/linux-kernel/include -fsanitize=bounds-strict -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"xdma_mod"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_mod.o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_mod.c ; ./tools/objtool/objtool --hacks=jump_label --hacks=noinstr --hacks=skylake --retpoline --rethunk --sls --stackval --static-call --uaccess --prefix=16 --module /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_mod.o - -source_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_mod.o := /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_mod.c - -deps_/home/colin/develop/xc7k480t/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/DEBUG_INFO_BTF) \ - $(wildcard include/config/PAHOLE_HAS_BTF_TAG) \ - $(wildcard include/config/FUNCTION_ALIGNMENT) \ - $(wildcard include/config/CC_IS_GCC) \ - $(wildcard include/config/X86_64) \ - $(wildcard include/config/ARM64) \ - $(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/GCC_ASM_GOTO_OUTPUT_WORKAROUND) \ - $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ - $(wildcard include/config/SHADOW_CALL_STACK) \ - $(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 \ - 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/colin/develop/xc7k480t/xdma/linux-kernel/include/libxdma_api.h \ - include/linux/scatterlist.h \ - $(wildcard include/config/NEED_SG_DMA_LENGTH) \ - $(wildcard include/config/NEED_SG_DMA_FLAGS) \ - $(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/array_size.h \ - include/linux/compiler.h \ - $(wildcard include/config/TRACE_BRANCH_PROFILING) \ - $(wildcard include/config/PROFILE_ALL_BRANCHES) \ - $(wildcard include/config/OBJTOOL) \ - 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_WEAK_MEMORY) \ - $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ - include/linux/err.h \ - include/linux/overflow.h \ - include/linux/limits.h \ - include/uapi/linux/limits.h \ - include/vdso/limits.h \ - include/linux/const.h \ - include/vdso/const.h \ - include/uapi/linux/const.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/KMSAN) \ - $(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 \ - $(wildcard include/config/HAVE_JUMP_LABEL_HACK) \ - 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 \ - $(wildcard include/config/CC_HAS_KASAN_MEMINTRINSIC_PREFIX) \ - $(wildcard include/config/GENERIC_ENTRY) \ - 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/NOINSTR_VALIDATION) \ - include/linux/objtool.h \ - $(wildcard include/config/FRAME_POINTER) \ - $(wildcard include/config/CPU_UNRET_ENTRY) \ - $(wildcard include/config/CPU_SRSO) \ - include/linux/objtool_types.h \ - include/asm-generic/bug.h \ - $(wildcard include/config/BUG) \ - $(wildcard include/config/GENERIC_BUG_RELATIVE_POINTERS) \ - $(wildcard include/config/SMP) \ - 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/build_bug.h \ - include/linux/kern_levels.h \ - include/linux/linkage.h \ - $(wildcard include/config/ARCH_USE_SYM_ANNOTATIONS) \ - include/linux/export.h \ - $(wildcard include/config/MODVERSIONS) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/CALL_PADDING) \ - $(wildcard include/config/RETHUNK) \ - $(wildcard include/config/SLS) \ - $(wildcard include/config/FUNCTION_PADDING_BYTES) \ - $(wildcard include/config/UML) \ - arch/x86/include/asm/ibt.h \ - $(wildcard include/config/X86_KERNEL_IBT) \ - include/linux/ratelimit_types.h \ - include/linux/bits.h \ - include/vdso/bits.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_raw.h \ - $(wildcard include/config/DEBUG_SPINLOCK) \ - $(wildcard include/config/DEBUG_LOCK_ALLOC) \ - 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/LOCKDEP) \ - $(wildcard include/config/LOCK_STAT) \ - 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/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_USER_SHADOW_STACK) \ - $(wildcard include/config/X86) \ - $(wildcard include/config/PARISC) \ - $(wildcard include/config/SPARC64) \ - $(wildcard include/config/ARM64_MTE) \ - $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ - $(wildcard include/config/STACK_GROWSUP) \ - $(wildcard include/config/NUMA_BALANCING) \ - $(wildcard include/config/PER_VMA_LOCK) \ - $(wildcard include/config/SHMEM) \ - $(wildcard include/config/ZONE_DEVICE) \ - $(wildcard include/config/FS_DAX) \ - $(wildcard include/config/KASAN_HW_TAGS) \ - $(wildcard include/config/MIGRATION) \ - $(wildcard include/config/CMA) \ - $(wildcard include/config/HIGHMEM) \ - $(wildcard include/config/SCHED_MM_CID) \ - $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ - $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ - $(wildcard include/config/TRANSPARENT_HUGEPAGE) \ - $(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/ARCH_WANT_OPTIMIZE_DAX_VMEMMAP) \ - $(wildcard include/config/MEMORY_FAILURE) \ - $(wildcard include/config/KSM) \ - $(wildcard include/config/HUGETLBFS) \ - $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ - $(wildcard include/config/ANON_VMA_NAME) \ - $(wildcard include/config/UNACCEPTED_MEMORY) \ - include/linux/mmdebug.h \ - $(wildcard include/config/DEBUG_VM) \ - $(wildcard include/config/DEBUG_VM_IRQSOFF) \ - $(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/COMPACTION) \ - $(wildcard include/config/CONTIG_ALLOC) \ - include/linux/gfp_types.h \ - include/linux/mmzone.h \ - $(wildcard include/config/ARCH_FORCE_MAX_ORDER) \ - $(wildcard include/config/MEMORY_ISOLATION) \ - $(wildcard include/config/ZSMALLOC) \ - $(wildcard include/config/SWAP) \ - $(wildcard include/config/LRU_GEN) \ - $(wildcard include/config/LRU_GEN_STATS) \ - $(wildcard include/config/LRU_GEN_WALKS_MMU) \ - $(wildcard include/config/MEMCG) \ - $(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) \ - $(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) \ - $(wildcard include/config/PREEMPT_DYNAMIC) \ - $(wildcard include/config/PREEMPT_NONE) \ - $(wildcard include/config/PREEMPT_VOLUNTARY) \ - $(wildcard include/config/PREEMPT) \ - include/linux/cleanup.h \ - arch/x86/include/asm/preempt.h \ - arch/x86/include/asm/rmwcc.h \ - include/linux/args.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) \ - arch/x86/include/asm/current.h \ - $(wildcard include/config/CALL_DEPTH_TRACKING) \ - include/linux/cache.h \ - $(wildcard include/config/ARCH_HAS_CACHE_LINE_SIZE) \ - include/uapi/linux/kernel.h \ - include/uapi/linux/sysinfo.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/static_call_types.h \ - $(wildcard include/config/HAVE_STATIC_CALL) \ - $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ - include/linux/irqflags.h \ - $(wildcard include/config/PROVE_LOCKING) \ - $(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) \ - include/linux/irqflags_types.h \ - arch/x86/include/asm/irqflags.h \ - $(wildcard include/config/PARAVIRT_XXL) \ - $(wildcard include/config/DEBUG_ENTRY) \ - arch/x86/include/asm/processor-flags.h \ - $(wildcard include/config/VM86) \ - $(wildcard include/config/PAGE_TABLE_ISOLATION) \ - 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 \ - $(wildcard include/config/X86_MEM_ENCRYPT) \ - include/linux/cc_platform.h \ - $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ - arch/x86/include/asm/nospec-branch.h \ - $(wildcard include/config/CALL_THUNKS_DEBUG) \ - $(wildcard include/config/CPU_IBPB_ENTRY) \ - include/linux/static_key.h \ - arch/x86/include/asm/alternative.h \ - $(wildcard include/config/CALL_THUNKS) \ - 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_CMOV) \ - $(wildcard include/config/X86_P6_NOP) \ - $(wildcard include/config/MATOM) \ - arch/x86/include/asm/disabled-features.h \ - $(wildcard include/config/X86_UMIP) \ - $(wildcard include/config/X86_INTEL_MEMORY_PROTECTION_KEYS) \ - $(wildcard include/config/X86_5LEVEL) \ - $(wildcard include/config/ADDRESS_MASKING) \ - $(wildcard include/config/INTEL_IOMMU_SVM) \ - $(wildcard include/config/X86_SGX) \ - $(wildcard include/config/XEN_PV) \ - $(wildcard include/config/INTEL_TDX_GUEST) \ - 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/asm-offsets.h \ - include/generated/asm-offsets.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/paravirt_types.h \ - $(wildcard include/config/ZERO_CALL_USED_REGS) \ - $(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/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/NUMA_KEEP_MEMINFO) \ - include/linux/cpumask.h \ - $(wildcard include/config/FORCE_NR_CPUS) \ - $(wildcard include/config/HOTPLUG_CPU) \ - $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ - $(wildcard include/config/CPUMASK_OFFSTACK) \ - include/linux/kernel.h \ - $(wildcard include/config/PREEMPT_VOLUNTARY_BUILD) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_CALL) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_KEY) \ - $(wildcard include/config/PREEMPT_) \ - $(wildcard include/config/DEBUG_ATOMIC_SLEEP) \ - $(wildcard include/config/TRACING) \ - $(wildcard include/config/FTRACE_MCOUNT_RECORD) \ - include/linux/align.h \ - include/linux/container_of.h \ - include/linux/bitops.h \ - include/asm-generic/bitops/generic-non-atomic.h \ - arch/x86/include/asm/barrier.h \ - include/asm-generic/barrier.h \ - arch/x86/include/asm/bitops.h \ - include/asm-generic/bitops/sched.h \ - arch/x86/include/asm/arch_hweight.h \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/instrumented-atomic.h \ - include/linux/instrumented.h \ - include/linux/kmsan-checks.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/hex.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/sprintf.h \ - include/linux/instruction_pointer.h \ - include/linux/bitmap.h \ - include/linux/find.h \ - include/linux/bitmap-str.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/numa.h \ - $(wildcard include/config/NODES_SHIFT) \ - $(wildcard include/config/HAVE_ARCH_NODE_DEV_GROUP) \ - arch/x86/include/asm/frame.h \ - include/linux/thread_info.h \ - $(wildcard include/config/THREAD_INFO_IN_TASK) \ - $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ - $(wildcard include/config/HARDENED_USERCOPY) \ - $(wildcard include/config/SH) \ - include/linux/restart_block.h \ - arch/x86/include/asm/thread_info.h \ - $(wildcard include/config/COMPAT) \ - $(wildcard include/config/IA32_EMULATION) \ - arch/x86/include/asm/page.h \ - 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 \ - 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/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/cpuid.h \ - arch/x86/include/asm/msr.h \ - $(wildcard include/config/TRACEPOINTS) \ - arch/x86/include/asm/cpumask.h \ - arch/x86/include/uapi/asm/msr.h \ - arch/x86/include/asm/shared/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 \ - arch/x86/include/asm/shstk.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - include/linux/math64.h \ - $(wildcard include/config/ARCH_SUPPORTS_INT128) \ - include/vdso/math64.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/list.h \ - $(wildcard include/config/LIST_HARDENED) \ - $(wildcard include/config/DEBUG_LIST) \ - include/linux/poison.h \ - $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ - 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/DEBUG_NMI_SELFTEST) \ - arch/x86/include/generated/asm/mmiowb.h \ - include/asm-generic/mmiowb.h \ - $(wildcard include/config/MMIOWB) \ - include/linux/spinlock_types.h \ - include/linux/rwlock_types.h \ - 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 \ - 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/list_nulls.h \ - include/linux/wait.h \ - include/linux/seqlock.h \ - include/linux/mutex.h \ - $(wildcard include/config/DEBUG_MUTEXES) \ - include/linux/osq_lock.h \ - include/linux/debug_locks.h \ - include/linux/mutex_types.h \ - $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ - include/linux/seqlock_types.h \ - include/linux/nodemask.h \ - include/linux/nodemask_types.h \ - include/linux/random.h \ - $(wildcard include/config/VMGENID) \ - include/uapi/linux/random.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/prandom.h \ - include/linux/once.h \ - include/linux/pageblock-flags.h \ - $(wildcard include/config/HUGETLB_PAGE) \ - $(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_MM_DATA) \ - 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/kref.h \ - include/linux/refcount.h \ - include/linux/refcount_types.h \ - 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/RCU_STRICT_GRACE_PERIOD) \ - $(wildcard include/config/RCU_LAZY) \ - $(wildcard include/config/TASKS_RCU_GENERIC) \ - $(wildcard include/config/RCU_STALL_COMMON) \ - $(wildcard include/config/NO_HZ_FULL) \ - $(wildcard include/config/KVM_XFER_TO_GUEST_WORK) \ - $(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/context_tracking_irq.h \ - $(wildcard include/config/CONTEXT_TRACKING_IDLE) \ - include/linux/rcutree.h \ - include/linux/maple_tree.h \ - $(wildcard include/config/MAPLE_RCU_DISABLED) \ - $(wildcard include/config/DEBUG_MAPLE_TREE) \ - 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/NEED_SRCU_NMI_SAFE) \ - 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) \ - include/linux/ktime.h \ - include/linux/jiffies.h \ - include/linux/time.h \ - $(wildcard include/config/POSIX_TIMERS) \ - 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/tsc.h \ - include/vdso/time32.h \ - include/vdso/time.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/timer_types.h \ - include/linux/workqueue_types.h \ - 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/percpu_counter.h \ - include/linux/percpu.h \ - $(wildcard include/config/MODULES) \ - $(wildcard include/config/RANDOM_KMALLOC_CACHES) \ - $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ - 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/ARCH_USES_PG_ARCH_X) \ - $(wildcard include/config/HUGETLB_PAGE_OPTIMIZE_VMEMMAP) \ - include/linux/local_lock.h \ - include/linux/local_lock_internal.h \ - include/linux/zswap.h \ - $(wildcard include/config/ZSWAP) \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ - $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ - $(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/ACPI_CPPC_LIB) \ - $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ - arch/x86/include/asm/topology.h \ - $(wildcard include/config/SCHED_MC_PRIO) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/EISA) \ - $(wildcard include/config/X86_LOCAL_APIC) \ - $(wildcard include/config/X86_MPPARSE) \ - 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 \ - $(wildcard include/config/PCI) \ - 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/apicdef.h \ - include/asm-generic/topology.h \ - include/linux/cpu_smt.h \ - $(wildcard include/config/HOTPLUG_SMT) \ - include/linux/mmap_lock.h \ - include/linux/percpu-refcount.h \ - include/linux/bit_spinlock.h \ - include/linux/shrinker.h \ - $(wildcard include/config/SHRINKER_DEBUG) \ - 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/ARCH_STACKWALK) \ - $(wildcard include/config/STACKTRACE) \ - $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ - include/linux/stackdepot.h \ - $(wildcard include/config/STACKDEPOT) \ - $(wildcard include/config/STACKDEPOT_MAX_FRAMES) \ - $(wildcard include/config/STACKDEPOT_ALWAYS_INIT) \ - include/linux/page_ref.h \ - $(wildcard include/config/DEBUG_PAGE_REF) \ - 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/SCHED_CORE) \ - $(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/CGROUP_SCHED) \ - $(wildcard include/config/BLK_DEV_IO_TRACE) \ - $(wildcard include/config/COMPAT_BRK) \ - $(wildcard include/config/CGROUPS) \ - $(wildcard include/config/BLK_CGROUP) \ - $(wildcard include/config/PSI) \ - $(wildcard include/config/PAGE_OWNER) \ - $(wildcard include/config/EVENTFD) \ - $(wildcard include/config/ARCH_HAS_CPU_PASID) \ - $(wildcard include/config/CPU_SUP_INTEL) \ - $(wildcard include/config/TASK_DELAY_ACCT) \ - $(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/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/FAULT_INJECTION) \ - $(wildcard include/config/LATENCYTOP) \ - $(wildcard include/config/KUNIT) \ - $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ - $(wildcard include/config/MEMCG_KMEM) \ - $(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/RETHOOK) \ - $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ - $(wildcard include/config/RV) \ - $(wildcard include/config/USER_EVENTS) \ - include/uapi/linux/sched.h \ - include/linux/pid_types.h \ - include/linux/sem_types.h \ - include/linux/shm.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/kmsan_types.h \ - include/linux/plist_types.h \ - include/linux/hrtimer_types.h \ - include/linux/timerqueue_types.h \ - include/linux/seccomp_types.h \ - $(wildcard include/config/SECCOMP) \ - 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_types.h \ - include/linux/task_io_accounting.h \ - $(wildcard include/config/TASK_IO_ACCOUNTING) \ - include/linux/posix-timers_types.h \ - include/uapi/linux/rseq.h \ - include/linux/kcsan.h \ - include/linux/rv.h \ - $(wildcard include/config/RV_REACTORS) \ - include/linux/livepatch_sched.h \ - include/linux/uidgid_types.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/ARCH_HAS_NONLEAF_PMD_YOUNG) \ - $(wildcard include/config/ARCH_HAS_HW_PTE_YOUNG) \ - $(wildcard include/config/GUP_GET_PXX_LOW_HIGH) \ - $(wildcard include/config/ARCH_WANT_PMD_MKWRITE) \ - $(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) \ - $(wildcard include/config/PAGE_TABLE_CHECK) \ - arch/x86/include/asm/pkru.h \ - arch/x86/include/asm/fpu/api.h \ - $(wildcard include/config/X86_DEBUG_FPU) \ - arch/x86/include/asm/coco.h \ - include/asm-generic/pgtable_uffd.h \ - include/linux/page_table_check.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) \ - include/linux/kasan-enabled.h \ - include/linux/kasan-tags.h \ - include/linux/memremap.h \ - $(wildcard include/config/DEVICE_PRIVATE) \ - $(wildcard include/config/PCI_P2PDMA) \ - include/linux/ioport.h \ - include/linux/slab.h \ - $(wildcard include/config/SLUB_DEBUG) \ - $(wildcard include/config/SLUB_TINY) \ - $(wildcard include/config/FAILSLAB) \ - $(wildcard include/config/KFENCE) \ - include/linux/hash.h \ - $(wildcard include/config/HAVE_ARCH_HASH) \ - include/linux/huge_mm.h \ - $(wildcard include/config/READ_ONLY_THP_FOR_FS) \ - include/linux/sched/coredump.h \ - $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ - include/linux/fs.h \ - $(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/BLOCK) \ - include/linux/wait_bit.h \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/dcache.h \ - include/linux/rculist.h \ - $(wildcard include/config/PROVE_RCU_LIST) \ - 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/path.h \ - include/linux/stat.h \ - arch/x86/include/uapi/asm/stat.h \ - include/uapi/linux/stat.h \ - include/linux/uidgid.h \ - $(wildcard include/config/MULTIUSER) \ - $(wildcard include/config/USER_NS) \ - include/linux/highuid.h \ - include/linux/list_lru.h \ - include/linux/xarray.h \ - $(wildcard include/config/XARRAY_MULTI) \ - include/linux/sched/mm.h \ - $(wildcard include/config/MMU_LAZY_TLB_REFCOUNT) \ - $(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/radix-tree.h \ - include/linux/pid.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/ARCH_HAS_SUBPAGE_FAULTS) \ - 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_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/tlbflush.h \ - include/linux/mmu_notifier.h \ - include/linux/interval_tree.h \ - arch/x86/include/asm/invpcid.h \ - arch/x86/include/asm/pti.h \ - arch/x86/include/asm/uaccess_64.h \ - include/asm-generic/access_ok.h \ - $(wildcard include/config/ALTERNATE_USER_ADDRESS_SPACE) \ - include/linux/cred.h \ - 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/VFIO_PCI_ZDEV_KVM) \ - $(wildcard include/config/IOMMUFD) \ - $(wildcard include/config/WATCH_QUEUE) \ - include/linux/ratelimit.h \ - include/linux/posix-timers.h \ - include/linux/alarmtimer.h \ - $(wildcard include/config/RTC_CLASS) \ - 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/rcu_sync.h \ - include/linux/delayed_call.h \ - include/linux/uuid.h \ - include/linux/errseq.h \ - include/linux/ioprio.h \ - include/linux/sched/rt.h \ - include/linux/iocontext.h \ - $(wildcard include/config/BLK_ICQ) \ - 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/vmstat.h \ - $(wildcard include/config/VM_EVENT_COUNTERS) \ - $(wildcard include/config/DEBUG_TLBFLUSH) \ - $(wildcard include/config/PER_VMA_LOCK_STATS) \ - 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) \ - arch/x86/include/asm/shared/io.h \ - include/asm-generic/io.h \ - $(wildcard include/config/GENERIC_IOMAP) \ - $(wildcard include/config/TRACE_MMIO_ACCESS) \ - $(wildcard include/config/GENERIC_IOREMAP) \ - $(wildcard include/config/HAS_IOPORT_MAP) \ - include/asm-generic/iomap.h \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ - $(wildcard include/config/GENERIC_PCI_IOMAP) \ - 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/hardirq.h \ - include/linux/context_tracking_state.h \ - $(wildcard include/config/CONTEXT_TRACKING_USER) \ - $(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 \ - $(wildcard include/config/HAVE_FUNCTION_DESCRIPTORS) \ - /home/colin/develop/xc7k480t/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/ARCH_USES_CFI_TRAPS) \ - $(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/ia32.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/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/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 \ - include/uapi/linux/unistd.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/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 \ - 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 \ - 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 \ - 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) \ - 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/HAS_IOMEM) \ - $(wildcard include/config/GENERIC_MSI_IRQ) \ - $(wildcard include/config/ENERGY_MODEL) \ - $(wildcard include/config/PINCTRL) \ - $(wildcard include/config/DMA_OPS) \ - $(wildcard include/config/DMA_DECLARE_COHERENT) \ - $(wildcard include/config/DMA_CMA) \ - $(wildcard include/config/SWIOTLB) \ - $(wildcard include/config/SWIOTLB_DYNAMIC) \ - $(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/PM_SLEEP) \ - $(wildcard include/config/OF) \ - $(wildcard include/config/DEVTMPFS) \ - 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_CLUSTER) \ - $(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/CXL_SUSPEND) \ - $(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_DOE) \ - $(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/uapi/linux/mei.h \ - include/uapi/linux/mei_uuid.h \ - include/linux/io.h \ - include/linux/resource_ext.h \ - include/linux/msi_api.h \ - 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/VMD) \ - arch/x86/include/asm/memtype.h \ - /home/colin/develop/xc7k480t/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_DEVICE) \ - $(wildcard include/config/FB_FOREIGN_ENDIAN) \ - $(wildcard include/config/FB_BOTH_ENDIAN) \ - $(wildcard include/config/FB_BIG_ENDIAN) \ - $(wildcard include/config/FB_LITTLE_ENDIAN) \ - $(wildcard include/config/VIDEO_NOMODESET) \ - 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/KRETPROBE_ON_RETHOOK) \ - $(wildcard include/config/KPROBES_SANITY_TEST) \ - $(wildcard include/config/OPTPROBES) \ - $(wildcard include/config/KPROBES_ON_FTRACE) \ - include/linux/ftrace.h \ - $(wildcard include/config/HAVE_FUNCTION_GRAPH_RETVAL) \ - $(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_ARGS) \ - $(wildcard include/config/DYNAMIC_FTRACE_WITH_DIRECT_CALLS) \ - $(wildcard include/config/STACK_TRACER) \ - $(wildcard include/config/DYNAMIC_FTRACE_WITH_CALL_OPS) \ - $(wildcard include/config/FUNCTION_GRAPH_RETVAL) \ - $(wildcard include/config/FUNCTION_PROFILER) \ - $(wildcard include/config/FTRACE_SYSCALLS) \ - include/linux/trace_recursion.h \ - $(wildcard include/config/FTRACE_RECORD_RECURSION) \ - $(wildcard include/config/ARCH_WANTS_NO_INSTR) \ - 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/MEMFD_CREATE) \ - $(wildcard include/config/PID_NS) \ - include/linux/nsproxy.h \ - include/linux/ns_common.h \ - include/uapi/linux/ptrace.h \ - include/linux/seccomp.h \ - $(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/ia32_unistd.h \ - include/asm-generic/seccomp.h \ - arch/x86/include/asm/ftrace.h \ - $(wildcard include/config/HAVE_FENTRY) \ - include/linux/objpool.h \ - include/linux/rethook.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_TABLE_LIB) \ - $(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_THERMAL_LIB) \ - $(wildcard include/config/ACPI_HMAT) \ - $(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/SUSPEND) \ - $(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_PROCESSOR_IDLE) \ - $(wildcard include/config/ACPI_PPTT) \ - $(wildcard include/config/ACPI_PCC) \ - $(wildcard include/config/ACPI_FFH) \ - include/linux/property.h \ - include/linux/node.h \ - $(wildcard include/config/HMEM_REPORTING) \ - 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/linux/fw_table.h \ - $(wildcard include/config/CXL_BUS) \ - include/acpi/acpi_bus.h \ - $(wildcard include/config/X86_ANDROID_TABLETS) \ - $(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 \ - include/acpi/acpi_io.h \ - arch/x86/include/asm/acpi.h \ - $(wildcard include/config/ACPI_APEI) \ - include/acpi/proc_cap_intel.h \ - arch/x86/include/asm/numa.h \ - $(wildcard include/config/NUMA_EMU) \ - arch/x86/include/asm/xen/hypervisor.h \ - $(wildcard include/config/XEN_PV_DOM0) \ - $(wildcard include/config/PVH) \ - $(wildcard include/config/XEN_PVH) \ - $(wildcard include/config/XEN_DOM0) \ - include/xen/xen.h \ - $(wildcard include/config/XEN_BALLOON) \ - $(wildcard include/config/XEN_UNPOPULATED_ALLOC) \ - include/xen/interface/hvm/start_info.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/emulate_prefix.h \ - include/linux/regulator/consumer.h \ - $(wildcard include/config/REGULATOR) \ - include/linux/suspend.h \ - $(wildcard include/config/VT) \ - $(wildcard include/config/HIBERNATION_SNAPSHOT_DEV) \ - $(wildcard include/config/PM_SLEEP_DEBUG) \ - $(wildcard include/config/PM_AUTOSLEEP) \ - include/linux/swap.h \ - $(wildcard include/config/THP_SWAP) \ - include/linux/memcontrol.h \ - include/linux/cgroup.h \ - $(wildcard include/config/DEBUG_CGROUP_REF) \ - $(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/string_helpers.h \ - include/linux/string_choices.h \ - include/linux/user_namespace.h \ - $(wildcard include/config/INOTIFY_USER) \ - $(wildcard include/config/FANOTIFY) \ - $(wildcard include/config/BINFMT_MISC) \ - $(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-defs.h \ - $(wildcard include/config/BPF_LSM) \ - 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/cgroup_refcnt.h \ - include/linux/page_counter.h \ - include/linux/vmpressure.h \ - include/linux/eventfd.h \ - include/uapi/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/cacheflush.h \ - arch/x86/include/asm/cacheflush.h \ - include/asm-generic/cacheflush.h \ - include/linux/kmsan.h \ - include/linux/highmem-internal.h \ - include/linux/bio.h \ - include/linux/mempool.h \ - include/linux/pagemap.h \ - include/linux/hugetlb_inline.h \ - include/uapi/linux/mempolicy.h \ - include/linux/freezer.h \ - include/uapi/regulator/regulator.h \ - include/linux/rtmutex.h \ - $(wildcard include/config/DEBUG_RT_MUTEXES) \ - 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/irqdomain_defs.h \ - 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/uapi/linux/i2c.h \ - include/linux/backlight.h \ - $(wildcard include/config/BACKLIGHT_CLASS_DEVICE) \ - arch/x86/include/asm/fb.h \ - include/asm-generic/fb.h \ - 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/colin/develop/xc7k480t/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) \ - include/linux/static_call.h \ - include/linux/cpu.h \ - $(wildcard include/config/GENERIC_CPU_DEVICES) \ - $(wildcard include/config/PM_SLEEP_SMP) \ - $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ - $(wildcard include/config/ARCH_HAS_CPU_FINALIZE_INIT) \ - $(wildcard include/config/CPU_MITIGATIONS) \ - include/linux/cpuhotplug.h \ - $(wildcard include/config/HOTPLUG_CORE_SYNC_DEAD) \ - arch/x86/include/asm/static_call.h \ - include/trace/define_trace.h \ - arch/x86/include/asm/debugreg.h \ - arch/x86/include/uapi/asm/debugreg.h \ - arch/x86/include/asm/gsseg.h \ - include/asm-generic/mmu_context.h \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.h \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/version.h \ - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_mod.o: $(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_mod.o) - -$(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_mod.o): - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_mod.o: $(wildcard ./tools/objtool/objtool) diff --git a/xdma/linux-kernel/xdma/.xdma_thread.o.cmd b/xdma/linux-kernel/xdma/.xdma_thread.o.cmd deleted file mode 100644 index c6d63e5..0000000 --- a/xdma/linux-kernel/xdma/.xdma_thread.o.cmd +++ /dev/null @@ -1,1263 +0,0 @@ -savedcmd_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_thread.o := gcc-12 -Wp,-MMD,/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/.xdma_thread.o.d -nostdinc -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=./= -std=gnu11 -fshort-wchar -funsigned-char -fno-common -fno-PIE -fno-strict-aliasing -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 -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mindirect-branch-cs-prefix -mfunction-return=thunk-extern -fno-jump-tables -mharden-sls=all -fpatchable-function-entry=16,16 -fno-delete-null-pointer-checks -O2 -fno-allow-store-data-races -fstack-protector-strong -fno-omit-frame-pointer -fno-optimize-sibling-calls -ftrivial-auto-var-init=zero -fno-stack-clash-protection -fzero-call-used-regs=used-gpr -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -falign-functions=16 -fno-strict-overflow -fno-stack-check -fconserve-stack -Wall -Wundef -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Werror=strict-prototypes -Wno-format-security -Wno-trigraphs -Wno-frame-address -Wno-address-of-packed-member -Wmissing-declarations -Wmissing-prototypes -Wframe-larger-than=1024 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-overflow -Wno-array-bounds -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wenum-conversion -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-restrict -Wno-packed-not-aligned -Wno-format-overflow -Wno-format-truncation -Wno-stringop-truncation -Wno-override-init -Wno-missing-field-initializers -Wno-type-limits -Wno-shift-negative-value -Wno-maybe-uninitialized -Wno-sign-compare -g -gdwarf-5 -I/home/colin/develop/xc7k480t/xdma/linux-kernel/include -fsanitize=bounds-strict -fsanitize=shift -fsanitize=bool -fsanitize=enum -DMODULE -DKBUILD_BASENAME='"xdma_thread"' -DKBUILD_MODNAME='"xdma"' -D__KBUILD_MODNAME=kmod_xdma -c -o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_thread.o /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_thread.c ; ./tools/objtool/objtool --hacks=jump_label --hacks=noinstr --hacks=skylake --retpoline --rethunk --sls --stackval --static-call --uaccess --prefix=16 --module /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_thread.o - -source_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_thread.o := /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_thread.c - -deps_/home/colin/develop/xc7k480t/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/DEBUG_INFO_BTF) \ - $(wildcard include/config/PAHOLE_HAS_BTF_TAG) \ - $(wildcard include/config/FUNCTION_ALIGNMENT) \ - $(wildcard include/config/CC_IS_GCC) \ - $(wildcard include/config/X86_64) \ - $(wildcard include/config/ARM64) \ - $(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/GCC_ASM_GOTO_OUTPUT_WORKAROUND) \ - $(wildcard include/config/ARCH_USE_BUILTIN_BSWAP) \ - $(wildcard include/config/SHADOW_CALL_STACK) \ - $(wildcard include/config/KCOV) \ - /home/colin/develop/xc7k480t/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) \ - $(wildcard include/config/PREEMPT_DYNAMIC) \ - $(wildcard include/config/PREEMPT_NONE) \ - $(wildcard include/config/PREEMPT_VOLUNTARY) \ - $(wildcard include/config/PREEMPT) \ - 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/64BIT) \ - include/linux/compiler.h \ - $(wildcard include/config/TRACE_BRANCH_PROFILING) \ - $(wildcard include/config/PROFILE_ALL_BRANCHES) \ - $(wildcard include/config/OBJTOOL) \ - 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/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_WEAK_MEMORY) \ - $(wildcard include/config/KCSAN_IGNORE_ATOMICS) \ - arch/x86/include/asm/linkage.h \ - $(wildcard include/config/CALL_PADDING) \ - $(wildcard include/config/RETHUNK) \ - $(wildcard include/config/SLS) \ - $(wildcard include/config/FUNCTION_PADDING_BYTES) \ - $(wildcard include/config/UML) \ - arch/x86/include/asm/ibt.h \ - $(wildcard include/config/X86_KERNEL_IBT) \ - include/linux/cleanup.h \ - arch/x86/include/asm/preempt.h \ - arch/x86/include/asm/rmwcc.h \ - include/linux/args.h \ - arch/x86/include/asm/percpu.h \ - $(wildcard include/config/X86_64_SMP) \ - arch/x86/include/asm/asm.h \ - $(wildcard include/config/KPROBES) \ - arch/x86/include/asm/extable_fixup_types.h \ - include/asm-generic/percpu.h \ - $(wildcard include/config/HAVE_SETUP_PER_CPU_AREA) \ - include/linux/threads.h \ - $(wildcard include/config/NR_CPUS) \ - $(wildcard include/config/BASE_SMALL) \ - include/linux/percpu-defs.h \ - $(wildcard include/config/DEBUG_FORCE_WEAK_PER_CPU) \ - $(wildcard include/config/AMD_MEM_ENCRYPT) \ - arch/x86/include/asm/current.h \ - $(wildcard include/config/CALL_DEPTH_TRACKING) \ - include/linux/build_bug.h \ - 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/static_call_types.h \ - $(wildcard include/config/HAVE_STATIC_CALL) \ - $(wildcard include/config/HAVE_STATIC_CALL_INLINE) \ - include/linux/irqflags.h \ - $(wildcard include/config/PROVE_LOCKING) \ - $(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) \ - include/linux/irqflags_types.h \ - arch/x86/include/asm/irqflags.h \ - $(wildcard include/config/PARAVIRT_XXL) \ - $(wildcard include/config/DEBUG_ENTRY) \ - arch/x86/include/asm/processor-flags.h \ - $(wildcard include/config/VM86) \ - $(wildcard include/config/PAGE_TABLE_ISOLATION) \ - 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 \ - $(wildcard include/config/X86_MEM_ENCRYPT) \ - 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/cc_platform.h \ - $(wildcard include/config/ARCH_HAS_CC_PLATFORM) \ - arch/x86/include/asm/nospec-branch.h \ - $(wildcard include/config/CALL_THUNKS_DEBUG) \ - $(wildcard include/config/NOINSTR_VALIDATION) \ - $(wildcard include/config/CPU_UNRET_ENTRY) \ - $(wildcard include/config/CPU_SRSO) \ - $(wildcard include/config/CPU_IBPB_ENTRY) \ - include/linux/static_key.h \ - 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 \ - $(wildcard include/config/HAVE_JUMP_LABEL_HACK) \ - arch/x86/include/asm/nops.h \ - include/linux/objtool.h \ - $(wildcard include/config/FRAME_POINTER) \ - include/linux/objtool_types.h \ - arch/x86/include/asm/alternative.h \ - $(wildcard include/config/CALL_THUNKS) \ - 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_CMOV) \ - $(wildcard include/config/X86_P6_NOP) \ - $(wildcard include/config/MATOM) \ - arch/x86/include/asm/disabled-features.h \ - $(wildcard include/config/X86_UMIP) \ - $(wildcard include/config/X86_INTEL_MEMORY_PROTECTION_KEYS) \ - $(wildcard include/config/X86_5LEVEL) \ - $(wildcard include/config/ADDRESS_MASKING) \ - $(wildcard include/config/INTEL_IOMMU_SVM) \ - $(wildcard include/config/X86_SGX) \ - $(wildcard include/config/XEN_PV) \ - $(wildcard include/config/INTEL_TDX_GUEST) \ - $(wildcard include/config/X86_USER_SHADOW_STACK) \ - arch/x86/include/asm/msr-index.h \ - include/linux/bits.h \ - include/vdso/bits.h \ - arch/x86/include/asm/unwind_hints.h \ - arch/x86/include/asm/orc_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 \ - arch/x86/include/asm/asm-offsets.h \ - include/generated/asm-offsets.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/paravirt_types.h \ - $(wildcard include/config/ZERO_CALL_USED_REGS) \ - $(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/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/KMSAN) \ - $(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/spinlock_types.h \ - include/asm-generic/qspinlock_types.h \ - include/asm-generic/qrwlock_types.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/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/stdarg.h \ - include/linux/kern_levels.h \ - 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_raw.h \ - include/linux/lockdep_types.h \ - $(wildcard include/config/PROVE_RAW_LOCK_NESTING) \ - $(wildcard include/config/LOCKDEP) \ - $(wildcard include/config/LOCK_STAT) \ - include/linux/dynamic_debug.h \ - include/linux/cpumask.h \ - $(wildcard include/config/FORCE_NR_CPUS) \ - $(wildcard include/config/HOTPLUG_CPU) \ - $(wildcard include/config/DEBUG_PER_CPU_MAPS) \ - $(wildcard include/config/CPUMASK_OFFSTACK) \ - include/linux/kernel.h \ - $(wildcard include/config/PREEMPT_VOLUNTARY_BUILD) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_CALL) \ - $(wildcard include/config/HAVE_PREEMPT_DYNAMIC_KEY) \ - $(wildcard include/config/PREEMPT_) \ - $(wildcard include/config/DEBUG_ATOMIC_SLEEP) \ - $(wildcard include/config/MMU) \ - $(wildcard include/config/TRACING) \ - $(wildcard include/config/FTRACE_MCOUNT_RECORD) \ - include/linux/align.h \ - include/linux/array_size.h \ - include/linux/limits.h \ - include/uapi/linux/limits.h \ - include/vdso/limits.h \ - include/linux/container_of.h \ - include/linux/bitops.h \ - include/asm-generic/bitops/generic-non-atomic.h \ - arch/x86/include/asm/barrier.h \ - include/asm-generic/barrier.h \ - arch/x86/include/asm/bitops.h \ - include/asm-generic/bitops/sched.h \ - arch/x86/include/asm/arch_hweight.h \ - include/asm-generic/bitops/const_hweight.h \ - include/asm-generic/bitops/instrumented-atomic.h \ - include/linux/instrumented.h \ - include/linux/kmsan-checks.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/hex.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/sprintf.h \ - include/linux/instruction_pointer.h \ - include/linux/bitmap.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/find.h \ - include/linux/string.h \ - $(wildcard include/config/BINARY_PRINTF) \ - $(wildcard include/config/FORTIFY_SOURCE) \ - include/linux/err.h \ - include/linux/overflow.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 \ - $(wildcard include/config/CC_HAS_KASAN_MEMINTRINSIC_PREFIX) \ - $(wildcard include/config/GENERIC_ENTRY) \ - include/linux/bitmap-str.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/gfp_types.h \ - $(wildcard include/config/KASAN_HW_TAGS) \ - include/linux/numa.h \ - $(wildcard include/config/NODES_SHIFT) \ - $(wildcard include/config/NUMA) \ - $(wildcard include/config/HAVE_ARCH_NODE_DEV_GROUP) \ - arch/x86/include/asm/frame.h \ - include/linux/thread_info.h \ - $(wildcard include/config/THREAD_INFO_IN_TASK) \ - $(wildcard include/config/HAVE_ARCH_WITHIN_STACK_FRAMES) \ - $(wildcard include/config/HARDENED_USERCOPY) \ - $(wildcard include/config/SH) \ - include/linux/restart_block.h \ - arch/x86/include/asm/thread_info.h \ - $(wildcard include/config/COMPAT) \ - $(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/X86_VSYSCALL_EMULATION) \ - include/linux/range.h \ - include/asm-generic/memory_model.h \ - $(wildcard include/config/FLATMEM) \ - $(wildcard include/config/SPARSEMEM_VMEMMAP) \ - include/linux/pfn.h \ - include/asm-generic/getorder.h \ - arch/x86/include/asm/cpufeature.h \ - 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/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/cpuid.h \ - arch/x86/include/asm/msr.h \ - $(wildcard include/config/TRACEPOINTS) \ - arch/x86/include/asm/cpumask.h \ - arch/x86/include/uapi/asm/msr.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 \ - arch/x86/include/asm/shared/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 \ - arch/x86/include/asm/shstk.h \ - include/linux/personality.h \ - include/uapi/linux/personality.h \ - include/linux/math64.h \ - $(wildcard include/config/ARCH_SUPPORTS_INT128) \ - include/vdso/math64.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/list.h \ - $(wildcard include/config/LIST_HARDENED) \ - $(wildcard include/config/DEBUG_LIST) \ - include/linux/poison.h \ - $(wildcard include/config/ILLEGAL_POINTER_VALUE) \ - 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/DEBUG_NMI_SELFTEST) \ - arch/x86/include/generated/asm/mmiowb.h \ - include/asm-generic/mmiowb.h \ - $(wildcard include/config/MMIOWB) \ - include/linux/spinlock_types.h \ - include/linux/rwlock_types.h \ - 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 \ - 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/SCHED_CORE) \ - $(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/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/MEMCG) \ - $(wildcard include/config/LRU_GEN) \ - $(wildcard include/config/COMPAT_BRK) \ - $(wildcard include/config/CGROUPS) \ - $(wildcard include/config/PSI) \ - $(wildcard include/config/PAGE_OWNER) \ - $(wildcard include/config/EVENTFD) \ - $(wildcard include/config/ARCH_HAS_CPU_PASID) \ - $(wildcard include/config/CPU_SUP_INTEL) \ - $(wildcard include/config/TASK_DELAY_ACCT) \ - $(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/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_BALANCING) \ - $(wildcard include/config/RSEQ) \ - $(wildcard include/config/SCHED_MM_CID) \ - $(wildcard include/config/FAULT_INJECTION) \ - $(wildcard include/config/LATENCYTOP) \ - $(wildcard include/config/KUNIT) \ - $(wildcard include/config/FUNCTION_GRAPH_TRACER) \ - $(wildcard include/config/MEMCG_KMEM) \ - $(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/RETHOOK) \ - $(wildcard include/config/ARCH_HAS_PARANOID_L1D_FLUSH) \ - $(wildcard include/config/RV) \ - $(wildcard include/config/USER_EVENTS) \ - include/uapi/linux/sched.h \ - include/linux/pid_types.h \ - include/linux/sem_types.h \ - include/linux/shm.h \ - arch/x86/include/asm/shmparam.h \ - include/linux/kmsan_types.h \ - include/linux/mutex_types.h \ - $(wildcard include/config/MUTEX_SPIN_ON_OWNER) \ - include/linux/osq_lock.h \ - include/linux/plist_types.h \ - include/linux/hrtimer_types.h \ - include/linux/timerqueue_types.h \ - include/linux/rbtree_types.h \ - include/linux/timer_types.h \ - include/linux/seccomp_types.h \ - $(wildcard include/config/SECCOMP) \ - include/linux/nodemask_types.h \ - include/linux/refcount_types.h \ - include/linux/resource.h \ - include/uapi/linux/resource.h \ - include/uapi/linux/time_types.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_types.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_types.h \ - $(wildcard include/config/POSIX_TIMERS) \ - include/uapi/linux/rseq.h \ - include/linux/seqlock_types.h \ - include/linux/kcsan.h \ - include/linux/rv.h \ - $(wildcard include/config/RV_REACTORS) \ - include/linux/livepatch_sched.h \ - include/linux/uidgid_types.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_CLUSTER) \ - $(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/ACPI_CPPC_LIB) \ - $(wildcard include/config/GENERIC_ARCH_TOPOLOGY) \ - include/linux/percpu.h \ - $(wildcard include/config/MODULES) \ - $(wildcard include/config/RANDOM_KMALLOC_CACHES) \ - $(wildcard include/config/NEED_PER_CPU_PAGE_FIRST_CHUNK) \ - include/linux/mmdebug.h \ - $(wildcard include/config/DEBUG_VM) \ - $(wildcard include/config/DEBUG_VM_IRQSOFF) \ - $(wildcard include/config/DEBUG_VM_PGFLAGS) \ - include/linux/mmzone.h \ - $(wildcard include/config/ARCH_FORCE_MAX_ORDER) \ - $(wildcard include/config/CMA) \ - $(wildcard include/config/MEMORY_ISOLATION) \ - $(wildcard include/config/ZSMALLOC) \ - $(wildcard include/config/UNACCEPTED_MEMORY) \ - $(wildcard include/config/SWAP) \ - $(wildcard include/config/TRANSPARENT_HUGEPAGE) \ - $(wildcard include/config/LRU_GEN_STATS) \ - $(wildcard include/config/LRU_GEN_WALKS_MMU) \ - $(wildcard include/config/ZONE_DMA) \ - $(wildcard include/config/ZONE_DMA32) \ - $(wildcard include/config/HIGHMEM) \ - $(wildcard include/config/ZONE_DEVICE) \ - $(wildcard include/config/MEMORY_HOTPLUG) \ - $(wildcard include/config/MEMORY_FAILURE) \ - $(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/list_nulls.h \ - include/linux/wait.h \ - include/linux/seqlock.h \ - include/linux/mutex.h \ - include/linux/debug_locks.h \ - include/linux/nodemask.h \ - include/linux/random.h \ - $(wildcard include/config/VMGENID) \ - include/uapi/linux/random.h \ - include/linux/irqnr.h \ - include/uapi/linux/irqnr.h \ - include/linux/prandom.h \ - include/linux/once.h \ - include/linux/pageblock-flags.h \ - $(wildcard include/config/HUGETLB_PAGE) \ - $(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/ANON_VMA_NAME) \ - $(wildcard include/config/PER_VMA_LOCK) \ - $(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_MM_DATA) \ - $(wildcard include/config/KSM) \ - include/linux/auxvec.h \ - include/uapi/linux/auxvec.h \ - arch/x86/include/uapi/asm/auxvec.h \ - include/linux/kref.h \ - include/linux/refcount.h \ - include/linux/rbtree.h \ - include/linux/rcupdate.h \ - $(wildcard include/config/TINY_RCU) \ - $(wildcard include/config/RCU_STRICT_GRACE_PERIOD) \ - $(wildcard include/config/RCU_LAZY) \ - $(wildcard include/config/TASKS_RCU_GENERIC) \ - $(wildcard include/config/RCU_STALL_COMMON) \ - $(wildcard include/config/KVM_XFER_TO_GUEST_WORK) \ - $(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/context_tracking_irq.h \ - $(wildcard include/config/CONTEXT_TRACKING_IDLE) \ - include/linux/rcutree.h \ - include/linux/maple_tree.h \ - $(wildcard include/config/MAPLE_RCU_DISABLED) \ - $(wildcard include/config/DEBUG_MAPLE_TREE) \ - 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/NEED_SRCU_NMI_SAFE) \ - 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) \ - include/linux/ktime.h \ - include/linux/jiffies.h \ - include/linux/time.h \ - include/linux/time64.h \ - include/vdso/time64.h \ - include/uapi/linux/time.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/tsc.h \ - include/vdso/time32.h \ - include/vdso/time.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/workqueue_types.h \ - 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/percpu_counter.h \ - 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/ARCH_USES_PG_ARCH_X) \ - $(wildcard include/config/HUGETLB_PAGE_OPTIMIZE_VMEMMAP) \ - include/linux/local_lock.h \ - include/linux/local_lock_internal.h \ - include/linux/zswap.h \ - $(wildcard include/config/ZSWAP) \ - include/linux/memory_hotplug.h \ - $(wildcard include/config/HAVE_ARCH_NODEDATA_EXTENSION) \ - $(wildcard include/config/ARCH_HAS_ADD_PAGES) \ - $(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) \ - arch/x86/include/asm/mpspec.h \ - $(wildcard include/config/EISA) \ - $(wildcard include/config/X86_LOCAL_APIC) \ - $(wildcard include/config/X86_MPPARSE) \ - 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 \ - $(wildcard include/config/PCI) \ - 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/apicdef.h \ - include/asm-generic/topology.h \ - include/linux/cpu_smt.h \ - $(wildcard include/config/HOTPLUG_SMT) \ - 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/ARCH_HAS_SUBPAGE_FAULTS) \ - 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_HAS_ASM_GOTO_TIED_OUTPUT) \ - $(wildcard include/config/ARCH_HAS_COPY_MC) \ - $(wildcard include/config/X86_INTEL_USERCOPY) \ - include/linux/mmap_lock.h \ - arch/x86/include/asm/smap.h \ - arch/x86/include/asm/extable.h \ - $(wildcard include/config/BPF_JIT) \ - arch/x86/include/asm/tlbflush.h \ - include/linux/mmu_notifier.h \ - include/linux/interval_tree.h \ - arch/x86/include/asm/invpcid.h \ - arch/x86/include/asm/pti.h \ - arch/x86/include/asm/pgtable.h \ - $(wildcard include/config/DEBUG_WX) \ - $(wildcard include/config/HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD) \ - $(wildcard include/config/ARCH_HAS_PTE_DEVMAP) \ - $(wildcard include/config/HAVE_ARCH_SOFT_DIRTY) \ - $(wildcard include/config/ARCH_ENABLE_THP_MIGRATION) \ - $(wildcard include/config/PAGE_TABLE_CHECK) \ - arch/x86/include/asm/pkru.h \ - arch/x86/include/asm/fpu/api.h \ - $(wildcard include/config/X86_DEBUG_FPU) \ - arch/x86/include/asm/coco.h \ - include/asm-generic/pgtable_uffd.h \ - include/linux/page_table_check.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 \ - arch/x86/include/asm/uaccess_64.h \ - include/asm-generic/access_ok.h \ - $(wildcard include/config/ALTERNATE_USER_ADDRESS_SPACE) \ - 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/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_MTE) \ - $(wildcard include/config/HAVE_ARCH_USERFAULTFD_MINOR) \ - $(wildcard include/config/STACK_GROWSUP) \ - $(wildcard include/config/SHMEM) \ - $(wildcard include/config/FS_DAX) \ - $(wildcard include/config/MIGRATION) \ - $(wildcard include/config/ARCH_HAS_PTE_SPECIAL) \ - $(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/ARCH_WANT_OPTIMIZE_DAX_VMEMMAP) \ - $(wildcard include/config/HUGETLBFS) \ - $(wildcard include/config/MAPPING_DIRTY_HELPERS) \ - include/linux/gfp.h \ - $(wildcard include/config/CONTIG_ALLOC) \ - include/linux/percpu-refcount.h \ - include/linux/bit_spinlock.h \ - include/linux/shrinker.h \ - $(wildcard include/config/SHRINKER_DEBUG) \ - include/linux/page_ext.h \ - include/linux/stacktrace.h \ - $(wildcard include/config/ARCH_STACKWALK) \ - $(wildcard include/config/STACKTRACE) \ - $(wildcard include/config/HAVE_RELIABLE_STACKTRACE) \ - include/linux/stackdepot.h \ - $(wildcard include/config/STACKDEPOT) \ - $(wildcard include/config/STACKDEPOT_MAX_FRAMES) \ - $(wildcard include/config/STACKDEPOT_ALWAYS_INIT) \ - include/linux/page_ref.h \ - $(wildcard include/config/DEBUG_PAGE_REF) \ - include/linux/sizes.h \ - include/linux/pgtable.h \ - $(wildcard include/config/HIGHPTE) \ - $(wildcard include/config/ARCH_HAS_NONLEAF_PMD_YOUNG) \ - $(wildcard include/config/ARCH_HAS_HW_PTE_YOUNG) \ - $(wildcard include/config/GUP_GET_PXX_LOW_HIGH) \ - $(wildcard include/config/ARCH_WANT_PMD_MKWRITE) \ - $(wildcard include/config/HAVE_ARCH_HUGE_VMAP) \ - $(wildcard include/config/X86_ESPFIX64) \ - include/linux/kasan.h \ - $(wildcard include/config/KASAN_STACK) \ - $(wildcard include/config/KASAN_VMALLOC) \ - include/linux/kasan-enabled.h \ - include/linux/kasan-tags.h \ - include/linux/memremap.h \ - $(wildcard include/config/DEVICE_PRIVATE) \ - $(wildcard include/config/PCI_P2PDMA) \ - include/linux/ioport.h \ - include/linux/slab.h \ - $(wildcard include/config/SLUB_DEBUG) \ - $(wildcard include/config/SLUB_TINY) \ - $(wildcard include/config/FAILSLAB) \ - $(wildcard include/config/KFENCE) \ - include/linux/hash.h \ - $(wildcard include/config/HAVE_ARCH_HASH) \ - include/linux/huge_mm.h \ - $(wildcard include/config/READ_ONLY_THP_FOR_FS) \ - include/linux/sched/coredump.h \ - $(wildcard include/config/CORE_DUMP_DEFAULT_ELF_HEADERS) \ - include/linux/fs.h \ - $(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/BLOCK) \ - include/linux/wait_bit.h \ - include/linux/kdev_t.h \ - include/uapi/linux/kdev_t.h \ - include/linux/dcache.h \ - include/linux/rculist.h \ - $(wildcard include/config/PROVE_RCU_LIST) \ - 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/path.h \ - include/linux/stat.h \ - arch/x86/include/uapi/asm/stat.h \ - include/uapi/linux/stat.h \ - include/linux/uidgid.h \ - $(wildcard include/config/MULTIUSER) \ - $(wildcard include/config/USER_NS) \ - include/linux/highuid.h \ - include/linux/list_lru.h \ - include/linux/xarray.h \ - $(wildcard include/config/XARRAY_MULTI) \ - include/linux/sched/mm.h \ - $(wildcard include/config/MMU_LAZY_TLB_REFCOUNT) \ - $(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/radix-tree.h \ - include/linux/pid.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 \ - 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/VFIO_PCI_ZDEV_KVM) \ - $(wildcard include/config/IOMMUFD) \ - $(wildcard include/config/WATCH_QUEUE) \ - include/linux/ratelimit.h \ - include/linux/posix-timers.h \ - include/linux/alarmtimer.h \ - $(wildcard include/config/RTC_CLASS) \ - 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/rcu_sync.h \ - include/linux/delayed_call.h \ - include/linux/uuid.h \ - include/linux/errseq.h \ - include/linux/ioprio.h \ - include/linux/sched/rt.h \ - include/linux/iocontext.h \ - $(wildcard include/config/BLK_ICQ) \ - 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/vmstat.h \ - $(wildcard include/config/VM_EVENT_COUNTERS) \ - $(wildcard include/config/DEBUG_TLBFLUSH) \ - $(wildcard include/config/PER_VMA_LOCK_STATS) \ - 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/ARCH_WANTS_NO_INSTR) \ - include/linux/static_call.h \ - include/linux/cpu.h \ - $(wildcard include/config/GENERIC_CPU_DEVICES) \ - $(wildcard include/config/PM_SLEEP_SMP) \ - $(wildcard include/config/PM_SLEEP_SMP_NONZERO_CPU) \ - $(wildcard include/config/ARCH_HAS_CPU_FINALIZE_INIT) \ - $(wildcard include/config/CPU_MITIGATIONS) \ - include/linux/node.h \ - $(wildcard include/config/HMEM_REPORTING) \ - include/linux/device.h \ - $(wildcard include/config/HAS_IOMEM) \ - $(wildcard include/config/GENERIC_MSI_IRQ) \ - $(wildcard include/config/PINCTRL) \ - $(wildcard include/config/DMA_OPS) \ - $(wildcard include/config/DMA_DECLARE_COHERENT) \ - $(wildcard include/config/DMA_CMA) \ - $(wildcard include/config/SWIOTLB) \ - $(wildcard include/config/SWIOTLB_DYNAMIC) \ - $(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/PM_SLEEP) \ - $(wildcard include/config/OF) \ - $(wildcard include/config/DEVTMPFS) \ - 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/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/CXL_SUSPEND) \ - $(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 \ - include/linux/module.h \ - $(wildcard include/config/MODULES_TREE_LOOKUP) \ - $(wildcard include/config/STACKTRACE_BUILD_ID) \ - $(wildcard include/config/ARCH_USES_CFI_TRAPS) \ - $(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/ia32.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/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/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 \ - include/uapi/linux/unistd.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/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 \ - 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 \ - 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 \ - 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/device.h \ - include/linux/pm_wakeup.h \ - include/linux/cpuhotplug.h \ - $(wildcard include/config/HOTPLUG_CORE_SYNC_DEAD) \ - 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/debugreg.h \ - arch/x86/include/uapi/asm/debugreg.h \ - arch/x86/include/asm/gsseg.h \ - include/asm-generic/mmu_context.h \ - /home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.h \ - $(wildcard include/config/BLOCK_ID) \ - 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/NEED_SG_DMA_FLAGS) \ - $(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) \ - arch/x86/include/asm/shared/io.h \ - include/asm-generic/io.h \ - $(wildcard include/config/GENERIC_IOMAP) \ - $(wildcard include/config/TRACE_MMIO_ACCESS) \ - $(wildcard include/config/GENERIC_IOREMAP) \ - $(wildcard include/config/HAS_IOPORT_MAP) \ - include/asm-generic/iomap.h \ - include/asm-generic/pci_iomap.h \ - $(wildcard include/config/NO_GENERIC_PCI_IOPORT_MAP) \ - $(wildcard include/config/GENERIC_PCI_IOMAP) \ - 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/hardirq.h \ - include/linux/context_tracking_state.h \ - $(wildcard include/config/CONTEXT_TRACKING_USER) \ - $(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 \ - $(wildcard include/config/HAVE_FUNCTION_DESCRIPTORS) \ - 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_DOE) \ - $(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/uapi/linux/mei.h \ - include/uapi/linux/mei_uuid.h \ - include/linux/io.h \ - include/linux/resource_ext.h \ - include/linux/msi_api.h \ - 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/VMD) \ - arch/x86/include/asm/memtype.h \ - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_thread.o: $(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_thread.o) - -$(deps_/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_thread.o): - -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_thread.o: $(wildcard ./tools/objtool/objtool) diff --git a/xdma/linux-kernel/xdma/Makefile b/xdma/linux-kernel/xdma/Makefile deleted file mode 100644 index 4182204..0000000 --- a/xdma/linux-kernel/xdma/Makefile +++ /dev/null @@ -1,60 +0,0 @@ -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 - -ifneq ($(xvc_bar_offset),) - XVC_FLAGS += -D__XVC_BAR_OFFSET__=$(xvc_bar_offset) -endif - -$(warning XVC_FLAGS: $(XVC_FLAGS).) - -topdir := $(shell cd $(src)/.. && pwd) - -TARGET_MODULE:=xdma - -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 xdma_thread.o - obj-m := $(TARGET_MODULE).o -else - BUILDSYSTEM_DIR:=/lib/modules/$(shell uname -r)/build - PWD:=$(shell pwd) -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 - @rm -f /lib/modules/5.15.0-67-generic/extra/xdma.ko - @echo "installing kernel modules to /lib/modules/$(shell uname -r)/xdma ..." - @mkdir -p -m 755 /lib/modules/$(shell uname -r)/xdma - @install -v -m 644 *.ko /lib/modules/$(shell uname -r)/xdma - @depmod -a || true - -uninstall: - @echo "Un-installing /lib/modules/$(shell uname -r)/xdma ..." - @/bin/rm -rf /lib/modules/$(shell uname -r)/xdma - @depmod -a - - - - -endif diff --git a/xdma/linux-kernel/xdma/Module.symvers b/xdma/linux-kernel/xdma/Module.symvers deleted file mode 100644 index e69de29..0000000 diff --git a/xdma/linux-kernel/xdma/cdev_bypass.c b/xdma/linux-kernel/xdma/cdev_bypass.c deleted file mode 100644 index 4040ee0..0000000 --- a/xdma/linux-kernel/xdma/cdev_bypass.c +++ /dev/null @@ -1,198 +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 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) - -static int copy_desc_data(struct xdma_transfer *transfer, char __user *buf, - size_t *buf_offset, size_t buf_size) -{ - int i; - int copy_err; - int rc = 0; - - 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++) { - if (*buf_offset + sizeof(struct xdma_desc) <= buf_size) { - copy_err = copy_to_user(&buf[*buf_offset], - transfer->desc_virt + i, - sizeof(struct xdma_desc)); - - if (copy_err) { - dbg_sg("Copy to user buffer failed\n"); - *buf_offset = buf_size; - rc = -EINVAL; - } else { - *buf_offset += sizeof(struct xdma_desc); - } - } else { - rc = -ENOMEM; - } - } - - return rc; -} - -static ssize_t char_bypass_read(struct file *file, char __user *buf, - size_t count, loff_t *pos) -{ - struct xdma_dev *xdev; - struct xdma_engine *engine; - struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data; - struct xdma_transfer *transfer; - struct list_head *idx; - size_t buf_offset = 0; - int rc = 0; - - rc = xcdev_check(__func__, xcdev, 1); - if (rc < 0) - return rc; - xdev = xcdev->xdev; - engine = xcdev->engine; - - dbg_sg("In %s()\n", __func__); - - if (count & 3) { - dbg_sg("Buffer size must be a multiple of 4 bytes\n"); - return -EINVAL; - } - - if (!buf) { - dbg_sg("Caught NULL pointer\n"); - return -EINVAL; - } - - if (xdev->bypass_bar_idx < 0) { - dbg_sg("Bypass BAR not present - unsupported operation\n"); - return -ENODEV; - } - - spin_lock(&engine->lock); - - if (!list_empty(&engine->transfer_list)) { - list_for_each(idx, &engine->transfer_list) { - transfer = list_entry(idx, struct xdma_transfer, entry); - - rc = copy_desc_data(transfer, buf, &buf_offset, count); - } - } - - spin_unlock(&engine->lock); - - if (rc < 0) - return rc; - else - return buf_offset; -} - -static ssize_t char_bypass_write(struct file *file, const char __user *buf, - size_t count, loff_t *pos) -{ - struct xdma_dev *xdev; - struct xdma_engine *engine; - struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data; - - u32 desc_data; - void __iomem *bypass_addr; - size_t buf_offset = 0; - int rc = 0; - int copy_err; - - rc = xcdev_check(__func__, xcdev, 1); - if (rc < 0) - return rc; - xdev = xcdev->xdev; - engine = xcdev->engine; - - if (count & 3) { - dbg_sg("Buffer size must be a multiple of 4 bytes\n"); - return -EINVAL; - } - - if (!buf) { - dbg_sg("Caught NULL pointer\n"); - return -EINVAL; - } - - if (xdev->bypass_bar_idx < 0) { - dbg_sg("Bypass BAR not present - unsupported operation\n"); - return -ENODEV; - } - - dbg_sg("In %s()\n", __func__); - - spin_lock(&engine->lock); - - /* Write descriptor data to the bypass BAR */ - 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); - buf_offset += sizeof(u32); - rc = buf_offset; - } else { - dbg_sg("Error reading data from userspace buffer\n"); - rc = -EINVAL; - break; - } - } - - spin_unlock(&engine->lock); - - - return rc; -} - - -/* - * character device file operations for bypass operation - */ - -static const struct file_operations bypass_fops = { - .owner = THIS_MODULE, - .open = char_open, - .release = char_close, - .read = char_bypass_read, - .write = char_bypass_write, - .mmap = bridge_mmap, -}; - -void cdev_bypass_init(struct xdma_cdev *xcdev) -{ - cdev_init(&xcdev->cdev, &bypass_fops); -} diff --git a/xdma/linux-kernel/xdma/cdev_bypass.o b/xdma/linux-kernel/xdma/cdev_bypass.o deleted file mode 100644 index 9b6bea5..0000000 Binary files a/xdma/linux-kernel/xdma/cdev_bypass.o and /dev/null differ diff --git a/xdma/linux-kernel/xdma/cdev_ctrl.c b/xdma/linux-kernel/xdma/cdev_ctrl.c deleted file mode 100644 index 6460d1f..0000000 --- a/xdma/linux-kernel/xdma/cdev_ctrl.c +++ /dev/null @@ -1,274 +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 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 "version.h" -#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) - */ -static ssize_t char_ctrl_read(struct file *fp, char __user *buf, size_t count, - loff_t *pos) -{ - struct xdma_cdev *xcdev = (struct xdma_cdev *)fp->private_data; - struct xdma_dev *xdev; - void __iomem *reg; - u32 w; - int rv; - - rv = xcdev_check(__func__, xcdev, 0); - if (rv < 0) - return rv; - xdev = xcdev->xdev; - - /* only 32-bit aligned and 32-bit multiples */ - if (*pos & 3) - return -EPROTO; - /* first address is BAR base plus file position offset */ - reg = xdev->bar[xcdev->bar] + *pos; - //w = read_register(reg); - w = ioread32(reg); - 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"); - - *pos += 4; - return 4; -} - -static ssize_t char_ctrl_write(struct file *file, const char __user *buf, - size_t count, loff_t *pos) -{ - struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data; - struct xdma_dev *xdev; - void __iomem *reg; - u32 w; - int rv; - - rv = xcdev_check(__func__, xcdev, 0); - if (rv < 0) - return rv; - xdev = xcdev->xdev; - - /* only 32-bit aligned and 32-bit multiples */ - if (*pos & 3) - return -EPROTO; - - /* first address is BAR base plus file position offset */ - reg = xdev->bar[xcdev->bar] + *pos; - rv = copy_from_user(&w, buf, 4); - if (rv) - pr_info("copy from user failed %d/4, but continuing.\n", rv); - - 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; - return 4; -} - -static long version_ioctl(struct xdma_cdev *xcdev, void __user *arg) -{ - struct xdma_ioc_info obj; - struct xdma_dev *xdev = xcdev->xdev; - int rv; - - rv = copy_from_user((void *)&obj, arg, sizeof(struct xdma_ioc_info)); - if (rv) { - pr_info("copy from user failed %d/%ld.\n", - rv, sizeof(struct xdma_ioc_info)); - return -EFAULT; - } - memset(&obj, 0, sizeof(obj)); - obj.vendor = xdev->pdev->vendor; - obj.device = xdev->pdev->device; - obj.subsystem_vendor = xdev->pdev->subsystem_vendor; - obj.subsystem_device = xdev->pdev->subsystem_device; - obj.feature_id = xdev->feature_id; - obj.driver_version = DRV_MOD_VERSION_NUMBER; - obj.domain = 0; - obj.bus = PCI_BUS_NUM(xdev->pdev->devfn); - obj.dev = PCI_SLOT(xdev->pdev->devfn); - obj.func = PCI_FUNC(xdev->pdev->devfn); - if (copy_to_user(arg, &obj, sizeof(struct xdma_ioc_info))) - return -EFAULT; - return 0; -} - -long char_ctrl_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) -{ - struct xdma_cdev *xcdev = (struct xdma_cdev *)filp->private_data; - struct xdma_dev *xdev; - struct xdma_ioc_base ioctl_obj; - long result = 0; - int rv; - - rv = xcdev_check(__func__, xcdev, 0); - if (rv < 0) - 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) { - pr_err("cmd %u, bad magic 0x%x/0x%x.\n", - cmd, _IOC_TYPE(cmd), XDMA_IOC_MAGIC); - return -ENOTTY; - } - - if (_IOC_DIR(cmd) & _IOC_READ) - result = !xlx_access_ok(VERIFY_WRITE, (void __user *)arg, - _IOC_SIZE(cmd)); - else if (_IOC_DIR(cmd) & _IOC_WRITE) - result = !xlx_access_ok(VERIFY_READ, (void __user *)arg, - _IOC_SIZE(cmd)); - - if (result) { - pr_err("bad access %ld.\n", result); - return -EFAULT; - } - - switch (cmd) { - case XDMA_IOCINFO: - if (copy_from_user((void *)&ioctl_obj, (void __user *) arg, - sizeof(struct xdma_ioc_base))) { - pr_err("copy_from_user failed.\n"); - return -EFAULT; - } - - if (ioctl_obj.magic != XDMA_XCL_MAGIC) { - pr_err("magic 0x%x != XDMA_XCL_MAGIC (0x%x).\n", - ioctl_obj.magic, XDMA_XCL_MAGIC); - return -ENOTTY; - } - return version_ioctl(xcdev, (void __user *)arg); - case XDMA_IOCOFFLINE: - xdma_device_offline(xdev->pdev, xdev); - break; - case XDMA_IOCONLINE: - xdma_device_online(xdev->pdev, xdev); - break; - default: - pr_err("UNKNOWN ioctl cmd 0x%x.\n", cmd); - return -ENOTTY; - } - return 0; -} - -/* maps the PCIe BAR into user space for memory-like access using mmap() */ -int bridge_mmap(struct file *file, struct vm_area_struct *vma) -{ - struct xdma_dev *xdev; - struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data; - unsigned long off; - unsigned long phys; - unsigned long vsize; - unsigned long psize; - int rv; - - rv = xcdev_check(__func__, xcdev, 0); - if (rv < 0) - return rv; - xdev = xcdev->xdev; - - off = vma->vm_pgoff << PAGE_SHIFT; - /* BAR physical address */ - phys = pci_resource_start(xdev->pdev, xcdev->bar) + off; - vsize = vma->vm_end - vma->vm_start; - /* complete resource */ - psize = pci_resource_end(xdev->pdev, xcdev->bar) - - pci_resource_start(xdev->pdev, xcdev->bar) + 1 - off; - - dbg_sg("mmap(): xcdev = 0x%08lx\n", (unsigned long)xcdev); - 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, 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)); - dbg_sg("phys = 0x%lx\n", phys); - - if (vsize > psize) - return -EINVAL; - /* - * pages must not be cached as this would result in cache line sized - * accesses to the end point - */ - vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); - /* - * prevent touching the pages (byte access) for swap-in, - * and prevent the pages from being swapped out - */ -#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 3, 0) - vm_flags_set(vma, VMEM_FLAGS); -#elif defined(RHEL_RELEASE_CODE) - #if (RHEL_RELEASE_CODE > RHEL_RELEASE_VERSION(9, 4)) - vm_flags_set(vma, VMEM_FLAGS); - #else - vma->vm_flags |= VMEM_FLAGS; - #endif -#else - vma->vm_flags |= VMEM_FLAGS; -#endif - /* make MMIO accessible to user space */ - rv = io_remap_pfn_range(vma, vma->vm_start, phys >> PAGE_SHIFT, - vsize, vma->vm_page_prot); - dbg_sg("vma=0x%p, vma->vm_start=0x%lx, phys=0x%lx, size=%lu = %d\n", - vma, vma->vm_start, phys >> PAGE_SHIFT, vsize, rv); - - if (rv) - return -EAGAIN; - return 0; -} - -/* - * character device file operations for control bus (through control bridge) - */ -static const struct file_operations ctrl_fops = { - .owner = THIS_MODULE, - .open = char_open, - .release = char_close, - .read = char_ctrl_read, - .write = char_ctrl_write, - .mmap = bridge_mmap, - .unlocked_ioctl = char_ctrl_ioctl, -}; - -void cdev_ctrl_init(struct xdma_cdev *xcdev) -{ - cdev_init(&xcdev->cdev, &ctrl_fops); -} diff --git a/xdma/linux-kernel/xdma/cdev_ctrl.h b/xdma/linux-kernel/xdma/cdev_ctrl.h deleted file mode 100644 index 61d5cd1..0000000 --- a/xdma/linux-kernel/xdma/cdev_ctrl.h +++ /dev/null @@ -1,87 +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 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_ -#define _XDMA_IOCALLS_POSIX_H_ - -#include - -/* Use 'x' as magic number */ -#define XDMA_IOC_MAGIC 'x' -/* XL OpenCL X->58(ASCII), L->6C(ASCII), O->0 C->C L->6C(ASCII); */ -#define XDMA_XCL_MAGIC 0X586C0C6C - -/* - * S means "Set" through a ptr, - * T means "Tell" directly with the argument value - * G means "Get": reply by setting through a pointer - * Q means "Query": response is on the return value - * X means "eXchange": switch G and S atomically - * H means "sHift": switch T and Q atomically - * - * _IO(type,nr) no arguments - * _IOR(type,nr,datatype) read data from driver - * _IOW(type,nr.datatype) write data to driver - * _IORW(type,nr,datatype) read/write data - * - * _IOC_DIR(nr) returns direction - * _IOC_TYPE(nr) returns magic - * _IOC_NR(nr) returns number - * _IOC_SIZE(nr) returns size - */ - -enum XDMA_IOC_TYPES { - XDMA_IOC_NOP, - XDMA_IOC_INFO, - XDMA_IOC_OFFLINE, - XDMA_IOC_ONLINE, - XDMA_IOC_MAX -}; - -struct xdma_ioc_base { - unsigned int magic; - unsigned int command; -}; - -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; - unsigned short domain; - unsigned char bus; - unsigned char dev; - unsigned char func; -}; - -/* IOCTL codes */ -#define XDMA_IOCINFO _IOWR(XDMA_IOC_MAGIC, XDMA_IOC_INFO, \ - struct xdma_ioc_info) -#define XDMA_IOCOFFLINE _IO(XDMA_IOC_MAGIC, XDMA_IOC_OFFLINE) -#define XDMA_IOCONLINE _IO(XDMA_IOC_MAGIC, XDMA_IOC_ONLINE) - -#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) - -#endif /* _XDMA_IOCALLS_POSIX_H_ */ diff --git a/xdma/linux-kernel/xdma/cdev_ctrl.o b/xdma/linux-kernel/xdma/cdev_ctrl.o deleted file mode 100644 index d711646..0000000 Binary files a/xdma/linux-kernel/xdma/cdev_ctrl.o and /dev/null differ diff --git a/xdma/linux-kernel/xdma/cdev_events.c b/xdma/linux-kernel/xdma/cdev_events.c deleted file mode 100644 index 4942d96..0000000 --- a/xdma/linux-kernel/xdma/cdev_events.c +++ /dev/null @@ -1,120 +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 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" - -/* - * character device file operations for events - */ -static ssize_t char_events_read(struct file *file, char __user *buf, - size_t count, loff_t *pos) -{ - int rv; - struct xdma_user_irq *user_irq; - struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data; - u32 events_user; - unsigned long flags; - - rv = xcdev_check(__func__, xcdev, 0); - if (rv < 0) - return rv; - user_irq = xcdev->user_irq; - if (!user_irq) { - pr_info("xcdev 0x%p, user_irq NULL.\n", xcdev); - return -EINVAL; - } - - if (count != 4) - return -EPROTO; - - if (*pos & 3) - return -EPROTO; - - /* - * sleep until any interrupt events have occurred, - * or a signal arrived - */ - rv = wait_event_interruptible(user_irq->events_wq, - user_irq->events_irq != 0); - if (rv) - dbg_sg("wait_event_interruptible=%d\n", rv); - - /* wait_event_interruptible() was interrupted by a signal */ - if (rv == -ERESTARTSYS) - return -ERESTARTSYS; - - /* atomically decide which events are passed to the user */ - spin_lock_irqsave(&user_irq->events_lock, flags); - events_user = user_irq->events_irq; - user_irq->events_irq = 0; - spin_unlock_irqrestore(&user_irq->events_lock, flags); - - rv = copy_to_user(buf, &events_user, 4); - if (rv) - dbg_sg("Copy to user failed but continuing\n"); - - return 4; -} - -static unsigned int char_events_poll(struct file *file, poll_table *wait) -{ - struct xdma_user_irq *user_irq; - struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data; - unsigned long flags; - unsigned int mask = 0; - int rv; - - rv = xcdev_check(__func__, xcdev, 0); - if (rv < 0) - return rv; - user_irq = xcdev->user_irq; - if (!user_irq) { - pr_info("xcdev 0x%p, user_irq NULL.\n", xcdev); - return -EINVAL; - } - - poll_wait(file, &user_irq->events_wq, wait); - - spin_lock_irqsave(&user_irq->events_lock, flags); - if (user_irq->events_irq) - mask = POLLIN | POLLRDNORM; /* readable */ - - spin_unlock_irqrestore(&user_irq->events_lock, flags); - - return mask; -} - -/* - * character device file operations for the irq events - */ -static const struct file_operations events_fops = { - .owner = THIS_MODULE, - .open = char_open, - .release = char_close, - .read = char_events_read, - .poll = char_events_poll, -}; - -void cdev_event_init(struct xdma_cdev *xcdev) -{ - xcdev->user_irq = &(xcdev->xdev->user_irq[xcdev->bar]); - cdev_init(&xcdev->cdev, &events_fops); -} diff --git a/xdma/linux-kernel/xdma/cdev_events.o b/xdma/linux-kernel/xdma/cdev_events.o deleted file mode 100644 index d4206f8..0000000 Binary files a/xdma/linux-kernel/xdma/cdev_events.o and /dev/null differ diff --git a/xdma/linux-kernel/xdma/cdev_sgdma.c b/xdma/linux-kernel/xdma/cdev_sgdma.c deleted file mode 100755 index 4271173..0000000 --- a/xdma/linux-kernel/xdma/cdev_sgdma.c +++ /dev/null @@ -1,954 +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 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 defined(RHEL_RELEASE_CODE) - #if (RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(9, 4)) - caio->iocb->ki_complete(caio->iocb, caio->err_cnt ? res2 : res); - #elif LINUX_VERSION_CODE >= KERNEL_VERSION(5, 16, 0) - caio->iocb->ki_complete(caio->iocb, caio->err_cnt ? res2 : res); - #elif LINUX_VERSION_CODE >= KERNEL_VERSION(4, 1, 0) - caio->iocb->ki_complete(caio->iocb, res, res2); - #else - aio_complete(caio->iocb, res, res2); - #endif -#elif LINUX_VERSION_CODE >= KERNEL_VERSION(5, 16, 0) - caio->iocb->ki_complete(caio->iocb, caio->err_cnt ? res2 : res); -#elif 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 defined(RHEL_RELEASE_CODE) - #if (RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(9, 4)) - caio->iocb->ki_complete(caio->iocb, caio->err_cnt ? res2 : res); - #elif LINUX_VERSION_CODE >= KERNEL_VERSION(5, 16, 0) - caio->iocb->ki_complete(caio->iocb, -EBUSY); - #elif LINUX_VERSION_CODE >= KERNEL_VERSION(4, 1, 0) - caio->iocb->ki_complete(caio->iocb, numbytes, -EBUSY); - #else - aio_complete(caio->iocb, numbytes, -EBUSY); - #endif -#elif LINUX_VERSION_CODE >= KERNEL_VERSION(5, 16, 0) - caio->iocb->ki_complete(caio->iocb, -EBUSY); -#elif 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 - * 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) -{ -#if defined(RHEL_RELEASE_CODE) - #if (RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(9, 4)) - return cdev_aio_write(iocb, iter_iov(io), io->nr_segs, io->iov_offset); - #else - return cdev_aio_write(iocb, io->iov, io->nr_segs, io->iov_offset); - #endif -#elif LINUX_VERSION_CODE >= KERNEL_VERSION(6, 4, 0) - return cdev_aio_write(iocb, iter_iov(io), io->nr_segs, io->iov_offset); -#else - return cdev_aio_write(iocb, io->iov, io->nr_segs, io->iov_offset); -#endif -} - -static ssize_t cdev_read_iter(struct kiocb *iocb, struct iov_iter *io) -{ -#if defined(RHEL_RELEASE_CODE) - #if (RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(9, 4)) - return cdev_aio_read(iocb, iter_iov(io), io->nr_segs, io->iov_offset); - #else - return cdev_aio_read(iocb, io->iov, io->nr_segs, io->iov_offset); - #endif -#elif LINUX_VERSION_CODE >= KERNEL_VERSION(6, 4, 0) - return cdev_aio_read(iocb, iter_iov(io), io->nr_segs, io->iov_offset); -#else - return cdev_aio_read(iocb, io->iov, io->nr_segs, io->iov_offset); -#endif -} -#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/xdma/linux-kernel/xdma/cdev_sgdma.h b/xdma/linux-kernel/xdma/cdev_sgdma.h deleted file mode 100644 index 6f7ae15..0000000 --- a/xdma/linux-kernel/xdma/cdev_sgdma.h +++ /dev/null @@ -1,82 +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 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_ -#define _XDMA_IOCALLS_POSIX_H_ - -#include - - -#define IOCTL_XDMA_PERF_V1 (1) -#define XDMA_ADDRMODE_MEMORY (0) -#define XDMA_ADDRMODE_FIXED (1) - -/* - * S means "Set" through a ptr, - * T means "Tell" directly with the argument value - * G means "Get": reply by setting through a pointer - * Q means "Query": response is on the return value - * X means "eXchange": switch G and S atomically - * H means "sHift": switch T and Q atomically - * - * _IO(type,nr) no arguments - * _IOR(type,nr,datatype) read data from driver - * _IOW(type,nr,datatype) write data to driver - * _IORW(type,nr,datatype) read/write data - * - * _IOC_DIR(nr) returns direction - * _IOC_TYPE(nr) returns magic - * _IOC_NR(nr) returns number - * _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_aperture_ioctl { - uint64_t ep_addr; - unsigned int aperture; - unsigned long buffer; - unsigned long len; - int error; - unsigned long done; -}; - - -/* IOCTL codes */ - -#define IOCTL_XDMA_PERF_START _IOW('q', 1, struct xdma_performance_ioctl *) -#define IOCTL_XDMA_PERF_STOP _IOW('q', 2, struct xdma_performance_ioctl *) -#define IOCTL_XDMA_PERF_GET _IOR('q', 3, 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/xdma/linux-kernel/xdma/cdev_sgdma.o b/xdma/linux-kernel/xdma/cdev_sgdma.o deleted file mode 100644 index de1d416..0000000 Binary files a/xdma/linux-kernel/xdma/cdev_sgdma.o and /dev/null differ diff --git a/xdma/linux-kernel/xdma/cdev_xvc.c b/xdma/linux-kernel/xdma/cdev_xvc.c deleted file mode 100644 index df5a5e8..0000000 --- a/xdma/linux-kernel/xdma/cdev_xvc.c +++ /dev/null @@ -1,250 +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 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" -#include "cdev_xvc.h" - -#define COMPLETION_LOOP_MAX 100 - -#define XVC_BAR_LENGTH_REG 0x0 -#define XVC_BAR_TMS_REG 0x4 -#define XVC_BAR_TDI_REG 0x8 -#define XVC_BAR_TDO_REG 0xC -#define XVC_BAR_CTRL_REG 0x10 - -#ifdef __REG_DEBUG__ -/* SECTION: Function definitions */ -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); -} - -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; -} -#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)) -#endif /* #ifdef __REG_DEBUG__ */ - - -static int xvc_shift_bits(void __iomem *base, u32 tms_bits, u32 tdi_bits, - u32 *tdo_bits) -{ - u32 control; - int count; - - /* set tms bit */ - write_register(tms_bits, base, XVC_BAR_TMS_REG); - /* set tdi bits and shift data out */ - write_register(tdi_bits, base, XVC_BAR_TDI_REG); - /* enable shift operation */ - write_register(0x1, base, XVC_BAR_CTRL_REG); - - /* poll for completion */ - count = COMPLETION_LOOP_MAX; - while (count) { - /* read control reg to check shift operation completion */ - control = read_register(base, XVC_BAR_CTRL_REG); - if ((control & 0x01) == 0) - break; - - count--; - } - - if (!count) { - pr_warn("XVC bar transaction timed out (0x%0X)\n", control); - return -ETIMEDOUT; - } - - /* read tdo bits back out */ - *tdo_bits = read_register(base, XVC_BAR_TDO_REG); - - return 0; -} - -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_dev *xdev; - struct xvc_ioc xvc_obj; - unsigned int opcode; - unsigned int total_bits; - unsigned int total_bytes; - unsigned char *buffer = NULL; - unsigned char *tms_buf = NULL; - unsigned char *tdi_buf = NULL; - unsigned char *tdo_buf = NULL; - unsigned int bits, bits_left; - void __iomem *iobase; - int rv; - - rv = xcdev_check(__func__, xcdev, 0); - if (rv < 0) - return rv; - - xdev = xcdev->xdev; - - if (cmd != XDMA_IOCXVC) { - pr_info("ioctl 0x%x, UNKNOWN cmd.\n", cmd); - return -ENOIOCTLCMD; - } - - rv = copy_from_user((void *)&xvc_obj, (void __user *)arg, - sizeof(struct xvc_ioc)); - /* anything not copied ? */ - if (rv) { - pr_info("copy_from_user xvc_obj failed: %d.\n", rv); - goto cleanup; - } - - opcode = xvc_obj.opcode; - - /* Invalid operation type, no operation performed */ - if (opcode != 0x01 && opcode != 0x02) { - pr_info("UNKNOWN opcode 0x%x.\n", opcode); - return -EINVAL; - } - - total_bits = xvc_obj.length; - total_bytes = (total_bits + 7) >> 3; - - 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); - rv = -ENOMEM; - goto cleanup; - } - tms_buf = buffer; - tdi_buf = tms_buf + total_bytes; - tdo_buf = tdi_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, - (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; - } - - /* exclusive access */ - spin_lock(&xcdev->lock); - - iobase = xdev->bar[xcdev->bar] + xcdev->base; - /* set length register to 32 initially if more than one - * word-transaction is to be done - */ - if (total_bits >= 32) - write_register(0x20, iobase, XVC_BAR_LENGTH_REG); - - for (bits = 0, bits_left = total_bits; bits < total_bits; bits += 32, - bits_left -= 32) { - unsigned int bytes = bits >> 3; - unsigned int shift_bytes = 4; - 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); - shift_bytes = (bits_left + 7) >> 3; - } - - memcpy(&tms_store, tms_buf + bytes, shift_bytes); - memcpy(&tdi_store, tdi_buf + bytes, shift_bytes); - - /* Shift data out and copy to output buffer */ - rv = xvc_shift_bits(iobase, tms_store, tdi_store, &tdo_store); - if (rv < 0) - 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) { - unsigned char *tmp = tdo_buf; - - tdo_buf = tdi_buf; - tdi_buf = tmp; - } - - 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); - -unlock: -#if HAS_MMIOWB - mmiowb(); -#endif - spin_unlock(&xcdev->lock); - -cleanup: - kfree(buffer); - - return rv; -} - -/* - * 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, -}; - -void cdev_xvc_init(struct xdma_cdev *xcdev) -{ -#ifdef __XVC_BAR_NUM__ - xcdev->bar = __XVC_BAR_NUM__; -#endif -#ifdef __XVC_BAR_OFFSET__ - xcdev->base = __XVC_BAR_OFFSET__; -#else - xcdev->base = XVC_BAR_OFFSET_DFLT; -#endif - pr_info("xcdev 0x%p, bar %u, offset 0x%lx.\n", - xcdev, xcdev->bar, xcdev->base); - cdev_init(&xcdev->cdev, &xvc_fops); -} diff --git a/xdma/linux-kernel/xdma/cdev_xvc.h b/xdma/linux-kernel/xdma/cdev_xvc.h deleted file mode 100644 index a2a543a..0000000 --- a/xdma/linux-kernel/xdma/cdev_xvc.h +++ /dev/null @@ -1,42 +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 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/xdma/linux-kernel/xdma/cdev_xvc.o b/xdma/linux-kernel/xdma/cdev_xvc.o deleted file mode 100644 index ca8c00b..0000000 Binary files a/xdma/linux-kernel/xdma/cdev_xvc.o and /dev/null differ diff --git a/xdma/linux-kernel/xdma/libxdma.c b/xdma/linux-kernel/xdma/libxdma.c deleted file mode 100644 index 3d9c865..0000000 --- a/xdma/linux-kernel/xdma/libxdma.c +++ /dev/null @@ -1,4798 +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 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 "libxdma.h" -#include "libxdma_api.h" -#include "cdev_sgdma.h" -#include "xdma_thread.h" - - -/* Module Parameters */ -static unsigned int poll_mode; -module_param(poll_mode, uint, 0644); -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 - Auto , 1 - MSI, 2 - Legacy, 3 - MSI-x"); - -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"); - -#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 - * maintains a list of the xdma devices - */ -static LIST_HEAD(xdev_list); -static DEFINE_MUTEX(xdev_mutex); - -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) -#endif - -static inline int xdev_list_add(struct xdma_dev *xdev) -{ - mutex_lock(&xdev_mutex); - if (list_empty(&xdev_list)) { - xdev->idx = 0; - 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); - xdev->idx = last->idx + 1; - } - list_add_tail(&xdev->list_head, &xdev_list); - mutex_unlock(&xdev_mutex); - - dbg_init("dev %s, xdev 0x%p, xdma idx %d.\n", - 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 - -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); - list_del_rcu(&xdev->rcu_node); - spin_unlock(&xdev_rcu_lock); - synchronize_rcu(); -} - -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; -} - -static inline int debug_check_dev_hndl(const char *fname, struct pci_dev *pdev, - void *hndl) -{ - struct xdma_dev *xdev; - - if (!pdev) - return -EINVAL; - - xdev = xdev_find_by_pdev(pdev); - if (!xdev) { - 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); - return -EINVAL; - } - - return 0; -} - -#ifdef __LIBXDMA_DEBUG__ -/* SECTION: Function definitions */ -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) -#else -#define write_register(v, mem, off) iowrite32(v, mem) -#endif - -inline u32 read_register(void *iomem) -{ - return ioread32(iomem); -} - -static inline u32 build_u32(u32 hi, u32 lo) -{ - return ((hi & 0xFFFFUL) << 16) | (lo & 0xFFFFUL); -} - -static inline u64 build_u64(u64 hi, u64 lo) -{ - return ((hi & 0xFFFFFFFULL) << 32) | (lo & 0xFFFFFFFFULL); -} - -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); - u32 w; - - w = read_register(®->user_int_enable); - if (w) - pr_info("%s xdma%d user_int_enable = 0x%08x\n", - dev_name(&xdev->pdev->dev), xdev->idx, w); - - w = read_register(®->channel_int_enable); - if (w) - 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); - if (w) - pr_info("%s xdma%d user_int_request = 0x%08x\n", - dev_name(&xdev->pdev->dev), xdev->idx, w); - w = read_register(®->channel_int_request); - if (w) - pr_info("%s xdma%d channel_int_request = 0x%08x\n", - dev_name(&xdev->pdev->dev), xdev->idx, w); - - w = read_register(®->user_int_pending); - if (w) - pr_info("%s xdma%d user_int_pending = 0x%08x\n", - dev_name(&xdev->pdev->dev), xdev->idx, w); - w = read_register(®->channel_int_pending); - if (w) - pr_info("%s xdma%d channel_int_pending = 0x%08x\n", - dev_name(&xdev->pdev->dev), xdev->idx, w); -} - -/* 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); - - write_register(mask, ®->channel_int_enable_w1s, XDMA_OFS_INT_CTRL); -} - -/* 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); - - write_register(mask, ®->channel_int_enable_w1c, XDMA_OFS_INT_CTRL); -} - -/* 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); - - write_register(mask, ®->user_int_enable_w1s, XDMA_OFS_INT_CTRL); -} - -/* 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); - - write_register(mask, ®->user_int_enable_w1c, XDMA_OFS_INT_CTRL); -} - -/* 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); - 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); - lo = read_register(®->channel_int_request); - dbg_io("ioread32(0x%p) returned 0x%08x (channel_int_request)\n", - ®->channel_int_request, lo); - - /* return interrupts: user in upper 16-bits, channel in lower 16-bits */ - return build_u32(hi, lo); -} - -void enable_perf(struct xdma_engine *engine) -{ - u32 w; - - w = XDMA_PERF_CLEAR; - write_register(w, &engine->regs->perf_ctrl, - (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)); - read_register(&engine->regs->identifier); - - dbg_perf("IOCTL_XDMA_PERF_START\n"); -} - -void get_perf_stats(struct xdma_engine *engine) -{ - u32 hi; - u32 lo; - - if (!engine) { - pr_err("dma engine NULL\n"); - return; - } - - if (!engine->xdma_perf) { - pr_info("%s perf struct not set up.\n", engine->name); - return; - } - - hi = 0; - lo = read_register(&engine->regs->completed_desc_count); - engine->xdma_perf->iterations = build_u64(hi, lo); - - hi = read_register(&engine->regs->perf_cyc_hi); - lo = read_register(&engine->regs->perf_cyc_lo); - - engine->xdma_perf->clock_cycle_count = build_u64(hi, lo); - - hi = read_register(&engine->regs->perf_dat_hi); - lo = read_register(&engine->regs->perf_dat_lo); - engine->xdma_perf->data_cycle_count = build_u64(hi, lo); - - hi = read_register(&engine->regs->perf_pnd_hi); - lo = read_register(&engine->regs->perf_pnd_lo); - engine->xdma_perf->pending_count = build_u64(hi, lo); -} - -static int engine_reg_dump(struct xdma_engine *engine) -{ - u32 w; - - 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); - w &= BLOCK_ID_MASK; - if (w != BLOCK_ID_HEAD) { - 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); - w = read_register(&engine->regs->control); - 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); - 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); - 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); - w = read_register(&engine->regs->completed_desc_count); - pr_info("%s: ioread32(0x%p) = 0x%08x (completed_desc_count).\n", - engine->name, &engine->regs->completed_desc_count, w); - 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; -} - -static void engine_status_dump(struct xdma_engine *engine) -{ - u32 v = engine->status; - char buffer[256]; - char *buf = buffer; - 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)) - len += sprintf(buf + len, "DESC_STOPPED,"); - if ((v & XDMA_STAT_DESC_COMPLETED)) - len += sprintf(buf + len, "DESC_COMPL,"); - - /* 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)) - len += sprintf(buf + len, "MAGIC_STOPPED "); - if ((v & XDMA_STAT_INVALID_LEN)) - len += sprintf(buf + len, "INVLIAD_LEN "); - if ((v & XDMA_STAT_IDLE_STOPPED)) - len += sprintf(buf + len, "IDLE_STOPPED "); - buf[len - 1] = ','; - } - - if (engine->dir == DMA_TO_DEVICE) { - /* H2C only */ - if ((v & XDMA_STAT_H2C_R_ERR_MASK)) { - len += sprintf(buf + len, "R:"); - if ((v & XDMA_STAT_H2C_R_UNSUPP_REQ)) - len += sprintf(buf + len, "UNSUPP_REQ "); - if ((v & XDMA_STAT_H2C_R_COMPL_ABORT)) - len += sprintf(buf + len, "COMPL_ABORT "); - if ((v & XDMA_STAT_H2C_R_PARITY_ERR)) - len += sprintf(buf + len, "PARITY "); - if ((v & XDMA_STAT_H2C_R_HEADER_EP)) - len += sprintf(buf + len, "HEADER_EP "); - if ((v & XDMA_STAT_H2C_R_UNEXP_COMPL)) - len += sprintf(buf + len, "UNEXP_COMPL "); - buf[len - 1] = ','; - } - - if ((v & XDMA_STAT_H2C_W_ERR_MASK)) { - len += sprintf(buf + len, "W:"); - if ((v & XDMA_STAT_H2C_W_DECODE_ERR)) - len += sprintf(buf + len, "DECODE_ERR "); - if ((v & XDMA_STAT_H2C_W_SLAVE_ERR)) - len += sprintf(buf + len, "SLAVE_ERR "); - buf[len - 1] = ','; - } - - } else { - /* C2H only */ - if ((v & XDMA_STAT_C2H_R_ERR_MASK)) { - len += sprintf(buf + len, "R:"); - if ((v & XDMA_STAT_C2H_R_DECODE_ERR)) - len += sprintf(buf + len, "DECODE_ERR "); - if ((v & XDMA_STAT_C2H_R_SLAVE_ERR)) - len += sprintf(buf + len, "SLAVE_ERR "); - buf[len - 1] = ','; - } - } - - /* 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 "); - if ((v & XDMA_STAT_DESC_COMPL_ABORT)) - len += sprintf(buf + len, "COMPL_ABORT "); - if ((v & XDMA_STAT_DESC_PARITY_ERR)) - len += sprintf(buf + len, "PARITY "); - if ((v & XDMA_STAT_DESC_HEADER_EP)) - len += sprintf(buf + len, "HEADER_EP "); - if ((v & XDMA_STAT_DESC_UNEXP_COMPL)) - len += sprintf(buf + len, "UNEXP_COMPL "); - buf[len - 1] = ','; - } - - buf[len - 1] = '\0'; - pr_info("%s\n", buffer); -} - -/** - * 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) -{ - int rv = 0; - - if (!engine) { - pr_err("dma engine NULL\n"); - return -EINVAL; - } - - if (dump) { - rv = engine_reg_dump(engine); - if (rv < 0) { - pr_err("Failed to dump register\n"); - return rv; - } - } - - /* read status register */ - if (clear) - engine->status = read_register(&engine->regs->status_rc); - else - engine->status = read_register(&engine->regs->status); - - if (dump) - engine_status_dump(engine); - - return rv; -} - -/** - * xdma_engine_stop() - stop an SG DMA engine - * - */ -static int xdma_engine_stop(struct xdma_engine *engine) -{ - u32 w; - - 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; - w |= (u32)XDMA_CTRL_IE_MAGIC_STOPPED; - w |= (u32)XDMA_CTRL_IE_READ_ERROR; - w |= (u32)XDMA_CTRL_IE_DESC_ERROR; - - if (poll_mode) { - w |= (u32)XDMA_CTRL_POLL_MODE_WB; - } else { - w |= (u32)XDMA_CTRL_IE_DESC_STOPPED; - w |= (u32)XDMA_CTRL_IE_DESC_COMPLETED; - } - - dbg_tfr("Stopping SG DMA %s engine; writing 0x%08x to 0x%p.\n", - engine->name, w, (u32 *)&engine->regs->control); - write_register(w, &engine->regs->control, - (unsigned long)(&engine->regs->control) - - (unsigned long)(&engine->regs)); - /* dummy read of status register to flush all previous writes */ - dbg_tfr("%s(%s) done\n", __func__, engine->name); - engine->running = 0; - return 0; -} - -static int engine_start_mode_config(struct xdma_engine *engine) -{ - u32 w; - - if (!engine) { - pr_err("dma engine NULL\n"); - return -EINVAL; - } - - /* If a perf test is running, enable the engine interrupts */ - if (engine->xdma_perf) { - w = XDMA_CTRL_IE_DESC_STOPPED; - w |= XDMA_CTRL_IE_DESC_COMPLETED; - w |= XDMA_CTRL_IE_DESC_ALIGN_MISMATCH; - w |= XDMA_CTRL_IE_MAGIC_STOPPED; - w |= XDMA_CTRL_IE_IDLE_STOPPED; - w |= XDMA_CTRL_IE_READ_ERROR; - w |= XDMA_CTRL_IE_DESC_ERROR; - - write_register( - w, &engine->regs->interrupt_enable_mask, - (unsigned long)(&engine->regs->interrupt_enable_mask) - - (unsigned long)(&engine->regs)); - } - - /* write control register of SG DMA engine */ - w = (u32)XDMA_CTRL_RUN_STOP; - w |= (u32)XDMA_CTRL_IE_READ_ERROR; - w |= (u32)XDMA_CTRL_IE_DESC_ERROR; - w |= (u32)XDMA_CTRL_IE_DESC_ALIGN_MISMATCH; - w |= (u32)XDMA_CTRL_IE_MAGIC_STOPPED; - - if (poll_mode) { - w |= (u32)XDMA_CTRL_POLL_MODE_WB; - } else { - w |= (u32)XDMA_CTRL_IE_DESC_STOPPED; - w |= (u32)XDMA_CTRL_IE_DESC_COMPLETED; - } - - /* 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); - - /* start the engine */ - write_register(w, &engine->regs->control, - (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); - 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); -} - -/** - * engine_start() - start an idle engine with its first transfer on queue - * - * The engine will run and process all transfers that are queued using - * transfer_queue() and thus have their descriptor lists chained. - * - * During the run, new transfers will be processed if transfer_queue() has - * chained the descriptors before the hardware fetches the last descriptor. - * A transfer that was chained too late will invoke a new run of the engine - * initiated from the engine_service() routine. - * - * The engine must be idle and at least one transfer must be queued. - * This function does not take locks; the engine spinlock must already be - * taken. - * - */ -static struct xdma_transfer *engine_start(struct xdma_engine *engine) -{ - struct xdma_transfer *transfer; - u32 w, next_adj; - int rv; - - if (!engine) { - pr_err("dma engine NULL\n"); - return NULL; - } - - /* engine must be idle */ - 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 */ - 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); - 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("%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; - - /* 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); - write_register(w, &engine->sgdma_regs->first_desc_lo, - (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); - write_register(w, &engine->sgdma_regs->first_desc_hi, - (unsigned long)(&engine->sgdma_regs->first_desc_hi) - - (unsigned long)(&engine->sgdma_regs)); - - 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); - -#if HAS_MMIOWB - mmiowb(); -#endif - - 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; - return transfer; -} - -/** - * 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_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"); - 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 */ - xlx_wake_up(&engine->shutdown_wq); - return 0; -} - -static struct xdma_transfer *engine_transfer_completion( - struct xdma_engine *engine, - struct xdma_transfer *transfer) -{ - if (!engine) { - pr_err("dma engine NULL\n"); - return NULL; - } - - if (unlikely(!transfer)) { - pr_info("%s: xfer empty.\n", engine->name); - return NULL; - } - - /* synchronous I/O? */ - /* awake task on transfer's wait queue */ - 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; -} - -static struct xdma_transfer * -engine_service_transfer_list(struct xdma_engine *engine, - struct xdma_transfer *transfer, - u32 *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); - return NULL; - } - - /* - * iterate over all the transfers completed by the engine, - * except for the last (i.e. use > instead of >=). - */ - while (transfer && (!transfer->cyclic) && - (*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 */ - engine->desc_dequeued += transfer->desc_num; - /* mark transfer as succesfully completed */ - transfer->state = TRANSFER_STATE_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); - dbg_tfr("Non-completed transfer %p\n", transfer); - } else { - /* no further transfers? */ - transfer = NULL; - } - } - - return transfer; -} - -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 - * and check again. If it's still set, log the issue. - */ - if (engine->status & XDMA_STAT_BUSY) { - value = read_register(&engine->regs->status); - if ((value & XDMA_STAT_BUSY)) - printk_ratelimited(KERN_INFO - "%s has errors but is still BUSY\n", - engine->name); - } - - 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; - rv = xdma_engine_stop(engine); - if (rv < 0) - pr_err("Failed to stop engine\n"); - return rv; -} - -static struct xdma_transfer * -engine_service_final_transfer(struct xdma_engine *engine, - struct xdma_transfer *transfer, - u32 *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); - return NULL; - } - - 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; - - } 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); - - /* 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); - - 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; - } - -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 int engine_service_perf(struct xdma_engine *engine, u32 desc_completed) -{ - if (!engine) { - pr_err("dma engine NULL\n"); - return -EINVAL; - } - - /* performance measurement is running? */ - if (engine->xdma_perf) { - /* a descriptor was 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); - } - - /* a descriptor stopped the engine? */ - if (engine->status & XDMA_STAT_DESC_STOPPED) { - engine->xdma_perf->stopped = 1; - /* - * wake any XDMA_PERF_IOCTL_STOP waiting for - * the performance run to finish - */ - xlx_wake_up(&engine->xdma_perf_wq); - dbg_perf("transfer->xdma_perf stopped\n"); - } - } - return 0; -} - -static int engine_service_resume(struct xdma_engine *engine) -{ - struct xdma_transfer *transfer_started; - - if (!engine) { - pr_err("dma engine NULL\n"); - return -EINVAL; - } - - /* 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 0; -} - -/** - * 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; - - if (!engine) { - pr_err("dma engine NULL\n"); - return -EINVAL; - } - - /* 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; - } - return 0; - } - - /* - * If called by the ISR or polling detected an error, read and clear - * engine status. For polled mode descriptor completion, this read is - * unnecessary and is skipped to reduce latency - */ - 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)) || - (!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 - * count will be zero. In this scenario, read the descriptor count - * from HW. In polled mode descriptor completion, this read is - * unnecessary and is skipped to reduce latency - */ - if (!desc_count) - desc_count = read_register(&engine->regs->completed_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); - - dbg_tfr("head of queue transfer 0x%p has %d descriptors\n", - transfer, (int)transfer->desc_num); - - dbg_tfr("Engine completed %d desc, %d not yet dequeued\n", - (int)desc_count, - (int)desc_count - engine->desc_dequeued); - - 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 */ - desc_count -= engine->desc_dequeued; - - /* Process all but the last transfer */ - transfer = engine_service_transfer_list(engine, transfer, &desc_count); - - /* - * Process final transfer - includes checks of number of descriptors to - * detect faulty completion - */ - transfer = engine_service_final_transfer(engine, transfer, &desc_count); - - /* Restart the engine following the servicing */ - if (!engine->eop_flush) { - rv = engine_service_resume(engine); - if (rv < 0) - pr_err("Failed to resume engine\n"); - } - -done: - /* If polling detected an error, signal to the caller */ - return err_flag ? -1 : 0; -} - -/* engine_service_work */ -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); - 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); - 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)); - } 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) -{ - struct xdma_poll_wb *wb_data; - u32 desc_wb = 0; - u32 sched_limit = 0; - unsigned long timeout; - - 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 - */ - - 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) - break; - - /* 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, - expected_wb); - if ((desc_wb & WB_COUNT_MASK) > expected_wb) - desc_wb = expected_wb | WB_ERR_MASK; - - break; - } - - /* - * 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) - schedule(); - } - sched_limit++; - } - - return desc_wb; -} - -int engine_service_poll(struct xdma_engine *engine, - u32 expected_desc_count) -{ - u32 desc_wb = 0; - unsigned long flags; - int 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; - } - - /* - * 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); - rv = engine_service(engine, desc_wb); - spin_unlock_irqrestore(&engine->lock, flags); - - return rv; -} - -static irqreturn_t user_irq_service(int irq, struct xdma_user_irq *user_irq) -{ - unsigned long flags; - - 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); - - spin_lock_irqsave(&(user_irq->events_lock), flags); - if (!user_irq->events_irq) { - user_irq->events_irq = 1; - wake_up_interruptible(&(user_irq->events_wq)); - } - spin_unlock_irqrestore(&(user_irq->events_lock), flags); - - return IRQ_HANDLED; -} - -/* - * xdma_isr() - Interrupt handler - * - * @dev_id pointer to xdma_dev - */ -static irqreturn_t xdma_isr(int irq, void *dev_id) -{ - u32 ch_irq; - u32 user_irq; - u32 mask; - struct xdma_dev *xdev; - struct interrupt_regs *irq_regs; - - dbg_irq("(irq=%d, dev 0x%p) <<<< ISR.\n", irq, 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("%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); - - /* read channel interrupt requests */ - ch_irq = read_register(&irq_regs->channel_int_request); - dbg_irq("ch_irq = 0x%08x\n", ch_irq); - - /* - * disable all interrupts that fired; these are re-enabled individually - * after the causing module has been fully serviced. - */ - if (ch_irq) - channel_interrupts_disable(xdev, ch_irq); - - /* read user interrupts - this read also flushes the above write */ - user_irq = read_register(&irq_regs->user_int_request); - dbg_irq("user_irq = 0x%08x\n", user_irq); - - if (user_irq) { - int user = 0; - u32 mask = 1; - int max = xdev->user_max; - - for (; user < max && user_irq; user++, mask <<= 1) { - if (user_irq & mask) { - user_irq &= ~mask; - user_irq_service(irq, &xdev->user_irq[user]); - } - } - } - - mask = ch_irq & xdev->mask_irq_h2c; - if (mask) { - int channel = 0; - int max = xdev->h2c_channel_max; - - /* iterate over H2C (PCIe read) */ - for (channel = 0; channel < max && mask; channel++) { - struct xdma_engine *engine = &xdev->engine_h2c[channel]; - - /* engine present and its interrupt fired? */ - 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); - } - } - } - - mask = ch_irq & xdev->mask_irq_c2h; - if (mask) { - int channel = 0; - int max = xdev->c2h_channel_max; - - /* iterate over C2H (PCIe write) */ - for (channel = 0; channel < max && mask; channel++) { - struct xdma_engine *engine = &xdev->engine_c2h[channel]; - - /* engine present and its interrupt fired? */ - 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); - } - } - } - - xdev->irq_count++; - return IRQ_HANDLED; -} - -/* - * xdma_user_irq() - Interrupt handler for user interrupts in MSI-X mode - * - * @dev_id pointer to xdma_dev - */ -static irqreturn_t xdma_user_irq(int irq, void *dev_id) -{ - struct xdma_user_irq *user_irq; - - dbg_irq("(irq=%d) <<<< INTERRUPT SERVICE ROUTINE\n", irq); - - 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); -} - -/* - * xdma_channel_irq() - Interrupt handler for channel interrupts in MSI-X mode - * - * @dev_id pointer to xdma_dev - */ -static irqreturn_t xdma_channel_irq(int irq, void *dev_id) -{ - struct xdma_dev *xdev; - struct xdma_engine *engine; - struct interrupt_regs *irq_regs; - - dbg_irq("(irq=%d) <<<< INTERRUPT service ROUTINE\n", irq); - 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("%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); - - /* 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) - - (unsigned long)(&engine->regs)); - /* Dummy read to flush the above write */ - read_register(&irq_regs->channel_int_pending); - /* Schedule the bottom half */ - schedule_work(&engine->work); - - /* - * need to protect access here if multiple MSI-X are used for - * user interrupts - */ - xdev->irq_count++; - return IRQ_HANDLED; -} - -/* - * Unmap the BAR regions that had been mapped earlier using map_bars() - */ -static void unmap_bars(struct xdma_dev *xdev, struct pci_dev *dev) -{ - int i; - - for (i = 0; i < XDMA_BAR_NUM; i++) { - /* is this BAR mapped? */ - if (xdev->bar[i]) { - /* unmap BAR */ - pci_iounmap(dev, xdev->bar[i]); - /* mark as unmapped */ - xdev->bar[i] = NULL; - } - } -} - -static int map_single_bar(struct xdma_dev *xdev, struct pci_dev *dev, int idx) -{ - resource_size_t bar_start; - resource_size_t bar_len; - resource_size_t map_len; - - bar_start = pci_resource_start(dev, idx); - bar_len = pci_resource_len(dev, idx); - map_len = bar_len; - - xdev->bar[idx] = NULL; - - /* do not map BARs with length 0. Note that start MAY be 0! */ - if (!bar_len) { - //pr_info("BAR #%d is not present - skipping\n", idx); - return 0; - } - - /* BAR size exceeds maximum desired mapping? */ - if (bar_len > INT_MAX) { - pr_info("Limit BAR %d mapping from %llu to %d bytes\n", idx, - (u64)bar_len, INT_MAX); - map_len = (resource_size_t)INT_MAX; - } - /* - * map the full device memory or IO region into kernel virtual - * address space - */ - dbg_init("BAR%d: %llu bytes to be mapped.\n", idx, (u64)map_len); - xdev->bar[idx] = pci_iomap(dev, idx, map_len); - - if (!xdev->bar[idx]) { - pr_info("Could not map BAR %d.\n", idx); - return -1; - } - - pr_info("BAR%d at 0x%llx mapped at 0x%p, length=%llu(/%llu)\n", idx, - (u64)bar_start, xdev->bar[idx], (u64)map_len, (u64)bar_len); - - return (int)map_len; -} - -static int is_config_bar(struct xdma_dev *xdev, int idx) -{ - u32 irq_id = 0; - u32 cfg_id = 0; - 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 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)) { - 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); - flag = 0; - } - - return flag; -} - -#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 - * based on the position of the XDMA config BAR and the number of BARs - * detected. The rules are that the user logic and bypass logic BARs - * are optional. When both are present, the XDMA config BAR will be the - * 2nd BAR detected (config_bar_pos = 1), with the user logic being - * detected first and the bypass being detected last. When one is - * omitted, the type of BAR present can be identified by whether the - * XDMA config BAR is detected first or last. When both are omitted, - * only the XDMA config BAR is present. This somewhat convoluted - * approach is used instead of relying on BAR numbers in order to work - * correctly with both 32-bit and 64-bit BARs. - */ - - 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); - - switch (num_bars) { - case 1: - /* Only one BAR present - no extra work necessary */ - break; - - case 2: - if (config_bar_pos == 0) { - xdev->bypass_bar_idx = bar_id_list[1]; - } else if (config_bar_pos == 1) { - xdev->user_bar_idx = bar_id_list[0]; - } else { - pr_info("2, XDMA config BAR unexpected %d.\n", - config_bar_pos); - } - break; - - case 3: - case 4: - if ((config_bar_pos == 1) || (config_bar_pos == 2)) { - /* user bar at bar #0 */ - xdev->user_bar_idx = bar_id_list[0]; - /* bypass bar at the last bar */ - xdev->bypass_bar_idx = bar_id_list[num_bars - 1]; - } else { - pr_info("3/4, XDMA config BAR unexpected %d.\n", - config_bar_pos); - } - break; - - default: - /* Should not occur - warn user but safe to continue */ - 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); - return 0; -} -#endif - -/* map_bars() -- map device regions into kernel virtual address space - * - * Map the device memory regions into kernel virtual address space after - * verifying their sizes respect the minimum sizes needed - */ -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; - int config_bar_pos = 0; - - /* iterate through all the BARs */ - for (i = 0; i < XDMA_BAR_NUM; i++) { - int bar_len; - - bar_len = map_single_bar(xdev, dev, i); - if (bar_len == 0) { - continue; - } else if (bar_len < 0) { - rv = -EINVAL; - goto fail; - } - - /* 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; - pr_info("config bar %d, pos %d.\n", - xdev->config_bar_idx, config_bar_pos); - } - } - - bar_id_list[bar_id_idx] = i; - bar_id_idx++; - } - - /* The XDMA config BAR must always be present */ - if (xdev->config_bar_idx < 0) { - pr_info("Failed to detect XDMA config BAR\n"); - rv = -EINVAL; - goto fail; - } - - 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; - } - - /* successfully mapped all required BAR regions */ - return 0; - -fail: - /* unwind; unmap any BARs that we did map */ - unmap_bars(xdev, dev); - return rv; -#endif -} - -/* - * MSI-X interrupt: - * vectors, followed by vectors - */ - -/* - * 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 -static int arch_msi_check_device(struct pci_dev *dev, int nvec, int type) -{ - return 0; -} -#endif - -/* type = PCI_CAP_ID_MSI or PCI_CAP_ID_MSIX */ -static int msi_msix_capable(struct pci_dev *dev, int type) -{ - struct pci_bus *bus; - int ret; - - if (!dev || dev->no_msi) - return 0; - - for (bus = dev->bus; bus; bus = bus->parent) - if (bus->bus_flags & PCI_BUS_FLAGS_NO_MSI) - return 0; - - ret = arch_msi_check_device(dev, 1, type); - if (ret) - return 0; - - if (!pci_find_capability(dev, type)) - return 0; - - return 1; -} - -static void disable_msi_msix(struct xdma_dev *xdev, struct pci_dev *pdev) -{ - if (xdev->msix_enabled) { - pci_disable_msix(pdev); - xdev->msix_enabled = 0; - } else if (xdev->msi_enabled) { - pci_disable_msi(pdev); - xdev->msi_enabled = 0; - } -} - -static int enable_msi_msix(struct xdma_dev *xdev, struct pci_dev *pdev) -{ - int rv = 0; - - if (!xdev) { - pr_err("Invalid xdev\n"); - return -EINVAL; - } - - if (!pdev) { - pr_err("Invalid pdev\n"); - return -EINVAL; - } - - 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; - -#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); -#else - int i; - - dbg_init("Enabling MSI-X\n"); - for (i = 0; i < req_nvec; i++) - xdev->entry[i].entry = i; - - rv = pci_enable_msix(pdev, xdev->entry, req_nvec); -#endif - if (rv < 0) - dbg_init("Couldn't enable MSI-X mode: %d\n", rv); - - xdev->msix_enabled = 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"); - rv = pci_enable_msi(pdev); - if (rv < 0) - dbg_init("Couldn't enable MSI mode: %d\n", rv); - xdev->msi_enabled = 1; - - } else { - dbg_init("MSI/MSI-X not detected - using legacy interrupts\n"); - } - - return rv; -} - -static void pci_check_intr_pend(struct pci_dev *pdev) -{ - u16 v; - - 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); - pci_write_config_word(pdev, PCI_STATUS, PCI_STATUS_INTERRUPT); - } -} - -static void pci_keep_intx_enabled(struct pci_dev *pdev) -{ - /* workaround to a h/w bug: - * when msix/msi become unavaile, default to legacy. - * However the legacy enable was not checked. - * If the legacy was disabled, no ack then everything stuck - */ - u16 pcmd, pcmd_new; - - pci_read_config_word(pdev, PCI_COMMAND, &pcmd); - pcmd_new = pcmd & ~PCI_COMMAND_INTX_DISABLE; - if (pcmd_new != pcmd) { - pr_info("%s: clear INTX_DISABLE, 0x%x -> 0x%x.\n", - dev_name(&pdev->dev), pcmd, pcmd_new); - pci_write_config_word(pdev, PCI_COMMAND, pcmd_new); - } -} - -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); - u32 i = xdev->c2h_channel_max + xdev->h2c_channel_max; - u32 max = i + xdev->user_max; - int j; - - for (j = 0; i < max; j++) { - u32 val = 0; - int k; - int shift = 0; - - if (clear) - i += 4; - 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], - XDMA_OFS_INT_CTRL + - ((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) -{ - 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; - - /* engine */ - for (i = 0, j = 0; i < max; j++) { - u32 val = 0; - int k; - int shift = 0; - - if (clear) - i += 4; - 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)); - dbg_init("vector %d, 0x%x.\n", j, val); - } -} - -static void irq_msix_channel_teardown(struct xdma_dev *xdev) -{ - struct xdma_engine *engine; - int j = 0; - int i = 0; - - if (!xdev->msix_enabled) - return; - - prog_irq_msix_channel(xdev, 1); - - 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); - free_irq(engine->msix_irq_line, engine); - } - - 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); - free_irq(engine->msix_irq_line, engine); - } -} - -static int irq_msix_channel_setup(struct xdma_dev *xdev) -{ - int i; - int j; - int rv = 0; - u32 vector; - struct xdma_engine *engine; - - 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 KERNEL_VERSION(4, 12, 0) <= LINUX_VERSION_CODE - vector = pci_irq_vector(xdev->pdev, i); -#else - vector = xdev->entry[i].vector; -#endif - rv = request_irq(vector, xdma_channel_irq, 0, xdev->mod_name, - engine); - if (rv) { - pr_info("requesti irq#%d failed %d, engine %s.\n", - vector, rv, engine->name); - return rv; - } - pr_info("engine %s, irq#%d.\n", engine->name, vector); - engine->msix_irq_line = vector; - } - - engine = xdev->engine_c2h; - for (i = 0; i < xdev->c2h_channel_max; i++, j++, engine++) { -#if KERNEL_VERSION(4, 12, 0) <= LINUX_VERSION_CODE - vector = pci_irq_vector(xdev->pdev, j); -#else - vector = xdev->entry[j].vector; -#endif - rv = request_irq(vector, xdma_channel_irq, 0, xdev->mod_name, - engine); - if (rv) { - pr_info("requesti irq#%d failed %d, engine %s.\n", - vector, rv, engine->name); - return rv; - } - pr_info("engine %s, irq#%d.\n", engine->name, vector); - engine->msix_irq_line = vector; - } - - return 0; -} - -static void irq_msix_user_teardown(struct xdma_dev *xdev) -{ - int i; - int j; - - 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 KERNEL_VERSION(4, 12, 0) <= LINUX_VERSION_CODE - u32 vector = pci_irq_vector(xdev->pdev, j); -#else - u32 vector = xdev->entry[j].vector; -#endif - dbg_init("user %d, releasing IRQ#%d\n", i, vector); - free_irq(vector, &xdev->user_irq[i]); - } -} - -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; - - /* vectors set in probe_scan_for_msi() */ - for (i = 0; i < xdev->user_max; i++, j++) { -#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]); - if (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 KERNEL_VERSION(4, 12, 0) <= LINUX_VERSION_CODE - u32 vector = pci_irq_vector(xdev->pdev, j); -#else - u32 vector = xdev->entry[j].vector; -#endif - free_irq(vector, &xdev->user_irq[i]); - } - } - - return rv; -} - -static int irq_msi_setup(struct xdma_dev *xdev, struct pci_dev *pdev) -{ - int rv; - - xdev->irq_line = (int)pdev->irq; - rv = request_irq(pdev->irq, xdma_isr, 0, xdev->mod_name, xdev); - if (rv) - dbg_init("Couldn't use IRQ#%d, %d\n", pdev->irq, rv); - else - dbg_init("Using IRQ#%d with 0x%p\n", pdev->irq, xdev); - - return rv; -} - -static int irq_legacy_setup(struct xdma_dev *xdev, struct pci_dev *pdev) -{ - u32 w; - u8 val; - void *reg; - 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 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, 0x20A0); - 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); - if (rv) - dbg_init("Couldn't use IRQ#%d, %d\n", pdev->irq, rv); - else - dbg_init("Using IRQ#%d with 0x%p\n", pdev->irq, xdev); - - return rv; -} - -static void irq_teardown(struct xdma_dev *xdev) -{ - if (xdev->msix_enabled) { - irq_msix_channel_teardown(xdev); - irq_msix_user_teardown(xdev); - } else if (xdev->irq_line != -1) { - dbg_init("Releasing IRQ#%d\n", xdev->irq_line); - free_irq(xdev->irq_line, xdev); - } -} - -static int irq_setup(struct xdma_dev *xdev, struct pci_dev *pdev) -{ - pci_keep_intx_enabled(pdev); - - if (xdev->msix_enabled) { - int rv = irq_msix_channel_setup(xdev); - - if (rv) - return rv; - rv = irq_msix_user_setup(xdev); - if (rv) - return rv; - prog_irq_msix_channel(xdev, 0); - prog_irq_msix_user(xdev, 0); - - return 0; - } else if (xdev->msi_enabled) - return irq_msi_setup(xdev, pdev); - - return irq_legacy_setup(xdev, pdev); -} - -#ifdef __LIBXDMA_DEBUG__ -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" }; - 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]); - p++; - } - pr_info("\n"); -} - -static void transfer_dump(struct xdma_transfer *transfer) -{ - int i; - struct xdma_desc *desc_virt = transfer->desc_virt; - - pr_info("xfer 0x%p, state 0x%x, f 0x%x, dir %d, len %u, last %d.\n", - 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, - transfer->desc_adjacent); - for (i = 0; i < transfer->desc_num; i += 1) - dump_desc(desc_virt + i); -} -#endif /* __LIBXDMA_DEBUG__ */ - -/* 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 - * - * @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 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; - - /* create singly-linked list for SG DMA controller */ - for (i = 0; i < count - 1; i++) { - /* increment bus address to next in array */ - desc_bus += sizeof(struct xdma_desc); - - /* singly-linked list uses bus addresses */ - desc_virt[i].next_lo = cpu_to_le32(PCI_DMA_L(desc_bus)); - desc_virt[i].next_hi = cpu_to_le32(PCI_DMA_H(desc_bus)); - desc_virt[i].bytes = cpu_to_le32(0); - - 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); - - return 0; -} - -/* xdma_desc_link() - Link two descriptors - * - * Link the first descriptor to a second descriptor, or terminate the first. - * - * @first first descriptor - * @second second descriptor, or NULL if first descriptor must be set as last. - * @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) -{ - /* - * remember reserved control in first descriptor, but zero - * extra_adjacent! - */ - u32 control = le32_to_cpu(first->control) & 0x00FFC0ffUL; - /* second descriptor given? */ - if (second) { - /* - * link last descriptor of 1st array to first descriptor of - * 2nd array - */ - first->next_lo = cpu_to_le32(PCI_DMA_L(second_bus)); - first->next_hi = cpu_to_le32(PCI_DMA_H(second_bus)); - WARN_ON(first->next_hi); - /* no second descriptor given */ - } else { - /* first descriptor is the last */ - first->next_lo = 0; - first->next_hi = 0; - } - /* merge magic, extra_adjacent and control field */ - control |= DESC_MAGIC; - - /* write bytes and next_num */ - first->control = cpu_to_le32(control); -} - -/* xdma_desc_adjacent -- Set how many descriptors are adjacent to this one */ -static void xdma_desc_adjacent(struct xdma_desc *desc, u32 next_adjacent) -{ - /* remember reserved and control bits */ - u32 control = le32_to_cpu(desc->control) & 0x0000f0ffUL; - /* merge adjacent and control field */ - 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 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); - - 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); - return 0; -} - -/* xdma_desc_done - recycle cache-coherent linked list of descriptors. - * - * @dev Pointer to pci_dev - * @number Number of descriptors to be allocated - * @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, int count) -{ - memset(desc_virt, 0, count * sizeof(struct xdma_desc)); -} - -/* xdma_desc() - Fill a descriptor with the transfer details - * - * @desc pointer to descriptor to be filled - * @addr root complex address - * @ep_addr end point address - * @len number of bytes, must be a (non-negative) multiple of 4. - * @dir, dma direction - * is the end point address. If zero, vice versa. - * - * 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) -{ - /* transfer length */ - desc->bytes = cpu_to_le32(len); - if (dir == DMA_TO_DEVICE) { - /* read from root complex memory (source address) */ - desc->src_addr_lo = cpu_to_le32(PCI_DMA_L(rc_bus_addr)); - desc->src_addr_hi = cpu_to_le32(PCI_DMA_H(rc_bus_addr)); - /* write to end point address (destination address) */ - desc->dst_addr_lo = cpu_to_le32(PCI_DMA_L(ep_addr)); - desc->dst_addr_hi = cpu_to_le32(PCI_DMA_H(ep_addr)); - } else { - /* read from end point address (source address) */ - desc->src_addr_lo = cpu_to_le32(PCI_DMA_L(ep_addr)); - desc->src_addr_hi = cpu_to_le32(PCI_DMA_H(ep_addr)); - /* write to root complex memory (destination address) */ - desc->dst_addr_lo = cpu_to_le32(PCI_DMA_L(rc_bus_addr)); - desc->dst_addr_hi = cpu_to_le32(PCI_DMA_H(rc_bus_addr)); - } -} - -/* - * should hold the engine->lock; - */ -static int transfer_abort(struct xdma_engine *engine, - struct xdma_transfer *transfer) -{ - struct xdma_transfer *head; - - 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); - if (head == transfer) - list_del(engine->transfer_list.next); - 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 - * - * @engine DMA engine doing the transfer - * @transfer DMA transfer submitted to the engine - * - * Takes and releases the engine spinlock - */ -static int transfer_queue(struct xdma_engine *engine, - struct xdma_transfer *transfer) -{ - int rv = 0; - struct xdma_transfer *transfer_started; - struct xdma_dev *xdev; - unsigned long flags; - - 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); - return -EBUSY; - } - - /* lock the engine state */ - spin_lock_irqsave(&engine->lock, flags); - - engine->prev_cpu = get_cpu(); - put_cpu(); - - /* engine is being shutdown; do not accept new transfers */ - if (engine->shutdown & ENGINE_SHUTDOWN_REQUEST) { - pr_info("engine %s offline, transfer 0x%p not queued.\n", - engine->name, transfer); - rv = -EBUSY; - goto shutdown; - } - - /* mark the transfer as submitted */ - transfer->state = TRANSFER_STATE_SUBMITTED; - /* add transfer to the tail of the engine transfer queue */ - list_add_tail(&transfer->entry, &engine->transfer_list); - - /* engine is idle? */ - if (!engine->running) { - /* start engine */ - 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 { - dbg_tfr("transfer=0x%p queued, with %s engine running.\n", - transfer, engine->name); - } - -shutdown: - /* unlock the engine state */ - dbg_tfr("engine->running = %d\n", engine->running); - spin_unlock_irqrestore(&engine->lock, flags); - return rv; -} - -static void engine_alignments(struct xdma_engine *engine) -{ - u32 w; - u32 align_bytes; - u32 granularity_bytes; - u32 address_bits; - - w = read_register(&engine->regs->alignments); - dbg_init("engine %p name %s alignments=0x%08x\n", engine, engine->name, - (int)w); - - align_bytes = (w & 0x00ff0000U) >> 16; - granularity_bytes = (w & 0x0000ff00U) >> 8; - address_bits = (w & 0x000000ffU); - - dbg_init("align_bytes = %d\n", align_bytes); - dbg_init("granularity_bytes = %d\n", granularity_bytes); - dbg_init("address_bits = %d\n", address_bits); - - if (w) { - engine->addr_align = align_bytes; - engine->len_granularity = granularity_bytes; - engine->addr_bits = address_bits; - } else { - /* Some default values if alignments are unspecified */ - engine->addr_align = 1; - engine->len_granularity = 1; - engine->addr_bits = 64; - } -} - -static void engine_free_resource(struct xdma_engine *engine) -{ - struct xdma_dev *xdev = engine->xdev; - - /* 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); - 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); - dma_free_coherent(&xdev->pdev->dev, - 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, - engine->desc_max * sizeof(struct xdma_result), - engine->cyclic_result, engine->cyclic_result_bus); - engine->cyclic_result = NULL; - } -} - -static int engine_destroy(struct xdma_dev *xdev, struct xdma_engine *engine) -{ - 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)); - - 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)); - 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; -} - -/** - *engine_cyclic_stop() - stop a cyclic transfer running on an SG DMA engine - * - *engine->lock must be taken - */ -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); - 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); - else - dbg_perf("Stopping cyclic transfer on %s\n", - 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); - } - } else { - dbg_sg("(engine=%p) found not running transfer.\n", engine); - } - return transfer; -} - -static int engine_writeback_setup(struct xdma_engine *engine) -{ - u32 w; - struct xdma_dev *xdev; - struct xdma_poll_wb *writeback; - - if (!engine) { - pr_err("dma engine NULL\n"); - return -EINVAL; - } - - xdev = engine->xdev; - if (!xdev) { - pr_err("Invalid xdev\n"); - return -EINVAL; - } - - /* - * 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); - 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)); - 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)); - - 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 - * queue; the SG DMA hardware, the software queue and interrupt handling. - * - * @dev Pointer to pci_dev - * @offset byte address offset in BAR[xdev->config_bar_idx] resource for the - * SG DMA * controller registers. - * @dir: DMA_TO/FROM_DEVICE - * @streaming Whether the engine is attached to AXI ST (rather than MM) - */ -static int engine_init_regs(struct xdma_engine *engine) -{ - u32 reg_value; - int rv = 0; - - write_register(XDMA_CTRL_NON_INCR_ADDR, &engine->regs->control_w1c, - (unsigned long)(&engine->regs->control_w1c) - - (unsigned long)(&engine->regs)); - - engine_alignments(engine); - - /* Configure error interrupts by default */ - reg_value = XDMA_CTRL_IE_DESC_ALIGN_MISMATCH; - reg_value |= XDMA_CTRL_IE_MAGIC_STOPPED; - reg_value |= XDMA_CTRL_IE_MAGIC_STOPPED; - reg_value |= XDMA_CTRL_IE_READ_ERROR; - reg_value |= XDMA_CTRL_IE_DESC_ERROR; - - /* if using polled mode, configure writeback address */ - if (poll_mode) { - rv = engine_writeback_setup(engine); - if (rv) { - dbg_init("%s descr writeback setup failed.\n", - 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; - } - - /* Apply engine configurations */ - write_register(reg_value, &engine->regs->interrupt_enable_mask, - (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_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)); - - write_register(reg_value, ®->credit_mode_enable_w1s, 0); - } - - return 0; - -fail_wb: - return rv; -} - -static int engine_alloc_resource(struct xdma_engine *engine) -{ - struct xdma_dev *xdev = engine->xdev; - - engine->desc = dma_alloc_coherent(&xdev->pdev->dev, - 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); - goto err_out; - } - - 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); - if (!engine->poll_mode_addr_virt) { - 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, - 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", - dev_name(&xdev->pdev->dev), engine->name); - goto err_out; - } - } - - return 0; - -err_out: - engine_free_resource(engine); - return -ENOMEM; -} - -static int engine_init(struct xdma_engine *engine, struct xdma_dev *xdev, - int offset, enum dma_data_direction dir, int channel) -{ - int rv; - u32 val; - - dbg_init("channel %d, offset 0x%x, dir %d.\n", channel, offset, dir); - - /* set magic */ - engine->magic = MAGIC_ENGINE; - - engine->channel = channel; - - /* engine interrupt request bit */ - engine->irq_bitmask = (1 << XDMA_ENG_IRQ_NUM) - 1; - engine->irq_bitmask <<= (xdev->engines_num * XDMA_ENG_IRQ_NUM); - engine->bypass_offset = xdev->engines_num * BYPASS_MODE_SPACING; - - /* parent */ - engine->xdev = 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; - val = read_register(&engine->regs->identifier); - if (val & 0x8000U) - engine->streaming = 1; - - /* remember SG DMA direction */ - engine->dir = dir; - 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); - - /* initialize the deferred work for transfer completion */ - INIT_WORK(&engine->work, engine_service_work); - - if (dir == DMA_TO_DEVICE) - xdev->mask_irq_h2c |= engine->irq_bitmask; - else - xdev->mask_irq_c2h |= engine->irq_bitmask; - xdev->engines_num++; - - rv = engine_alloc_resource(engine); - if (rv) - return rv; - - rv = engine_init_regs(engine); - 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, xfer->desc_num); - - if (xfer->last_in_request && (xfer->flags & XFER_FLAG_NEED_UNMAP)) { - struct sg_table *sgt = xfer->sgt; - - if (sgt->nents) { -#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 16, 0) - pci_unmap_sg(xdev->pdev, sgt->sgl, sgt->nents, - xfer->dir); -#else - dma_unmap_sg(&xdev->pdev->dev, sgt->sgl, sgt->nents, - xfer->dir); -#endif - sgt->nents = 0; - } - } -} - -static int transfer_build(struct xdma_engine *engine, - struct xdma_request_cb *req, struct xdma_transfer *xfer, - unsigned int desc_max) -{ - 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); - - /* fill in descriptor entry j with transfer details */ - xdma_desc_set(xfer->desc_virt + j, sdesc->addr, req->ep_addr, - 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; - return 0; -} - - -static int transfer_init(struct xdma_engine *engine, - struct xdma_request_cb *req, struct xdma_transfer *xfer) -{ - unsigned int desc_max = min_t(unsigned int, - req->sw_desc_cnt - req->sw_desc_idx, - 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; - - /* 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("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; - /* 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); - - 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; - - /* fill in adjacent numbers */ - 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; -} - -#ifdef __LIBXDMA_DEBUG__ -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); - - 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)); -} - -static void xdma_request_cb_dump(struct xdma_request_cb *req) -{ - int i; - - pr_info("request 0x%p, total %u, ep 0x%llx, sw_desc %u, sgt 0x%p.\n", - 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); -} -#endif - -static void xdma_request_free(struct xdma_request_cb *req) -{ - if (((unsigned long)req) >= VMALLOC_START && - ((unsigned long)req) < VMALLOC_END) - vfree(req); - else - kfree(req); -} - -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); - - req = kzalloc(size, GFP_KERNEL); - if (!req) { - req = vmalloc(size); - if (req) - memset(req, 0, size); - } - if (!req) { - pr_info("OOM, %u sw_desc, %u.\n", sdesc_nr, size); - return NULL; - } - - return req; -} - -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; - int max = sgt->nents; - int extra = 0; - int i, j = 0; - - 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; - } - - 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->ep_addr = ep_addr; - - 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); - - req->total_len += tlen; - while (tlen) { - req->sdesc[j].addr = addr; - if (tlen > desc_blen_max) { - req->sdesc[j].len = desc_blen_max; - addr += desc_blen_max; - tlen -= desc_blen_max; - } else { - req->sdesc[j].len = tlen; - tlen = 0; - } - j++; - } - } - - 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); -#endif - 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) { -#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 16, 0) - sgt->nents = pci_map_sg(xdev->pdev, sgt->sgl, sgt->orig_nents, - dir); -#else - sgt->nents = dma_map_sg(&xdev->pdev->dev, sgt->sgl, - sgt->orig_nents, dir); -#endif - 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) { -#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 16, 0) - pci_unmap_sg(xdev->pdev, sgt->sgl, sgt->orig_nents, dir); -#else - dma_unmap_sg(&xdev->pdev->dev, sgt->sgl, sgt->orig_nents, dir); -#endif - 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 xdma_dev *xdev = (struct xdma_dev *)dev_hndl; - struct xdma_engine *engine; - int rv = 0, tfer_idx = 0, i; - ssize_t done = 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_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_err("C2H channel %d >= %d.\n", channel, - xdev->c2h_channel_max); - return -EINVAL; - } - engine = &xdev->engine_c2h[channel]; - } - - 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) { -#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 16, 0) - nents = pci_map_sg(xdev->pdev, sg, sgt->orig_nents, dir); -#else - nents = dma_map_sg(&xdev->pdev->dev, sg, sgt->orig_nents, dir); -#endif - - 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; - } - - 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; - - /* build transfer */ - rv = transfer_init(engine, req, &req->tfer[0]); - if (rv < 0) { - mutex_unlock(&engine->desc_lock); - goto unmap_sgl; - } - xfer = &req->tfer[0]; - - 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, %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); -#endif - - 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); - - /* 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); - 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); - - /* 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) { -#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 16, 0) - pci_unmap_sg(xdev->pdev, sgt->sgl, sgt->orig_nents, dir); -#else - dma_unmap_sg(&xdev->pdev->dev, sgt->sgl, sgt->orig_nents, dir); -#endif - 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_completion(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_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) { -#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 16, 0) - pci_unmap_sg(xdev->pdev, sgt->sgl, sgt->orig_nents, dir); -#else - dma_unmap_sg(&xdev->pdev->dev, sgt->sgl, sgt->orig_nents, dir); -#endif - 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) { -#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 16, 0) - nents = pci_map_sg(xdev->pdev, sg, sgt->orig_nents, dir); -#else - nents = dma_map_sg(&xdev->pdev->dev, sg, sgt->orig_nents, dir); -#endif - 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) { -#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 16, 0) - pci_unmap_sg(xdev->pdev, sgt->sgl, - sgt->orig_nents, dir); -#else - dma_unmap_sg(&xdev->pdev->dev, sgt->sgl, - sgt->orig_nents, dir); -#endif - sgt->nents = 0; - } - - /* Transfer failed return BUSY */ - if (cb->io_done) - cb->io_done((unsigned long)cb, -EBUSY); - - goto rel_req; - } - - xfer->cb = cb; - - 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) { -#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 16, 0) - pci_unmap_sg(xdev->pdev, sgt->sgl, sgt->orig_nents, dir); -#else - dma_unmap_sg(&xdev->pdev->dev, sgt->sgl, sgt->orig_nents, dir); -#endif - 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); - 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 */ - transfer->desc_num = num_desc_in_a_loop; - - /* allocate descriptor list */ - if (!engine->desc) { - engine->desc = dma_alloc_coherent( - &xdev->pdev->dev, - num_desc_in_a_loop * sizeof(struct xdma_desc), - &engine->desc_bus, GFP_KERNEL); - 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); - free_desc = 1; - } - transfer->desc_virt = engine->desc; - transfer->desc_bus = engine->desc_bus; - - 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 = 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); - } - - /* stop engine and request interrupt on last descriptor */ - 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->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"); - //transfer_dump(transfer); - - dbg_perf("Queueing XDMA I/O %s request for performance measurement.\n", - 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; -} - -static struct xdma_dev *alloc_dev_instance(struct pci_dev *pdev) -{ - int i; - struct xdma_dev *xdev; - struct xdma_engine *engine; - - if (!pdev) { - pr_err("Invalid pdev\n"); - return NULL; - } - - /* allocate zeroed device book keeping structure */ - xdev = kzalloc(sizeof(struct xdma_dev), GFP_KERNEL); - if (!xdev) { - pr_info("OOM, xdma_dev.\n"); - return NULL; - } - spin_lock_init(&xdev->lock); - - xdev->magic = MAGIC_DEVICE; - xdev->config_bar_idx = -1; - xdev->user_bar_idx = -1; - xdev->bypass_bar_idx = -1; - xdev->irq_line = -1; - - /* create a driver to device reference */ - xdev->pdev = pdev; - dbg_init("xdev = 0x%p\n", xdev); - - /* Set up data user IRQ data structures */ - for (i = 0; i < 16; i++) { - xdev->user_irq[i].xdev = xdev; - spin_lock_init(&xdev->user_irq[i].events_lock); - init_waitqueue_head(&xdev->user_irq[i].events_wq); - xdev->user_irq[i].handler = NULL; - xdev->user_irq[i].user_idx = i; /* 0 based */ - } - - engine = xdev->engine_h2c; - for (i = 0; i < XDMA_CHANNEL_NUM_MAX; i++, engine++) { - spin_lock_init(&engine->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); - 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; -} - -static int request_regions(struct xdma_dev *xdev, struct pci_dev *pdev) -{ - int rv; - - 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); - /* could not request all regions? */ - if (rv) { - dbg_init("pci_request_regions() = %d, device in use?\n", rv); - /* assume device is in use so do not disable it later */ - xdev->regions_in_use = 1; - } else { - xdev->got_regions = 1; - } - - return rv; -} - -static int set_dma_mask(struct pci_dev *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? */ -#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 16, 0) - if (!pci_set_dma_mask(pdev, DMA_BIT_MASK(64))) -#else - if (!dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64))) -#endif - { - /* query for DMA transfer */ - /* @see Documentation/DMA-mapping.txt */ - dbg_init("set_dma_mask(64)\n"); -#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 16, 0) - pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(64)); -#endif - /* use 64-bit DMA */ - dbg_init("Using a 64-bit DMA mask.\n"); - } else -#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 16, 0) - if (!pci_set_dma_mask(pdev, DMA_BIT_MASK(32))) -#else - if (!dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32))) -#endif - { - dbg_init("Could not set 64-bit DMA mask.\n"); -#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 16, 0) - pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32)); -#endif - /* use 32-bit DMA */ - dbg_init("Using a 32-bit DMA mask.\n"); - } else { - dbg_init("No suitable DMA possible.\n"); - return -EINVAL; - } - - return 0; -} - -static int get_engine_channel_id(struct engine_regs *regs) -{ - int value; - - if (!regs) { - pr_err("Invalid engine registers\n"); - return -EINVAL; - } - - value = read_register(®s->identifier); - - return (value & 0x00000f00U) >> 8; -} - -static int get_engine_id(struct engine_regs *regs) -{ - int value; - - if (!regs) { - pr_err("Invalid engine registers\n"); - return -EINVAL; - } - - value = read_register(®s->identifier); - return (value & 0xffff0000U) >> 16; -} - -static void remove_engines(struct xdma_dev *xdev) -{ - struct xdma_engine *engine; - int i; - int rv; - - 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); - 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); - } - } - - for (i = 0; i < xdev->c2h_channel_max; i++) { - engine = &xdev->engine_c2h[i]; - if (engine->magic == MAGIC_ENGINE) { - dbg_sg("Remove %s, %d", engine->name, i); - 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) -{ - struct engine_regs *regs; - int offset = channel * CHANNEL_SPACING; - u32 engine_id; - u32 engine_id_expected; - u32 channel_id; - struct xdma_engine *engine; - int rv; - - /* register offset for the engine */ - /* read channels at 0x0000, write channels at 0x1000, - * channels at 0x100 interval - */ - if (dir == DMA_TO_DEVICE) { - engine_id_expected = XDMA_ID_H2C; - engine = &xdev->engine_h2c[channel]; - } else { - offset += H2C_CHANNEL_OFFSET; - engine_id_expected = XDMA_ID_C2H; - engine = &xdev->engine_c2h[channel]; - } - - regs = xdev->bar[xdev->config_bar_idx] + offset; - engine_id = get_engine_id(regs); - 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); - 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); - - /* 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); - return rv; - } - - return 0; -} - -static int probe_engines(struct xdma_dev *xdev) -{ - int i; - int rv = 0; - - if (!xdev) { - pr_err("Invalid xdev\n"); - return -EINVAL; - } - - /* iterate over channels */ - for (i = 0; i < xdev->h2c_channel_max; i++) { - rv = probe_for_engine(xdev, DMA_TO_DEVICE, i); - if (rv) - break; - } - xdev->h2c_channel_max = i; - - for (i = 0; i < xdev->c2h_channel_max; i++) { - rv = probe_for_engine(xdev, DMA_FROM_DEVICE, i); - if (rv) - break; - } - xdev->c2h_channel_max = i; - - return 0; -} - -#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, cap); -} -#else -static void pci_enable_capability(struct pci_dev *pdev, int cap) -{ - u16 v; - int pos; - - 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); - } -} -#endif - -void *xdma_device_open(const char *mname, struct pci_dev *pdev, int *user_max, - int *h2c_channel_max, int *c2h_channel_max) -{ - struct xdma_dev *xdev = NULL; - int rv = 0; - - pr_info("%s device %s, 0x%p.\n", mname, dev_name(&pdev->dev), pdev); - - /* allocate zeroed device book keeping structure */ - xdev = alloc_dev_instance(pdev); - if (!xdev) - return NULL; - xdev->mod_name = mname; - xdev->user_max = *user_max; - xdev->h2c_channel_max = *h2c_channel_max; - xdev->c2h_channel_max = *c2h_channel_max; - - xdma_device_flag_set(xdev, XDEV_FLAG_OFFLINE); - - 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; - if (xdev->c2h_channel_max == 0 || - 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); - goto err_enable; - } - - /* keep INTx enabled */ - pci_check_intr_pend(pdev); - - /* enable relaxed ordering */ - pci_enable_capability(pdev, PCI_EXP_DEVCTL_RELAX_EN); - - /* enable extended tag */ - pci_enable_capability(pdev, PCI_EXP_DEVCTL_EXT_TAG); - - /* force MRRS to be 512 */ - rv = pcie_set_readrq(pdev, 512); - if (rv) - pr_info("device %s, error set PCI_EXP_DEVCTL_READRQ: %d.\n", - dev_name(&pdev->dev), rv); - - /* enable bus master capability */ - pci_set_master(pdev); - - rv = request_regions(xdev, pdev); - if (rv) - goto err_regions; - - rv = map_bars(xdev, pdev); - if (rv) - goto err_map; - - rv = set_dma_mask(pdev); - if (rv) - goto err_mask; - - check_nonzero_interrupt_status(xdev); - /* explicitely zero all interrupt enable masks */ - channel_interrupts_disable(xdev, ~0); - user_interrupts_disable(xdev, ~0); - read_interrupts(xdev); - - rv = probe_engines(xdev); - if (rv) - goto err_mask; - - rv = enable_msi_msix(xdev, pdev); - if (rv < 0) - goto err_engines; - - rv = irq_setup(xdev, pdev); - if (rv < 0) - goto err_msix; - - if (!poll_mode) - channel_interrupts_enable(xdev, ~0); - - /* Flush writes */ - read_interrupts(xdev); - - *user_max = xdev->user_max; - *h2c_channel_max = xdev->h2c_channel_max; - *c2h_channel_max = xdev->c2h_channel_max; - - xdma_device_flag_clear(xdev, XDEV_FLAG_OFFLINE); - return (void *)xdev; - -err_msix: - disable_msi_msix(xdev, pdev); -err_engines: - remove_engines(xdev); -err_mask: - unmap_bars(xdev, pdev); -err_map: - if (xdev->got_regions) - pci_release_regions(pdev); -err_regions: - if (!xdev->regions_in_use) - pci_disable_device(pdev); -err_enable: - xdev_list_remove(xdev); -free_xdev: - kfree(xdev); - return NULL; -} - -void xdma_device_close(struct pci_dev *pdev, void *dev_hndl) -{ - struct xdma_dev *xdev = (struct xdma_dev *)dev_hndl; - - dbg_init("pdev 0x%p, xdev 0x%p.\n", pdev, dev_hndl); - - if (!dev_hndl) - return; - - 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); - if (xdev->pdev != pdev) { - dbg_sg("pci_dev(0x%lx) != pdev(0x%lx)\n", - (unsigned long)xdev->pdev, (unsigned long)pdev); - } - - channel_interrupts_disable(xdev, ~0); - user_interrupts_disable(xdev, ~0); - read_interrupts(xdev); - - irq_teardown(xdev); - disable_msi_msix(xdev, pdev); - - remove_engines(xdev); - unmap_bars(xdev, pdev); - - if (xdev->got_regions) { - dbg_init("pci_release_regions 0x%p.\n", pdev); - pci_release_regions(pdev); - } - - if (!xdev->regions_in_use) { - dbg_init("pci_disable_device 0x%p.\n", pdev); - pci_disable_device(pdev); - } - - xdev_list_remove(xdev); - - kfree(xdev); -} - -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; - - if (debug_check_dev_hndl(__func__, pdev, dev_hndl) < 0) - return; - - 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++) { - unsigned long flags; - - engine = &xdev->engine_h2c[i]; - - if (engine->magic == MAGIC_ENGINE) { - spin_lock_irqsave(&engine->lock, flags); - engine->shutdown |= ENGINE_SHUTDOWN_REQUEST; - - 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++) { - unsigned long flags; - - engine = &xdev->engine_c2h[i]; - if (engine->magic == MAGIC_ENGINE) { - spin_lock_irqsave(&engine->lock, flags); - engine->shutdown |= ENGINE_SHUTDOWN_REQUEST; - - rv = xdma_engine_stop(engine); - if (rv < 0) - pr_err("Failed to stop engine\n"); - spin_unlock_irqrestore(&engine->lock, flags); - } - } - - /* turn off interrupts */ - channel_interrupts_disable(xdev, ~0); - user_interrupts_disable(xdev, ~0); - read_interrupts(xdev); - irq_teardown(xdev); - - pr_info("xdev 0x%p, done.\n", xdev); -} - -void xdma_device_online(struct pci_dev *pdev, void *dev_hndl) -{ - struct xdma_dev *xdev = (struct xdma_dev *)dev_hndl; - struct xdma_engine *engine; - unsigned long flags; - int i; - - if (!dev_hndl) - return; - - if (debug_check_dev_hndl(__func__, pdev, dev_hndl) < 0) - return; - - pr_info("pdev 0x%p, xdev 0x%p.\n", pdev, xdev); - - for (i = 0; i < xdev->h2c_channel_max; i++) { - engine = &xdev->engine_h2c[i]; - if (engine->magic == MAGIC_ENGINE) { - engine_init_regs(engine); - spin_lock_irqsave(&engine->lock, flags); - engine->shutdown &= ~ENGINE_SHUTDOWN_REQUEST; - spin_unlock_irqrestore(&engine->lock, flags); - } - } - - for (i = 0; i < xdev->c2h_channel_max; i++) { - engine = &xdev->engine_c2h[i]; - if (engine->magic == MAGIC_ENGINE) { - engine_init_regs(engine); - spin_lock_irqsave(&engine->lock, flags); - engine->shutdown &= ~ENGINE_SHUTDOWN_REQUEST; - spin_unlock_irqrestore(&engine->lock, flags); - } - } - - /* re-write the interrupt table */ - if (!poll_mode) { - irq_setup(xdev, pdev); - - channel_interrupts_enable(xdev, ~0); - 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); -} - -int xdma_device_restart(struct pci_dev *pdev, void *dev_hndl) -{ - struct xdma_dev *xdev = (struct xdma_dev *)dev_hndl; - - if (!dev_hndl) - return -EINVAL; - - if (debug_check_dev_hndl(__func__, pdev, dev_hndl) < 0) - return -EINVAL; - - pr_info("NOT implemented, 0x%p.\n", xdev); - return -EINVAL; -} - -int xdma_user_isr_register(void *dev_hndl, unsigned int mask, - irq_handler_t handler, void *dev) -{ - struct xdma_dev *xdev = (struct xdma_dev *)dev_hndl; - int i; - - if (!dev_hndl) - return -EINVAL; - - if (debug_check_dev_hndl(__func__, xdev->pdev, dev_hndl) < 0) - return -EINVAL; - - for (i = 0; i < xdev->user_max && mask; i++) { - unsigned int bit = (1 << i); - - if ((bit & mask) == 0) - continue; - - mask &= ~bit; - xdev->user_irq[i].handler = handler; - xdev->user_irq[i].dev = dev; - } - - return 0; -} - -int xdma_user_isr_enable(void *dev_hndl, unsigned int mask) -{ - struct xdma_dev *xdev = (struct xdma_dev *)dev_hndl; - - if (!dev_hndl) - return -EINVAL; - - if (debug_check_dev_hndl(__func__, xdev->pdev, dev_hndl) < 0) - return -EINVAL; - - xdev->mask_irq_user |= mask; - /* enable user interrupts */ - user_interrupts_enable(xdev, mask); - read_interrupts(xdev); - - return 0; -} - -int xdma_user_isr_disable(void *dev_hndl, unsigned int mask) -{ - struct xdma_dev *xdev = (struct xdma_dev *)dev_hndl; - - if (!dev_hndl) - return -EINVAL; - - 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; -} - -int engine_addrmode_set(struct xdma_engine *engine, unsigned long arg) -{ - int rv; - 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) { - engine->non_incr_addr = !!dst; - if (engine->non_incr_addr) - write_register( - w, &engine->regs->control_w1s, - (unsigned long)(&engine->regs->control_w1s) - - (unsigned long)(&engine->regs)); - else - 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/xdma/linux-kernel/xdma/libxdma.h b/xdma/linux-kernel/xdma/libxdma.h deleted file mode 100755 index f26f3c2..0000000 --- a/xdma/linux-kernel/xdma/libxdma.h +++ /dev/null @@ -1,699 +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 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 -#define XDMA_LIB_H - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* 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) - -/* maximum amount of register space to map */ -#define XDMA_BAR_SIZE (0x8000UL) - -/* Use this definition to poll several times between calls to schedule */ -#define NUM_POLLS_PER_SCHED 100 - -#define XDMA_CHANNEL_NUM_MAX (4) -/* - * interrupts per engine, rad2_vul.sv:237 - * .REG_IRQ_OUT (reg_irq_from_ch[(channel*2) +: 2]), - */ -#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_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_MAX ((1 << (XDMA_DESC_BLEN_BITS)) - 1) - -/* bits of the SG DMA control register */ -#define XDMA_CTRL_RUN_STOP (1UL << 0) -#define XDMA_CTRL_IE_DESC_STOPPED (1UL << 1) -#define XDMA_CTRL_IE_DESC_COMPLETED (1UL << 2) -#define XDMA_CTRL_IE_DESC_ALIGN_MISMATCH (1UL << 3) -#define XDMA_CTRL_IE_MAGIC_STOPPED (1UL << 4) -#define XDMA_CTRL_IE_IDLE_STOPPED (1UL << 6) -#define XDMA_CTRL_IE_READ_ERROR (0x1FUL << 9) -#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) -#define XDMA_STAT_DESC_STOPPED (1UL << 1) -#define XDMA_STAT_DESC_COMPLETED (1UL << 2) -#define XDMA_STAT_ALIGN_MISMATCH (1UL << 3) -#define XDMA_STAT_MAGIC_STOPPED (1UL << 4) -#define XDMA_STAT_INVALID_LEN (1UL << 5) -#define XDMA_STAT_IDLE_STOPPED (1UL << 6) - -#define XDMA_STAT_COMMON_ERR_MASK \ - (XDMA_STAT_ALIGN_MISMATCH | XDMA_STAT_MAGIC_STOPPED | \ - XDMA_STAT_INVALID_LEN) - -/* desc_error, C2H & H2C */ -#define XDMA_STAT_DESC_UNSUPP_REQ (1UL << 19) -#define XDMA_STAT_DESC_COMPL_ABORT (1UL << 20) -#define XDMA_STAT_DESC_PARITY_ERR (1UL << 21) -#define XDMA_STAT_DESC_HEADER_EP (1UL << 22) -#define XDMA_STAT_DESC_UNEXP_COMPL (1UL << 23) - -#define XDMA_STAT_DESC_ERR_MASK \ - (XDMA_STAT_DESC_UNSUPP_REQ | XDMA_STAT_DESC_COMPL_ABORT | \ - XDMA_STAT_DESC_PARITY_ERR | XDMA_STAT_DESC_HEADER_EP | \ - XDMA_STAT_DESC_UNEXP_COMPL) - -/* read error: H2C */ -#define XDMA_STAT_H2C_R_UNSUPP_REQ (1UL << 9) -#define XDMA_STAT_H2C_R_COMPL_ABORT (1UL << 10) -#define XDMA_STAT_H2C_R_PARITY_ERR (1UL << 11) -#define XDMA_STAT_H2C_R_HEADER_EP (1UL << 12) -#define XDMA_STAT_H2C_R_UNEXP_COMPL (1UL << 13) - -#define XDMA_STAT_H2C_R_ERR_MASK \ - (XDMA_STAT_H2C_R_UNSUPP_REQ | XDMA_STAT_H2C_R_COMPL_ABORT | \ - XDMA_STAT_H2C_R_PARITY_ERR | XDMA_STAT_H2C_R_HEADER_EP | \ - XDMA_STAT_H2C_R_UNEXP_COMPL) - -/* write error, H2C only */ -#define XDMA_STAT_H2C_W_DECODE_ERR (1UL << 14) -#define XDMA_STAT_H2C_W_SLAVE_ERR (1UL << 15) - -#define XDMA_STAT_H2C_W_ERR_MASK \ - (XDMA_STAT_H2C_W_DECODE_ERR | XDMA_STAT_H2C_W_SLAVE_ERR) - -/* read error: C2H */ -#define XDMA_STAT_C2H_R_DECODE_ERR (1UL << 9) -#define XDMA_STAT_C2H_R_SLAVE_ERR (1UL << 10) - -#define XDMA_STAT_C2H_R_ERR_MASK \ - (XDMA_STAT_C2H_R_DECODE_ERR | XDMA_STAT_C2H_R_SLAVE_ERR) - -/* 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) - -#define XDMA_STAT_C2H_ERR_MASK \ - (XDMA_STAT_COMMON_ERR_MASK | XDMA_STAT_DESC_ERR_MASK | \ - XDMA_STAT_C2H_R_ERR_MASK) - -/* bits of the SGDMA descriptor control field */ -#define XDMA_DESC_STOPPED (1UL << 0) -#define XDMA_DESC_COMPLETED (1UL << 1) -#define XDMA_DESC_EOP (1UL << 4) - -#define XDMA_PERF_RUN (1UL << 0) -#define XDMA_PERF_CLEAR (1UL << 1) -#define XDMA_PERF_AUTO (1UL << 2) - -#define MAGIC_ENGINE 0xEEEEEEEEUL -#define MAGIC_DEVICE 0xDDDDDDDDUL - -/* upper 16-bits of engine identifier register */ -#define XDMA_ID_H2C 0x1fc0U -#define XDMA_ID_C2H 0x1fc1U - -/* for C2H AXI-ST mode */ -#define CYCLIC_RX_PAGES_MAX 256 - -#define LS_BYTE_MASK 0x000000FFUL - -#define BLOCK_ID_MASK 0xFFF00000 -#define BLOCK_ID_HEAD 0x1FC00000 - -#define IRQ_BLOCK_ID 0x1fc20000UL -#define CONFIG_BLOCK_ID 0x1fc30000UL - -#define WB_COUNT_MASK 0x00ffffffUL -#define WB_ERR_MASK (1UL << 31) -#define POLL_TIMEOUT_SECONDS 10 - -#define MAX_USER_IRQ 16 - -#define MAX_DESC_BUS_ADDR (0xffffffffULL) - -#define DESC_MAGIC 0xAD4B0000UL - -#define C2H_WB 0x52B4UL - -#define MAX_NUM_ENGINES (XDMA_CHANNEL_NUM_MAX * 2) -#define H2C_CHANNEL_OFFSET 0x1000 -#define SGDMA_OFFSET_FROM_CHANNEL 0x4000 -#define CHANNEL_SPACING 0x100 -#define TARGET_SPACING 0x1000 - -#define BYPASS_MODE_SPACING 0x0100 - -/* obtain the 32 most significant (high) bits of a 32-bit or 64-bit address */ -#define PCI_DMA_H(addr) ((addr >> 16) >> 16) -/* obtain the 32 least significant (low) bits of a 32-bit or 64-bit address */ -#define PCI_DMA_L(addr) (addr & 0xffffffffUL) - -#ifndef VM_RESERVED - #define VMEM_FLAGS (VM_IO | VM_DONTEXPAND | VM_DONTDUMP) -#else - #define VMEM_FLAGS (VM_IO | VM_RESERVED) -#endif - -#ifdef __LIBXDMA_DEBUG__ -#define dbg_io pr_err -#define dbg_fops pr_err -#define dbg_perf pr_err -#define dbg_sg pr_err -#define dbg_tfr pr_err -#define dbg_irq pr_err -#define dbg_init pr_err -#define dbg_desc pr_err -#else -/* disable debugging */ -#define dbg_io(...) -#define dbg_fops(...) -#define dbg_perf(...) -#define dbg_sg(...) -#define dbg_tfr(...) -#define dbg_irq(...) -#define dbg_init(...) -#define dbg_desc(...) -#endif - -/* SECTION: Enum definitions */ -enum transfer_state { - TRANSFER_STATE_NEW = 0, - TRANSFER_STATE_SUBMITTED, - TRANSFER_STATE_COMPLETED, - TRANSFER_STATE_FAILED, - TRANSFER_STATE_ABORTED -}; - -enum shutdown_state { - ENGINE_SHUTDOWN_NONE = 0, /* No shutdown in progress */ - ENGINE_SHUTDOWN_REQUEST = 1, /* engine requested to shutdown */ - ENGINE_SHUTDOWN_IDLE = 2 /* engine has shutdown and is idle */ -}; - -enum dev_capabilities { - CAP_64BIT_DMA = 2, - CAP_64BIT_DESC = 4, - CAP_ENGINE_WRITE = 8, - CAP_ENGINE_READ = 16 -}; - -/* 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]; - u32 msi_enable; -}; - -/** - * SG DMA Controller status and control registers - * - * These registers make the control interface for DMA transfers. - * - * It sits in End Point (FPGA) memory BAR[0] for 32-bit or BAR[0:1] for 64-bit. - * It references the first descriptor which exists in Root Complex (PC) memory. - * - * @note The registers must be accessed using 32-bit (PCI DWORD) read/writes, - * and their values are in little-endian byte ordering. - */ -struct engine_regs { - u32 identifier; - u32 control; - u32 control_w1s; - u32 control_w1c; - u32 reserved_1[12]; /* padding */ - - u32 status; - u32 status_rc; - u32 completed_desc_count; - u32 alignments; - u32 reserved_2[14]; /* padding */ - - u32 poll_mode_wb_lo; - u32 poll_mode_wb_hi; - u32 interrupt_enable_mask; - u32 interrupt_enable_mask_w1s; - u32 interrupt_enable_mask_w1c; - u32 reserved_3[9]; /* padding */ - - u32 perf_ctrl; - u32 perf_cyc_lo; - u32 perf_cyc_hi; - u32 perf_dat_lo; - u32 perf_dat_hi; - u32 perf_pnd_lo; - u32 perf_pnd_hi; -} __packed; - -struct engine_sgdma_regs { - u32 identifier; - u32 reserved_1[31]; /* padding */ - - /* bus address to first descriptor in Root Complex Memory */ - u32 first_desc_lo; - u32 first_desc_hi; - /* number of adjacent descriptors at first_desc */ - u32 first_desc_adjacent; - u32 credits; -} __packed; - -struct msix_vec_table_entry { - u32 msi_vec_addr_lo; - u32 msi_vec_addr_hi; - u32 msi_vec_data_lo; - u32 msi_vec_data_hi; -} __packed; - -struct msix_vec_table { - struct msix_vec_table_entry entry_list[32]; -} __packed; - -struct interrupt_regs { - u32 identifier; - u32 user_int_enable; - u32 user_int_enable_w1s; - u32 user_int_enable_w1c; - u32 channel_int_enable; - u32 channel_int_enable_w1s; - u32 channel_int_enable_w1c; - u32 reserved_1[9]; /* padding */ - - u32 user_int_request; - u32 channel_int_request; - u32 user_int_pending; - u32 channel_int_pending; - u32 reserved_2[12]; /* padding */ - - u32 user_msi_vector[8]; - u32 channel_msi_vector[8]; -} __packed; - -struct sgdma_common_regs { - u32 padding[8]; - u32 credit_mode_enable; - u32 credit_mode_enable_w1s; - u32 credit_mode_enable_w1c; -} __packed; - - -/* Structure for polled mode descriptor writeback */ -struct xdma_poll_wb { - u32 completed_desc_count; - u32 reserved_1[7]; -} __packed; - - -/** - * Descriptor for a single contiguous memory block transfer. - * - * Multiple descriptors are linked by means of the next pointer. An additional - * extra adjacent number gives the amount of extra contiguous descriptors. - * - * The descriptors are in root complex memory, and the bytes in the 32-bit - * words must be in little-endian byte ordering. - */ -struct xdma_desc { - u32 control; - u32 bytes; /* transfer length in bytes */ - u32 src_addr_lo; /* source address (low 32-bit) */ - u32 src_addr_hi; /* source address (high 32-bit) */ - u32 dst_addr_lo; /* destination address (low 32-bit) */ - u32 dst_addr_hi; /* destination address (high 32-bit) */ - /* - * next descriptor in the single-linked list of descriptors; - * this is the PCIe (bus) address of the next descriptor in the - * root complex memory - */ - u32 next_lo; /* next desc address (low 32-bit) */ - u32 next_hi; /* next desc address (high 32-bit) */ -} __packed; - -/* 32 bytes (four 32-bit words) or 64 bytes (eight 32-bit words) */ -struct xdma_result { - u32 status; - u32 length; - u32 reserved_1[6]; /* padding */ -} __packed; - -struct sw_desc { - dma_addr_t addr; - unsigned int len; -}; - -/* 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; - 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; - u64 ep_addr; - unsigned int aperture; - - unsigned int total_len; - unsigned int offset; - - struct scatterlist *sg; - unsigned int sg_idx; - unsigned int sg_offset; - - /* 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; -#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 8, 0) - struct sw_desc sdesc[]; -#else - struct sw_desc sdesc[0]; -#endif -}; - -struct xdma_engine { - unsigned long magic; /* structure ID for sanity checks */ - struct xdma_dev *xdev; /* parent device */ - char name[16]; /* name of this engine */ - int version; /* version of this engine */ - - /* HW register address offsets */ - struct engine_regs *regs; /* Control reg BAR offset */ - struct engine_sgdma_regs *sgdma_regs; /* SGDAM reg BAR offset */ - u32 bypass_offset; /* Bypass mode BAR offset */ - - /* Engine state, configuration and flags */ - enum shutdown_state shutdown; /* engine shutdown mode */ - enum dma_data_direction dir; - 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 */ - /* 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 */ - - /* Members applicable to AXI-ST C2H (cyclic) transfers */ - struct xdma_result *cyclic_result; - dma_addr_t cyclic_result_bus; /* bus addr for transfer */ - 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 */ - - 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 { - struct xdma_dev *xdev; /* parent device */ - u8 user_idx; /* 0 ~ 15 */ - u8 events_irq; /* accumulated IRQs */ - spinlock_t events_lock; /* lock to safely update events_irq */ - wait_queue_head_t events_wq; /* wait queue to sync waiting threads */ - irq_handler_t handler; - - 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; - - unsigned long magic; /* structure ID for sanity checks */ - struct pci_dev *pdev; /* pci device struct from probe() */ - int idx; /* dev index */ - - const char *mod_name; /* name of module owning the dev */ - - spinlock_t lock; /* protects concurrent access */ - unsigned int flags; - - /* PCIe BAR management */ - 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 */ - int regions_in_use; /* flag if dev was in use during probe() */ - int got_regions; /* flag if probe() obtained the regions */ - - int user_max; - int c2h_channel_max; - int h2c_channel_max; - - /* Interrupt management */ - int irq_count; /* interrupt counter */ - 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 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 */ - unsigned int mask_irq_user; - - /* XDMA engine management */ - int engines_num; /* Total engine count */ - u32 mask_irq_h2c; - u32 mask_irq_c2h; - struct xdma_engine engine_h2c[XDMA_CHANNEL_NUM_MAX]; - struct xdma_engine engine_c2h[XDMA_CHANNEL_NUM_MAX]; - - /* SD_Accel specific */ - enum dev_capabilities capabilities; - u64 feature_id; -}; - -static inline int xdma_device_flag_check(struct xdma_dev *xdev, unsigned int f) -{ - unsigned long flags; - - spin_lock_irqsave(&xdev->lock, flags); - if (xdev->flags & f) { - spin_unlock_irqrestore(&xdev->lock, flags); - return 1; - } - spin_unlock_irqrestore(&xdev->lock, flags); - return 0; -} - -static inline int xdma_device_flag_test_n_set(struct xdma_dev *xdev, - unsigned int f) -{ - unsigned long flags; - int rv = 0; - - spin_lock_irqsave(&xdev->lock, flags); - if (xdev->flags & f) { - spin_unlock_irqrestore(&xdev->lock, flags); - rv = 1; - } else - xdev->flags |= f; - spin_unlock_irqrestore(&xdev->lock, flags); - return rv; -} - -static inline void xdma_device_flag_set(struct xdma_dev *xdev, unsigned int f) -{ - unsigned long flags; - - spin_lock_irqsave(&xdev->lock, flags); - xdev->flags |= f; - spin_unlock_irqrestore(&xdev->lock, flags); -} - -static inline void xdma_device_flag_clear(struct xdma_dev *xdev, unsigned int f) -{ - unsigned long flags; - - spin_lock_irqsave(&xdev->lock, flags); - xdev->flags &= ~f; - spin_unlock_irqrestore(&xdev->lock, flags); -} - -void write_register(u32 value, void *iomem); -u32 read_register(void *iomem); - -struct xdma_dev *xdev_find_by_pdev(struct pci_dev *pdev); - -void xdma_device_offline(struct pci_dev *pdev, void *dev_handle); -void xdma_device_online(struct pci_dev *pdev, void *dev_handle); - -int xdma_performance_submit(struct xdma_dev *xdev, struct xdma_engine *engine); -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 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/xdma/linux-kernel/xdma/libxdma.o b/xdma/linux-kernel/xdma/libxdma.o deleted file mode 100644 index 211ca9d..0000000 Binary files a/xdma/linux-kernel/xdma/libxdma.o and /dev/null differ diff --git a/xdma/linux-kernel/xdma/modules.order b/xdma/linux-kernel/xdma/modules.order deleted file mode 100644 index 5f1cc27..0000000 --- a/xdma/linux-kernel/xdma/modules.order +++ /dev/null @@ -1 +0,0 @@ -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma.o diff --git a/xdma/linux-kernel/xdma/version.h b/xdma/linux-kernel/xdma/version.h deleted file mode 100644 index 941fc79..0000000 --- a/xdma/linux-kernel/xdma/version.h +++ /dev/null @@ -1,35 +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 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/xdma/linux-kernel/xdma/xdma.ko b/xdma/linux-kernel/xdma/xdma.ko deleted file mode 100644 index db3328a..0000000 Binary files a/xdma/linux-kernel/xdma/xdma.ko and /dev/null differ diff --git a/xdma/linux-kernel/xdma/xdma.mod b/xdma/linux-kernel/xdma/xdma.mod deleted file mode 100644 index 898fdf8..0000000 --- a/xdma/linux-kernel/xdma/xdma.mod +++ /dev/null @@ -1,9 +0,0 @@ -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/libxdma.o -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_cdev.o -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_ctrl.o -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_events.o -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_sgdma.o -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_xvc.o -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/cdev_bypass.o -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_mod.o -/home/colin/develop/xc7k480t/xdma/linux-kernel/xdma/xdma_thread.o diff --git a/xdma/linux-kernel/xdma/xdma.mod.c b/xdma/linux-kernel/xdma/xdma.mod.c deleted file mode 100644 index 05dfe77..0000000 --- a/xdma/linux-kernel/xdma/xdma.mod.c +++ /dev/null @@ -1,229 +0,0 @@ -#include -#define INCLUDE_VERMAGIC -#include -#include -#include -#include -#include - -#ifdef CONFIG_UNWINDER_ORC -#include -ORC_HEADER; -#endif - -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") = { - { 0x587f22d7, "devmap_managed_key" }, - { 0x521dc434, "pci_save_state" }, - { 0xc1514a3b, "free_irq" }, - { 0xc80ab559, "swake_up_one" }, - { 0xc54884b6, "get_user_pages_fast" }, - { 0xa78af5f3, "ioread32" }, - { 0xe3ec2f2b, "alloc_chrdev_region" }, - { 0x88db9f48, "__check_object_size" }, - { 0x89973ae6, "param_ops_uint" }, - { 0x13c49cc2, "_copy_from_user" }, - { 0x64b40666, "pci_enable_device" }, - { 0x4a453f53, "iowrite32" }, - { 0x7f02188f, "__msecs_to_jiffies" }, - { 0x736f7fc9, "pci_enable_device_mem" }, - { 0xb29a5edc, "pci_iomap" }, - { 0xac4208d, "pci_alloc_irq_vectors" }, - { 0x656e4a6e, "snprintf" }, - { 0xc5b6f236, "queue_work_on" }, - { 0xc8c85086, "sg_free_table" }, - { 0x48d88a2c, "__SCT__preempt_schedule" }, - { 0x608741b5, "__init_swait_queue_head" }, - { 0x92540fbf, "finish_wait" }, - { 0x226c7554, "class_destroy" }, - { 0xc2e05886, "__pci_register_driver" }, - { 0xb8d1db87, "pci_disable_msi" }, - { 0x6df1aaf1, "kernel_sigaction" }, - { 0xb832d8db, "pci_request_regions" }, - { 0xe82c4c9f, "remap_pfn_range" }, - { 0x37a0cba, "kfree" }, - { 0xe8efec2e, "pcpu_hot" }, - { 0xc3f9cced, "__put_devmap_managed_page_refs" }, - { 0x8c26d495, "prepare_to_wait_event" }, - { 0xb3f7646e, "kthread_should_stop" }, - { 0xe2964344, "__wake_up" }, - { 0x83a6332b, "pci_irq_vector" }, - { 0x3e9bf5b0, "kmem_cache_create" }, - { 0x34db050b, "_raw_spin_lock_irqsave" }, - { 0xb19a5453, "__per_cpu_offset" }, - { 0xba8fbd64, "_raw_spin_lock" }, - { 0xd19158ca, "pci_unregister_driver" }, - { 0xcbd4898c, "fortify_panic" }, - { 0xbdfb6dbb, "__fentry__" }, - { 0x497449f1, "wake_up_process" }, - { 0x65487097, "__x86_indirect_thunk_rax" }, - { 0x122c3a7e, "_printk" }, - { 0x8bb21f8, "prepare_to_swait_event" }, - { 0x1d24c881, "___ratelimit" }, - { 0x8ddd8aad, "schedule_timeout" }, - { 0x1000e51, "schedule" }, - { 0x9cb986f2, "vmalloc_base" }, - { 0xf0fdf6cb, "__stack_chk_fail" }, - { 0xb2fd5ceb, "__put_user_4" }, - { 0x618911fc, "numa_node" }, - { 0x482d32e6, "kmem_cache_alloc" }, - { 0x87a21cb3, "__ubsan_handle_out_of_bounds" }, - { 0xb3f985a8, "sg_alloc_table" }, - { 0x1289fbda, "cdev_add" }, - { 0xbcb36fe4, "hugetlb_optimize_vmemmap_key" }, - { 0x7810d9b7, "pci_find_capability" }, - { 0xfe487975, "init_wait_entry" }, - { 0x98378a1d, "cc_mkdec" }, - { 0x4ca00502, "pci_enable_msi" }, - { 0x57bc19d2, "down_write" }, - { 0xce807a25, "up_write" }, - { 0x6091797f, "synchronize_rcu" }, - { 0x92d5838e, "request_threaded_irq" }, - { 0x397ec880, "device_create" }, - { 0x133353bd, "class_create" }, - { 0x4c03a563, "random_kmalloc_seed" }, - { 0x9d8e61c6, "finish_swait" }, - { 0x4dfa8d4b, "mutex_lock" }, - { 0x8b606a2, "kmem_cache_free" }, - { 0x9f38c153, "dma_alloc_attrs" }, - { 0x1b4dbcbc, "pci_read_config_word" }, - { 0x16986a45, "pci_aer_clear_nonfatal_status" }, - { 0x53a1e8d9, "_find_next_bit" }, - { 0x5a5a2271, "__cpu_online_mask" }, - { 0xd071fc87, "kthread_stop" }, - { 0xfef216eb, "_raw_spin_trylock" }, - { 0xcefb0c9f, "__mutex_init" }, - { 0xd35cce70, "_raw_spin_unlock_irqrestore" }, - { 0x1dd71947, "pci_iounmap" }, - { 0xb11b57f1, "pci_restore_state" }, - { 0xfb578fc5, "memset" }, - { 0xb3eafc7a, "pci_set_master" }, - { 0x5b8239ca, "__x86_return_thunk" }, - { 0x17de3d5, "nr_cpu_ids" }, - { 0x6b10bee1, "_copy_to_user" }, - { 0xd9a5ea54, "__init_waitqueue_head" }, - { 0x50467724, "kthread_bind" }, - { 0x1ed42f7b, "pcie_capability_clear_and_set_word_unlocked" }, - { 0x15ba50a6, "jiffies" }, - { 0x692d8599, "kthread_create_on_node" }, - { 0x49cd2686, "dma_set_coherent_mask" }, - { 0x3c3ff9fd, "sprintf" }, - { 0xa648e561, "__ubsan_handle_shift_out_of_bounds" }, - { 0x770930da, "dma_free_attrs" }, - { 0x999e8297, "vfree" }, - { 0x6091b333, "unregister_chrdev_region" }, - { 0x3213f038, "mutex_unlock" }, - { 0x3f77c96b, "pci_release_regions" }, - { 0xfbe215e4, "sg_next" }, - { 0x9172c975, "__folio_put" }, - { 0x6729d3df, "__get_user_4" }, - { 0xa8f6c39, "kobject_set_name" }, - { 0x1ec4740d, "device_destroy" }, - { 0x2cf56265, "__dynamic_pr_debug" }, - { 0x3a73c6d6, "set_page_dirty_lock" }, - { 0xe11ff268, "pci_disable_msix" }, - { 0xed2ada1c, "pci_disable_device" }, - { 0xe16cab4a, "boot_cpu_data" }, - { 0x5895035, "pcie_set_readrq" }, - { 0xa7b4b0e5, "dma_set_mask" }, - { 0x8e93c30e, "dma_unmap_sg_attrs" }, - { 0xd8dcb679, "kmalloc_trace" }, - { 0x46cf10eb, "cachemode2protval" }, - { 0xbb111df2, "pci_read_config_byte" }, - { 0x54b1fac6, "__ubsan_handle_load_invalid_value" }, - { 0xd6ee688f, "vmalloc" }, - { 0x3e8e968a, "pci_write_config_word" }, - { 0xb5b54b34, "_raw_spin_unlock" }, - { 0xd8287c5f, "cdev_init" }, - { 0xeb233a45, "__kmalloc" }, - { 0xe2c17b5d, "__SCT__might_resched" }, - { 0xb22ef59e, "kmalloc_caches" }, - { 0x7c127ea2, "cdev_del" }, - { 0xd5d30195, "kmem_cache_destroy" }, - { 0xcf876b96, "dma_map_sg_attrs" }, - { 0x2d3385d3, "system_wq" }, - { 0x2273f01b, "module_layout" }, -}; - -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, "2EEB4A2EC40A3FC02ABA554"); diff --git a/xdma/linux-kernel/xdma/xdma.mod.o b/xdma/linux-kernel/xdma/xdma.mod.o deleted file mode 100644 index 168eda4..0000000 Binary files a/xdma/linux-kernel/xdma/xdma.mod.o and /dev/null differ diff --git a/xdma/linux-kernel/xdma/xdma.o b/xdma/linux-kernel/xdma/xdma.o deleted file mode 100644 index 3df5555..0000000 Binary files a/xdma/linux-kernel/xdma/xdma.o and /dev/null differ diff --git a/xdma/linux-kernel/xdma/xdma_cdev.c b/xdma/linux-kernel/xdma/xdma_cdev.c deleted file mode 100755 index 86d345e..0000000 --- a/xdma/linux-kernel/xdma/xdma_cdev.c +++ /dev/null @@ -1,642 +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 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" - -static struct class *g_xdma_class; - -struct kmem_cache *cdev_cache; - -enum cdev_type { - CHAR_USER, - CHAR_CTRL, - CHAR_XVC, - CHAR_EVENTS, - CHAR_XDMA_H2C, - CHAR_XDMA_C2H, - CHAR_BYPASS_H2C, - CHAR_BYPASS_C2H, - CHAR_BYPASS, -}; - -static const char * const devnode_names[] = { - XDMA_NODE_NAME "%d_user", - XDMA_NODE_NAME "%d_control", - XDMA_NODE_NAME "%d_xvc", - XDMA_NODE_NAME "%d_events_%d", - XDMA_NODE_NAME "%d_h2c_%d", - XDMA_NODE_NAME "%d_c2h_%d", - XDMA_NODE_NAME "%d_bypass_h2c_%d", - XDMA_NODE_NAME "%d_bypass_c2h_%d", - XDMA_NODE_NAME "%d_bypass", -}; - -enum xpdev_flags_bits { - 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, - enum xpdev_flags_bits fbit) -{ - xpdev->flags |= 1 << fbit; -} - -static inline void xcdev_flag_clear(struct xdma_pci_dev *xpdev, - enum xpdev_flags_bits fbit) -{ - xpdev->flags &= ~(1 << fbit); -} - -static inline int xpdev_flag_test(struct xdma_pci_dev *xpdev, - enum xpdev_flags_bits fbit) -{ - return xpdev->flags & (1 << fbit); -} - -#ifdef __XDMA_SYSFS__ -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); - - return snprintf(buf, PAGE_SIZE, "%d\t%d\n", - xpdev->major, xpdev->xdev->idx); -} - -static DEVICE_ATTR_RO(xdma_dev_instance); -#endif - -static int config_kobject(struct xdma_cdev *xcdev, enum cdev_type type) -{ - int rv = -EINVAL; - struct xdma_dev *xdev = xcdev->xdev; - struct xdma_engine *engine = xcdev->engine; - - switch (type) { - case CHAR_XDMA_H2C: - case CHAR_XDMA_C2H: - case CHAR_BYPASS_H2C: - case CHAR_BYPASS_C2H: - 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; - case CHAR_BYPASS: - case CHAR_USER: - case CHAR_CTRL: - case CHAR_XVC: - rv = kobject_set_name(&xcdev->cdev.kobj, devnode_names[type], - xdev->idx); - break; - case CHAR_EVENTS: - rv = kobject_set_name(&xcdev->cdev.kobj, devnode_names[type], - xdev->idx, xcdev->bar); - break; - default: - pr_warn("%s: UNKNOWN type 0x%x.\n", __func__, type); - break; - } - - if (rv) - pr_err("%s: type 0x%x, failed %d.\n", __func__, type, rv); - return rv; -} - -int xcdev_check(const char *fname, struct xdma_cdev *xcdev, bool check_engine) -{ - struct xdma_dev *xdev; - - if (!xcdev || xcdev->magic != MAGIC_CHAR) { - pr_info("%s, xcdev 0x%p, magic 0x%lx.\n", - fname, xcdev, xcdev ? xcdev->magic : 0xFFFFFFFF); - return -EINVAL; - } - - 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); - return -EINVAL; - } - - if (check_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); - return -EINVAL; - } - } - - return 0; -} - -int char_open(struct inode *inode, struct file *file) -{ - struct xdma_cdev *xcdev; - - /* pointer to containing structure of the character device inode */ - xcdev = container_of(inode->i_cdev, struct xdma_cdev, cdev); - 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; - - return 0; -} - -/* - * Called when the device goes from used to unused. - */ -int char_close(struct inode *inode, struct file *file) -{ - struct xdma_dev *xdev; - struct xdma_cdev *xcdev = (struct xdma_cdev *)file->private_data; - - 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; - 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; -} - -/* create_xcdev() -- create a character device interface to data or control bus - * - * If at least one SG DMA engine is specified, the character device interface - * is coupled to the SG DMA file operations which operate on the data bus. If - * no engines are specified, the interface is coupled with the control bus. - */ - -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; - - 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); - - if (!xcdev->sys_device) { - pr_err("device_create(%s) failed\n", devnode_names[type]); - return -1; - } - - return 0; -} - -static int destroy_xcdev(struct xdma_cdev *cdev) -{ - if (!cdev) { - pr_warn("cdev NULL.\n"); - return -EINVAL; - } - if (cdev->magic != MAGIC_CHAR) { - pr_warn("cdev 0x%p magic mismatch 0x%lx\n", cdev, cdev->magic); - 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; - } - - if (cdev->sys_device) - device_destroy(g_xdma_class, cdev->cdevno); - - cdev_del(&cdev->cdev); - - return 0; -} - -static int create_xcdev(struct xdma_pci_dev *xpdev, struct xdma_cdev *xcdev, - int bar, struct xdma_engine *engine, - enum cdev_type type) -{ - int rv; - int minor; - struct xdma_dev *xdev = xpdev->xdev; - dev_t dev; - - spin_lock_init(&xcdev->lock); - /* new instance? */ - if (!xpdev->major) { - /* allocate a dynamically allocated char device node */ - int rv = alloc_chrdev_region(&dev, XDMA_MINOR_BASE, - XDMA_MINOR_COUNT, XDMA_NODE_NAME); - - if (rv) { - pr_err("unable to allocate cdev region %d.\n", rv); - return rv; - } - xpdev->major = MAJOR(dev); - } - - /* - * do not register yet, create kobjects and name them, - */ - xcdev->magic = MAGIC_CHAR; - xcdev->cdev.owner = THIS_MODULE; - xcdev->xpdev = xpdev; - xcdev->xdev = xdev; - xcdev->engine = engine; - xcdev->bar = bar; - - rv = config_kobject(xcdev, type); - if (rv < 0) - return rv; - - switch (type) { - case CHAR_USER: - case CHAR_CTRL: - /* minor number is type index for non-SGDMA interfaces */ - minor = type; - cdev_ctrl_init(xcdev); - break; - case CHAR_XVC: - /* minor number is type index for non-SGDMA interfaces */ - minor = type; - cdev_xvc_init(xcdev); - break; - case CHAR_XDMA_H2C: - minor = 32 + engine->channel; - cdev_sgdma_init(xcdev); - break; - case CHAR_XDMA_C2H: - minor = 36 + engine->channel; - cdev_sgdma_init(xcdev); - break; - case CHAR_EVENTS: - minor = 10 + bar; - cdev_event_init(xcdev); - break; - case CHAR_BYPASS_H2C: - minor = 64 + engine->channel; - cdev_bypass_init(xcdev); - break; - case CHAR_BYPASS_C2H: - minor = 68 + engine->channel; - cdev_bypass_init(xcdev); - break; - case CHAR_BYPASS: - minor = 100; - cdev_bypass_init(xcdev); - break; - default: - pr_info("type 0x%x NOT supported.\n", type); - return -EINVAL; - } - xcdev->cdevno = MKDEV(xpdev->major, minor); - - /* bring character device live */ - rv = cdev_add(&xcdev->cdev, xcdev->cdevno, 1); - if (rv < 0) { - pr_err("cdev_add failed %d, type 0x%x.\n", rv, type); - goto unregister_region; - } - - dbg_init("xcdev 0x%p, %u:%u, %s, type 0x%x.\n", - xcdev, xpdev->major, minor, xcdev->cdev.kobj.name, type); - - /* create device on our class */ - if (g_xdma_class) { - rv = create_sys_device(xcdev, type); - if (rv < 0) - goto del_cdev; - } - - return 0; - -del_cdev: - cdev_del(&xcdev->cdev); -unregister_region: - unregister_chrdev_region(xcdev->cdevno, XDMA_MINOR_COUNT); - return rv; -} - -void xpdev_destroy_interfaces(struct xdma_pci_dev *xpdev) -{ - int i = 0; - int rv; -#ifdef __XDMA_SYSFS__ - 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++) { - /* remove SG DMA character device */ - 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++) { - 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)) { - 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)) { - 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)) { - 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++) { - /* remove DMA Bypass character device */ - 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); -} - -int xpdev_create_interfaces(struct xdma_pci_dev *xpdev) -{ - struct xdma_dev *xdev = xpdev->xdev; - struct xdma_engine *engine; - int i; - int rv = 0; - - /* initialize control character device */ - rv = create_xcdev(xpdev, &xpdev->ctrl_cdev, xdev->config_bar_idx, - NULL, CHAR_CTRL); - if (rv < 0) { - pr_err("create_char(ctrl_cdev) failed\n"); - goto fail; - } - xpdev_flag_set(xpdev, XDF_CDEV_CTRL); - - /* initialize events character device */ - for (i = 0; i < xpdev->user_max; i++) { - rv = create_xcdev(xpdev, &xpdev->events_cdev[i], i, NULL, - CHAR_EVENTS); - if (rv < 0) { - pr_err("create char event %d failed, %d.\n", i, rv); - goto fail; - } - } - xpdev_flag_set(xpdev, XDF_CDEV_EVENT); - - /* iterate over channels */ - for (i = 0; i < xpdev->h2c_channel_max; i++) { - engine = &xdev->engine_h2c[i]; - - if (engine->magic != MAGIC_ENGINE) - continue; - - rv = create_xcdev(xpdev, &xpdev->sgdma_h2c_cdev[i], i, engine, - CHAR_XDMA_H2C); - if (rv < 0) { - pr_err("create char h2c %d failed, %d.\n", i, rv); - goto fail; - } - } - - for (i = 0; i < xpdev->c2h_channel_max; i++) { - engine = &xdev->engine_c2h[i]; - - if (engine->magic != MAGIC_ENGINE) - continue; - - rv = create_xcdev(xpdev, &xpdev->sgdma_c2h_cdev[i], i, engine, - CHAR_XDMA_C2H); - if (rv < 0) { - pr_err("create char c2h %d failed, %d.\n", i, rv); - goto fail; - } - } - xpdev_flag_set(xpdev, XDF_CDEV_SG); - - /* Initialize Bypass Character Device */ - if (xdev->bypass_bar_idx > 0) { - for (i = 0; i < xpdev->h2c_channel_max; i++) { - engine = &xdev->engine_h2c[i]; - - if (engine->magic != MAGIC_ENGINE) - continue; - - rv = create_xcdev(xpdev, &xpdev->bypass_h2c_cdev[i], i, - engine, CHAR_BYPASS_H2C); - if (rv < 0) { - pr_err("create h2c %d bypass I/F failed, %d.\n", - i, rv); - goto fail; - } - } - - for (i = 0; i < xpdev->c2h_channel_max; i++) { - engine = &xdev->engine_c2h[i]; - - if (engine->magic != MAGIC_ENGINE) - continue; - - rv = create_xcdev(xpdev, &xpdev->bypass_c2h_cdev[i], i, - engine, CHAR_BYPASS_C2H); - if (rv < 0) { - pr_err("create c2h %d bypass I/F failed, %d.\n", - i, rv); - goto fail; - } - } - - rv = create_xcdev(xpdev, &xpdev->bypass_cdev_base, - xdev->bypass_bar_idx, NULL, CHAR_BYPASS); - if (rv < 0) { - pr_err("create bypass failed %d.\n", rv); - goto fail; - } - xpdev_flag_set(xpdev, XDF_CDEV_BYPASS); - } - - /* initialize user character device */ - if (xdev->user_bar_idx >= 0) { - rv = create_xcdev(xpdev, &xpdev->user_cdev, xdev->user_bar_idx, - NULL, CHAR_USER); - if (rv < 0) { - pr_err("create_char(user_cdev) failed\n"); - goto fail; - } - xpdev_flag_set(xpdev, XDF_CDEV_USER); - - /* xvc */ - rv = create_xcdev(xpdev, &xpdev->xvc_cdev, xdev->user_bar_idx, - NULL, CHAR_XVC); - if (rv < 0) { - pr_err("create xvc failed, %d.\n", rv); - goto fail; - } - xpdev_flag_set(xpdev, XDF_CDEV_XVC); - } - -#ifdef __XDMA_SYSFS__ - /* sys file */ - rv = device_create_file(&xpdev->pdev->dev, - &dev_attr_xdma_dev_instance); - if (rv) { - pr_err("Failed to create device file\n"); - goto fail; - } -#endif - - return 0; - -fail: - rv = -1; - xpdev_destroy_interfaces(xpdev); - return rv; -} - -int xdma_cdev_init(void) -{ -#if defined(RHEL_RELEASE_CODE) - #if (RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(9, 4)) - g_xdma_class = class_create(XDMA_NODE_NAME); - #else - g_xdma_class = class_create(THIS_MODULE, XDMA_NODE_NAME); - #endif -#elif LINUX_VERSION_CODE >= KERNEL_VERSION(6, 4, 0) - g_xdma_class = class_create(XDMA_NODE_NAME); -#else - g_xdma_class = class_create(THIS_MODULE, XDMA_NODE_NAME); -#endif - 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/xdma/linux-kernel/xdma/xdma_cdev.h b/xdma/linux-kernel/xdma/xdma_cdev.h deleted file mode 100644 index 4b2fc50..0000000 --- a/xdma/linux-kernel/xdma/xdma_cdev.h +++ /dev/null @@ -1,51 +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 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__ -#define __XDMA_CHRDEV_H__ - -#include -#include -#include -#include -#include "xdma_mod.h" - -#define XDMA_NODE_NAME "xdma" -#define XDMA_MINOR_BASE (0) -#define XDMA_MINOR_COUNT (255) - -void xdma_cdev_cleanup(void); -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 *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); - -int bridge_mmap(struct file *file, struct vm_area_struct *vma); - -#endif /* __XDMA_CHRDEV_H__ */ diff --git a/xdma/linux-kernel/xdma/xdma_cdev.o b/xdma/linux-kernel/xdma/xdma_cdev.o deleted file mode 100644 index 71b869e..0000000 Binary files a/xdma/linux-kernel/xdma/xdma_cdev.o and /dev/null differ diff --git a/xdma/linux-kernel/xdma/xdma_mod.c b/xdma/linux-kernel/xdma/xdma_mod.c deleted file mode 100644 index fe51eab..0000000 --- a/xdma/linux-kernel/xdma/xdma_mod.c +++ /dev/null @@ -1,382 +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 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 early, to verify it depends only on the headers above */ -#include "libxdma_api.h" -#include "libxdma.h" -#include "xdma_mod.h" -#include "xdma_cdev.h" -#include "version.h" - -#define DRV_MODULE_NAME "xdma" -#define DRV_MODULE_DESC "Xilinx XDMA Reference Driver" - -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"); - -/* SECTION: Module global variables */ -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, 0x9034), }, - { PCI_DEVICE(0x10ee, 0x9024), }, - { PCI_DEVICE(0x10ee, 0x9014), }, - { PCI_DEVICE(0x10ee, 0x9032), }, - { PCI_DEVICE(0x10ee, 0x9022), }, - { PCI_DEVICE(0x10ee, 0x9012), }, - { PCI_DEVICE(0x10ee, 0x9031), }, - { PCI_DEVICE(0x10ee, 0x9021), }, - { 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, 0x7028), }, - { PCI_DEVICE(0x10ee, 0x7031), }, - { PCI_DEVICE(0x10ee, 0x7032), }, - { PCI_DEVICE(0x10ee, 0x7034), }, - { PCI_DEVICE(0x10ee, 0x7038), }, - - { PCI_DEVICE(0x10ee, 0x6828), }, - { PCI_DEVICE(0x10ee, 0x6830), }, - { PCI_DEVICE(0x10ee, 0x6928), }, - { PCI_DEVICE(0x10ee, 0x6930), }, - { PCI_DEVICE(0x10ee, 0x6A28), }, - { PCI_DEVICE(0x10ee, 0x6A30), }, - { PCI_DEVICE(0x10ee, 0x6D30), }, - - { PCI_DEVICE(0x10ee, 0x4808), }, - { PCI_DEVICE(0x10ee, 0x4828), }, - { PCI_DEVICE(0x10ee, 0x4908), }, - { PCI_DEVICE(0x10ee, 0x4A28), }, - { PCI_DEVICE(0x10ee, 0x4B28), }, - - { PCI_DEVICE(0x10ee, 0x2808), }, - -#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); - -static void xpdev_free(struct xdma_pci_dev *xpdev) -{ - struct xdma_dev *xdev = xpdev->xdev; - - pr_info("xpdev 0x%p, destroy_interfaces, xdev 0x%p.\n", xpdev, xdev); - xpdev_destroy_interfaces(xpdev); - xpdev->xdev = NULL; - pr_info("xpdev 0x%p, xdev 0x%p xdma_device_close.\n", xpdev, xdev); - xdma_device_close(xpdev->pdev, xdev); - xpdev_cnt--; - - kfree(xpdev); -} - -static struct xdma_pci_dev *xpdev_alloc(struct pci_dev *pdev) -{ - struct xdma_pci_dev *xpdev = kmalloc(sizeof(*xpdev), GFP_KERNEL); - - if (!xpdev) - return NULL; - memset(xpdev, 0, sizeof(*xpdev)); - - xpdev->magic = MAGIC_DEVICE; - xpdev->pdev = pdev; - xpdev->user_max = MAX_USER_IRQ; - xpdev->h2c_channel_max = XDMA_CHANNEL_NUM_MAX; - xpdev->c2h_channel_max = XDMA_CHANNEL_NUM_MAX; - - xpdev_cnt++; - return xpdev; -} - -static int probe_one(struct pci_dev *pdev, const struct pci_device_id *id) -{ - int rv = 0; - struct xdma_pci_dev *xpdev = NULL; - struct xdma_dev *xdev; - void *hndl; - - xpdev = xpdev_alloc(pdev); - if (!xpdev) - return -ENOMEM; - - hndl = xdma_device_open(DRV_MODULE_NAME, pdev, &xpdev->user_max, - &xpdev->h2c_channel_max, &xpdev->c2h_channel_max); - if (!hndl) { - rv = -EINVAL; - goto err_out; - } - - 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"); - - if (xpdev->user_max) { - u32 mask = (1 << (xpdev->user_max + 1)) - 1; - - rv = xdma_user_isr_enable(hndl, mask); - if (rv) - goto err_out; - } - - /* make sure no duplicate */ - xdev = xdev_find_by_pdev(pdev); - if (!xdev) { - pr_warn("NO xdev found!\n"); - rv = -EINVAL; - goto err_out; - } - - if (hndl != xdev) { - pr_err("xdev handle mismatch\n"); - rv = -EINVAL; - goto err_out; - } - - 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, - xpdev->user_max, xpdev->h2c_channel_max, - xpdev->c2h_channel_max); - - xpdev->xdev = hndl; - - rv = xpdev_create_interfaces(xpdev); - if (rv) - goto err_out; - - dev_set_drvdata(&pdev->dev, xpdev); - - return 0; - -err_out: - pr_err("pdev 0x%p, err %d.\n", pdev, rv); - xpdev_free(xpdev); - return rv; -} - -static void remove_one(struct pci_dev *pdev) -{ - struct xdma_pci_dev *xpdev; - - if (!pdev) - return; - - xpdev = dev_get_drvdata(&pdev->dev); - if (!xpdev) - return; - - pr_info("pdev 0x%p, xdev 0x%p, 0x%p.\n", - pdev, xpdev, xpdev->xdev); - xpdev_free(xpdev); - - dev_set_drvdata(&pdev->dev, NULL); -} - -static pci_ers_result_t xdma_error_detected(struct pci_dev *pdev, - pci_channel_state_t state) -{ - struct xdma_pci_dev *xpdev = dev_get_drvdata(&pdev->dev); - - switch (state) { - case pci_channel_io_normal: - return PCI_ERS_RESULT_CAN_RECOVER; - case pci_channel_io_frozen: - pr_warn("dev 0x%p,0x%p, frozen state error, reset controller\n", - pdev, xpdev); - xdma_device_offline(pdev, xpdev->xdev); - pci_disable_device(pdev); - return PCI_ERS_RESULT_NEED_RESET; - case pci_channel_io_perm_failure: - pr_warn("dev 0x%p,0x%p, failure state error, req. disconnect\n", - pdev, xpdev); - return PCI_ERS_RESULT_DISCONNECT; - } - return PCI_ERS_RESULT_NEED_RESET; -} - -static pci_ers_result_t xdma_slot_reset(struct pci_dev *pdev) -{ - struct xdma_pci_dev *xpdev = dev_get_drvdata(&pdev->dev); - - pr_info("0x%p restart after slot reset\n", xpdev); - if (pci_enable_device_mem(pdev)) { - pr_info("0x%p failed to renable after slot reset\n", xpdev); - return PCI_ERS_RESULT_DISCONNECT; - } - - pci_set_master(pdev); - pci_restore_state(pdev); - pci_save_state(pdev); - xdma_device_online(pdev, xpdev->xdev); - - return PCI_ERS_RESULT_RECOVERED; -} - -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 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); - - pr_info("dev 0x%p,0x%p.\n", pdev, xpdev); - xdma_device_offline(pdev, xpdev->xdev); -} - -static void xdma_reset_done(struct pci_dev *pdev) -{ - struct xdma_pci_dev *xpdev = dev_get_drvdata(&pdev->dev); - - pr_info("dev 0x%p,0x%p.\n", pdev, xpdev); - xdma_device_online(pdev, xpdev->xdev); -} - -#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); - - pr_info("dev 0x%p,0x%p, prepare %d.\n", pdev, xpdev, prepare); - - if (prepare) - xdma_device_offline(pdev, xpdev->xdev); - else - xdma_device_online(pdev, xpdev->xdev); -} -#endif - -static const struct pci_error_handlers xdma_err_handler = { - .error_detected = xdma_error_detected, - .slot_reset = xdma_slot_reset, - .resume = xdma_error_resume, -#if KERNEL_VERSION(4, 13, 0) <= LINUX_VERSION_CODE - .reset_prepare = xdma_reset_prepare, - .reset_done = xdma_reset_done, -#elif KERNEL_VERSION(3, 16, 0) <= LINUX_VERSION_CODE - .reset_notify = xdma_reset_notify, -#endif -}; - -static struct pci_driver pci_driver = { - .name = DRV_MODULE_NAME, - .id_table = pci_ids, - .probe = probe_one, - .remove = remove_one, - .err_handler = &xdma_err_handler, -}; - -static int xdma_mod_init(void) -{ - int rv; - - 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, timeout: h2c %u c2h %u sec.\n", - desc_blen_max, desc_blen_max, h2c_timeout, c2h_timeout); - - rv = xdma_cdev_init(); - if (rv < 0) - return rv; - - return pci_register_driver(&pci_driver); -} - -static void xdma_mod_exit(void) -{ - /* unregister this driver from the PCI bus driver */ - dbg_init("pci_unregister_driver.\n"); - pci_unregister_driver(&pci_driver); - xdma_cdev_cleanup(); -} - -module_init(xdma_mod_init); -module_exit(xdma_mod_exit); diff --git a/xdma/linux-kernel/xdma/xdma_mod.h b/xdma/linux-kernel/xdma/xdma_mod.h deleted file mode 100644 index 0fb7527..0000000 --- a/xdma/linux-kernel/xdma/xdma_mod.h +++ /dev/null @@ -1,118 +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 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__ -#define __XDMA_MODULE_H__ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#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; - struct xdma_dev *xdev; - dev_t cdevno; /* character device major:minor */ - struct cdev cdev; /* character device embedded struct */ - int bar; /* PCIe BAR for HW access, if needed */ - unsigned long base; /* bar access offset */ - struct xdma_engine *engine; /* engine instance, if needed */ - struct xdma_user_irq *user_irq; /* IRQ value, if needed */ - struct device *sys_device; /* sysfs device */ - spinlock_t lock; -}; - -/* XDMA PCIe device specific book-keeping */ -struct xdma_pci_dev { - unsigned long magic; /* structure ID for sanity checks */ - struct pci_dev *pdev; /* pci device struct from probe() */ - struct xdma_dev *xdev; - int major; /* major number */ - int instance; /* instance number */ - int user_max; - int c2h_channel_max; - int h2c_channel_max; - - unsigned int flags; - /* character device structures */ - struct xdma_cdev ctrl_cdev; - struct xdma_cdev sgdma_c2h_cdev[XDMA_CHANNEL_NUM_MAX]; - struct xdma_cdev sgdma_h2c_cdev[XDMA_CHANNEL_NUM_MAX]; - struct xdma_cdev events_cdev[16]; - - struct xdma_cdev user_cdev; - struct xdma_cdev bypass_c2h_cdev[XDMA_CHANNEL_NUM_MAX]; - struct xdma_cdev bypass_h2c_cdev[XDMA_CHANNEL_NUM_MAX]; - struct xdma_cdev bypass_cdev_base; - - struct xdma_cdev xvc_cdev; - - void *data; -}; - -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/xdma/linux-kernel/xdma/xdma_mod.o b/xdma/linux-kernel/xdma/xdma_mod.o deleted file mode 100644 index e2fdf2d..0000000 Binary files a/xdma/linux-kernel/xdma/xdma_mod.o and /dev/null differ diff --git a/xdma/linux-kernel/xdma/xdma_thread.c b/xdma/linux-kernel/xdma/xdma_thread.c deleted file mode 100644 index 662311f..0000000 --- a/xdma/linux-kernel/xdma/xdma_thread.c +++ /dev/null @@ -1,339 +0,0 @@ -/* - * 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/xdma/linux-kernel/xdma/xdma_thread.h b/xdma/linux-kernel/xdma/xdma_thread.h deleted file mode 100755 index 02ace56..0000000 --- a/xdma/linux-kernel/xdma/xdma_thread.h +++ /dev/null @@ -1,149 +0,0 @@ -/* - * 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); - -int xdma_kthread_start(struct xdma_kthread *thp, char *name, int id); -int xdma_kthread_stop(struct xdma_kthread *thp); -#endif /* #ifndef __XDMA_KTHREAD_H__ */ diff --git a/xdma/linux-kernel/xdma/xdma_thread.o b/xdma/linux-kernel/xdma/xdma_thread.o deleted file mode 100644 index a12cab5..0000000 Binary files a/xdma/linux-kernel/xdma/xdma_thread.o and /dev/null differ