diff mbox series

drm/msm: Fix gen_header.py for python earlier than v3.9

Message ID 20240508091751.336654-1-jonathanh@nvidia.com
State New
Headers show
Series drm/msm: Fix gen_header.py for python earlier than v3.9 | expand

Commit Message

Jon Hunter May 8, 2024, 9:17 a.m. UTC
Building the kernel with python3 versions earlier than v3.9 fails with ...

 Traceback (most recent call last):
   File "drivers/gpu/drm/msm/registers/gen_header.py", line 970, in <module>
     main()
   File "drivers/gpu/drm/msm/registers/gen_header.py", line 951, in main
     parser.add_argument('--validate', action=argparse.BooleanOptionalAction)
 AttributeError: module 'argparse' has no attribute 'BooleanOptionalAction'

The argparse attribute 'BooleanOptionalAction' is only supported for
python v3.9 and later. Fix support for earlier python3 versions by
explicitly defining '--validate' and '--no-validate' arguments.

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
---
 drivers/gpu/drm/msm/registers/gen_header.py | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Abhinav Kumar May 8, 2024, 4:46 p.m. UTC | #1
On 5/8/2024 2:17 AM, Jon Hunter wrote:
> Building the kernel with python3 versions earlier than v3.9 fails with ...
> 
>   Traceback (most recent call last):
>     File "drivers/gpu/drm/msm/registers/gen_header.py", line 970, in <module>
>       main()
>     File "drivers/gpu/drm/msm/registers/gen_header.py", line 951, in main
>       parser.add_argument('--validate', action=argparse.BooleanOptionalAction)
>   AttributeError: module 'argparse' has no attribute 'BooleanOptionalAction'
> 
> The argparse attribute 'BooleanOptionalAction' is only supported for
> python v3.9 and later. Fix support for earlier python3 versions by
> explicitly defining '--validate' and '--no-validate' arguments.
> 
> Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
> ---
>   drivers/gpu/drm/msm/registers/gen_header.py | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
> 

Thanks for your patch, I had sent something similar y'day.

If you are alright with https://patchwork.freedesktop.org/patch/593057/, 
we can use that one.

> diff --git a/drivers/gpu/drm/msm/registers/gen_header.py b/drivers/gpu/drm/msm/registers/gen_header.py
> index fc3bfdc991d2..64f67d2e3f1c 100644
> --- a/drivers/gpu/drm/msm/registers/gen_header.py
> +++ b/drivers/gpu/drm/msm/registers/gen_header.py
> @@ -948,7 +948,8 @@ def main():
>   	parser = argparse.ArgumentParser()
>   	parser.add_argument('--rnn', type=str, required=True)
>   	parser.add_argument('--xml', type=str, required=True)
> -	parser.add_argument('--validate', action=argparse.BooleanOptionalAction)
> +	parser.add_argument('--validate', dest='validate', action='store_true')
> +	parser.add_argument('--no-validate', dest='validate', action='store_false')
>   
>   	subparsers = parser.add_subparsers()
>   	subparsers.required = True
Jon Hunter May 8, 2024, 8:52 p.m. UTC | #2
On 08/05/2024 17:46, Abhinav Kumar wrote:
> 
> 
> On 5/8/2024 2:17 AM, Jon Hunter wrote:
>> Building the kernel with python3 versions earlier than v3.9 fails with 
>> ...
>>
>>   Traceback (most recent call last):
>>     File "drivers/gpu/drm/msm/registers/gen_header.py", line 970, in 
>> <module>
>>       main()
>>     File "drivers/gpu/drm/msm/registers/gen_header.py", line 951, in main
>>       parser.add_argument('--validate', 
>> action=argparse.BooleanOptionalAction)
>>   AttributeError: module 'argparse' has no attribute 
>> 'BooleanOptionalAction'
>>
>> The argparse attribute 'BooleanOptionalAction' is only supported for
>> python v3.9 and later. Fix support for earlier python3 versions by
>> explicitly defining '--validate' and '--no-validate' arguments.
>>
>> Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
>> ---
>>   drivers/gpu/drm/msm/registers/gen_header.py | 3 ++-
>>   1 file changed, 2 insertions(+), 1 deletion(-)
>>
> 
> Thanks for your patch, I had sent something similar y'day.
> 
> If you are alright with https://patchwork.freedesktop.org/patch/593057/, 
> we can use that one.


Yes that's fine with me.

Thanks
Jon
Jon Hunter May 30, 2024, 1:17 p.m. UTC | #3
Abhinav,

On 08/05/2024 21:52, Jon Hunter wrote:
> 
> On 08/05/2024 17:46, Abhinav Kumar wrote:
>>
>>
>> On 5/8/2024 2:17 AM, Jon Hunter wrote:
>>> Building the kernel with python3 versions earlier than v3.9 fails 
>>> with ...
>>>
>>>   Traceback (most recent call last):
>>>     File "drivers/gpu/drm/msm/registers/gen_header.py", line 970, in 
>>> <module>
>>>       main()
>>>     File "drivers/gpu/drm/msm/registers/gen_header.py", line 951, in 
>>> main
>>>       parser.add_argument('--validate', 
>>> action=argparse.BooleanOptionalAction)
>>>   AttributeError: module 'argparse' has no attribute 
>>> 'BooleanOptionalAction'
>>>
>>> The argparse attribute 'BooleanOptionalAction' is only supported for
>>> python v3.9 and later. Fix support for earlier python3 versions by
>>> explicitly defining '--validate' and '--no-validate' arguments.
>>>
>>> Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
>>> ---
>>>   drivers/gpu/drm/msm/registers/gen_header.py | 3 ++-
>>>   1 file changed, 2 insertions(+), 1 deletion(-)
>>>
>>
>> Thanks for your patch, I had sent something similar y'day.
>>
>> If you are alright with 
>> https://patchwork.freedesktop.org/patch/593057/, we can use that one.
> 
> 
> Yes that's fine with me.


Any update on this? All our farm builders are unable to build either 
-next or mainline currently.

Jon
diff mbox series

Patch

diff --git a/drivers/gpu/drm/msm/registers/gen_header.py b/drivers/gpu/drm/msm/registers/gen_header.py
index fc3bfdc991d2..64f67d2e3f1c 100644
--- a/drivers/gpu/drm/msm/registers/gen_header.py
+++ b/drivers/gpu/drm/msm/registers/gen_header.py
@@ -948,7 +948,8 @@  def main():
 	parser = argparse.ArgumentParser()
 	parser.add_argument('--rnn', type=str, required=True)
 	parser.add_argument('--xml', type=str, required=True)
-	parser.add_argument('--validate', action=argparse.BooleanOptionalAction)
+	parser.add_argument('--validate', dest='validate', action='store_true')
+	parser.add_argument('--no-validate', dest='validate', action='store_false')
 
 	subparsers = parser.add_subparsers()
 	subparsers.required = True