<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Tianocore/edk2.git/MdePkg/Library/BaseSynchronizationLib/SynchronizationGcc.c, branch master</title>
<subtitle>EDK II (mirror)</subtitle>
<id>https://git.radix-linux.su/Tianocore/edk2.git/atom?h=master</id>
<link rel='self' href='https://git.radix-linux.su/Tianocore/edk2.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/'/>
<updated>2021-12-07T17:24:28+00:00</updated>
<entry>
<title>MdePkg: Apply uncrustify changes</title>
<updated>2021-12-07T17:24:28+00:00</updated>
<author>
<name>Michael Kubacki</name>
<email>michael.kubacki@microsoft.com</email>
</author>
<published>2021-12-05T22:54:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=2f88bd3a1296c522317f1c21377876de63de5be7'/>
<id>urn:sha1:2f88bd3a1296c522317f1c21377876de63de5be7</id>
<content type='text'>
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3737

Apply uncrustify changes to .c/.h files in the MdePkg package

Cc: Andrew Fish &lt;afish@apple.com&gt;
Cc: Leif Lindholm &lt;leif@nuviainc.com&gt;
Cc: Michael D Kinney &lt;michael.d.kinney@intel.com&gt;
Signed-off-by: Michael Kubacki &lt;michael.kubacki@microsoft.com&gt;
Reviewed-by: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
</content>
</entry>
<entry>
<title>MdePkg: Replace BSD License with BSD+Patent License</title>
<updated>2019-04-09T17:58:13+00:00</updated>
<author>
<name>Michael D Kinney</name>
<email>michael.d.kinney@intel.com</email>
</author>
<published>2019-04-03T23:06:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=9344f0921518309295da89c221d10cbead8531aa'/>
<id>urn:sha1:9344f0921518309295da89c221d10cbead8531aa</id>
<content type='text'>
https://bugzilla.tianocore.org/show_bug.cgi?id=1373

Replace BSD 2-Clause License with BSD+Patent License.  This change is
based on the following emails:

  https://lists.01.org/pipermail/edk2-devel/2019-February/036260.html
  https://lists.01.org/pipermail/edk2-devel/2018-October/030385.html

RFCs with detailed process for the license change:

  V3: https://lists.01.org/pipermail/edk2-devel/2019-March/038116.html
  V2: https://lists.01.org/pipermail/edk2-devel/2019-March/037669.html
  V1: https://lists.01.org/pipermail/edk2-devel/2019-March/037500.html

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Michael D Kinney &lt;michael.d.kinney@intel.com&gt;
Reviewed-by: Liming Gao &lt;liming.gao@intel.com&gt;
</content>
</entry>
<entry>
<title>MdePkg/SynchronizationLib: fix Interlocked[De|In]crement return value</title>
<updated>2018-09-25T02:02:53+00:00</updated>
<author>
<name>Ruiyu Ni</name>
<email>ruiyu.ni@intel.com</email>
</author>
<published>2018-09-07T09:26:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=17634d026f968c404b039a8d8431b6389dd396ea'/>
<id>urn:sha1:17634d026f968c404b039a8d8431b6389dd396ea</id>
<content type='text'>
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1197

Today's InterlockedIncrement()/InterlockedDecrement() guarantees to
perform atomic increment/decrement but doesn't guarantee the return
value equals to the new value.

The patch fixes the behavior to use "XADD" instruction to guarantee
the return value equals to the new value.

The patch calls intrinsic functions for MSVC tool chain, calls the
NASM implementation for INTEL tool chain and calls GCC inline
assembly implementation (GccInline.c) for GCC tool chain.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ruiyu Ni &lt;ruiyu.ni@intel.com&gt;
Cc: Jiewen Yao &lt;jiewen.yao@intel.com&gt;
Reviewed-by: Liming Gao &lt;liming.gao@intel.com&gt;
Cc: Michael D Kinney &lt;michael.d.kinney@intel.com&gt;
</content>
</entry>
<entry>
<title>MdePkg: Clean up source files</title>
<updated>2018-06-28T03:19:47+00:00</updated>
<author>
<name>Liming Gao</name>
<email>liming.gao@intel.com</email>
</author>
<published>2018-06-27T13:11:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=9095d37b8fe5bfc3d02adad6ba7fd7359ebc0107'/>
<id>urn:sha1:9095d37b8fe5bfc3d02adad6ba7fd7359ebc0107</id>
<content type='text'>
1. Do not use tab characters
2. No trailing white space in one line
3. All files must end with CRLF

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Liming Gao &lt;liming.gao@intel.com&gt;
</content>
</entry>
<entry>
<title>MdePkg/BaseSynchronizationLib: Add volatile Interlocked*() APIs</title>
<updated>2016-11-18T01:08:19+00:00</updated>
<author>
<name>Michael Kinney</name>
<email>michael.d.kinney@intel.com</email>
</author>
<published>2016-11-16T22:37:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=4cee954ea8063ab2a911e418d8a9e7a179df212b'/>
<id>urn:sha1:4cee954ea8063ab2a911e418d8a9e7a179df212b</id>
<content type='text'>
The SpinLock functions in the SynchronicationLib use volatile
parameters to keep compiler from optimizing these functions
too much.  The volatile keyword is missing from the Interlocked*()
functions in this same library instance.  Update the library instance
to consistently use volatile on all functions in the
SynchronizationLib class.

Cc: Liming Gao &lt;liming.gao@intel.com&gt;
Cc: Laszlo Ersek &lt;lersek@redhat.com&gt;
Cc: Andrew Fish &lt;afish@apple.com&gt;
Cc: Jeff Fan &lt;jeff.fan@intel.com&gt;
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Michael Kinney &lt;michael.d.kinney@intel.com&gt;
Reviewed-by: Laszlo Ersek &lt;lersek@redhat.com&gt;
Reviewed-by: Liming Gao &lt;liming.gao@intel.com&gt;
</content>
</entry>
<entry>
<title>MdePkg/BaseSynchronizationLib: Add spin lock alignment for IA32/x64</title>
<updated>2016-04-05T06:07:15+00:00</updated>
<author>
<name>Jeff Fan</name>
<email>jeff.fan@intel.com</email>
</author>
<published>2016-03-21T05:36:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=5f0a17d83a6443931068d428600824276ca2bd37'/>
<id>urn:sha1:5f0a17d83a6443931068d428600824276ca2bd37</id>
<content type='text'>
From Intel(R) 64 and IA-32 Architectures Software Developer's Manual, one lock
or semaphore is suggested to be present within a cache line. If the processors
are based on Intel NetBurst microarchitecture, two cache lines are suggested.
This could minimize the bus traffic required to service locks.

Cc: Michael Kinney &lt;michael.d.kinney@intel.com&gt;
Cc: Liming Gao &lt;liming.gao@intel.com&gt;
Cc: Star Zeng &lt;star.zeng@intel.com&gt;
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeff Fan &lt;jeff.fan@intel.com&gt;
Reviewed-by: Liming Gao &lt;liming.gao@intel.com&gt;
Reviewed-by: Star Zeng &lt;star.zeng@intel.com&gt;
</content>
</entry>
<entry>
<title>MdePkg/BaseSynchronizationLib: Do not check timeout if lock released</title>
<updated>2016-04-05T06:07:15+00:00</updated>
<author>
<name>Jeff Fan</name>
<email>jeff.fan@intel.com</email>
</author>
<published>2016-03-21T05:26:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=0f18e1eda2a807283484adfbf5eaae6a92b1ffa7'/>
<id>urn:sha1:0f18e1eda2a807283484adfbf5eaae6a92b1ffa7</id>
<content type='text'>
Current AcquireSpinLock() will check if timeout happens when PcdSpinLockTimeout
is not zero, even though the spin lock is already released. It may do
unnecessary operation to read timer's counter. This update is trying to acquire
spin lock firstly. If it could be acquired successfully, needn't to check
timeout at all.

Cc: Michael Kinney &lt;michael.d.kinney@intel.com&gt;
Cc: Liming Gao &lt;liming.gao@intel.com&gt;
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeff Fan &lt;jeff.fan@intel.com&gt;
Reviewed-by: Liming Gao &lt;liming.gao@intel.com&gt;
</content>
</entry>
<entry>
<title>MdePkg/BaseSynchronizationLib: Add InterlockedCompareExchange16</title>
<updated>2015-02-28T20:31:54+00:00</updated>
<author>
<name>Ard Biesheuvel</name>
<email>ard.biesheuvel@linaro.org</email>
</author>
<published>2015-02-28T20:31:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=9b89163eea30762f7ab91dcdc414820173cbf858'/>
<id>urn:sha1:9b89163eea30762f7ab91dcdc414820173cbf858</id>
<content type='text'>
This implements the function InterlockedCompareExchange16 () for all
architectures, using architecture and toolchain specific intrinsics
or primitive assembler instructions.

Contributed-under: TianoCore Contribution Agreement 1.0
Reviewed-by: Olivier Martin &lt;olivier.martin@arm.com&gt;
Acked-by: Jordan Justen &lt;jordan.l.justen@intel.com&gt;
Reviewed-by: Michael Kinney &lt;michael.d.kinney@intel.com&gt;
Signed-off-by: Ard Biesheuvel &lt;ard.biesheuvel@linaro.org&gt;
Signed-off-by: Laszlo Ersek &lt;lersek@redhat.com&gt;

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16966 6f19259b-4bc3-4df7-8a09-765794883524
</content>
</entry>
<entry>
<title>Clarify alignment of GetSpinLockProperties() is byte alignment.</title>
<updated>2012-03-07T01:40:44+00:00</updated>
<author>
<name>lgao4</name>
<email>lgao4@6f19259b-4bc3-4df7-8a09-765794883524</email>
</author>
<published>2012-03-07T01:40:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=744265eb0af7bb4bdc4a00fadb1f68795f3b6894'/>
<id>urn:sha1:744265eb0af7bb4bdc4a00fadb1f68795f3b6894</id>
<content type='text'>
Signed-off-by: lgao4
Reviewed-by: mdkinney

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13086 6f19259b-4bc3-4df7-8a09-765794883524
</content>
</entry>
<entry>
<title>Minor grammatical work--mostly adding periods.  Items with ONLY period added did not have the heading date changed, but Items with content changes had heading copyright dates updated.  Sending  separately a list of files missing Doxygen @param and @return information. (PENDING)</title>
<updated>2010-06-25T21:56:02+00:00</updated>
<author>
<name>myronporter</name>
<email>myronporter@6f19259b-4bc3-4df7-8a09-765794883524</email>
</author>
<published>2010-06-25T21:56:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=2fc59a003ed9104f9feebe0e418f2a04a50f3284'/>
<id>urn:sha1:2fc59a003ed9104f9feebe0e418f2a04a50f3284</id>
<content type='text'>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10604 6f19259b-4bc3-4df7-8a09-765794883524
</content>
</entry>
</feed>
