[Android Q&A, Help & Troubleshooting] Spartaner25:
I hope someone here can help me :) .

First, my Device:

Gigaset QV1030, originally named as Quanta FG6Q

Tegra 4 Chipset, 2gb of Ram, 2560*1600 Screen. Originally shipped with 4.2.2 .

It is quite similar to the Asus Transformer TF701t and the ekrnel source is available.

The Kernel is 3.4.35.

The Past:

I´ve successfully compiled cm10.1 for it, and it's running more or less flawless. So i have a working cwm, and i´m able to work with the sources

The Problem:

I tried to port any higer version than cm 10.1 to this device, but every one, icluding 10.2,11 and 12, show exactly the same Problem:

Surfaceflinger crashes with the following log:

03-03 21:34:42.303 155 155 I SurfaceFlinger: SurfaceFlinger is starting

03-03 21:34:42.307 155 293 I SurfaceFlinger: SurfaceFlinger's main thread ready to run. Initializing graphics H/W...

03-03 21:34:42.325 155 293 D libEGL : loaded /system/lib/egl/libEGL_tegra.so

03-03 21:34:42.325 155 293 I : Attempting to load EGL implementation /system/lib/egl/libEGL_tegra_impl

03-03 21:34:42.461 155 293 I : Loaded EGL implementation /system/lib/egl/libEGL_tegra_impl

03-03 21:34:42.517 155 293 D libEGL : loaded /system/lib/egl/libGLESv1_CM_tegra.so

03-03 21:34:42.536 155 293 D libEGL : loaded /system/lib/egl/libGLESv2_tegra.so

03-03 21:34:42.544 155 293 D NvOsDebugPrintf: NvRmPowerModuleClockControl on MOD[108] INST[0]

03-03 21:34:42.606 155 293 D NVSI : ### VALID CONFIGURATION ###

03-03 21:34:42.619 155 293 D NvOsDebugPrintf: NvRmPowerModuleClockControl off MOD[108] INST[0]

03-03 21:34:42.799 155 293 D hwcomposer: Display 0: found 1 modes

03-03 21:34:42.799 155 293 D hwcomposer: unmatched: 2560 x 1600 @ 59.98 Hz

03-03 21:34:42.799 155 293 D hwcomposer: display type 0: vblank period = 16672794 ns

03-03 21:34:42.799 155 293 D hwcomposer: dc_blank: display 0, [-1 -> 0]

03-03 21:34:42.812 155 293 W hwcomposer: No supported resolution higher than 3, use Max resolution

03-03 21:34:42.812 155 293 D hwcomposer: display type 1: vblank period = 16666214 ns

03-03 21:34:42.812 155 293 D hwcomposer: Setting vblank display to Internal, new vblank period 16672794 ns

03-03 21:34:42.943 155 293 D hwcomposer: Creating nvcap video capture service

03-03 21:34:42.948 155 293 D hwcomposer: display type 2: vblank period = 16666214 ns

03-03 21:34:42.960 155 293 D hwcomposer: Display 0 layer clip is 2560 x 1600

03-03 21:34:42.960 155 293 D hwcomposer: Display 0 device clip is 2560 x 1600

03-03 21:34:42.960 155 293 I SurfaceFlinger: Using composer version 1.1

03-03 21:34:42.960 155 293 D hwcomposer: config[0].x = 2560

03-03 21:34:42.960 155 293 D hwcomposer: config[0].y = 1600

03-03 21:34:42.960 155 293 W SurfaceFlinger: no suitable EGLConfig found, trying without EGL_FRAMEBUFFER_TARGET_ANDROID

03-03 21:34:43.005 155 293 D NvOsDebugPrintf: Library for API 1 exposes function not wrapped: glPointSizePointerOES

03-03 21:34:43.050 155 293 I : Loading GLESv1_CM implementation /system/lib/egl/libGLESv1_CM_tegra_impl

03-03 21:34:43.050 155 293 I SurfaceFlinger: EGL informations:

03-03 21:34:43.050 155 293 I SurfaceFlinger: vendor : Android

03-03 21:34:43.050 155 293 I SurfaceFlinger: version : 1.4 Android META-EGL

03-03 21:34:43.050 155 293 I SurfaceFlinger: extensions: EGL_KHR_image EGL_KHR_image_base EGL_KHR_image_pixmap EGL_KHR_lock_surface EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_reusable_sync EGL_KHR_fence_sync EGL_KHR_create_context EGL_EXT_create_context_robustness EGL_NV_system_time EGL_ANDROID_image_native_buffer

03-03 21:34:43.050 155 293 I SurfaceFlinger: Client API: OpenGL_ES

03-03 21:34:43.050 155 293 I SurfaceFlinger: EGLSurface: 8-8-8-8, config=0xcaf32c

03-03 21:34:43.050 155 293 I SurfaceFlinger: OpenGL ES informations:

03-03 21:34:43.050 155 293 I SurfaceFlinger: vendor : NVIDIA Corporation

03-03 21:34:43.050 155 293 I SurfaceFlinger: renderer : NVIDIA AP

03-03 21:34:43.050 155 293 I SurfaceFlinger: version : OpenGL ES-CM 1.1

03-03 21:34:43.050 155 293 I SurfaceFlinger: extensions: GL_EXT_bgra GL_EXT_texture_compression_dxt1 GL_EXT_texture_compression_s3tc GL_EXT_texture_format_BGRA8888 GL_EXT_unpack_subimage GL_EXT_debug_marker GL_EXT_debug_label GL_NV_texture_npot_2D_mipmap GL_OES_byte_coordinates GL_OES_compressed_ETC1_RGB8_texture GL_OES_compressed_paletted_texture GL_OES_draw_texture GL_OES_extended_matrix_palette GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_EGL_sync GL_OES_fbo_render_mipmap GL_OES_fixed_point GL_03-03 21:34:43.050 155 293 I SurfaceFlinger: GL_MAX_TEXTURE_SIZE = 4096

03-03 21:34:43.050 155 293 I SurfaceFlinger: GL_MAX_VIEWPORT_DIMS = 4096 x 4096

03-03 21:34:43.059 155 293 D SurfaceFlinger: Screen acquired, type=0 flinger=0xb8a9c478

03-03 21:34:43.059 155 293 D hwcomposer: hwc_blank: display 0: unblank

03-03 21:34:43.059 155 293 D hwcomposer: hwc_blank_display: display 0: [1 -> 0]

03-03 21:34:43.059 155 293 D hwcomposer: Display 0 layer clip is 2560 x 1600

03-03 21:34:43.059 155 293 D hwcomposer: Display 0 device clip is 2560 x 1600

03-03 21:34:43.059 155 293 D hwcomposer: dc_blank: display 0, [0 -> 0]

03-03 21:34:43.183 155 155 E SurfaceFlinger: ro.sf.lcd_density must be defined as a build property

03-03 21:34:51.852 155 545 E SurfaceFlinger: ro.sf.lcd_density must be defined as a build property

03-03 21:34:57.338 155 592 D PermissionCache: checking android.permission.ACCESS_SURFACE_FLINGER for uid=1000 => granted (233 us)

03-03 21:34:57.338 155 293 D SurfaceFlinger: Screen acquired, type=0 flinger=0xb8a9c478

03-03 21:34:57.338 155 293 D SurfaceFlinger: screen was previously acquired

03-03 21:35:10.562 155 293 I : Loading GLESv2 implementation /system/lib/egl/libGLESv2_tegra_impl

03-03 21:35:10.604 155 293 F libc : Fatal signal 11 (SIGSEGV) at 0x0000002f (code=1), thread 293 (SurfaceFlinger)

I included an archive with the contents of data/dropbox, if you want to take a further look.

What I tried:

I swapped out the entire egl folder with the asus one, and even the hwcomposer.tegra.so and the gralloc.hwcomposer.so, but the Problem stays exactly the same.

I tried to fiddle around with the various options in the BoardConfig.mk but i had no luck with that either.

What I guess:

This could be a pain for you to read, so please proceed with caution :p .

Because the Asus libs are known to be working with cm11 and 12, i guess that the Problem is not located in the *.so files. Also i can not imagine, how an entry in the Device folder could have such an outcome, as far as i know, the most settings there would´t affect such low-level stuff.

But what i know is, that a SIGSEGV means, that there is some sort of memory access violation, which means: Surfaceflinger, or one of it´s threads, try to access or allocate memory, which is not allowed.So i could imagine, that the Problem lies in the incomplete SELinux support in this Kernel, what would explain, why every Version higher than 4.2.2 fails, as SELinux is set to permissive and higher starting with 4.3. But the problem here is, that the Device wont even Boot past the initial Vendor Splashscreen with an SELinux enabled kernel.

My Question:

So i would like to know, am i on the right track with SELinux? Or are these Things not connected with each other?

And, if SELinux, or it´s abstinence, is not causing it, what is?

Thanks for your help in advance :good: .