Atomic operations (official support?)

The Solaris kernel has the following functions for atomic operations (see
below). I can find no evidence that they are officially supported by Sun
Microsystems. Anyone have more info? I'm writing a device driver, and need
atomic functionality. Are these functions safe to use?
$ nm -p /dev/ksyms | grep atomic
00000268641708 T atomic_add_16
00000268641708 T atomic_add_16_nv
00000268641780 T atomic_add_32
00000268641780 T atomic_add_32_nv
00000268641812 T atomic_add_64
00000268641812 T atomic_add_64_nv
00000268641812 T atomic_add_long
00000268641812 T atomic_add_long_nv
00000268641876 T atomic_and_32
00000268641876 T atomic_and_uint
00000268641844 T atomic_or_32
00000268641844 T atomic_or_uint

Safe to use.
Check /usr/include/sys/atomic.h
* Copyright (c) 1996-1999 by Sun Microsystems, Inc.
* All rights reserved.
#ifndef SYSATOMIC_H
#define SYSATOMIC_H
#pragma ident "@(#)atomic.h 1.7 99/08/15 SMI"
#include <sys/types.h>
#include <sys/inttypes.h>
#ifdef __cplusplus
extern "C" {
#endif
* Add delta to target
extern void atomic_add_16(uint16_t *target, int16_t delta);
extern void atomic_add_32(uint32_t *target, int32_t delta);
extern void atomic_add_long(ulong_t *target, long delta);
extern void atomic_add_64(uint64_t *target, int64_t delta);
* logical OR bits with target
extern void atomic_or_uint(uint_t *target, uint_t bits);
extern void atomic_or_32(uint32_t *target, uint32_t bits);
* logical AND bits with target
extern void atomic_and_uint(uint_t *target, uint_t bits);
extern void atomic_and_32(uint32_t *target, uint32_t bits);
* As above, but return the new value. Note that these _nv() variants are
* substantially more expensive on some platforms than the no-return-value
* versions above, so don't use them unless you really need to know the
* new value atomically (e.g. when decrementing a reference count and
* checking whether it went to zero).
extern uint16_t atomic_add_16_nv(uint16_t *target, int16_t delta);
extern uint32_t atomic_add_32_nv(uint32_t *target, int32_t delta);
extern ulong_t atomic_add_long_nv(ulong_t *target, long delta);
extern uint64_t atomic_add_64_nv(uint64_t *target, int64_t delta);
* If target == cmp, set target = newval; return old value
extern uint32_t cas32(uint32_t *target, uint32_t cmp, uint32_t newval);
extern ulong_t caslong(ulong_t *target, ulong_t cmp, ulong_t newval);
extern uint64_t cas64(uint64_t *target, uint64_t cmp, uint64_t newval);
extern void casptr(void target, void cmp, void newval);
* Generic memory barrier used during lock entry, placed after the
* memory operation that acquires the lock to guarantee that the lock
* protects its data. No stores from after the memory barrier will
* reach visibility, and no loads from after the barrier will be
* resolved, before the lock acquisition reaches global visibility.
extern void membar_enter(void);
* Generic memory barrier used during lock exit, placed before the
* memory operation that releases the lock to guarantee that the lock
* protects its data. All loads and stores issued before the barrier
* will be resolved before the subsequent lock update reaches visibility.
extern void membar_exit(void);
* Arrange that all stores issued before this point in the code reach
* global visibility before any stores that follow; useful in producer
* modules that update a data item, then set a flag that it is available.
* The memory barrier guarantees that the available flag is not visible
* earlier than the updated data, i.e. it imposes store ordering.
extern void membar_producer(void);
* Arrange that all loads issued before this point in the code are
* completed before any subsequent loads; useful in consumer modules
* that check to see if data is available and read the data.
* The memory barrier guarantees that the data is not sampled until
* after the available flag has been seen, i.e. it imposes load ordering.
extern void membar_consumer(void);
#if defined(_LP64) || defined(_ILP32)
#define atomic_add_ip atomic_add_long
#define atomic_add_ip_nv atomic_add_long_nv
#define casip caslong
#endif
#ifdef __cplusplus
#endif
#endif /* SYSATOMIC_H */

Similar Messages

  • LF official support, Lenovo G780 defect

    Hello everyone. 
    Writing here in desperation since I don't know where to turn to. I'm angry, desperate and disappointed. 
    Some time in september I bought a Lenovo G780 i5-3230M laptop. After a while there were problems, mainly the fact that the screen stopped workingi in certain conditions. In November I sent it to the place i bought it from, they returned it to me, thinking its fixed, it wasn't.
    I sent it back and on December 3rd a journey started, which hasn't ended still. I live in Bulgaria, the laptop was sent to Poland (because there wasnt a service center here) I think 3 times and they always return it unchanged. A service center opened in Bulgaria, where we were supposed to send it, and when we did, they said that the problem cannot be fixed anytime soon "due to objective reasons".
    I am disappointed in the customer service, especially due to the fact that on the phone they said they would replace it the last time it was sent to Poland. I've owned this laptop for 7 months and have used it for two. Since Bulgarian Lenovo branch won't be of any help I'm looking for some official support e-mail or phone or whatever because I've been doing everything on my Acer Aspire netbook for 4, almost 5 months now and it's not comfortable to use for a main computer. If anyone knows of such a contact or has any advice, please help, I don't want to have to "force" my legal rights.
    TL;DR Is there an official customer support email (NOT LOCAL) where i can direct complaints and seek support. 
    Thank you all for your time.
    P.S. This same topic is in the Lenovo 3000 subforum, because I didn't realize there was a general discussion subforum. If a moderator can delete that topic, I woul be grateful.

    Hello
    Replying to Solid_Cruver
    Looking at the eightforum example you will see that a product key is needed. This is what  johnnyk715
    is stating:  Windows 8 OEM on G780, also my case, does not have the Product Key available.
    I have asked Microsoft directly whether Windows 8 OEM can perform reset refresh without Installation CD and without
    Product key as the case of buying Windows OEM machines, and it was stated
    Quote  
    to perform reset\refresh you need Operating System disc and you need Product key for activating Operating System.
    I would suggest you to contact Lenovo support team for assistance. They should be able to provide you the Operating System disc and product key for the same.
    http://forums.lenovo.com/ 
    End quote
    Do you know where can I get this Windows 8 Operating System disk and product key of my new G780 machine?
    By the way Unfortunately I split already the Windows8_OS partition, therefore I am not sure I can still use the Onekey restore by Lenovo.
    Thanks

  • Error Message: Photoshop detected graphics hardware that is not officially supported.

    When I first installed the Beta version of CS6 a message saying "Photoshop detected graphics hardware that is not officially supported." came up. When I tried using the Oil Paint filter this came up.
    http://i338.photobucket.com/albums/n426/island_girl6363/GraphicsError.png
    How can I fix this?

    Adobe Photoshop Version: 13.0 (13.0 20120305.m.415 2012/03/05:21:00:00) x32
    Operating System: Windows 7 64-bit
    Version: 6.1 Service Pack 1
    System architecture: Intel CPU Family:6, Model:5, Stepping:5 with MMX, SSE Integer, SSE FP, SSE2, SSE3
    Physical processor count: 2
    Processor speed: 2128 MHz
    Built-in memory: 3767 MB
    Free memory: 1725 MB
    Memory available to Photoshop: 3230 MB
    Memory used by Photoshop: 60 %
    Image tile size: 128K
    Image cache levels: 4
    OpenGL Drawing: Enabled.
    OpenGL Drawing Mode: Basic
    OpenGL Allow Normal Mode: False.
    OpenGL Allow Advanced Mode: False.
    OpenGL Allow Old GPUs: Not Detected.
    Video Card Vendor: Intel
    Video Card Renderer: Intel(R) HD Graphics
    Display: 1
    Display Bounds:=  top: 0, left: 0, bottom: 768, right: 1366
    Video Card Number: 1
    Video Card: Intel(R) HD Graphics
    OpenCL Unavailable
    Driver Version: 8.15.10.2202
    Driver Date: 20100825000000.000000-000
    Video Card Driver: igdumd64.dll,igd10umd64.dll,igdumdx32,igd10umd32
    Video Mode: 1366 x 768 x 4294967296 colors
    Video Card Caption: Intel(R) HD Graphics
    Video Card Memory: 1755 MB
    Video Rect Texture Size: 4096
    Serial number: Tryout Version
    Does this help? It didn't say 2000 or 3000 (or at least that I could tell)

  • Photoshop detected graphics hardware that is not officially supported. If you experience problems pl

    This alert happens everytime i open anything in photoshop and it prevents me from opening anything "Photoshop detected graphics hardware that is not officially supported. If you experience problems please uncheck the use graphics processor check-box in the performance panel of the preferences dialog" But in graphics processor settings it says no GPU options available with photoshop standard. I have photoshop standard so this clearly isn't the problem...Can anyone help?
    thank you

    Adobe Photoshop Version: 13.0 (13.0 20120305.m.415 2012/03/05:21:00:00) x32
    Operating System: Windows 7 64-bit
    Version: 6.1 Service Pack 1
    System architecture: Intel CPU Family:6, Model:5, Stepping:5 with MMX, SSE Integer, SSE FP, SSE2, SSE3
    Physical processor count: 2
    Processor speed: 2128 MHz
    Built-in memory: 3767 MB
    Free memory: 1725 MB
    Memory available to Photoshop: 3230 MB
    Memory used by Photoshop: 60 %
    Image tile size: 128K
    Image cache levels: 4
    OpenGL Drawing: Enabled.
    OpenGL Drawing Mode: Basic
    OpenGL Allow Normal Mode: False.
    OpenGL Allow Advanced Mode: False.
    OpenGL Allow Old GPUs: Not Detected.
    Video Card Vendor: Intel
    Video Card Renderer: Intel(R) HD Graphics
    Display: 1
    Display Bounds:=  top: 0, left: 0, bottom: 768, right: 1366
    Video Card Number: 1
    Video Card: Intel(R) HD Graphics
    OpenCL Unavailable
    Driver Version: 8.15.10.2202
    Driver Date: 20100825000000.000000-000
    Video Card Driver: igdumd64.dll,igd10umd64.dll,igdumdx32,igd10umd32
    Video Mode: 1366 x 768 x 4294967296 colors
    Video Card Caption: Intel(R) HD Graphics
    Video Card Memory: 1755 MB
    Video Rect Texture Size: 4096
    Serial number: Tryout Version
    Does this help? It didn't say 2000 or 3000 (or at least that I could tell)

  • N95 now officially support 4GB

    Now N95 officially support 4GB Microsd here is the link
    http://europe.nokia.com/products/accessories/all_accessories
    N8,N97,N96,N86,N95 8GB,N85,5800,N79,N918GB,N82, N81, N93, N80, N73ME, N70, 6680, 6600,5320,5130,7610,7650,,SIE SX1...................

    PRODUCT FEATURES:
    * High storage capacity (4GB) for storing essential digital content such as high quality photos, videos, music and more
    * Optimal speed and performance for microSDHC compatible devices
    * Speed performance rating: Class 2 (based on SD 2.00 Specification)
    * High Quality microSDHC card backed by 5 year limited warranty
    * Built to last, with an operating shock rating of 2,000Gs, equivalent to a ten-foot drop **
    * SanDisk microSDHC 4GB card ships with Bonus MicroMate USB 2.0 SD/SDHC Reader, to ensure compatibility when downloading pictures or other digital content
    * Easily transfer files between your digital devices and computer
    * High speed USB 2.0 certified reader/writer for fast data transfer
    USE FREE DELIVERY CODE:
    "MICROFREEDEL"
    SanDisk Micro SD 4GB ( Transflash Compatiable) + Reader SDSDQ-4096-E10
    http://www.memoryking.com/mall/departmentpage.cfm/MemoryKing/87875/1/1

  • Photoshop has detected graphics hardware that is not officially supported for 3d

    From what I've read I thought 512 MB or vRAM would work with 3d. It used to anyhow. I get the pop up that says it's not officially supported for 3d, and has temporarily disabled 3d functionality.
    I've tried setting the prefences under graphics processor settings to Basic, Normal, and Adavanced with no luck getting the 3d to work again. It was working fine before the last update to 13.1
    I'm using a Mac Pro with 8 GB RAM, NVIDIA GeForce 8800 GT 512 MB, System 10.8.2
    Using PS CS6 extended
    Adobe Photoshop Version: 13.1 (13.1 20121126.r.220 2012/11/26:23:00:00) x64
    Operating System: Mac OS 10.8.2
    System architecture: Intel CPU Family:6, Model:23, Stepping:6 with MMX, SSE Integer, SSE FP, SSE2, SSE3, SSE4.1
    Physical processor count: 8
    Processor speed: 3200 MHz
    Built-in memory: 8192 MB
    Free memory: 4618 MB
    Memory available to Photoshop: 7318 MB
    Memory used by Photoshop: 70 %
    Image tile size: 1024K
    Image cache levels: 4
    OpenGL Drawing: Enabled.
    OpenGL Drawing Mode: Basic
    OpenGL Allow Normal Mode: True.
    OpenGL Allow Advanced Mode: True.
    OpenGL Allow Old GPUs: Not Detected.
    OpenCL Unavailable
    OpenGL Version: 2.1
    Video Rect Texture Size: 8192
    OpenGL Memory: 444 MB
    Video Card Vendor: NVIDIA Corporation
    Video Card Renderer: NVIDIA GeForce 8800 GT OpenGL Engine
    Display: 2
    Display Depth: 32
    Display Bounds: top=0, left=-2560, bottom=1600, right=0
    Video Renderer ID: 16918024
    Video Card Memory: 512 MB
    Display: 1
    Main Display
    Display Depth: 32
    Display Bounds: top=0, left=0, bottom=1600, right=2560
    Video Renderer ID: 16918024
    Video Card Memory: 512 MB
    Serial number: Tryout Version
    Application folder: /Applications/Adobe Photoshop CS6/
    Photoshop scratch has async I/O enabled
    Scratch volume(s):
      Maczilla HD, 278.4G, 107.7G free
    Required Plug-ins folder: /Applications/Adobe Photoshop CS6/Adobe Photoshop CS6.app/Contents/Required/
    Primary Plug-ins folder: /Applications/Adobe Photoshop CS6/Plug-ins/
    Additional Plug-ins folder: not set
    Anyone have any ideas, or maybe I'm missing something. Nothing like getting an update and it busting what used to work. Dang!

    I can get into the 3d pref area, but not the pull down menu area at all. It's grey'd out now that I did the update.
    I just find it weird that the card is on the approved list, and meets the requirments and used to work. But yeah this mac is a few years old at this point. I'm just hoping that someone at Adobe reads this and can shed some light. I'm hoping maybe there's a button I need to click on, or something cheaper then buying an entire new computer when I really don't think I need to. Photoshop has really bloated up!

  • Atomic operations

    Hello,
    are there atomic operations available with Sun Studio on Linux? On Solaris there is atomic.h, gcc has Intel's __sync_* intrinsics, so I am looking for an alternative that doesn't involve writing assembler code.

    clamage45 wrote:
    Solaris 10 and Open Solaris have support for atomic operations, via <atomic.h>. You can use it in programs created with Sun Studio.Er, I must have missed something. I know how to use atomics on solaris (with any compiler) or with gcc (on any platform) but I don't know how to use atomics with Sun Studio on Linux (the case I am asking about).

  • Is office 2010 officially supported on windows server 2012 R2

    hello,
    can someone tell me if office 2010 is officially supported on windows server 2012 R2 RDS?
    This link only talks about Windows server 2012 not R2.
    Thanks in advance.
    Regards
    Anthony

    Hi Anthony,
    I successfully installed Microsoft Office Professional Plus 2010 on Windows Server 2012 R2 before in my testing environment.
    So yes, Office 2010 is supported on Windows Server 2012 R2.
    Regards,
    Ethan Hua
    TechNet Community Support
    It's recommended to download and install
    Configuration Analyzer Tool (OffCAT), which is developed by Microsoft Support teams. Once the tool is installed, you can run it at any time to scan for hundreds of known issues in Office
    programs.

  • Is there a comprehensive list of third-party IDEs and/or debuggers that are officially supported with TFS?

    I've been searching the internet, TechNet, MSDN, etc.
    But I can't seem to find what I'm looking for.
    Has Microsoft published any lists of officially supported debuggers and/or IDEs?

    Hi Hamilton, 
    Thanks for your post.
    Why you need the third-party IDE/Debugger?
    We suggest use VS connect to TFS Server.
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Is Windows Azure officially supported for Exchange 2013?

    Though Exchange 2013 can be installed on Windows Azure, however can somebody help me in knowing that if its officially supported with it OR can live environment of Exchange be setup on Windows Azure?

    Hinte is correct.
    You can set up a Exchange 2013 lab in Azure. You may have seen that Henrik Walther has done just that:
    http://www.msexchange.org/articles-tutorials/office-365/exchange-online/deploying-exchange-2013-hybrid-lab-environment-windows-azure-part1.html
    But this is just for practice / training.
    Besides lack of support, cost of sufficient resources to run E2K13 correctly would be greater than simply using O365 / Exchange Online.
    Please mark as helpful if you find my contribution useful or as an answer if it does answer your question. That will encourage me - and others - to take time out to help you.

  • Official support of Firefox for corporate

    Dear sir,
    I'm working for a global company that develops the web server program and it has to align with all browsers. It's now declared IE compatible and next is going to be Firefox. From the Firefox Help page, it has been stated that support is done by worldwide volunteers. That's superb! Anyway, would like to know whether Firefox has an official support channel for corporate specifically? (Like having response time or root cause target date)
    Thank you and kind regards,
    Chavanath C.

    Nope - community support is all that is currently available

  • When i first inst photoshop cs6 i was able to see the 3D icon, but on the next time i used the program there is no more 3D icon. when i launch photoshop it say " photoshop detected graphic hardware is not officially supported if you experience problem ple

    when i first inst Photoshop cs6 i was able to see the 3D icon, but on the next time i used the program there is no more 3D icon. when i launch Photoshop it say " Photoshop detected graphic hardware is not officially supported if you experience problem please unchecked the use graphic processor check box in the performance panel of the preference dialog" Is this the cause? If so how to uncheck that box? Thanks

    Your video card is underpowered for the task.
    Go to Photoshop > Preferences > Performance and click on the tick mark next to the box labeled "Use Graphics Processor":

  • Oracle 10g/11g - Operating system support info required

    I want to know all the operating systems supported by oracle 10g and 11g. I searched through oracle tech. center, but failed to find this information.
    I want to know if oracle (10g/11g) is supported on Linux S/390?
    Thanks
    Mac

    Did you go through the certification matrix?
    http://www.oracle.com/technology/support/metalink/index.html

  • DBMS_SCHEDULER - ORA-02064: distributed operation not supported

    I am getting this error:
    ORA-02064: distributed operation not supported
    using the DBMS_SCHEDULER package in Database 10g. The code works successfully in PL/SQL DEVELOPER inside the database but when I try to run the code through PSP pages on the web, I get this error. The erro happens when this method is executed in DBMS_SCHEDULER:
    DBMS_SCHEDULER.CREATE_PROGRAM(
    PROGRAM_NAME => 'ROADS_FTP',
    PROGRAM_TYPE => 'STORED_PROCEDURE',
    PROGRAM_ACTION => 'pkg_report_t3.transfer_report',
    NUMBER_OF_ARGUMENTS => 0,
    ENABLED => FALSE,
    COMMENTS => 'Highway Driving Conditions FTP Program');
    Do anybody know how I can get this to work in a browser? Or why I am getting this error?
    Thanks!

    Agowda wrote:
    hi
    I'm just passing the values to the procedure .
    Procedure is stored on a remote machine
    procedure has a ddlAnd the DDL will implicitly issue a commit before and after that DDL statement (as all DDL statements do). So you ARE doing a commit in a romote procedure call, hence why you're getting the error.
    If you want to remotely create a user you need to issue the DDL in the manner I described.

  • My photoshop on adobe creative master suite collection keeps giving me a error on the graphics hardware that is not officially supported ? is that why i am having probelms submitted my photoshop to class.

    it keeps giving me a error that the graphics hardware that is not officially supported ? could this because of why i can't send my school work in?

    BOILERPLATE TEXT:
    Note that because this is boilerplate text, not all points may apply to any given, specific poster.
    If you give complete and detailed information about your setup and the issue at hand,
    such as your platform (Mac or Win),
    exact versions of your OS, of Photoshop (not just "CS6", but something like CS6v.13.0.6) and of Bridge,
    your settings in Photoshop > Preference > Performance
    the type of file you were working on,
    machine specs, such as total installed RAM, scratch file HDs, total available HD space, video card specs, including total VRAM installed,
    what troubleshooting steps you have taken so far,
    what error message(s) you receive,
    if having issues opening raw files also the exact camera make and model that generated them,
    if you're having printing issues, indicate the exact make and model of your printer, paper size, image dimensions in pixels (so many pixels wide by so many pixels high). if going through a RIP, specify that too.
    etc.,
    someone may be able to help you (not necessarily this poster).
    a screen shot of your settings or of the image could be very helpful too.
    Please read this FAQ for advice on how to ask your questions correctly for quicker and better answers:
    http://forums.adobe.com/thread/419981?tstart=0
    Thanks!

Maybe you are looking for

  • Setting RDC on macbook pro to connect with vista business computer at work

    Just Downloaded RDC on my macbook and need to connect with my office computer.  I can connect to the computer with other pc's but cannot seem to get it to connect with my mac. Not sure about the credentials because the computer is on a network at wor

  • Read optimization time-series data

    I am using Berkeley DB JE to store fairly high frequency (10hz) time-series data collected from ~80 sensors. The idea is to import a large number of csv files with this data, and allow quick access to time ranges of data to plot with a web front end.

  • PCI-card and /etc/path_to_inst

    Hello! I have a problem with my PCI-card (this is E1-controller) in SF V120 bash-3.00# uname -a SunOS CAREM2 5.10 Generic_118833-33 sun4u sparc SUNW,UltraAX-i2 When I place card in the PCI slot, information in /etc/path_to_inst is updates: bash-3.00#

  • Apps on blacberry z10 wont install

    I got a used blackberry z10, when i open blackberry world and click 'download' for an app. it says"starting download", but then i dont see it on my home screen or in the downloads. when i search the app again, the "download" button for the app is bir

  • Custom Fields notification header

    Hi Everyone, I have a lot of custom fields that I want to add at the header level of a general notification. Is there any way that I can leverage the classification system to do that? Is it possible to create a custom class type or something and have