Re: [PATCH 1/2] lib/vsprintf: Add support for generic FourCCs by extending %p4cc

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Mar 13, 2025 at 08:53:28AM +0000, Aditya Garg wrote:
> > On 13 Mar 2025, at 2:19 PM, Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote:
> > On Thu, Mar 13, 2025 at 07:26:05AM +0000, Aditya Garg wrote:
> >>>> On 13 Mar 2025, at 12:58 AM, Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote:
> >>> On Wed, Mar 12, 2025 at 07:14:36PM +0000, Aditya Garg wrote:
> >>>>> On 12 Mar 2025, at 9:05 PM, Sven Peter <sven@xxxxxxxxxxxxx> wrote:
> >>>>> On Wed, Mar 12, 2025, at 13:03, Aditya Garg wrote:

...

> >>>>> I don't have a strong opinion either way: for SMC I just need to print
> >>>>> FourCC keys for debugging / information in a few places.
> >>>>> 
> >>>>> I'm preparing the SMC driver for upstreaming again (after a two year delay :-()
> >>>>> and was just going to use macros to print the SMC FourCC keys similar to
> >>>>> DRM_MODE_FMT/DRM_MODE_ARG for now to keep the series smaller and revisit
> >>>>> the topic later.
> >>>>> 
> >>>>> Right now I have these in my local tree (only compile tested so far):
> >>>>> 
> >>>>> #define SMC_KEY_FMT "%c%c%c%c (0x%08x)"
> >>>>> #define SMC_KEY_ARG(k) (k)>>24, (k)>>16, (k)>>8, (k), (k)
> >>>> 
> >>>> That seems to be a nice alternative, which I guess Thomas was also suggesting.
> >>> 
> >>> I don't think it's "nice". Each of the approaches has pros and cons.
> >>> You can start from bloat-o-meter here and compare it with your %p extension.
> >>> 
> >>> Also, can you show the bloat-o-meter output for the vsprintf.c?
> >> 
> >> Here are your outputs:
> > 
> > Thank you!
> > 
> >> ---------------------------------------------------------------------
> >> For appletbdrm:
> >> 
> >> aditya@MacBook:~/linux$ ./scripts/bloat-o-meter $P4 $MACRO
> >> add/remove: 0/0 grow/shrink: 1/1 up/down: 64/-19 (45)
> >> Function                                     old     new   delta
> >> appletbdrm_read_response                     395     459     +64
> >> appletbdrm_probe                            1786    1767     -19
> >> Total: Before=13418, After=13463, chg +0.34%
> > 
> > This is enough, no need to repeat this for every parameter.
> > 
> >> ---------------------------------------------------------------------
> >> For vsprintf:
> >> 
> >> aditya@MacBook:~/linux$ ./scripts/bloat-o-meter $OLD $NEW
> >> add/remove: 0/0 grow/shrink: 1/0 up/down: 220/0 (220)
> >> Function                                     old     new   delta
> >> fourcc_string                                479     699    +220
> >> Total: Before=26454, After=26674, chg +0.83%
> > 
> > So, we get +220 bytes vs +43 bytes. It means if we found 5+ users, it worth
> > doing.
> 
> Will it also depend upon the number of times it's being used? In appletbdrm,
> it is being used 3 times. Probably more in Asahi SMC.

Right, it depends on the usage count. Also on different architectures it may
give different results. On 32-bit it probably gives better statistics.

> >>>>> which are then used like this:
> >>>>> 
> >>>>> dev_info(dev,
> >>>>>     "Initialized (%d keys " SMC_KEY_FMT " .. " SMC_KEY_FMT ")\n",
> >>>>>      smc->key_count, SMC_KEY_ARG(smc->first_key),
> >>>>>      SMC_KEY_ARG(smc->last_key));

-- 
With Best Regards,
Andy Shevchenko





[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux