On 12/2/19, John Baldwin <[email protected]> wrote: > On 11/30/19 11:33 AM, Mateusz Guzik wrote: >> Author: mjg >> Date: Sat Nov 30 19:33:02 2019 >> New Revision: 355241 >> URL: https://svnweb.freebsd.org/changeset/base/355241 >> >> Log: >> smp: cast the read in quiesce_all_critical through void * >> >> Fixes compilation on some 32-bit arm platforms. >> >> Sponsored by: The FreeBSD Foundation >> >> Modified: >> head/sys/kern/subr_smp.c >> >> Modified: head/sys/kern/subr_smp.c >> ============================================================================== >> --- head/sys/kern/subr_smp.c Sat Nov 30 19:21:29 2019 (r355240) >> +++ head/sys/kern/subr_smp.c Sat Nov 30 19:33:02 2019 (r355241) >> @@ -952,7 +952,7 @@ quiesce_all_critical(void) >> break; >> cpu_spinwait(); >> newtd = (struct thread *) >> - atomic_load_acq_ptr((u_long *)pcpu->pc_curthread); >> + atomic_load_acq_ptr((void *)pcpu->pc_curthread); > > Why not uintptr_t *? I think that's the defined type for atomic_*_ptr > anyway? >
I have no strong opinion one way or the other. However, the real fix would make these routines work without casting for cases like the above. -- Mateusz Guzik <mjguzik gmail.com> _______________________________________________ [email protected] mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "[email protected]"
