Skip to content

Use non-deprecated TBB headers in pxr/base/work#2321

Merged
pixar-oss merged 1 commit intoPixarAnimationStudios:devfrom
nvmkuruc:taskgroup
Aug 4, 2023
Merged

Use non-deprecated TBB headers in pxr/base/work#2321
pixar-oss merged 1 commit intoPixarAnimationStudios:devfrom
nvmkuruc:taskgroup

Conversation

@nvmkuruc
Copy link
Copy Markdown
Collaborator

@nvmkuruc nvmkuruc commented Mar 2, 2023

Description of Change(s)

tbb/task.h is deprecated / removed in newer versions of TBB, but tbb/task_group.h is not. Using tbb/task_group.h when possible reduces the warning count when building with TBB 2020.3 and is a small step in making pxr/base/work compatible with oneAPI.

Fixes Issue(s)

  • I have verified that all unit tests pass with the proposed changes
  • I have submitted a signed Contributor License Agreement

@sunyab
Copy link
Copy Markdown
Contributor

sunyab commented Mar 14, 2023

Filed as internal issue #USD-8082

@pixar-oss pixar-oss merged commit f5c0360 into PixarAnimationStudios:dev Aug 4, 2023
@nvmkuruc nvmkuruc deleted the taskgroup branch December 29, 2023 03:10
musicinmybrain pushed a commit to musicinmybrain/OpenUSD that referenced this pull request Apr 7, 2026
…ixarAnimationStudios#2321)

Pointer arithmetic involving `srcbuffer` in the `unpack_*` functions
can overflow for very wide images.

Multiplying `int w` by a bytes-per-element constant (2, 4, 6, or 8) in
`srcbuffer +=` expressions causes signed integer overflow when the
image width is large.

Promote the leading operand to `int64_t` at every affected multiplication
so pointer arithmetic is performed in 64-bit signed arithmetic throughout,
eliminating the undefined behavior without imposing any image size limit.

Affected sites: `generic_unpack`, `unpack_16bit`, `unpack_32bit`, and
all 3- and 4-channel interleave/planar specializations.

Made-with: Cursor

Signed-off-by: Cary Phillips <cary@ilm.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants