lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <9f71c145-3d0d-42ad-a258-57ef89ec525c@linuxfoundation.org>
Date: Fri, 13 Sep 2024 10:45:38 -0600
From: Shuah Khan <skhan@...uxfoundation.org>
To: "John B. Wyatt IV" <jwyatt@...hat.com>,
 Min-Hua Chen <minhuadotchen@...il.com>
Cc: jkacur@...hat.com, linux-kernel@...r.kernel.org,
 linux-pm@...r.kernel.org, shuah@...nel.org, trenn@...e.com,
 Shuah Khan <skhan@...uxfoundation.org>
Subject: Re: [RFC PATCH for-next] pm: cpupower: rename raw_pylibcpupower.i

On 9/13/24 10:35, John B. Wyatt IV wrote:
> On Fri, Sep 13, 2024 at 06:55:19AM +0800, Min-Hua Chen wrote:
>> AFAIK,
>> raw_pylibcpupower.i is not a generated file, it is a interface file
>> for swig.
> 
> That is correct. You can do more advanced things to help SWIG handle
> different languages, but so far with the script I wrote for libcpupower
> simply copying the definition files as worked for me for the .i file.
> 
> See:
> https://www.swig.org/Doc4.2/Preprocessor.html#Preprocessor
> 
>> The *.i file extension is also used for pre-processor output
>> (single target build) and all *.i files are removed by 'make mrproper',
>> including raw_pylibcpupower.i (should not be removed).
> 
> That would explain it. Not just 'make mrproper', but 'make clean'
> in the root removes the file as well. 'make clean' in the tools
> directory does not affect it.
> 
>  From 'man gcc':
> 
>         file.i
>             C source code that should not be preprocessed.
> 

.i extension is used for a C pre-processor out, hence the need to
mrprpoer and clean remove it. Because of that reason, using .i
will not work for swig interface files.

We build files to debug problems and to check the pre-processor
output. So changing mrproper and cleans to not remove .i would
leave the tree dirty.

>>>
>>>> I have reviewed and tested and this. I am good with it being a stopgap.
>>>
>>> I am okay with the stopgap, but I do want i explore other solutions.
> 
> Reviewing the documentation a better solution would be to rename it to .swg
> 
> '''
> 5.1.1 Input format
> 
> As input, SWIG expects a file containing ISO C/C++ declarations and special
> SWIG directives. More often than not, this is a special SWIG interface file
> which is usually denoted with a special .i or .swg suffix.
> '''
> 

This is the reason why I wanted to understand the problem to come up
with a solutions than renaming the file with .if extension.

I am glad to hear .swg can be used. Let's fix this properly then by
renaming the file as raw_pylibcpupower

> https://www.swig.org/Doc4.2/SWIG.html
> 

Please send me patch with the change to rename using .swg extension
and this can be used going forward for other swg interface files.

thanks,
-- Shuah

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ