[parisc-linux] Re: [parisc-linux-cvs] linux carlos
Joel Soete
jsoe0708@tiscali.be
Fri, 29 Aug 2003 17:59:53 +0200
>If you use fdc, fic, or pdc then they are broadcast to other
>processors, but fdce and fice are not.
Hi Jim and al,
I just noticed the two following loops:
flush_data_cache_local:
[...]
fdmanyloop: /* Loop if LOOP >= 2 */
ADDIB> -1,%r31,fdmanyloop /* Adjusted inner loop decr
*/
fdce 0(%sr1,%arg0)
fdce,m %arg1(%sr1,%arg0) /* Last fdce and addr adjust
*/
movb,tr %arg3,%r31,fdmanyloop /* Re-init inner loop count
*/
ADDIB<=,n -1,%arg2,fdsync /* Outer loop decr */
fdoneloop: /* Loop if LOOP = 1 */
ADDIB> -1,%arg2,fdoneloop /* Outer loop count decr
*/
fdce,m %arg1(%sr1,%arg0) /* Fdce for one loop */
fdsync:
syncdma
sync
mtsm %r22
bv %r0(%r2)
nop
.exit
.procend
[...]
flush_instruction_cache_local:
[...]
fimanyloop: /* Loop if LOOP >= 2 */
ADDIB> -1,%r31,fimanyloop /* Adjusted inner loop decr
*/
fice 0(%sr1,%arg0)
fice,m %arg1(%sr1,%arg0) /* Last fice and addr adjust
*/
movb,tr %arg3,%r31,fimanyloop /* Re-init inner loop count
*/
ADDIB<=,n -1,%arg2,fisync /* Outer loop decr */
fioneloop: /* Loop if LOOP = 1 */
ADDIB> -1,%arg2,fioneloop /* Outer loop count decr
*/
fice,m %arg1(%sr1,%arg0) /* Fice for one loop */
fisync:
sync
bv %r0(%r2)
nop
.exit
.procend
Do you think that could be there where the pb occurs?
Thanks for advise,
Joel
-------------------------------------------------------------------------
Tiscali ADSL, seulement 35 eur/mois et le modem est inclus...abonnez-vous!
http://reg.tiscali.be/default.asp?lg=fr