>-----Original Message----- >From: Robin Getz [mailto:[email protected]] >Sent: Saturday, July 31, 2010 1:49 AM >To: [email protected]; Zhang, Sonic >Cc: Mike Frysinger; [email protected] >Subject: Re: [Linux-kernel-commits] [9020] >trunk/arch/blackfin/mach-bf561/atomic.S: Bug[#6044] Forgot >CSYNC in get_core_lock_noflush > >On Thu 29 Jul 2010 11:29, Mike Frysinger pondered: >> On Thu, Jul 29, 2010 at 03:35, Zhang, Sonic ><[email protected]> wrote: >> >From: Mike Frysinger [mailto:[email protected]] >> >>On Wed, Jul 28, 2010 at 06:53, ><[email protected]> wrote: >> >>> Modified: trunk/arch/blackfin/mach-bf561/atomic.S (9019 => 9020) >> >>> @@ -71,6 +71,8 @@ >> >>> SSYNC(r2); >> >>> jump .Lretry_corelock_noflush >> >>> .Ldone_corelock_noflush: >> >>> + nop; >> >>> + CSYNC(r2); >> >> >> >>why the NOP ? the CSYNC() macro already takes care of padding >> >>things correctly. >> > >> > I also think NOP is no necessary. But, the SMP kgdb single step >> > fails without this nop. >> >> add an inline comment then noting this ? otherwise someone might >> scrub it in the future without retesting. > >This seems fishy to me... > >The CSYNC already does: > >#define CSYNC(scratch) cli scratch; nop; nop; nop; CSYNC; sti scratch; > >Do things work if it is SSYNC?
Do you mean replace CSYNC(r2) with SSYNC? Sonic > >-Robin > _______________________________________________ Linux-kernel-commits mailing list [email protected] https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits
