Andrew Morton (1): wait-introduce-wait_event_commonwq-condition-state-timeout-fix Dave Airlie (2): drm/omap: drop the !FB_OMAP2 dep Revert "drm: kms_helper: don't lose hotplug event" Oleg Nesterov (2): wait: introduce wait_event_common(wq, condition, state, timeout) wait: introduce prepare_to_wait_event() Sedat Dilek (13): kbuild: deb-pkg: Try to determine distribution kbuild: deb-pkg: Bump year in debian/copyright file kbuild: deb-pkg: Update git repository URL in debian/copyright file Merge tag 'next-20130628' of git://git.kernel.org/.../next/linux-next into Linux-Next-v20130628 Revert "fix warnings from ?: operator in wait.h" Revert "wait: introduce prepare_to_wait_event()" Revert "wait: introduce wait_event_common(wq, condition, state, timeout)" wait: Test patch from O. Nesterov to fix the rsyslog/imklog issue Merge branch 'deb-pkg-3.10-fixes' into 3.10.0-rc7-next20130628-10-iniza-small Merge branch 'drm-next-fixes' into 3.10.0-rc7-next20130628-10-iniza-small Merge branch 'revert-wait.h-next20130628' into 3.10.0-rc7-next20130628-10-iniza-small Merge branch 'wait.h-next-fixes-from-akpm-mmots' into 3.10.0-rc7-next20130628-10-iniza-small Merge branch 'wait.h-fix-onesterov' into 3.10.0-rc7-next20130628-10-iniza-small drivers/gpu/drm/drm_crtc_helper.c | 32 +------------------------------- drivers/gpu/drm/omapdrm/Kconfig | 2 +- include/drm/drm_crtc.h | 1 - include/linux/wait.h | 19 +++++-------------- scripts/package/builddeb | 19 ++++++++++++++++--- 5 files changed, 23 insertions(+), 50 deletions(-) diff --git a/drivers/gpu/drm/drm_crtc_helper.c b/drivers/gpu/drm/drm_crtc_helper.c index f6829ba..738a429 100644 --- a/drivers/gpu/drm/drm_crtc_helper.c +++ b/drivers/gpu/drm/drm_crtc_helper.c @@ -122,7 +122,6 @@ int drm_helper_probe_single_connector_modes(struct drm_connector *connector, int count = 0; int mode_flags = 0; bool verbose_prune = true; - enum drm_connector_status old_status; DRM_DEBUG_KMS("[CONNECTOR:%d:%s]\n", connector->base.id, drm_get_connector_name(connector)); @@ -138,32 +137,7 @@ int drm_helper_probe_single_connector_modes(struct drm_connector *connector, if (connector->funcs->force) connector->funcs->force(connector); } else { - old_status = connector->status; - connector->status = connector->funcs->detect(connector, true); - - /* - * Normally either the driver's hpd code or the poll loop should - * pick up any changes and fire the hotplug event. But if - * userspace sneaks in a probe, we might miss a change. Hence - * check here, and if anything changed start the hotplug code. - */ - if (old_status != connector->status) { - DRM_DEBUG_KMS("[CONNECTOR:%d:%s] status updated from %d to %d\n", - connector->base.id, - drm_get_connector_name(connector), - old_status, connector->status); - - /* - * The hotplug event code might call into the fb - * helpers, and so expects that we do not hold any - * locks. Fire up the poll struct instead, it will - * disable itself again. - */ - dev->mode_config.delayed_event = true; - schedule_delayed_work(&dev->mode_config.output_poll_work, - 0); - } } /* Re-enable polling in case the global poll config changed. */ @@ -1011,11 +985,7 @@ static void output_poll_execute(struct work_struct *work) struct drm_device *dev = container_of(delayed_work, struct drm_device, mode_config.output_poll_work); struct drm_connector *connector; enum drm_connector_status old_status; - bool repoll = false, changed; - - /* Pick up any changes detected by the probe functions. */ - changed = dev->mode_config.delayed_event; - dev->mode_config.delayed_event = false; + bool repoll = false, changed = false; if (!drm_kms_helper_poll) return; diff --git a/drivers/gpu/drm/omapdrm/Kconfig b/drivers/gpu/drm/omapdrm/Kconfig index 45875a0..20c41e7 100644 --- a/drivers/gpu/drm/omapdrm/Kconfig +++ b/drivers/gpu/drm/omapdrm/Kconfig @@ -1,7 +1,7 @@ config DRM_OMAP tristate "OMAP DRM" - depends on DRM && !FB_OMAP2 + depends on DRM depends on ARCH_OMAP2PLUS || ARCH_MULTIPLATFORM depends on OMAP2_DSS select DRM_KMS_HELPER diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h index 663c3ab..fa12a2f 100644 --- a/include/drm/drm_crtc.h +++ b/include/drm/drm_crtc.h @@ -811,7 +811,6 @@ struct drm_mode_config { /* output poll support */ bool poll_enabled; bool poll_running; - bool delayed_event; struct delayed_work output_poll_work; /* pointers to standard properties */ diff --git a/include/linux/wait.h b/include/linux/wait.h index f3b793d..5034203 100644 --- a/include/linux/wait.h +++ b/include/linux/wait.h @@ -197,12 +197,8 @@ wait_queue_head_t *bit_waitqueue(void *, int); for (;;) { \ __ret = prepare_to_wait_event(&wq, &__wait, state); \ if (condition) { \ - __ret = __wait_no_timeout(tout); \ - if (!__ret) { \ - __ret = __tout; \ - if (!__ret) \ - __ret = 1; \ - } \ + __ret = __wait_no_timeout(tout) ? 0 : \ + (__tout ?: 1); \ break; \ } \ \ @@ -223,14 +219,9 @@ wait_queue_head_t *bit_waitqueue(void *, int); #define wait_event_common(wq, condition, state, tout) \ ({ \ long __ret; \ - if (condition) { \ - __ret = __wait_no_timeout(tout); \ - if (!__ret) { \ - __ret = (tout); \ - if (!__ret) \ - __ret = 1; \ - } \ - } else \ + if (condition) \ + __ret = __wait_no_timeout(tout) ? 0 : ((tout) ?: 1); \ + else \ __ret = __wait_event_common(wq, condition, state, tout);\ __ret; \ }) diff --git a/scripts/package/builddeb b/scripts/package/builddeb index acb8650..7d7c9d8 100644 --- a/scripts/package/builddeb +++ b/scripts/package/builddeb @@ -172,9 +172,22 @@ else fi maintainer="$name <$email>" +# Try to determine distribution +if [ -e $(which lsb_release) ]; then + codename=$(lsb_release --codename --short) + if [ "$codename" != "" ]; then + distribution=$codename + else + distribution="UNRELEASED" + echo "WARNING: The distribution could NOT be determined!" + fi +else + echo "HINT: Install lsb_release binary, this helps to identify your distribution!" +fi + # Generate a simple changelog template cat < debian/changelog -linux-upstream ($packageversion) unstable; urgency=low +linux-upstream ($packageversion) $distribution; urgency=low * Custom built Linux kernel. @@ -188,10 +201,10 @@ This is a packacked upstream version of the Linux kernel. The sources may be found at most Linux ftp sites, including: ftp://ftp.kernel.org/pub/linux/kernel -Copyright: 1991 - 2009 Linus Torvalds and others. +Copyright: 1991 - 2013 Linus Torvalds and others. The git repository for mainline kernel development is at: -git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git +git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by