[Intel-gfx] [RFC 24/25] drm/i915: Zero fill the request structure

John Harrison John.C.Harrison at Intel.com
Tue Oct 28 16:55:21 CET 2014


On 19/10/2014 15:15, Daniel Vetter wrote:
> On Fri, Oct 10, 2014 at 12:41:12PM +0100, John.C.Harrison at Intel.com wrote:
>> From: John Harrison <John.C.Harrison at Intel.com>
>>
>> For: VIZ-4377
>> Signed-off-by: John.C.Harrison at Intel.com
> I think this should be squashed (well, split first) into the relevant
> earlier patches. Generally I much prefer kzalloc, and we use that almost
> everywhere.
>
> Or does this silently fix some issue and doesn't tell?
> -Daniel
No, I just left it separate so as to change as little as possible in 
each individual patch. The original code did a kmalloc() of the request. 
That predates my changes. So if I did a km -> kz change in the middle of 
some other work I was assuming you would complain at me doing too much 
in a single patch. Whereas, the 'complete' field is the first time a 
zero fill becomes significant so it made sense (to me) to leave the 
switch to kz until here.


>> ---
>>   drivers/gpu/drm/i915/intel_lrc.c        |    3 +--
>>   drivers/gpu/drm/i915/intel_ringbuffer.c |    3 +--
>>   2 files changed, 2 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
>> index 97e6b92..5a75eb5 100644
>> --- a/drivers/gpu/drm/i915/intel_lrc.c
>> +++ b/drivers/gpu/drm/i915/intel_lrc.c
>> @@ -802,13 +802,12 @@ static int logical_ring_alloc_request(struct intel_engine_cs *ring,
>>   	if (ring->outstanding_lazy_request)
>>   		return 0;
>>   
>> -	request = kmalloc(sizeof(*request), GFP_KERNEL);
>> +	request = kzalloc(sizeof(*request), GFP_KERNEL);
>>   	if (request == NULL)
>>   		return -ENOMEM;
>>   
>>   	kref_init(&request->ref);
>>   	request->ring = ring;
>> -	request->complete = false;
>>   
>>   	ret = i915_gem_get_seqno(ring->dev, &request->seqno);
>>   	if (ret) {
>> diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
>> index df9c7e3..0f2719d 100644
>> --- a/drivers/gpu/drm/i915/intel_ringbuffer.c
>> +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
>> @@ -2017,13 +2017,12 @@ intel_ring_alloc_request(struct intel_engine_cs *ring)
>>   	if (ring->outstanding_lazy_request)
>>   		return 0;
>>   
>> -	request = kmalloc(sizeof(*request), GFP_KERNEL);
>> +	request = kzalloc(sizeof(*request), GFP_KERNEL);
>>   	if (request == NULL)
>>   		return -ENOMEM;
>>   
>>   	kref_init(&request->ref);
>>   	request->ring = ring;
>> -	request->complete = false;
>>   
>>   	ret = i915_gem_get_seqno(ring->dev, &request->seqno);
>>   	if (ret) {
>> -- 
>> 1.7.9.5
>>
>> _______________________________________________
>> Intel-gfx mailing list
>> Intel-gfx at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/intel-gfx




More information about the Intel-gfx mailing list