Skip to content
  1. Jun 09, 2011
  2. Jun 08, 2011
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of... · 33726bf2
      Linus Torvalds authored
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
        perf: Fix comments in include/linux/perf_event.h
        perf: Comment /proc/sys/kernel/perf_event_paranoid to be part of user ABI
        perf python: Fix argument name list of read_on_cpu()
        perf evlist: Don't die if sample_{id_all|type} is invalid
        perf python: Use exception to propagate errors
        perf evlist: Remove dependency on debug routines
        perf, cgroups: Fix up for new API
      33726bf2
    • Linus Torvalds's avatar
      Merge branch 'gpio/merge' of git://git.secretlab.ca/git/linux-2.6 · 5b28f6a2
      Linus Torvalds authored
      * 'gpio/merge' of git://git.secretlab.ca/git/linux-2.6:
        gpio/samsung: make Kconfig options def_bool
        gpio/exynos4: Fix incorrect mapping of gpio pull-up macro to register setting
        GPIO: OMAP: add locking around calls to _set_gpio_triggering
        GPIO: OMAP: fix setting IRQWAKEN bits for OMAP4
        GPIO: OMAP: fix section mismatch warnings
        gpio: Fix gpio-exynos4 build fails in mainline
      5b28f6a2
    • Linus Torvalds's avatar
      Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 · 46671b03
      Linus Torvalds authored
      * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6:
        [media] soc_camera: preserve const attribute
        [media] uvc_entity: initialize return value
        [media] media: Fix media device minor registration
        [media] Make nchg variable signed because the code compares this variable against negative values
        [media] omap3isp: fix compiler warning
        [media] v4l: Fix media_entity_to_video_device macro argument name
        [media] ivtv: Internally separate encoder & decoder standard setting
        [media] ivtvfb: Add sanity check to ivtvfb_pan_display()
        [media] ivtvfb: use display information in info not in var for panning
        [media] ivtv: Make two ivtv_msleep_timeout calls uninterruptable
        [media] anysee: return EOPNOTSUPP for unsupported I2C messages
        [media] gspca - ov519: Set the default frame rate to 15 fps
        [media] gspca - stv06xx: Set a lower default value of gain for hdcs sensors
        [media] gspca: Remove coarse_expo_autogain.h
        [media] gspca - ov519: Change the ovfx2 bulk transfer size
        [media] gspca - ov519: Fix a regression for ovfx2 webcams
      46671b03
    • Linus Torvalds's avatar
      Merge branch 'drm-radeon-urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 · 18367c0e
      Linus Torvalds authored
      * 'drm-radeon-urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
        drm/radeon/kms: disable hdmi audio by default
        drm/radeon/kms: fix for radeon on systems >4GB without hardware iommu
        drm/radeon/kms: set family for use in parser.
      18367c0e
    • Grant Likely's avatar
      Merge branch 'for_3.0/gpio-fixes' of... · c226feb0
      Grant Likely authored
      Merge branch 'for_3.0/gpio-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm into gpio/merge
      c226feb0
    • Linus Torvalds's avatar
      tty_buffer: get rid of 'seen_tail' logic in flush_to_ldisc · 81de916f
      Linus Torvalds authored
      The flush_to_ldisc() work entry has special logic to notice when it has
      seen the original tail of the data queue, and it avoids continuing the
      flush if it sees that _original_ tail rather than the current tail.
      
      This logic can trigger in case somebody is constantly adding new data to
      the tty while the flushing is active - and the intent is to avoid
      excessive CPU usage while flushing the tty, especially as we used to do
      this from a softirq context which made it non-preemptible.
      
      However, since we no longer re-arm the work-queue from within itself
      (because that causes other trouble: see commit a5660b41
      
       "tty: fix
      endless work loop when the buffer fills up"), this just leads to
      possible hung tty's (most easily seen in SMP and with a test-program
      that floods a pty with data - nobody seems to have reported this for any
      real-life situation yet).
      
      And since the workqueue isn't done from timers and softirq's any more,
      it's doubtful whether the CPU useage issue is really relevant any more.
      So just remove the logic entirely, and see if anybody ever notices.
      
      Alternatively, we might want to re-introduce the "re-arm the work" for
      just this case, but then we'd have to re-introduce the delayed work
      model or some explicit timer, which really doesn't seem worth it for
      this.
      
      Reported-and-tested-by: default avatarGuillaume Chazarain <guichaz@gmail.com>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Cc: Felipe Balbi <balbi@ti.com>
      Cc: Greg Kroah-Hartman <gregkh@suse.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      81de916f
    • Alex Deucher's avatar
      drm/radeon/kms: disable hdmi audio by default · 805c2216
      Alex Deucher authored
      
      
      The current RE'd code causes blank screens and
      display problems on a lot of systems.  So disable
      it by default for now.  It can still be enabled
      by setting the audio parameter to 1.  E.g.:
      radeon.audio=1
      
      Fixes:
      https://bugs.freedesktop.org/show_bug.cgi?id=38010
      https://bugs.freedesktop.org/show_bug.cgi?id=27731
      https://bugs.freedesktop.org/show_bug.cgi?id=35970
      https://bugs.freedesktop.org/show_bug.cgi?id=26195
      and many other reported problems.
      
      Signed-off-by: default avatarAlex Deucher <alexdeucher@gmail.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      805c2216
    • Daniel Haid's avatar
      drm/radeon/kms: fix for radeon on systems >4GB without hardware iommu · 62fff811
      Daniel Haid authored
      
      
      On my x86_64 system with >4GB of ram and swiotlb instead of
      a hardware iommu (because I have a VIA chipset), the call
      to pci_set_dma_mask (see below) with 40bits returns an error.
      
      But it seems that the radeon driver is designed to have
      need_dma32 = true exactly if pci_set_dma_mask is called
      with 32 bits and false if it is called with 40 bits.
      
      I have read somewhere that the default are 32 bits. So if the
      call fails I suppose that need_dma32 should be set to true.
      
      And indeed the patch fixes the problem I have had before
      and which I had described here:
      http://choon.net/forum/read.php?21,106131,115940
      
      Acked-by: default avatarAlex Deucher <alexdeucher@gmail.com>
      cc: stable@kernel.org
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      62fff811
    • Dave Airlie's avatar
      drm/radeon/kms: set family for use in parser. · 428c6e36
      Dave Airlie authored
      
      
      Wierdly the kms parser never initialised the family, it wasn't really used
      much, but the fmt checker patch started using it and it fell over.
      
      Reported-by: default avatarMarkus Trippelsdorf <markus@trippelsdorf.de>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      428c6e36
    • Linus Torvalds's avatar
      Merge branch 'irq-urgent-for-linus' of... · cb0a02ec
      Linus Torvalds authored
      Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
      
      * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
        genirq: Ensure we locate the passed IRQ in irq_alloc_descs()
        genirq: Fix descriptor init on non-sparse IRQs
        irq: Handle spurios irq detection for threaded irqs
        genirq: Print threaded handler in spurious debug output
      cb0a02ec
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of... · d681f120
      Linus Torvalds authored
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
        x86/amd-iommu: Fix boot crash with hidden PCI devices
        x86/amd-iommu: Use only per-device dma_ops
        x86/amd-iommu: Fix 3 possible endless loops
      d681f120
    • Linus Torvalds's avatar
      Merge branch 'sched-urgent-for-linus' of... · 6715a52a
      Linus Torvalds authored
      Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
      
      * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
        sched: Fix/clarify set_task_cpu() locking rules
        lockdep: Fix lock_is_held() on recursion
        sched: Fix schedstat.nr_wakeups_migrate
        sched: Fix cross-cpu clock sync on remote wakeups
      6715a52a
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 · ef239801
      Linus Torvalds authored
      * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
        drm/nv40: fall back to paged dma object for the moment
        drm/nouveau: fix leak of gart mm node
        drm/nouveau: fix vram page mapping when crossing page table boundaries
        drm/nv17-nv40: Fix modesetting failure when pitch == 4096px (fdo bug 35901).
        drm/nouveau: don't create accel engine objects when noaccel=1
        drm/nvc0: recognise 0xdX chipsets as NV_C0
        drm/i915: Add a no lvds quirk for the Asus EeeBox PC EB1007
        drm/i915: Share the common force-audio property between connectors
        drm/i915: Remove unused enum "chip_family"
        drm/915: fix relaxed tiling on gen2: tile height
        drm/i915/crt: Explicitly return false if connected to a digital monitor
        drm/i915: Replace ironlake_compute_wm0 with g4x_compute_wm0
        drm/i915: Only print out the actual number of fences for i915_error_state
        drm/i915: s/addr & ~PAGE_MASK/offset_in_page(addr)/
        drm: i915: correct return status in intel_hdmi_mode_valid()
        drm/i915: fix regression after clock gating init split
        drm/i915: fix if statement in ivybridge irq handler
      ef239801
    • Linus Torvalds's avatar
      Merge branch 'drm-radeon-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 · 12871a0b
      Linus Torvalds authored
      * 'drm-radeon-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
        drm/radeon/kms/atom: fix PHY init
        drm/radeon/kms: add missing Evergreen texture formats to the CS parser
        drm/radeon/kms: viewport height has to be even
        drm/radeon/kms: remove duplicate reg from r600 safe regs
        drm/radeon/kms: add support for Llano Fusion APUs
        drm/radeon/kms: add llano pci ids
        drm/radeon/kms: fill in asic struct for llano
        drm/radeon/kms: add family ids for llano APUs
        drm/radeon: fix oops in ttm reserve when pageflipping (v2)
        drm/radeon/kms: clean up the radeon kms Kconfig
        drm/radeon/kms: fix thermal sensor reading on juniper
        drm/radeon/kms: add missing case for cayman thermal sensor
        drm/radeon/kms: add blit support for cayman (v2)
        drm/radeon/kms/blit: workaround some hw issues on evergreen+
      12871a0b
    • Linus Torvalds's avatar
      Merge branch 'timers-fixes-for-linus' of... · ecff4fcc
      Linus Torvalds authored
      Merge branch 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
      
      * 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
        timers: Consider slack value in mod_timer()
        clockevents: Handle empty cpumask gracefully
      ecff4fcc
    • Linus Torvalds's avatar
      Merge branch 'kvm-updates/3.0' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 58a9a36b
      Linus Torvalds authored
      * 'kvm-updates/3.0' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: Initialize kvm before registering the mmu notifier
        KVM: x86: use proper port value when checking io instruction permission
        KVM: add missing void __user * cast to access_ok() call
      58a9a36b
    • Grant Likely's avatar
      MAINTAINERS: Saying goodbye to David Brownell · 22b174f8
      Grant Likely authored
      
      
      We had to say goodbye when David passed away recently.  David had a
      huge impact on our community, both personally in the lives of the
      people he worked with, and technically in the design and maintenance
      of several subsystems.  He is greatly missed.
      
      He also leaves behind a number of much loved subsystems now orphaned.
      This patch updates the MAINTAINERS file for the areas that David was
      responsible for and adds an entry for him to the CREDITS file.
      
      Signed-off-by: default avatarGrant Likely <grant.likely@secretlab.ca>
      Acked-by: default avatarHarry Wei <harryxiyou@gmail.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      22b174f8
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6 · 9c125d2a
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6:
        fat: Fix corrupt inode flags when remove ATTR_SYS flag
      9c125d2a
    • David Howells's avatar
      MN10300: Add missing _sdata declaration · 40182373
      David Howells authored
      _sdata needs to be declared in the linker script now as of commit
      a2d063ac
      
       ("extable, core_kernel_data(): Make sure all archs define
      _sdata")
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      40182373
    • David Howells's avatar
      MN10300: die_if_no_fixup() shouldn't use get_user() as it doesn't call set_fs() · db1c9dfa
      David Howells authored
      
      
      die_if_no_fixup() shouldn't use get_user() as it doesn't call set_fs() to
      indicate that it wants to probe a kernel address.  Instead it should use
      probe_kernel_read().
      
      This fixes the problem of gdb seeing SIGILL rather than SIGTRAP when hitting
      the KGDB special breakpoint upon SysRq+g being seen.  The problem was that
      die_if_no_fixup() was failing to read the opcode of the instruction that caused
      the exception, and thus not fixing up the exception.
      
      This caused gdb to get a S04 response to the $? request in its remote protocol
      rather than S05 - which would then cause it to continue with $C04 rather than
      $c in an attempt to pass the signal onto the inferior process.  The kernel,
      however, does not support $Cnn, and so objects by returning an E22 response,
      indicating an error.  gdb does not expect this and prints:
      
      	warning: Remote failure reply: E22
      
      and then returns to the gdb command prompt unable to continue.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      db1c9dfa
    • David Howells's avatar
      MN10300: Fix one of the kernel debugger cacheflush variants · 2e65d1f6
      David Howells authored
      
      
      One of the kernel debugger cacheflush variants escaped proper testing.  Two of
      the labels are wrong, being derived from the code that was copied to construct
      the variant.
      
      The first label results in the following assembler message:
      
          AS      arch/mn10300/mm/cache-dbg-flush-by-reg.o
        arch/mn10300/mm/cache-dbg-flush-by-reg.S: Assembler messages:
        arch/mn10300/mm/cache-dbg-flush-by-reg.S:123: Error: symbol `debugger_local_cache_flushinv_no_dcache' is already defined
      
      And the second label results in the following linker message:
      
        arch/mn10300/mm/built-in.o:(.text+0x1d39): undefined reference to `mn10300_local_icache_inv_range_reg_end'
        arch/mn10300/mm/built-in.o:(.text+0x1d39): relocation truncated to fit: R_MN10300_PCREL16 against undefined symbol `mn10300_local_icache_inv_range_reg_end'
      
      To test this file the following configuration pieces must be set:
      
      	CONFIG_AM34=y
      	CONFIG_MN10300_CACHE_WBACK=y
      	CONFIG_MN10300_DEBUGGER_CACHE_FLUSH_BY_REG=y
      	CONFIG_MN10300_CACHE_MANAGE_BY_REG=y
      	CONFIG_AM34_HAS_CACHE_SNOOP=n
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      2e65d1f6
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6 · aec040e2
      Linus Torvalds authored
      * 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6:
        [S390] fix kvm defines for 31 bit compile
        [S390] use generic RCU page-table freeing code
        [S390] qdio: Split SBAL entry flags
        [S390] kvm-s390: fix stfle facilities numbers >=64
        [S390] kvm-s390: Fix host crash on misbehaving guests
      aec040e2
    • Linus Torvalds's avatar
      Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 · 8ea656bd
      Linus Torvalds authored
      * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: (21 commits)
        ARM: OMAP4: MMC: increase delay for pbias
        arm: omap2plus: move NAND_BLOCK_SIZE out of boards
        omap4: hwmod: Enable the keypad
        omap3: Free Beagle rev gpios when they are read, so others can read them later
        arm: omap3: beagle: Ensure msecure is mux'd to be able to set the RTC
        omap: rx51: Don't power up speaker amplifier at bootup
        omap: rx51: Set regulator V28_A always on
        ARM: OMAP4: MMC: no regulator off during probe for eMMC
        arm: omap2plus: fix ads7846 pendown gpio request
        ARM: OMAP2: Add missing iounmap in omap4430_phy_init
        ARM: omap4: Pass core and wakeup mux tables to omap4_mux_init
        ARM: omap2+: mux: Allow board mux settings to be NULL
        OMAP4: fix return value of omap4_l3_init
        OMAP: iovmm: fix SW flags passed by user
        arch/arm/mach-omap1/dma.c: Invert calls to platform_device_put and platform_device_del
        OMAP2+: mux: fix compilation warnings
        OMAP: SRAM: Fix warning: format '%08lx' expects type 'long unsigned int'
        arm: omap3: cm-t3517: fix section mismatch warning
        OMAP2+: Fix 9 section mismatch(es) warnings from mach-omap2/built-in.o
        ARM: OMAP2: Add missing include of linux/gpio.h
        ...
      8ea656bd
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes · d205df99
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes:
        GFS2: Processes waiting on inode glock that no processes are holding
      d205df99
    • Linus Torvalds's avatar
      Merge branch 'fbdev-fixes-for-linus' of... · 24210071
      Linus Torvalds authored
      Merge branch 'fbdev-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-3.x
      
      * 'fbdev-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-3.x:
        video: Fix use-after-free by vga16fb on rmmod
        video: Convert vmalloc/memset to vzalloc
        efifb: Disallow manual bind and unbind
        efifb: Fix mismatched request/release_mem_region
        efifb: Enable write-combining
        drivers/video/pxa168fb.c: add missing clk_put
        drivers/video/imxfb.c: add missing clk_put
        fbdev: bf537-lq035: add missing blacklight properties type
        savagefb: Use panel CVT mode as default
        fbdev: sh_mobile_lcdcfb: Fix up fallout from MERAM changes.
      24210071
    • Linus Torvalds's avatar
      Merge branch 'for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 · 83973451
      Linus Torvalds authored
      * 'for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
        vfs: make unlink() and rmdir() return ENOENT in preference to EROFS
        lmLogOpen() broken failure exit
        usb: remove bad dput after dentry_unhash
        more conservative S_NOSEC handling
      83973451
    • Greg Kroah-Hartman's avatar
      Revert "USB: option: add ID for ZTE MF 330" · 3095ec89
      Greg Kroah-Hartman authored
      This reverts commit a559d2c8
      
      .
      
      Turns out that device id 0x1d6b:0x0002 is a USB hub, which causes havoc
      when the option driver tries to bind to it.
      
      So revert this as it doesn't seem to be needed at all.
      
      Thanks to Michael Tokarev and Paweł Drobek for working on resolving this
      issue.
      
      Cc: Paweł Drobek <pawel.drobek@gmail.com>
      Cc: Michael Tokarev <mjt@tls.msk.ru>
      Cc: Dominik Brodowski <linux@dominikbrodowski.net>
      Cc: stable <stable@kernel.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      3095ec89
    • H Hartley Sweeten's avatar
      gpio/samsung: make Kconfig options def_bool · 32919a28
      H Hartley Sweeten authored
      
      
      The Samsung GPIO drivers are always built-in when the relevant
      platform is selected.  Change the Kconfig symbol to def_bool y
      dependant on the platform.
      
      Signed-off-by: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
      Acked-by: default avatarKyungmin Park <kyungmin.park@samsung.com>
      Signed-off-by: default avatarGrant Likely <grant.likely@secretlab.ca>
      32919a28
    • Thomas Abraham's avatar
      gpio/exynos4: Fix incorrect mapping of gpio pull-up macro to register setting · 0bf8fa04
      Thomas Abraham authored
      
      
      The S3C_GPIO_PULL_UP macro value incorrectly maps to a reserved setting of GPIO
      pull up/down registers on Exynos4 platform. Fix this incorrect mapping by adding
      wrappers to the s3c_gpio_setpull_updown and s3c_gpio_getpull_updown functions.
      
      Signed-off-by: default avatarThomas Abraham <thomas.ab@samsung.com>
      Acked-by: default avatarKyungmin Park <kyungmin.park@samsung.com>
      Signed-off-by: default avatarGrant Likely <grant.likely@secretlab.ca>
      0bf8fa04
    • Julia Lawall's avatar
      drivers/usb/host/ohci-pxa27x.c: add missing clk_put · 7febe2be
      Julia Lawall authored
      
      
      Add a label before the call to clk_put and jump to that in the error
      handling code that occurs after the call to clk_get has succeeded.
      
      A simplified version of the semantic match that finds this problem is as
      follows: (http://coccinelle.lip6.fr/)
      
      // <smpl>
      @r exists@
      expression e1,e2;
      statement S;
      @@
      
      e1 = clk_get@p1(...);
      ... when != e1 = e2
          when != clk_put(e1)
          when any
      if (...) { ... when != clk_put(e1)
                     when != if (...) { ... clk_put(e1) ... }
      * return@p3 ...;
       } else S
      // </smpl>
      
      Signed-off-by: default avatarJulia Lawall <julia@diku.dk>
      Acked-by: default avatarEric Miao <eric.y.miao@gmail.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      7febe2be