From: Yunfeng Ye > Sent: 17 October 2019 15:20 > On 2019/10/17 22:00, David Laight wrote: > > From: Yunfeng Ye > >> Sent: 17 October 2019 14:26 > > ... > >>>> - for (i = 0; i < 10; i++) { > >>>> + i = 0; > >>>> + timeout = jiffies + msecs_to_jiffies(100); > >>>> + do { > >>>> err = psci_ops.affinity_info(cpu_logical_map(cpu), 0); > >>>> if (err == PSCI_0_2_AFFINITY_LEVEL_OFF) { > >>>> pr_info("CPU%d killed.\n", cpu); > >>>> return 0; > >>>> } > >>>> > >>>> - msleep(10); > >>>> - pr_info("Retrying again to check for CPU kill\n"); > >>> > >>> You dropped this message, any particular reason ? > >>> > >> When reduce the time interval to 1ms, the print message maybe increase 10 > >> times. > >> on the other hand, cpu_psci_cpu_kill() will print message on success or > >> failure, which > >> this retry log is not very necessary. of cource, I think use > >> pr_info_once() instead of > >> pr_info() is better. > > > > Maybe you should print in on (say) the 10th time around the loop. > > > Can it like this: > pr_info("CPU%d killed with %d loops.\n", cpu, loops); > > If put the number of waiting times in the successful printing message, it is > not necessary to print the "Retrying ..." message.
That depends on whether you want to know how long it took or why the system is 'stuck'. David - Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK Registration No: 1397386 (Wales)