search for: atomic_t

Displaying 20 results from an estimated 520 matches for "atomic_t".

2013 Sep 12
6
[PATCH] RFC xen: suppress Coverity warnings about atomic_read and atomic_set.
...ed with pointers to objects smaller than 64 bits (because it can''t see that the 64-bit access in the switych statement is dead code). I don''t want to automatically suppress all ofthose, because read_atomic() and write_atomic() could still be called with mis-cast pointers, but for atomic_t accessors it''s pretty clealry always safe. RFC because I''m not sure what people think about scattering coverity annotations in the code. Signed-off-by: Tim Deegan <tim@xen.org> --- xen/include/asm-x86/atomic.h | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 delet...
2011 Dec 09
10
[PATCH 0/3] Btrfs: add IO error device stats
The goal is to detect when drives start to get an increased error rate, when drives should be replaced soon. Therefore statistic counters are added that count IO errors (read, write and flush). Additionally, the software detected errors like checksum errors and corrupted blocks are counted. An ioctl interface is added to get the device statistic counters. A second ioctl is added to atomically get
2007 Mar 27
0
[PATCH] make all performance counter per-cpu
...64/xen/privop_stat.c 2006-08-31 15:26:11.000000000 +0200 +++ 2007-03-19/xen/arch/ia64/xen/privop_stat.c 2007-03-27 16:37:00.000000000 +0200 @@ -10,48 +10,39 @@ struct privop_addr_count { unsigned long addr[PRIVOP_COUNT_NADDRS]; unsigned int count[PRIVOP_COUNT_NADDRS]; unsigned int overflow; - atomic_t *perfc_addr; - atomic_t *perfc_count; - atomic_t *perfc_overflow; }; -#undef PERFCOUNTER -#define PERFCOUNTER(var, name) - -#undef PERFCOUNTER_CPU -#define PERFCOUNTER_CPU(var, name) +struct privop_addr_info { + enum perfcounter perfc_addr; + enum perfcounter perfc_count; + enum perfcounter pe...
2014 Apr 17
2
[PATCH v9 05/19] qspinlock: Optimize for smaller NR_CPUS
On Thu, Apr 17, 2014 at 11:03:57AM -0400, Waiman Long wrote: > +struct __qspinlock { > + union { > + atomic_t val; > + struct { > +#ifdef __LITTLE_ENDIAN > + u16 locked_pending; > + u16 tail; > +#else > + u16 tail; > + u16 locked_pending; > +#endif > + }; > + }; > +}; > + > +/** > + * clear_pending_set_locked - take ownership and clear the pending bit. &g...
2014 Apr 17
2
[PATCH v9 05/19] qspinlock: Optimize for smaller NR_CPUS
On Thu, Apr 17, 2014 at 11:03:57AM -0400, Waiman Long wrote: > +struct __qspinlock { > + union { > + atomic_t val; > + struct { > +#ifdef __LITTLE_ENDIAN > + u16 locked_pending; > + u16 tail; > +#else > + u16 tail; > + u16 locked_pending; > +#endif > + }; > + }; > +}; > + > +/** > + * clear_pending_set_locked - take ownership and clear the pending bit. &g...
2010 Aug 03
2
[PATCH 6/6] staging: hv: Gracefully handle SCSI resets
...insertions(+), 1 deletions(-) diff --git a/drivers/staging/hv/storvsc.c b/drivers/staging/hv/storvsc.c index 6bd2ff1..5f222cf 100644 --- a/drivers/staging/hv/storvsc.c +++ b/drivers/staging/hv/storvsc.c @@ -48,7 +48,9 @@ struct storvsc_device { /* 0 indicates the device is being destroyed */ atomic_t RefCount; - + + int reset; + spinlock_t lock; atomic_t NumOutstandingRequests; /* @@ -93,6 +95,9 @@ static inline struct storvsc_device *AllocStorDevice(struct hv_device *Device) atomic_cmpxchg(&storDevice->RefCount, 0, 2); storDevice->Device = Device; + storDevice->reset...
2010 Aug 03
2
[PATCH 6/6] staging: hv: Gracefully handle SCSI resets
...insertions(+), 1 deletions(-) diff --git a/drivers/staging/hv/storvsc.c b/drivers/staging/hv/storvsc.c index 6bd2ff1..5f222cf 100644 --- a/drivers/staging/hv/storvsc.c +++ b/drivers/staging/hv/storvsc.c @@ -48,7 +48,9 @@ struct storvsc_device { /* 0 indicates the device is being destroyed */ atomic_t RefCount; - + + int reset; + spinlock_t lock; atomic_t NumOutstandingRequests; /* @@ -93,6 +95,9 @@ static inline struct storvsc_device *AllocStorDevice(struct hv_device *Device) atomic_cmpxchg(&storDevice->RefCount, 0, 2); storDevice->Device = Device; + storDevice->reset...
2003 Jun 20
0
Problems Compiling ocfs - RedHat8
...-Iinc -I../../tools/debugocfs -I../../ocfs2/Linux/inc -DLINUX -DUSERSPACE_TOOL -o format.o -c format.c In file included from ../../tools/debugocfs/dummy.h:108, from inc/format.h:30, from format.c:27: ../../ocfs2/Common/inc/ocfsdisk.h:161: parse error before "atomic_t" ../../ocfs2/Common/inc/ocfsdisk.h:161: warning: no semicolon at end of struct or union ../../ocfs2/Common/inc/ocfsdisk.h:163: parse error before '}' token ../../ocfs2/Common/inc/ocfsdisk.h:164: warning: data definition has no type or storage class In file included from ../../tools/deb...
2016 Nov 25
3
[PATCH 0/3] virtio/vringh: kill off ACCESS_ONCE()
...to the native width of the machine). I believe that's the case here, for virtio, for example. Perhaps we can add new accessors that are supposed to guarantee that, into which we can drop appropriate warnings. Naming will be problematic; calling them ATOMIC_* makes tham sound like they work on atomic_t. That and I have no idea how to ensure correct usage tree-wide; I'm not sure if/how Coccinelle can help. Peter, thoughts? Thanks, Mark.
2016 Nov 25
3
[PATCH 0/3] virtio/vringh: kill off ACCESS_ONCE()
...to the native width of the machine). I believe that's the case here, for virtio, for example. Perhaps we can add new accessors that are supposed to guarantee that, into which we can drop appropriate warnings. Naming will be problematic; calling them ATOMIC_* makes tham sound like they work on atomic_t. That and I have no idea how to ensure correct usage tree-wide; I'm not sure if/how Coccinelle can help. Peter, thoughts? Thanks, Mark.
2009 Feb 03
10
Convert mle list to a hash
These patches convert the mle list to a hash. The same patches apply on ocfs2 1.4 too. Currently, we use the same number of hash pages for mles and lockres'. This will be addressed in a future patch that will make both of them configurable. Sunil
2010 May 26
1
[PATCH 1/1] staging: hv: Fix race condition on IC channel initialization (modified)
...s/staging/hv/channel_mgmt.c b/drivers/staging/hv/channel_mgmt.c index 3f53b4d..f99db1b 100644 --- a/drivers/staging/hv/channel_mgmt.c +++ b/drivers/staging/hv/channel_mgmt.c @@ -305,6 +305,7 @@ static void VmbusChannelProcessOffer(void *context) int ret; int cnt; unsigned long flags; + static atomic_t ic_channel_initcnt = ATOMIC_INIT(0); DPRINT_ENTER(VMBUS); @@ -373,22 +374,24 @@ static void VmbusChannelProcessOffer(void *context) * can cleanup properly */ newChannel->State = CHANNEL_OPEN_STATE; - cnt = 0; - while (cnt != MAX_MSG_TYPES) { + /* Open IC channels */ + for...
2010 May 26
1
[PATCH 1/1] staging: hv: Fix race condition on IC channel initialization (modified)
...s/staging/hv/channel_mgmt.c b/drivers/staging/hv/channel_mgmt.c index 3f53b4d..f99db1b 100644 --- a/drivers/staging/hv/channel_mgmt.c +++ b/drivers/staging/hv/channel_mgmt.c @@ -305,6 +305,7 @@ static void VmbusChannelProcessOffer(void *context) int ret; int cnt; unsigned long flags; + static atomic_t ic_channel_initcnt = ATOMIC_INIT(0); DPRINT_ENTER(VMBUS); @@ -373,22 +374,24 @@ static void VmbusChannelProcessOffer(void *context) * can cleanup properly */ newChannel->State = CHANNEL_OPEN_STATE; - cnt = 0; - while (cnt != MAX_MSG_TYPES) { + /* Open IC channels */ + for...
2014 May 08
1
[PATCH v10 07/19] qspinlock: Use a simple write to grab the lock, if applicable
...Waiman Long wrote: > @@ -94,23 +94,29 @@ static inline struct mcs_spinlock *decode_tail(u32 tail) > * can allow better optimization of the lock acquisition for the pending > * bit holder. > */ > -#if _Q_PENDING_BITS == 8 > - > struct __qspinlock { > union { > atomic_t val; > - struct { > #ifdef __LITTLE_ENDIAN > + u8 locked; > + struct { > u16 locked_pending; > u16 tail; > + }; > #else > + struct { > u16 tail; > u16 locked_pending; > -#endif > }; > + struct { > + u8 reserved[3]; > +...
2014 May 08
1
[PATCH v10 07/19] qspinlock: Use a simple write to grab the lock, if applicable
...Waiman Long wrote: > @@ -94,23 +94,29 @@ static inline struct mcs_spinlock *decode_tail(u32 tail) > * can allow better optimization of the lock acquisition for the pending > * bit holder. > */ > -#if _Q_PENDING_BITS == 8 > - > struct __qspinlock { > union { > atomic_t val; > - struct { > #ifdef __LITTLE_ENDIAN > + u8 locked; > + struct { > u16 locked_pending; > u16 tail; > + }; > #else > + struct { > u16 tail; > u16 locked_pending; > -#endif > }; > + struct { > + u8 reserved[3]; > +...
2010 May 19
1
[PATCH 1/2] staging: hv: Fix race condition in hv_utils module initialization.
...header *msg); }; -#define MAX_MSG_TYPES 3 #define MAX_NUM_DEVICE_CLASSES_SUPPORTED 7 static const struct hv_guid @@ -233,6 +232,11 @@ struct hyperv_service_callback hv_cb_utils[MAX_MSG_TYPES] = { }; EXPORT_SYMBOL(hv_cb_utils); +/* Counter of IC channels initialized */ +atomic_t hv_utils_initcnt = ATOMIC_INIT(0); +EXPORT_SYMBOL(hv_utils_initcnt); + + /* * AllocVmbusChannel - Allocate and initialize a vmbus channel object */ @@ -373,22 +377,22 @@ static void VmbusChannelProcessOffer(void *context) * can cleanup properly */ newChannel->State = CHANNEL_OPEN...
2010 May 19
1
[PATCH 1/2] staging: hv: Fix race condition in hv_utils module initialization.
...header *msg); }; -#define MAX_MSG_TYPES 3 #define MAX_NUM_DEVICE_CLASSES_SUPPORTED 7 static const struct hv_guid @@ -233,6 +232,11 @@ struct hyperv_service_callback hv_cb_utils[MAX_MSG_TYPES] = { }; EXPORT_SYMBOL(hv_cb_utils); +/* Counter of IC channels initialized */ +atomic_t hv_utils_initcnt = ATOMIC_INIT(0); +EXPORT_SYMBOL(hv_utils_initcnt); + + /* * AllocVmbusChannel - Allocate and initialize a vmbus channel object */ @@ -373,22 +377,22 @@ static void VmbusChannelProcessOffer(void *context) * can cleanup properly */ newChannel->State = CHANNEL_OPEN...
2016 Apr 15
2
[PATCH 1/2] nouveau/bl: Assign different names to interfaces
...acklight.c > > index 89eb460..914e2cb 100644 > > --- a/drm/nouveau/nouveau_backlight.c > > +++ b/drm/nouveau/nouveau_backlight.c > > @@ -36,6 +36,10 @@ > > #include "nouveau_reg.h" > > #include "nouveau_encoder.h" > > > > +static atomic_t bl_interfaces_nb = { 0 }; > > static data is initialized to 0, this should be unnecessary. I didn’t know that. But on the other hand, I like having it explicit, and it should not add any overhead. > > I'd also call it "backlights" or something like that. No need for &g...
2009 Feb 26
13
o2dlm mle hash patches - round 2
The changes from the last drop are: 1. Patch 11 removes struct dlm_lock_name. 2. Patch 12 is an unrelated bugfix. Actually is related to a bugfix that we are retracting in mainline currently. The patch may need more testing. While I did hit the condition in my testing, Marcos hasn't. I am sending it because it can be queued for 2.6.30. Give us more time to test. 3. Patch 13 will be useful
2007 Mar 15
12
performance counters
In order to be meaningful and usable together with other measuring methods, their use in my opinion should impose as little overhead as possible. With that, I wonder why per-cpu counters use atomic operations. Thanks, Jan _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel