• R/O
  • HTTP
  • SSH
  • HTTPS

List of commits

Tags
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

crossbeamパッケージ


RSS
Rev. Time Author
7de64fe 2020-02-11 00:32:28 cynecx

cleanup drop impl for ArrayQueue / Channel by eliminating one no-op drop_in_place

1a8cbe1 2020-02-11 00:32:28 cynecx

drop_in_place cleanups

d78de60 2020-02-11 00:32:28 cynecx

queue: add missing drop_in_place for array_queue slot values

dce3e11 2020-02-11 00:32:28 cynecx

channel: add missing drop_in_place for array channel flavour's msgs

5362ad3 2020-02-11 00:32:28 cynecx

epoch: remove Debug impl on Node

71d2799 2020-02-11 00:32:28 cynecx

channel: fix unsoundness issue in array flavor (introduce MaybeUninit)

6f3a3c1 2020-02-11 00:32:28 cynecx

queue: fix unsoundness issue in array_queue (introduce MaybeUninit)

f48c1c7 2020-02-11 00:32:28 cynecx

epoch: fix unsoundness in sync/queue.rs (ManuallyDrop/uninitialized -> MaybeUninit)

e0fd465 2020-02-11 00:25:00 cynecx

epoch: Fix fixme in deferred.rs (mem::uninitialized -> MaybeUninit)

68e8708 2020-02-11 00:25:00 cynecx

deque: Fix unsoundness issue (ManuallyDrop to MaybeUninit)

7b35a3d 2020-02-11 00:25:00 cynecx

SegQueue: Fix unsoundness issue (ManuallyDrop to MaybeUninit)

38d3087 2020-02-11 00:25:00 cynecx

channel: Fix unsoundness issue (ManuallyDrop to MaybeUninit)

0e91b78 2020-02-10 23:29:14 bors[bot]


Merge #466

466: fix use-after-free in crossbeam-epoch/sync/queue r=jeehoonkang a=tomtomjhj

`pop()` must completely unlink the popped node from the shared memory before it calls `defer_destroy()` to prevent use-after-free. This implementation is based on the variation by Doherty et al. where the `head == tail` check is done after a successful CAS, which can be slightly more efficient than the original MSQueue.

closes #238

Co-authored-by: Jaehwang Jerry Jung <tomtomjhj@gmail.com>

2618830 2020-02-03 17:10:16 Jaehwang Jerry Jung

fix use-after-free in crossbeam-epoch/sync/queue

pop() must completely unlink the popped node from the shared memory
before it calls defer_destroy() to prevent use-after-free. This
implementation is based on the variation by Doherty et al. where the
`head == tail` check is done after a successful CAS, which can be
slightly more efficient than the original version.

closes #238

ebecb82 2020-01-21 19:31:39 bors[bot]


Merge #376

376: Reduce stall in list iteration r=stjepang a=jeehoonkang

In list iteration, even though the CAS to delete a node fails, the iteration may be able to proceed by re-reading the predecessor's next pointer. A more precise explanation is in the comments.

Co-authored-by: Jeehoon Kang <jeehoon.kang@kaist.ac.kr>

ef372be 2020-01-17 14:28:49 bors[bot]


Merge #448

448: Don't steal from the same deque r=stjepang a=stjepang

This PR checks whether the source and destination deque are the same when stealing tasks. If so, we return from the function early.

Co-authored-by: Stjepan Glavina <stjepang@gmail.com>

131ff9a 2020-01-17 14:02:53 Stjepan Glavina

rustfmt

2c10be9 2020-01-10 10:19:16 bors[bot]


Merge #460

460: Upgrade to autocfg 1 r=jeehoonkang a=cuviper



Co-authored-by: Josh Stone <cuviper@gmail.com>

bebf25e 2020-01-10 09:02:18 Josh Stone

Upgrade to autocfg 1

833ec65 2019-12-25 22:00:29 bors[bot]


Merge #456

456: Simplify tick channel r=stjepang a=stjepang

Due to the way `recv()` was implemented for the tick flavor, there was always some unintended drift because we had a loop that sleeps until the next tick and then checks if the tick happened.

This PR simplifies the `recv()` method and fixes the drift. Now we try to receive the message first and *then* sleep until the next tick.

Fixes #406

Co-authored-by: Stjepan Glavina <stjepang@gmail.com>

7098bec 2019-12-25 19:40:59 Stjepan Glavina

Fix delivery time in recv()

9b67a8a 2019-12-25 07:09:54 Stjepan Glavina

Simplify tick channel

752fe52 2019-12-25 03:50:10 Stjepan Glavina

Bump crossbeam-queue to v0.2.1

e594ff5 2019-12-25 03:48:34 Stjepan Glavina


Add no_std support to crossbeam-queue (#455)

Add no_std support to crossbeam-queue

9306d4d 2019-12-25 03:32:07 Stjepan Glavina

Add no_std support to crossbeam-queue

355d65f 2019-12-20 03:16:10 bors[bot]


Merge #454

454: Make AtomicCell lockfree for u8, u16, u32, u64 sized values. r=jeehoonkang a=manuthambi

Fixes #423

Co-authored-by: Manu Thambi <manu@meshcapital.com>

11fbf05 2019-12-20 02:36:09 Manu Thambi

Use integer atomics for for u8, u16, u32, u64 to implement lockfree AtomicCell
for types with those widths.

Integer atomics are stable starting rust 1.34. Use autocfg to cleanup
the detection of availability of atomics for both stable and nightly.

Issue #454

424f926 2019-11-20 23:24:47 bors[bot]


Merge #450

450: Format with rustfmt r=stjepang a=taiki-e

This fix build failure in #449 and #448

It seems old rustfmt did not properly format the module in the macro.

Co-authored-by: Taiki Endo <te316e89@gmail.com>

c0a999d 2019-11-20 23:24:07 Stjepan Glavina


Merge pull request #449 from ericseppanen/master

fix broken doc link

8dcdf99 2019-11-20 21:15:14 Taiki Endo

Format with rustfmt