mirror of https://gitee.com/openkylin/linux.git
Staging: hv: remove wrapper functions for bit operations
There were several Bit* functions that did nothing but call the kernel functions with the parameters reversed. Remove these and call the functions directly. Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
420beac4fc
commit
7c369f405b
|
@ -104,12 +104,16 @@ VmbusChannelSetEvent(
|
|||
if (Channel->OfferMsg.MonitorAllocated)
|
||||
{
|
||||
/* Each u32 represents 32 channels */
|
||||
BitSet((u32*)gVmbusConnection.SendInterruptPage + (Channel->OfferMsg.ChildRelId >> 5), Channel->OfferMsg.ChildRelId & 31);
|
||||
set_bit(Channel->OfferMsg.ChildRelId & 31,
|
||||
(unsigned long *) gVmbusConnection.SendInterruptPage +
|
||||
(Channel->OfferMsg.ChildRelId >> 5) );
|
||||
|
||||
monitorPage = (HV_MONITOR_PAGE*)gVmbusConnection.MonitorPages;
|
||||
monitorPage++; /* Get the child to parent monitor page */
|
||||
|
||||
BitSet((u32*) &monitorPage->TriggerGroup[Channel->MonitorGroup].Pending, Channel->MonitorBit);
|
||||
set_bit(Channel->MonitorBit,
|
||||
(unsigned long *) &monitorPage->TriggerGroup[Channel->MonitorGroup].Pending);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -132,12 +136,14 @@ VmbusChannelClearEvent(
|
|||
if (Channel->OfferMsg.MonitorAllocated)
|
||||
{
|
||||
/* Each u32 represents 32 channels */
|
||||
BitClear((u32*)gVmbusConnection.SendInterruptPage + (Channel->OfferMsg.ChildRelId >> 5), Channel->OfferMsg.ChildRelId & 31);
|
||||
clear_bit(Channel->OfferMsg.ChildRelId & 31,
|
||||
(unsigned long *) gVmbusConnection.SendInterruptPage + (Channel->OfferMsg.ChildRelId >> 5));
|
||||
|
||||
monitorPage = (HV_MONITOR_PAGE*)gVmbusConnection.MonitorPages;
|
||||
monitorPage++; /* Get the child to parent monitor page */
|
||||
|
||||
BitClear((u32*) &monitorPage->TriggerGroup[Channel->MonitorGroup].Pending, Channel->MonitorBit);
|
||||
clear_bit(Channel->MonitorBit,
|
||||
(unsigned long *) &monitorPage->TriggerGroup[Channel->MonitorGroup].Pending);
|
||||
}
|
||||
|
||||
DPRINT_EXIT(VMBUS);
|
||||
|
|
|
@ -358,7 +358,7 @@ VmbusOnEvents(
|
|||
{
|
||||
for (bit = 0; bit < 32; bit++)
|
||||
{
|
||||
if (BitTestAndClear(&recvInterruptPage[dword], bit))
|
||||
if (test_and_clear_bit(bit, (unsigned long *) &recvInterruptPage[dword]))
|
||||
{
|
||||
relid = (dword << 5) + bit;
|
||||
|
||||
|
@ -432,7 +432,9 @@ VmbusSetEvent(u32 childRelId)
|
|||
DPRINT_ENTER(VMBUS);
|
||||
|
||||
/* Each u32 represents 32 channels */
|
||||
BitSet((u32*)gVmbusConnection.SendInterruptPage + (childRelId >> 5), childRelId & 31);
|
||||
set_bit(childRelId & 31,
|
||||
(unsigned long *) gVmbusConnection.SendInterruptPage + (childRelId >> 5));
|
||||
|
||||
ret = HvSignalEvent();
|
||||
|
||||
DPRINT_EXIT(VMBUS);
|
||||
|
|
|
@ -511,7 +511,7 @@ VmbusOnISR(
|
|||
event = (HV_SYNIC_EVENT_FLAGS*)page_addr + VMBUS_MESSAGE_SINT;
|
||||
|
||||
/* Since we are a child, we only need to check bit 0 */
|
||||
if (BitTestAndClear(&event->Flags32[0], 0))
|
||||
if (test_and_clear_bit(0, (unsigned long *) &event->Flags32[0]))
|
||||
{
|
||||
DPRINT_DBG(VMBUS, "received event %d", event->Flags32[0]);
|
||||
ret |= 0x2;
|
||||
|
|
|
@ -109,12 +109,6 @@ static inline void do_cpuid(unsigned int op, unsigned int *eax, unsigned int *eb
|
|||
|
||||
/* Osd routines */
|
||||
|
||||
extern void BitSet(unsigned int* addr, int value);
|
||||
extern void BitClear(unsigned int* addr, int value);
|
||||
extern int BitTest(unsigned int* addr, int value);
|
||||
extern int BitTestAndClear(unsigned int* addr, int value);
|
||||
extern int BitTestAndSet(unsigned int* addr, int value);
|
||||
|
||||
extern int InterlockedIncrement(int *val);
|
||||
extern int InterlockedDecrement(int *val);
|
||||
extern int InterlockedCompareExchange(int *val, int new, int curr);
|
||||
|
|
|
@ -56,33 +56,6 @@ struct osd_callback_struct {
|
|||
void *data;
|
||||
};
|
||||
|
||||
|
||||
void BitSet(unsigned int* addr, int bit)
|
||||
{
|
||||
set_bit(bit, (unsigned long*)addr);
|
||||
}
|
||||
|
||||
int BitTest(unsigned int* addr, int bit)
|
||||
{
|
||||
return test_bit(bit, (unsigned long*)addr);
|
||||
}
|
||||
|
||||
void BitClear(unsigned int* addr, int bit)
|
||||
{
|
||||
clear_bit(bit, (unsigned long*)addr);
|
||||
}
|
||||
|
||||
int BitTestAndClear(unsigned int* addr, int bit)
|
||||
{
|
||||
return test_and_clear_bit(bit, (unsigned long*)addr);
|
||||
}
|
||||
|
||||
int BitTestAndSet(unsigned int* addr, int bit)
|
||||
{
|
||||
return test_and_set_bit(bit, (unsigned long*)addr);
|
||||
}
|
||||
|
||||
|
||||
int InterlockedIncrement(int *val)
|
||||
{
|
||||
return atomic_inc_return((atomic_t*)val);
|
||||
|
|
Loading…
Reference in New Issue