[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [XEN PATCH v1] xen/arm : Add support for SMMUv3 driver
- To: Rahul Singh <Rahul.Singh@xxxxxxx>, Julien Grall <julien@xxxxxxx>
- From: Ash Wilding <Ash.Wilding@xxxxxxx>
- Date: Mon, 26 Oct 2020 12:10:51 +0000
- Accept-language: en-GB, en-US
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wzH2AXF6wZ2geie3ElaMTpTH+sb1YH5ncsADnPXMFeY=; b=Toa9Pxig8cT/G/uqM0Xwrv6uXFwmUDXiXx8aqxL7ieXw3NyZ8c/RWDt2jZG0YautAv8rfZp+C2lTL1i7+JXSsQmgqTKU2j7DqtA7tbPjJxv93Q3NC6nc7arbMNBn+UzsWtmgsPM/Iu6qTnUKcnGZgdCKABdw7zv7t2lmr1hwMrlCKMnx8DKrc8jH9yOwlggbIqDFKU+nK9l+pGOmq0kllLCCtJ9UeLjXLaPASM4ai3/tbrWH8ojQBmhqThJM+1g0rYRWPpeUstlQd3cNEYQn1DOvdj1sD0Q0Q+LsNYNcxWvG84dQMIvBJzFpOdk0p1JACLaIAR+swddzl0BQeN7cKw==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XJz0xg2HoyAgIGzILf/3/3YCm/J9PMXQrgfKuIOoSYlkwEzaCD0TX6oxOH6iIPUCQ6rw+Lp/xmd9uYpEUNN4cBLCbwjg4OxseBmoO5hJJlaKwYxoEuAwEb+TBiY9ahnVAEurTWO4P1LDcWXa6rRjyDYb0AHEurCxbvues6fJiYvjfpaF4jUGEP2Isk+v1HN0g/WmGPoW630MBp1D8LDToiBZn48KZdgAy9flkocUPcjBKEJqVmAePLiGlEGtE8kiChG9+xlxFVA4DbsbkikTHcFiY84pBsbQnBYfmAMPObkWzQS9nTZJ5PQwMifayNhzrYucmeAY/Y8B3Zx3kCkGcA==
- Authentication-results-original: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=arm.com;
- Cc: Stefano Stabellini <sstabellini@xxxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Bertrand Marquis <Bertrand.Marquis@xxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Paul Durrant <paul@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>
- Delivery-date: Mon, 26 Oct 2020 12:11:47 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
- Nodisclaimer: true
- Original-authentication-results: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=arm.com;
- Thread-index: AQHWpwMtpf2reu1cBEaQzJxkZyPH86mh66MAgAFiLYCAAQPggIAAwV4AgAAXwACAABiPAIAADkcAgARvegCAABLxAA==
- Thread-topic: [XEN PATCH v1] xen/arm : Add support for SMMUv3 driver
Hi,
> 1. atomic_set_release
> 2. atomic_fetch_andnot_relaxed
> 3. atomic_cond_read_relaxed
> 4. atomic_long_cond_read_relaxed
> 5. atomic_long_xor
> 6. atomic_set_release
> 7. atomic_cmpxchg_relaxed might be we can use atomic_cmpxchg that is
> implemented in XEN need to check.
> 8. atomic_dec_return_release
> 9. atomic_fetch_inc_relaxed
If we're going to pull in Linux's implementations of the above atomics
helpers for SMMUv3, and given the majority of SMMUv3 systems are v8.1+
with LSE, perhaps this would be a good time to drop the current
atomic.h in Xen completely and pull in both Linux's LL/SC and LSE
helpers, then use a new Kconfig to toggle between them?
Back in 5d45ecabe3 [1] Jan mentioned we probably want to avoid relying
on gcc atomics helpers as we can't switch between LL/SC and LSE
atomics. With the above we'd be able to drop the reference to gcc's
built-in __sync_fetch_and_add() in xen/include/asm-arm/system.h by
making arch_fetch_and_add() pull in the explicit implementation of the
helper.
Thoughts?
Thanks,
Ash.
[1] https://xenbits.xen.org/gitweb/?p=xen.git;a=commit;h=5d45ecabe3
|