Several thousand protesters rallied in Rome on Saturday to protest against what they criticised as unfair anti-migrant policies promoted by far-right Interior Minister Matteo Salvini.
Waving banners with slogans "Black lives matter" and "Welcome for all; Open the borders", leftists joined anti-racism activists, who organisers said came from 50 cities to defend migrants and protest a recent decree on asylum rights.
Italy's Senate, backed by Mr Salvini's Northern League party and the anti-establishment Five Star Movement, voted to clear the way for a decree that makes it easier to expel migrants and strip some of them of Italian citizenship.
The protest was to "say no to Salvini and no to racism", said Sergio Serraino, a member of an association that helps migrants, who took part.
The lower house of parliament has until the end of November to approve the decree, which ends "humanitarian protection" residency permits — a form of lower level asylum status in Italy. It also allows a fast-track for expulsions of "dangerous" asylum-seekers.
The United Nations refugee agency said the decree does not provide enough guarantees for the vulnerable or those with particular needs, such as victims of abuse or torture.
Mr Salvini, whose far-right party forms a ruling coalition with the Five Star Movement, accuses other EU members of letting Italy shoulder an unfair share of migrants.