Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 30 Aug 2012 00:13:34 +0300
From:      Andriy Gapon <avg@FreeBSD.org>
To:        Anton Yuzhanionov <ayuzhaninov@openstat.ru>
Cc:        freebsd-stable@FreeBSD.org, John Baldwin <jhb@FreeBSD.org>
Subject:   Re: Problem with IPMI KCS driver
Message-ID:  <503E85FE.4050300@FreeBSD.org>
In-Reply-To: <503E6E59.2000600@openstat.ru>
References:  <503DE2AB.6030702@citrin.ru> <201208290825.44198.jhb@freebsd.org> <503E6E59.2000600@openstat.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
on 29/08/2012 22:32 Anton Yuzhanionov said the following:
> On 29.08.2012 16:25, John Baldwin wrote:
>> Hmm.  Can you try this:
>>
>> Index: kern/kern_clock.c
>> ===================================================================
>> --- kern/kern_clock.c    (revision 239819)
>> +++ kern/kern_clock.c    (working copy)
>> @@ -382,7 +382,7 @@
>>   int    stathz;
>>   int    profhz;
>>   int    profprocs;
>> -int    ticks;
>> +volatile int    ticks;
>>   int    psratio;
>>
> 
> With this patch if_cdce.c can't be compiled:
> 
> /usr/src/sys/modules/usb/cdce/../../../dev/usb/net/if_cdce.c: In function
> 'cdce_attach':
> /usr/src/sys/modules/usb/cdce/../../../dev/usb/net/if_cdce.c:616: warning:
> passing argument 2 of 'memcpy' discards qualifiers from pointer target type
> *** Error code 1
> 
> memcpy(&sc->sc_ue.ue_eaddr[1], &ticks, sizeof(uint32_t));
> 
> As I understand, memcpy() don't accept pointers to volatile objects.
> May be some other source can be used for generated MAC address.

int x = ticks;
memcpy(..., &x, ...);
should work

> I have installed patched kernel (without cdce) and need some time to check if
> the problem with IPMI KCS is reproduced.
> 


-- 
Andriy Gapon



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?503E85FE.4050300>