From: <Bru...@vi...> - 2009-10-08 07:23:51
|
Hello All: This is patch 3 of the 5 patches. It's based on 2.6.32-rc3+patch1+patch2. It enhance the DRM robustness, such as memory check before release or content comparison. 3 files has been modified for this patch. Sign-off by Bruce C. Chang <bru...@vi...> diff -Nur linux-2.6.32-rc3-old/drivers/gpu/drm/via/via_dmablit.c linux-2.6.32-rc3-new/drivers/gpu/drm/via/via_dmablit.c --- linux-2.6.32-rc3-old/drivers/gpu/drm/via/via_dmablit.c 2009-10-05 08:12:30.000000000 +0800 +++ linux-2.6.32-rc3-new/drivers/gpu/drm/via/via_dmablit.c 2009-10-08 10:18:08.000000000 +0800 @@ -195,8 +195,10 @@ default: vsg->state = dr_via_sg_init; } - vfree(vsg->bounce_buffer); - vsg->bounce_buffer = NULL; + if (vsg->bounce_buffer) { + vfree(vsg->bounce_buffer); + vsg->bounce_buffer = NULL; + } vsg->free_on_sequence = 0; } diff -Nur linux-2.6.32-rc3-old/drivers/gpu/drm/via/via_irq.c linux-2.6.32-rc3-new/drivers/gpu/drm/via/via_irq.c --- linux-2.6.32-rc3-old/drivers/gpu/drm/via/via_irq.c 2009-10-05 08:12:30.000000000 +0800 +++ linux-2.6.32-rc3-new/drivers/gpu/drm/via/via_irq.c 2009-10-08 10:18:08.000000000 +0800 @@ -357,6 +357,8 @@ drm_via_irq_t *cur_irq = dev_priv->via_irqs; int force_sequence; + if (!dev->pdev->irq) + return -EINVAL; if (irqwait->request.irq >= dev_priv->num_irqs) { DRM_ERROR("Trying to wait on unknown irq %d\n", irqwait->request.irq); diff -Nur linux-2.6.32-rc3-old/drivers/gpu/drm/via/via_mm.c linux-2.6.32-rc3-new/drivers/gpu/drm/via/via_mm.c --- linux-2.6.32-rc3-old/drivers/gpu/drm/via/via_mm.c 2009-10-08 10:17:39.000000000 +0800 +++ linux-2.6.32-rc3-new/drivers/gpu/drm/via/via_mm.c 2009-10-08 10:18:08.000000000 +0800 @@ -91,6 +91,17 @@ int via_final_context(struct drm_device *dev, int context) { drm_via_private_t *dev_priv = (drm_via_private_t *) dev->dev_private; + struct drm_ctx_list *pos, *n; + bool context_valid = 0; + + list_for_each_entry_safe(pos, n, &dev->ctxlist, head) + if (pos->handle == context) { + context_valid = 1; + break; + } + + if (!context_valid) + return 0; via_release_futex(dev_priv, context); @@ -98,7 +109,8 @@ /* Last context, perform cleanup */ if (dev->ctx_count == 1 && dev->dev_private) { DRM_DEBUG("Last Context\n"); - drm_irq_uninstall(dev); + if (dev->pdev->irq) + drm_irq_uninstall(dev); via_cleanup_futex(dev_priv); via_do_cleanup_map(dev); } Thanks and Best regards ================================================= Bruce C. Chang(張祖明) VIA Technologies, Inc. Address: 1F, 531, Chung-Cheng Road, Hsin-Tien, 231 Taipei Tel: +886-2-22185452 Ext 7323 Mobile: +886-968343824 Fax: +886-2-22186282 Skype: Bruce.C.Chang Email: Bru...@vi... |
From: <Bru...@vi...> - 2009-10-30 06:04:49
|
Hello Sirs: Based on the comment for my previous submission for VIA UniChrome DRM, we modify our code as the following patch. They are 1. Add support for ACPI suspend/resume issue. 2. Add an interfaces for communication with ddmpeg and v4l. 3. Fix video hang issue caused by verification function. These patches are based on 2.6.32-rc5. Please kindly help to check. And please kindly integrate it into mainline if it's OK. Thanks and Best Regards ================================================= Bruce C. Chang(張祖明) VIA Technologies, Inc. Address: 1F, 531, Chung-Cheng Road, Hsin-Tien, 231 Taipei Tel: +886-2-22185452 Ext 7323 Mobile: +886-968343824 Fax: +886-2-22186282 Skype: Bruce.C.Chang Email: Bru...@vi... |
From: <Bru...@vi...> - 2009-11-03 13:02:24
|
Hello Sirs: Request resend. Please be advised that the dual buffer/Security/Performance issue has been removed in this patch. So it is modified based on the comment you gave us on 10/8. Please kindly approve to integrate into mainline kernel. Thanks and Best regards ================================================= Bruce C. Chang(張祖明) VIA Technologies, Inc. Address: 1F, 531, Chung-Cheng Road, Hsin-Tien, 231 Taipei Tel: +886-2-22185452 Ext 7323 Mobile: +886-968343824 Fax: +886-2-22186282 Skype: Bruce.C.Chang Email: Bru...@vi... -----Original Message----- From: Bruce Chang Sent: Friday, October 30, 2009 2:04 PM To: Thomas Hellstrom; 'Dave Airlie' Cc: Joseph Chan; Benjamin Pan (Fremont); Harald Welte; dri...@li... Subject: [Patch VIA UniChrome DRM][0/3 Ver2] Enhance DRM robustness Hello Sirs: Based on the comment for my previous submission for VIA UniChrome DRM, we modify our code as the following patch. They are 1. Add support for ACPI suspend/resume issue. 2. Add an interfaces for communication with ddmpeg and v4l. 3. Fix video hang issue caused by verification function. These patches are based on 2.6.32-rc5. Please kindly help to check. And please kindly integrate it into mainline if it's OK. Thanks and Best Regards ================================================= Bruce C. Chang(張祖明) VIA Technologies, Inc. Address: 1F, 531, Chung-Cheng Road, Hsin-Tien, 231 Taipei Tel: +886-2-22185452 Ext 7323 Mobile: +886-968343824 Fax: +886-2-22186282 Skype: Bruce.C.Chang Email: Bru...@vi... |
From: Thomas H. <th...@sh...> - 2009-11-03 19:50:02
|
Bruce, I've been a bit short of time the last couple of weeks. I'll review as soon as time allows. Thanks, Thomas Bru...@vi... wrote: > Hello Sirs: > Request resend. Please be advised that the dual buffer/Security/Performance issue has been removed in this patch. So it is modified based on the comment you gave us on 10/8. Please kindly approve to integrate into mainline kernel. > Thanks and Best regards > ================================================= > Bruce C. Chang(張祖明) > VIA Technologies, Inc. > Address: 1F, 531, Chung-Cheng Road, Hsin-Tien, 231 Taipei > Tel: +886-2-22185452 Ext 7323 > Mobile: +886-968343824 > Fax: +886-2-22186282 > Skype: Bruce.C.Chang > Email: Bru...@vi... > > > -----Original Message----- > From: Bruce Chang > Sent: Friday, October 30, 2009 2:04 PM > To: Thomas Hellstrom; 'Dave Airlie' > Cc: Joseph Chan; Benjamin Pan (Fremont); Harald Welte; dri...@li... > Subject: [Patch VIA UniChrome DRM][0/3 Ver2] Enhance DRM robustness > > > Hello Sirs: > Based on the comment for my previous submission for VIA UniChrome DRM, we modify our code as the following patch. They are > 1. Add support for ACPI suspend/resume issue. > 2. Add an interfaces for communication with ddmpeg and v4l. > 3. Fix video hang issue caused by verification function. > These patches are based on 2.6.32-rc5. > Please kindly help to check. And please kindly integrate it into mainline if it's OK. > > Thanks and Best Regards > ================================================= > Bruce C. Chang(張祖明) > VIA Technologies, Inc. > Address: 1F, 531, Chung-Cheng Road, Hsin-Tien, 231 Taipei > Tel: +886-2-22185452 Ext 7323 > Mobile: +886-968343824 > Fax: +886-2-22186282 > Skype: Bruce.C.Chang > Email: Bru...@vi... > |
From: <Bru...@vi...> - 2009-11-11 09:17:52
|
Hello Sir: Request resend again. Thanks and Best Regards ================================================= Bruce C. Chang(張祖明) VIA Technologies, Inc. Address: 1F, 531, Chung-Cheng Road, Hsin-Tien, 231 Taipei Tel: +886-2-22185452 Ext 7323 Mobile: +886-968343824 Fax: +886-2-22186282 Skype: Bruce.C.Chang Email: Bru...@vi... -----Original Message----- From: Thomas Hellstrom [mailto:th...@sh...] Sent: Wednesday, November 04, 2009 3:50 AM To: Bruce Chang Cc: ai...@gm...; Joseph Chan; Benjamin Pan (Fremont); Harald Welte; dri...@li... Subject: Re: [Patch VIA UniChrome DRM][0/3 Ver2] Enhance DRM robustness Bruce, I've been a bit short of time the last couple of weeks. I'll review as soon as time allows. Thanks, Thomas Bru...@vi... wrote: > Hello Sirs: > Request resend. Please be advised that the dual buffer/Security/Performance issue has been removed in this patch. So it is modified based on the comment you gave us on 10/8. Please kindly approve to integrate into mainline kernel. > Thanks and Best regards > ================================================= > Bruce C. Chang(張祖明) > VIA Technologies, Inc. > Address: 1F, 531, Chung-Cheng Road, Hsin-Tien, 231 Taipei > Tel: +886-2-22185452 Ext 7323 > Mobile: +886-968343824 > Fax: +886-2-22186282 > Skype: Bruce.C.Chang > Email: Bru...@vi... > > > -----Original Message----- > From: Bruce Chang > Sent: Friday, October 30, 2009 2:04 PM > To: Thomas Hellstrom; 'Dave Airlie' > Cc: Joseph Chan; Benjamin Pan (Fremont); Harald Welte; dri...@li... > Subject: [Patch VIA UniChrome DRM][0/3 Ver2] Enhance DRM robustness > > > Hello Sirs: > Based on the comment for my previous submission for VIA UniChrome DRM, we modify our code as the following patch. They are > 1. Add support for ACPI suspend/resume issue. > 2. Add an interfaces for communication with ddmpeg and v4l. > 3. Fix video hang issue caused by verification function. > These patches are based on 2.6.32-rc5. > Please kindly help to check. And please kindly integrate it into mainline if it's OK. > > Thanks and Best Regards > ================================================= > Bruce C. Chang(張祖明) > VIA Technologies, Inc. > Address: 1F, 531, Chung-Cheng Road, Hsin-Tien, 231 Taipei > Tel: +886-2-22185452 Ext 7323 > Mobile: +886-968343824 > Fax: +886-2-22186282 > Skype: Bruce.C.Chang > Email: Bru...@vi... > |
From: <Bru...@vi...> - 2009-11-03 23:05:55
|
Hello Thomas: Thank you very much for your help. Please kindly keep helping us. Regards ================================================= Bruce C. Chang(張祖明) VIA Technologies, Inc. Address: 1F, 531, Chung-Cheng Road, Hsin-Tien, 231 Taipei Tel: +886-2-22185452 Ext 7323 Fax: +886-2-22186282 Skype: Bruce.C.Chang Email: Bru...@vi... ________________________________ From: Thomas Hellstrom [mailto:th...@sh...] Sent: 2009/11/4 [星期三] 03:49 To: Bruce Chang Cc: ai...@gm...; Joseph Chan; Benjamin Pan (Fremont); Harald Welte; dri...@li... Subject: Re: [Patch VIA UniChrome DRM][0/3 Ver2] Enhance DRM robustness Bruce, I've been a bit short of time the last couple of weeks. I'll review as soon as time allows. Thanks, Thomas Bru...@vi... wrote: > Hello Sirs: > Request resend. Please be advised that the dual buffer/Security/Performance issue has been removed in this patch. So it is modified based on the comment you gave us on 10/8. Please kindly approve to integrate into mainline kernel. > Thanks and Best regards > ================================================= > Bruce C. Chang(張祖明) > VIA Technologies, Inc. > Address: 1F, 531, Chung-Cheng Road, Hsin-Tien, 231 Taipei > Tel: +886-2-22185452 Ext 7323 > Mobile: +886-968343824 > Fax: +886-2-22186282 > Skype: Bruce.C.Chang > Email: Bru...@vi... > > > -----Original Message----- > From: Bruce Chang > Sent: Friday, October 30, 2009 2:04 PM > To: Thomas Hellstrom; 'Dave Airlie' > Cc: Joseph Chan; Benjamin Pan (Fremont); Harald Welte; dri...@li... > Subject: [Patch VIA UniChrome DRM][0/3 Ver2] Enhance DRM robustness > > > Hello Sirs: > Based on the comment for my previous submission for VIA UniChrome DRM, we modify our code as the following patch. They are > 1. Add support for ACPI suspend/resume issue. > 2. Add an interfaces for communication with ddmpeg and v4l. > 3. Fix video hang issue caused by verification function. > These patches are based on 2.6.32-rc5. > Please kindly help to check. And please kindly integrate it into mainline if it's OK. > > Thanks and Best Regards > ================================================= > Bruce C. Chang(張祖明) > VIA Technologies, Inc. > Address: 1F, 531, Chung-Cheng Road, Hsin-Tien, 231 Taipei > Tel: +886-2-22185452 Ext 7323 > Mobile: +886-968343824 > Fax: +886-2-22186282 > Skype: Bruce.C.Chang > Email: Bru...@vi... > |
From: Thomas H. <th...@sh...> - 2009-10-08 13:23:49
|
Bruce, This looks OK, except for one modification below. Could you comment on that one? Bru...@vi... wrote: > diff -Nur linux-2.6.32-rc3-old/drivers/gpu/drm/via/via_mm.c linux-2.6.32-rc3-new/drivers/gpu/drm/via/via_mm.c > --- linux-2.6.32-rc3-old/drivers/gpu/drm/via/via_mm.c 2009-10-08 10:17:39.000000000 +0800 > +++ linux-2.6.32-rc3-new/drivers/gpu/drm/via/via_mm.c 2009-10-08 10:18:08.000000000 +0800 > @@ -91,6 +91,17 @@ > int via_final_context(struct drm_device *dev, int context) > { > drm_via_private_t *dev_priv = (drm_via_private_t *) dev->dev_private; > + struct drm_ctx_list *pos, *n; > + bool context_valid = 0; > + > + list_for_each_entry_safe(pos, n, &dev->ctxlist, head) > + if (pos->handle == context) { > + context_valid = 1; > + break; > + } > + > + if (!context_valid) > + return 0; > > via_release_futex(dev_priv, context); > When is this function called with an invalid context? Could you describe what error you are seeing. Thanks, Thomas |
From: <Bru...@vi...> - 2009-10-09 09:25:57
|
Hello Thomas >> + if (!context_valid) >> + return 0; >> >> via_release_futex(dev_priv, context); > When is this function called with an invalid context? Could you describe > what error you are seeing. There are some bugs in the DDMPEG(a user mode library realizing decode driver) before, which destroy his context more than once, it was the behavior causes DRM segment fault. We add this patch for enhancing DRM robustness, although it is DDMPEG's fault. Thanks and Best Regards ================================================= Bruce C. Chang(張祖明) VIA Technologies, Inc. Address: 1F, 531, Chung-Cheng Road, Hsin-Tien, 231 Taipei Tel: +886-2-22185452 Ext 7323 Mobile: +886-968343824 Fax: +886-2-22186282 Skype: Bruce.C.Chang Email: Bru...@vi... |