Re: [PATCH] android: libdrm_platform: add liblog shared dependency

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Here is patch using include <android/log.h>
which should suffice for the purpose.
Cheers

Mauro

On Mon, Apr 22, 2019 at 11:46 AM Mauro Rossi <issor.oruam@xxxxxxxxx> wrote:
>
> Hi Emil, Chih-Wei,
>
> what about the series of latest three patches we have in oreo-x86 branch?
>
> [oreo-x86 branch]
> http://git.osdn.net/view?p=android-x86/external-libdrm.git;a=history;f=Android.mk;h=f832b24e99007c75ce3a8d9a3ece34d4e475e957;hb=refs/heads/oreo-x86
>
> My doubt is about the one "android: make libdrm*.so available to the
> vendor partition",
> should we keep it (and send to mesa/drm) so that we will simply have
> our x86 branches aligned to mesa/drm,
> or should we skip it in both cases?
>
> Once this is assessed I will either send the series of 3 or just the
> android logging one.
> Mauro
>
> Mauro
>
> On Wed, Apr 17, 2019 at 7:50 PM Emil Velikov <emil.l.velikov@xxxxxxxxx> wrote:
> >
> > On Mon, 18 Mar 2019 at 13:32, Tapani Pälli <tapani.palli@xxxxxxxxx> wrote:
> > > On 3/18/19 3:25 PM, Robert Foss wrote:
> > > > Hey,
> > > >
> > > > On 3/18/19 2:11 PM, Mauro Rossi wrote:
> > > >> Hi,
> > > >>
> > > >> On Mon, Mar 18, 2019 at 10:58 AM Robert Foss
> > > >> <robert.foss@xxxxxxxxxxxxx> wrote:
> > > >>>
> > > >>> Hey Mauro,
> > > >>>
> > > >>> On 3/18/19 9:38 AM, Mauro Rossi wrote:
> > > >>>> Hi Robert,
> > > >>>>
> > > >>>> On Mon, Mar 18, 2019 at 9:21 AM Robert Foss
> > > >>>> <robert.foss@xxxxxxxxxxxxx> wrote:
> > > >>>>>
> > > >>>>> On a second note, this does not apply on libdrm/master due
> > > >>>>> to:
> > > >>>>>
> > > >>>>> LOCAL_SHARED_LIBRARIES := \
> > > >>>>>           libcutils
> > > >>>>
> > > >>>> Sorry, we have an additional Google patch, not present in libdrm/master
> > > >>>> that adds libdrm_platform module, but it is for a specific Google
> > > >>>> issue. [1]
> > > >>>>
> > > >>>> However with libdrm module we have both liblog and libcutils shared
> > > >>>> dependencies
> > > >>>>
> > > >>>> [1]
> > > >>>> http://git.osdn.net/view?p=android-x86/external-libdrm.git;a=commit;h=8ccbfeab9fb2bddf4585339a0bcbea2f1e3ffa1e
> > > >>>>
> > > >>>
> > > >>> Do you know if [1] causes incompatibility issues with earlier android
> > > >>> verions?
> > > >>> If not I would suggest upstreaming it too.
> > > >>
> > > >> I used those patches to build with nougat-x86 and there was no issue.
> > > >>
> > > >> To be precise I did a double rookie mistake, because __android_log_vprint
> > > >> not used in upstream libdrm and libdrm_platform not used either.
> > > >>
> > > >> Now starting from my mistakes, let's see if there is anything useful
> > > >> to libdrm project
> > > >>
> > > >> In our builds Chih-Wei Huang said that libdrm_platform is not used,
> > > >> meaning not added to packages list,
> > > >> however with oreo-x86 the build error appeared and the liblog dependency.
> > > >>
> > > >>   __android_log_vprint is used with __ANDROID__ braces
> > > >> in a special patch [2] by Chih-Wei Huang which adds capability to
> > > >> print logs
> > > >> in logcat
> > > >>
> > > >> If it's not too invasive in libdrm, it could be useful.
> > > >> Cheers
> > > >> Mauro
> > > >>
> > > >> [2]
> > > >> http://git.osdn.net/view?p=android-x86/external-libdrm.git;a=commitdiff;h=bcee43063ffd52a8677029c9ae6f4203563460f4;hp=81d7264033db4946a00003bf1ee82eb6c21260f9
> > > >>
> > > >
> > > > [2] Seems like a good idea to me.
> > > > Logcat really is the only intended path for logging on Android, and
> > > > redirecting our logs there does make sense to me.
> > > >
> > > > But, I'm not sure about I like the way [2] disregards log-levels in
> > > > drmMsg().
> > > >
> > >
> > > Yeah, I think it's a good idea. I see that in mesa we include
> > > "android/log.h", not "log/log.h", will need to make sure we get that
> > > correctly, maybe older versions did "log/log.h"?
> > >
> > I would also be in favour of adding logcat support to libdrm.
> >
> > Mauro, please respin when you have the time.
> >
> > Thanks
> > Emil
From d8841affdf5ba969945dae50508dc813f057f147 Mon Sep 17 00:00:00 2001
From: Chih-Wei Huang <cwhuang@xxxxxxxxxxxx>
Date: Fri, 11 Jan 2019 17:19:39 +0800
Subject: [PATCH] Android: redirect debug messages to logcat (v2)

(v1) original version using include <log/log.h>

(v2) include <android/log.h>
---
 Android.mk |  1 +
 xf86drm.c  | 10 ++++++++++
 2 files changed, 11 insertions(+)

diff --git a/Android.mk b/Android.mk
index df0275ec..f2c78bc1 100644
--- a/Android.mk
+++ b/Android.mk
@@ -97,6 +97,7 @@ LOCAL_EXPORT_C_INCLUDE_DIRS := \
 	$(LOCAL_PATH)/android
 
 LOCAL_SHARED_LIBRARIES := \
+	liblog \
 	libcutils
 
 LOCAL_C_INCLUDES := \
diff --git a/xf86drm.c b/xf86drm.c
index fe822cad..a7ba855c 100644
--- a/xf86drm.c
+++ b/xf86drm.c
@@ -71,6 +71,10 @@
 
 #include "util_math.h"
 
+#ifdef __ANDROID__
+#include <android/log.h>
+#endif
+
 #ifdef __OpenBSD__
 #define DRM_PRIMARY_MINOR_NAME  "drm"
 #define DRM_CONTROL_MINOR_NAME  "drmC"
@@ -140,16 +144,22 @@ drm_public void drmSetServerInfo(drmServerInfoPtr info)
 static int DRM_PRINTFLIKE(1, 0)
 drmDebugPrint(const char *format, va_list ap)
 {
+#ifdef __ANDROID__
+    return __android_log_vprint(ANDROID_LOG_DEBUG, "libdrm", format, ap);
+#else
     return vfprintf(stderr, format, ap);
+#endif
 }
 
 drm_public void
 drmMsg(const char *format, ...)
 {
     va_list ap;
+#ifndef __ANDROID__
     const char *env;
     if (((env = getenv("LIBGL_DEBUG")) && strstr(env, "verbose")) ||
         (drm_server_info && drm_server_info->debug_print))
+#endif
     {
         va_start(ap, format);
         if (drm_server_info) {
-- 
2.20.1

_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux