Re: [git pull] drm for v4.11 - main pull request

From: Linus Torvalds
Date: Thu Feb 23 2017 - 20:50:55 EST


On Thu, Feb 23, 2017 at 4:01 PM, Dave Airlie <airlied@xxxxxxxxx> wrote:
>
> This is the main drm pull request for v4.11.
>
> Nothing too major, the tinydrm and mmu-less support should make writing
> smaller drivers easier for some of the simpler platforms, and there are
> a bunch of documentation updates.

The tinydrm code seems like absolute pure shit that has never seen a compiler.

I'm upset, because I expect better quality control. In fact, I expect
*some* qualitty control, and this piece-of-shit driver has clearly
seen none at all.

And those patches were apparently committed yesterday.

WHAT THE ACTUAL FUCK?

I get tons and tons of lines of warnings:

drivers/gpu/drm/tinydrm/mipi-dbi.c: In function âmipi_dbi_typec1_commandâ:
drivers/gpu/drm/tinydrm/mipi-dbi.c:65:20: warning: field width
specifier â*â expects argument of type âintâ, but argument 5 has type
âsize_t {aka long unsigned int}â [-Wformat=]
DRM_DEBUG_DRIVER("cmd=%02x, par=%*ph\n", cmd, len, data); \

with nasty chains of nested defines, but then I also get actual compile failures

drivers/gpu/drm/tinydrm/core/tinydrm-helpers.c:198:26: error:
redefinition of âtinydrm_of_find_backlightâ
struct backlight_device *tinydrm_of_find_backlight(struct device *dev)
^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from drivers/gpu/drm/tinydrm/core/tinydrm-helpers.c:11:0:
./include/drm/tinydrm/tinydrm-helpers.h:53:1: note: previous
definition of âtinydrm_of_find_backlightâ was here
tinydrm_of_find_backlight(struct device *dev)
^~~~~~~~~~~~~~~~~~~~~~~~~

(with similar stuff for tinydrm_disable_backlight()).

It looks like it might compile if CONFIG_BACKLIGHT_CLASS_DEVICE was
enabled rather than being a module.

Doing this:

-#ifdef CONFIG_BACKLIGHT_CLASS_DEVICE
+#if IS_ENABLED(CONFIG_BACKLIGHT_CLASS_DEVICE)

in tinydrm-helpers.h gets rid of the complete build failure, and only
leaves the tens of lines of warnings.

How the hell did this get to the point where crap like this is even
sent to me? Nobody tested *anything*?

AND WHY THE HELL WAS THIS UTTER SHITE SENT TO ME IF IT WAS COMMITTED YESTERDAY?

Linus