Hi, > From: Adam Borowski [mailto:kilobyte@xxxxxxxxxx] > Subject: Re: [PATCH] ACPICA: Remove unnecessary call to debugger > > On Fri, Jun 09, 2017 at 01:18:25AM +0000, Zheng, Lv wrote: > > > Subject: [PATCH] ACPICA: Remove unnecessary call to debugger > > > > > > This is a port of https://github.com/acpica/acpica/commit/eaa455ac by > > > Robert Moore to the kernel: > > > > > > > This call was simply wrong, and resulted in a -1 index into the operand > > > > stack. > > > > > > Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=120351 > > > Signed-off-by: Adam Borowski <kilobyte@xxxxxxxxxx> > > > > I think my first fix also worked and your test on bug 120351 was wrong. > > I just added comment a moment ago. > > > > However I just pushed the removal of the wrong debugging statement fix to the upstream. > > It's really redundant, you need to enable the log and check them. > > > > The patch has already been sent here: > > https://patchwork.kernel.org/patch/9765837/ > > So you don't have to send it again. > > Date: June 5, and it's not even in next-20170608 yet, so I obviously didn't > see you applying the fix (it seemed stalled since Apr 4). If it's already > on the way, that's good. Yes, ACPICA release was frozen, waiting for spec 6.2 release. > > However, it is not redundant: without this removal, I see the UBSAN error > (at least in current mainline). We have different meaning of redundant. :) I mean: I managed to enable the debugging log, and it always dumps things in this way: ArgObj: 00ADA610 Integer 0000000000000000 ArgObj: 00ADA4F0 Integer 00000000FFFF00FF ArgObj: 00ADA4F0 Integer 00000000FFFF00FF <= redundant log generated by this line ArgObj: 00ADA580 Integer 0000000000000000 ResultObj: 00ADA710 Integer 0000000000000000 In theory, AcpiDbDisplayArgumentObject() should be invoked for each AcpiDsObjStackPush(). There are only 2 AcpiDsObjStackPush() invocations. Both of them have already been paired with AcpiDbDisplayArgumentObject() in AcpiDsCreateOperand(). This isolated AcpiDbDisplayArgumentObject() tries to find back missing stacked object debugging information. ACPI_DEBUG_PRINT((ACPI_DB_DISPATCH, "Argument previously created, already stacked\n")); However there won't be such a missing object as all operands are created via AcpiDsCreateOperand(). Finally this invocation only generates above redundant debugging logs. Cheers, Lv > > Whether an alternate fix would be enough is another question. You guys know > more about the issue, all I know is whether I see warnings spewed into my > dmesg :) > > > Meow! > -- > ⢀⣴⠾⠻⢶⣦⠀ A tit a day keeps the vet away. > ⣾⠁⢰⠒⠀⣿⡁ > ⢿⡄⠘⠷⠚⠋⠀ (Rejoice as my small-animal-murder-machine got unbroken after > ⠈⠳⣄⠀⠀⠀⠀ nearly two years of no catch!) ��.n��������+%������w��{.n�����{�����ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f