scripts/gdb: Fix SB_* constants parsing

Message ID 20230607221337.2781730-1-florian.fainelli@broadcom.com
State New
Headers
Series scripts/gdb: Fix SB_* constants parsing |

Commit Message

Florian Fainelli June 7, 2023, 10:13 p.m. UTC
  After f15afbd34d8f ("fs: fix undefined behavior in bit shift for
SB_NOUSER") the constants were changed from plain integers which
LX_VALUE() can parse to constants using the BIT() macro which causes the
following:

Reading symbols from build/linux-custom/vmlinux...done.
Traceback (most recent call last):
  File "/home/fainelli/work/buildroot/output/arm64/build/linux-custom/vmlinux-gdb.py", line 25, in <module>
    import linux.constants
  File "/home/fainelli/work/buildroot/output/arm64/build/linux-custom/scripts/gdb/linux/constants.py", line 5
    LX_SB_RDONLY = ((((1UL))) << (0))

Use LX_GDBPARSED() which does not suffer from that issue.

f15afbd34d8f ("fs: fix undefined behavior in bit shift for SB_NOUSER")
Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
---
 scripts/gdb/linux/constants.py.in | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)
  

Comments

Christian Brauner June 8, 2023, 7:31 a.m. UTC | #1
On Wed, Jun 07, 2023 at 03:13:35PM -0700, Florian Fainelli wrote:
> After f15afbd34d8f ("fs: fix undefined behavior in bit shift for
> SB_NOUSER") the constants were changed from plain integers which
> LX_VALUE() can parse to constants using the BIT() macro which causes the
> following:
> 
> Reading symbols from build/linux-custom/vmlinux...done.
> Traceback (most recent call last):
>   File "/home/fainelli/work/buildroot/output/arm64/build/linux-custom/vmlinux-gdb.py", line 25, in <module>
>     import linux.constants
>   File "/home/fainelli/work/buildroot/output/arm64/build/linux-custom/scripts/gdb/linux/constants.py", line 5
>     LX_SB_RDONLY = ((((1UL))) << (0))
> 
> Use LX_GDBPARSED() which does not suffer from that issue.
> 
> f15afbd34d8f ("fs: fix undefined behavior in bit shift for SB_NOUSER")
> Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
> ---

Fine by me,
Acked-by: Christian Brauner <brauner@kernel.org>
  

Patch

diff --git a/scripts/gdb/linux/constants.py.in b/scripts/gdb/linux/constants.py.in
index 471300ba176c..50a92c4e9984 100644
--- a/scripts/gdb/linux/constants.py.in
+++ b/scripts/gdb/linux/constants.py.in
@@ -48,12 +48,12 @@  if IS_BUILTIN(CONFIG_COMMON_CLK):
     LX_GDBPARSED(CLK_GET_RATE_NOCACHE)
 
 /* linux/fs.h */
-LX_VALUE(SB_RDONLY)
-LX_VALUE(SB_SYNCHRONOUS)
-LX_VALUE(SB_MANDLOCK)
-LX_VALUE(SB_DIRSYNC)
-LX_VALUE(SB_NOATIME)
-LX_VALUE(SB_NODIRATIME)
+LX_GDBPARSED(SB_RDONLY)
+LX_GDBPARSED(SB_SYNCHRONOUS)
+LX_GDBPARSED(SB_MANDLOCK)
+LX_GDBPARSED(SB_DIRSYNC)
+LX_GDBPARSED(SB_NOATIME)
+LX_GDBPARSED(SB_NODIRATIME)
 
 /* linux/htimer.h */
 LX_GDBPARSED(hrtimer_resolution)