From: Kamal Mostafa <kamal@canonical.com>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org,
kernel-team@lists.ubuntu.com
Cc: Mikulas Patocka <mpatocka@redhat.com>,
Tomi Valkeinen <tomi.valkeinen@ti.com>,
Kamal Mostafa <kamal@canonical.com>
Subject: [PATCH 3.8 036/133] tgafb: fix data copying
Date: Tue, 22 Apr 2014 13:12:54 -0700 [thread overview]
Message-ID: <1398197671-12786-37-git-send-email-kamal@canonical.com> (raw)
In-Reply-To: <1398197671-12786-1-git-send-email-kamal@canonical.com>
3.8.13.22 -stable review patch. If anyone has any objections, please let me know.
------------------
From: Mikulas Patocka <mpatocka@redhat.com>
commit 6b0df6827bb6fcacb158dff29ad0a62d6418b534 upstream.
The functions for data copying copyarea_foreward_8bpp and
copyarea_backward_8bpp are buggy, they produce screen corruption.
This patch fixes the functions and moves the logic to one function
"copyarea_8bpp". For simplicity, the function only handles copying that
is aligned on 8 pixes. If we copy an unaligned area, generic function
cfb_copyarea is used.
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
---
drivers/video/tgafb.c | 264 ++++++++++----------------------------------------
1 file changed, 51 insertions(+), 213 deletions(-)
diff --git a/drivers/video/tgafb.c b/drivers/video/tgafb.c
index 88a73b7..a78ca6a 100644
--- a/drivers/video/tgafb.c
+++ b/drivers/video/tgafb.c
@@ -1145,222 +1145,57 @@ copyarea_line_32bpp(struct fb_info *info, u32 dy, u32 sy,
__raw_writel(TGA_MODE_SBM_24BPP|TGA_MODE_SIMPLE, tga_regs+TGA_MODE_REG);
}
-/* The general case of forward copy in 8bpp mode. */
+/* The (almost) general case of backward copy in 8bpp mode. */
static inline void
-copyarea_foreward_8bpp(struct fb_info *info, u32 dx, u32 dy, u32 sx, u32 sy,
- u32 height, u32 width, u32 line_length)
+copyarea_8bpp(struct fb_info *info, u32 dx, u32 dy, u32 sx, u32 sy,
+ u32 height, u32 width, u32 line_length,
+ const struct fb_copyarea *area)
{
struct tga_par *par = (struct tga_par *) info->par;
- unsigned long i, copied, left;
- unsigned long dpos, spos, dalign, salign, yincr;
- u32 smask_first, dmask_first, dmask_last;
- int pixel_shift, need_prime, need_second;
- unsigned long n64, n32, xincr_first;
+ unsigned i, yincr;
+ int depos, sepos, backward, last_step, step;
+ u32 mask_last;
+ unsigned n32;
void __iomem *tga_regs;
void __iomem *tga_fb;
- yincr = line_length;
- if (dy > sy) {
- dy += height - 1;
- sy += height - 1;
- yincr = -yincr;
- }
-
- /* Compute the offsets and alignments in the frame buffer.
- More than anything else, these control how we do copies. */
- dpos = dy * line_length + dx;
- spos = sy * line_length + sx;
- dalign = dpos & 7;
- salign = spos & 7;
- dpos &= -8;
- spos &= -8;
-
- /* Compute the value for the PIXELSHIFT register. This controls
- both non-co-aligned source and destination and copy direction. */
- if (dalign >= salign)
- pixel_shift = dalign - salign;
- else
- pixel_shift = 8 - (salign - dalign);
-
- /* Figure out if we need an additional priming step for the
- residue register. */
- need_prime = (salign > dalign);
- if (need_prime)
- dpos -= 8;
-
- /* Begin by copying the leading unaligned destination. Copy enough
- to make the next destination address 32-byte aligned. */
- copied = 32 - (dalign + (dpos & 31));
- if (copied == 32)
- copied = 0;
- xincr_first = (copied + 7) & -8;
- smask_first = dmask_first = (1ul << copied) - 1;
- smask_first <<= salign;
- dmask_first <<= dalign + need_prime*8;
- if (need_prime && copied > 24)
- copied -= 8;
- left = width - copied;
-
- /* Care for small copies. */
- if (copied > width) {
- u32 t;
- t = (1ul << width) - 1;
- t <<= dalign + need_prime*8;
- dmask_first &= t;
- left = 0;
- }
-
- /* Attempt to use 64-byte copies. This is only possible if the
- source and destination are co-aligned at 64 bytes. */
- n64 = need_second = 0;
- if ((dpos & 63) == (spos & 63)
- && (height == 1 || line_length % 64 == 0)) {
- /* We may need a 32-byte copy to ensure 64 byte alignment. */
- need_second = (dpos + xincr_first) & 63;
- if ((need_second & 32) != need_second)
- printk(KERN_ERR "tgafb: need_second wrong\n");
- if (left >= need_second + 64) {
- left -= need_second;
- n64 = left / 64;
- left %= 64;
- } else
- need_second = 0;
- }
-
- /* Copy trailing full 32-byte sections. This will be the main
- loop if the 64 byte loop can't be used. */
- n32 = left / 32;
- left %= 32;
-
- /* Copy the trailing unaligned destination. */
- dmask_last = (1ul << left) - 1;
-
- tga_regs = par->tga_regs_base;
- tga_fb = par->tga_fb_base;
-
- /* Set up the MODE and PIXELSHIFT registers. */
- __raw_writel(TGA_MODE_SBM_8BPP|TGA_MODE_COPY, tga_regs+TGA_MODE_REG);
- __raw_writel(pixel_shift, tga_regs+TGA_PIXELSHIFT_REG);
- wmb();
-
- for (i = 0; i < height; ++i) {
- unsigned long j;
- void __iomem *sfb;
- void __iomem *dfb;
-
- sfb = tga_fb + spos;
- dfb = tga_fb + dpos;
- if (dmask_first) {
- __raw_writel(smask_first, sfb);
- wmb();
- __raw_writel(dmask_first, dfb);
- wmb();
- sfb += xincr_first;
- dfb += xincr_first;
- }
-
- if (need_second) {
- __raw_writel(0xffffffff, sfb);
- wmb();
- __raw_writel(0xffffffff, dfb);
- wmb();
- sfb += 32;
- dfb += 32;
- }
-
- if (n64 && (((unsigned long)sfb | (unsigned long)dfb) & 63))
- printk(KERN_ERR
- "tgafb: misaligned copy64 (s:%p, d:%p)\n",
- sfb, dfb);
-
- for (j = 0; j < n64; ++j) {
- __raw_writel(sfb - tga_fb, tga_regs+TGA_COPY64_SRC);
- wmb();
- __raw_writel(dfb - tga_fb, tga_regs+TGA_COPY64_DST);
- wmb();
- sfb += 64;
- dfb += 64;
- }
-
- for (j = 0; j < n32; ++j) {
- __raw_writel(0xffffffff, sfb);
- wmb();
- __raw_writel(0xffffffff, dfb);
- wmb();
- sfb += 32;
- dfb += 32;
- }
-
- if (dmask_last) {
- __raw_writel(0xffffffff, sfb);
- wmb();
- __raw_writel(dmask_last, dfb);
- wmb();
- }
-
- spos += yincr;
- dpos += yincr;
+ /* Do acceleration only if we are aligned on 8 pixels */
+ if ((dx | sx | width) & 7) {
+ cfb_copyarea(info, area);
+ return;
}
- /* Reset the MODE register to normal. */
- __raw_writel(TGA_MODE_SBM_8BPP|TGA_MODE_SIMPLE, tga_regs+TGA_MODE_REG);
-}
-
-/* The (almost) general case of backward copy in 8bpp mode. */
-static inline void
-copyarea_backward_8bpp(struct fb_info *info, u32 dx, u32 dy, u32 sx, u32 sy,
- u32 height, u32 width, u32 line_length,
- const struct fb_copyarea *area)
-{
- struct tga_par *par = (struct tga_par *) info->par;
- unsigned long i, left, yincr;
- unsigned long depos, sepos, dealign, sealign;
- u32 mask_first, mask_last;
- unsigned long n32;
- void __iomem *tga_regs;
- void __iomem *tga_fb;
-
yincr = line_length;
if (dy > sy) {
dy += height - 1;
sy += height - 1;
yincr = -yincr;
}
+ backward = dy == sy && dx > sx && dx < sx + width;
/* Compute the offsets and alignments in the frame buffer.
More than anything else, these control how we do copies. */
- depos = dy * line_length + dx + width;
- sepos = sy * line_length + sx + width;
- dealign = depos & 7;
- sealign = sepos & 7;
-
- /* ??? The documentation appears to be incorrect (or very
- misleading) wrt how pixel shifting works in backward copy
- mode, i.e. when PIXELSHIFT is negative. I give up for now.
- Do handle the common case of co-aligned backward copies,
- but frob everything else back on generic code. */
- if (dealign != sealign) {
- cfb_copyarea(info, area);
- return;
- }
-
- /* We begin the copy with the trailing pixels of the
- unaligned destination. */
- mask_first = (1ul << dealign) - 1;
- left = width - dealign;
-
- /* Care for small copies. */
- if (dealign > width) {
- mask_first ^= (1ul << (dealign - width)) - 1;
- left = 0;
- }
+ depos = dy * line_length + dx;
+ sepos = sy * line_length + sx;
+ if (backward)
+ depos += width, sepos += width;
/* Next copy full words at a time. */
- n32 = left / 32;
- left %= 32;
+ n32 = width / 32;
+ last_step = width % 32;
/* Finally copy the unaligned head of the span. */
- mask_last = -1 << (32 - left);
+ mask_last = (1ul << last_step) - 1;
+
+ if (!backward) {
+ step = 32;
+ last_step = 32;
+ } else {
+ step = -32;
+ last_step = -last_step;
+ sepos -= 32;
+ depos -= 32;
+ }
tga_regs = par->tga_regs_base;
tga_fb = par->tga_fb_base;
@@ -1377,25 +1212,33 @@ copyarea_backward_8bpp(struct fb_info *info, u32 dx, u32 dy, u32 sx, u32 sy,
sfb = tga_fb + sepos;
dfb = tga_fb + depos;
- if (mask_first) {
- __raw_writel(mask_first, sfb);
- wmb();
- __raw_writel(mask_first, dfb);
- wmb();
- }
- for (j = 0; j < n32; ++j) {
- sfb -= 32;
- dfb -= 32;
+ for (j = 0; j < n32; j++) {
+ if (j < 2 && j + 1 < n32 && !backward &&
+ !(((unsigned long)sfb | (unsigned long)dfb) & 63)) {
+ do {
+ __raw_writel(sfb - tga_fb, tga_regs+TGA_COPY64_SRC);
+ wmb();
+ __raw_writel(dfb - tga_fb, tga_regs+TGA_COPY64_DST);
+ wmb();
+ sfb += 64;
+ dfb += 64;
+ j += 2;
+ } while (j + 1 < n32);
+ j--;
+ continue;
+ }
__raw_writel(0xffffffff, sfb);
wmb();
__raw_writel(0xffffffff, dfb);
wmb();
+ sfb += step;
+ dfb += step;
}
if (mask_last) {
- sfb -= 32;
- dfb -= 32;
+ sfb += last_step - step;
+ dfb += last_step - step;
__raw_writel(mask_last, sfb);
wmb();
__raw_writel(mask_last, dfb);
@@ -1456,14 +1299,9 @@ tgafb_copyarea(struct fb_info *info, const struct fb_copyarea *area)
else if (bpp == 32)
cfb_copyarea(info, area);
- /* Detect overlapping source and destination that requires
- a backward copy. */
- else if (dy == sy && dx > sx && dx < sx + width)
- copyarea_backward_8bpp(info, dx, dy, sx, sy, height,
- width, line_length, area);
else
- copyarea_foreward_8bpp(info, dx, dy, sx, sy, height,
- width, line_length);
+ copyarea_8bpp(info, dx, dy, sx, sy, height,
+ width, line_length, area);
}
--
1.9.1
next prev parent reply other threads:[~2014-04-22 20:12 UTC|newest]
Thread overview: 138+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-22 20:12 [3.8.y.z extended stable] Linux 3.8.13.22 stable review Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 001/133] net: sctp: fix skb leakage in COOKIE ECHO path of chunk->auth_chunk Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 002/133] bridge: multicast: add sanity check for query source addresses Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 003/133] net: unix: non blocking recvmsg() should not return -EINTR Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 004/133] ipv6: Fix exthdrs offload registration Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 005/133] ipv6: don't set DST_NOCOUNT for remotely added routes Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 006/133] vlan: Set correct source MAC address with TX VLAN offload enabled Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 007/133] tcp: tcp_release_cb() should release socket ownership Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 008/133] net: socket: error on a negative msg_namelen Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 009/133] ipv6: Avoid unnecessary temporary addresses being generated Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 010/133] ipv6: ip6_append_data_mtu do not handle the mtu of the second fragment properly Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 011/133] vxlan: fix potential NULL dereference in arp_reduce() Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 012/133] rtnetlink: fix fdb notification flags Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 013/133] ipmr: fix mfc " Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 014/133] ip6mr: " Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 015/133] usbnet: include wait queue head in device structure Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 016/133] vhost: fix total length when packets are too short Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 017/133] vhost: validate vhost_get_vq_desc return value Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 018/133] xen-netback: remove pointless clause from if statement Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 019/133] ipv6: some ipv6 statistic counters failed to disable bh Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 020/133] netlink: don't compare the nul-termination in nla_strcmp Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 021/133] isdnloop: Validate NUL-terminated strings from user Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 022/133] isdnloop: several buffer overflows Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 023/133] rds: prevent dereference of a NULL device in rds_iw_laddr_check Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 024/133] sparc: PCI: Fix incorrect address calculation of PCI Bridge windows on Simba-bridges Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 025/133] Revert "sparc64: Fix __copy_{to,from}_user_inatomic defines." Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 026/133] sparc32: fix build failure for arch_jump_label_transform Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 027/133] sparc64: don't treat 64-bit syscall return codes as 32-bit Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 028/133] drm/i915: quirk invert brightness for Acer Aspire 5336 Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 029/133] w1: fix w1_send_slave dropping a slave id Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 030/133] ARM: 7954/1: mm: remove remaining domain support from ARMv6 Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 031/133] matroxfb: restore the registers M_ACCESS and M_PITCH Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 032/133] framebuffer: fix cfb_copyarea Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 033/133] mach64: use unaligned access Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 034/133] mach64: fix cursor when character width is not a multiple of 8 pixels Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 035/133] tgafb: fix mode setting with fbset Kamal Mostafa
2014-04-22 20:12 ` Kamal Mostafa [this message]
2014-04-22 20:12 ` [PATCH 3.8 037/133] hvc: ensure hvc_init is only ever called once in hvc_console.c Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 038/133] usb: dwc3: fix wrong bit mask in dwc3_event_devt Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 039/133] x86, AVX-512: AVX-512 Feature Detection Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 040/133] [media] media: gspca: sn9c20x: add ID for Genius Look 1320 V2 Kamal Mostafa
2014-04-22 20:12 ` [PATCH 3.8 041/133] [media] m88rs2000: add caps FE_CAN_INVERSION_AUTO Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 042/133] [media] m88rs2000: prevent frontend crash on continuous transponder scans Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 043/133] tty: Set correct tty name in 'active' sysfs attribute Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 044/133] Bluetooth: Fix removing Long Term Key Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 045/133] [media] uvcvideo: Do not use usb_set_interface on bulk EP Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 046/133] usb: gadget: atmel_usba: fix crashed during stopping when DEBUG is enabled Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 047/133] blktrace: fix accounting of partially completed requests Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 048/133] rtlwifi: rtl8192cu: Fix too long disable of IRQs Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 049/133] rtlwifi: rtl8192se: " Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 050/133] rtlwifi: rtl8723ae: " Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 051/133] xhci: Prevent runtime pm from autosuspending during initialization Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 052/133] staging:serqt_usb2: Fix sparse warning restricted __le16 degrades to integer Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 053/133] Btrfs: skip submitting barrier for missing device Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 054/133] jffs2: remove from wait queue after schedule() Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 055/133] jffs2: avoid soft-lockup in jffs2_reserve_space_gc() Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 056/133] jffs2: Fix segmentation fault found in stress test Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 057/133] jffs2: Fix crash due to truncation of csize Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 058/133] mtd: atmel_nand: Disable subpage NAND write when using Atmel PMECC Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 059/133] iwlwifi: dvm: take mutex when sending SYNC BT config command Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 060/133] virtio_balloon: don't softlockup on huge balloon changes Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 061/133] arm64: Use Normal NonCacheable memory for writecombine Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 062/133] arm64: Make DMA coherent and strongly ordered mappings not executable Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 063/133] arm64: Do not synchronise I and D caches for special ptes Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 064/133] ARM: OMAP2+: INTC: Acknowledge stuck active interrupts Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 065/133] mtip32xx: Set queue bounce limit Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 066/133] mtip32xx: Unmap the DMA segments before completing the IO request Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 067/133] ath9k: fix ready time of the multicast buffer queue Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 068/133] [SCSI] fix our current target reap infrastructure Kamal Mostafa
2014-04-25 2:03 ` Ben Hutchings
2014-04-27 19:46 ` Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 069/133] [SCSI] dual scan thread bug fix Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 070/133] usb: gadget: tcm_usb_gadget: stop format strings Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 071/133] USB: unbind all interfaces before rebinding any Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 072/133] IB/ipath: Fix potential buffer overrun in sending diag packet routine Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 073/133] IB/nes: Return an error on ib_copy_from_udata() failure instead of NULL Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 074/133] mfd: sec-core: Fix possible NULL pointer dereference when i2c_new_dummy error Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 075/133] regulator: arizona-ldo1: Correct default regulator init_data Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 076/133] ASoC: cs42l73: Fix mask bits for SOC_VALUE_ENUM_SINGLE Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 077/133] ASoC: cs42l52: " Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 078/133] mfd: Include all drivers in subsystem menu Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 079/133] mfd: max8997: Fix possible NULL pointer dereference on i2c_new_dummy error Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 080/133] mfd: max77686: " Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 081/133] mfd: max8998: " Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 082/133] mfd: max8925: " Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 083/133] mfd: 88pm860x: Fix I2C device resource leak on regmap init fail Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 084/133] mfd: 88pm860x: Fix possible NULL pointer dereference on i2c_new_dummy error Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 085/133] mfd: max77693: " Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 086/133] mfd: tps65910: Fix possible invalid pointer dereference on regmap_add_irq_chip fail Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 087/133] ASoC: cs42l51: Fix SOC_DOUBLE_R_SX_TLV shift values for ADC, PCM, and Analog kcontrols Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 088/133] pid: get pid_t ppid of task in init_pid_ns Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 089/133] audit: convert PPIDs to the inital PID namespace Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 090/133] Btrfs: fix deadlock with nested trans handles Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 091/133] gpio: mxs: Allow for recursive enable_irq_wake() call Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 092/133] x86, hyperv: Bypass the timer_irq_works() check Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 093/133] nfsd4: buffer-length check for SUPPATTR_EXCLCREAT Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 094/133] nfsd4: session needs room for following op to error out Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 095/133] nfsd4: leave reply buffer space for failed setattr Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 096/133] nfsd4: fix test_stateid error reply encoding Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 097/133] nfsd: notify_change needs elevated write count Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 098/133] dm transaction manager: fix corruption due to non-atomic transaction commit Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 099/133] dm: take care to copy the space map roots before locking the superblock Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 100/133] NFSD: Traverse unconfirmed client through hash-table Kamal Mostafa
2014-04-22 20:13 ` [PATCH 3.8 101/133] lockd: ensure we tear down any live sockets when socket creation fails during lockd_up Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 102/133] drm/i915/tv: fix gen4 composite s-video tv-out Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 103/133] dm thin: fix dangling bio in process_deferred_bios error path Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 104/133] NFSv4: Fix a use-after-free problem in open() Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 105/133] nfsd4: fix setclientid encode size Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 106/133] MIPS: Hibernate: Flush TLB entries in swsusp_arch_resume() Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 107/133] ALSA: hda - Enable beep for ASUS 1015E Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 108/133] x86: Adjust irq remapping quirk for older revisions of 5500/5520 chipsets Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 109/133] nfsd: check passed socket's net matches NFSd superblock's one Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 110/133] nfsd4: fix memory leak in nfsd4_encode_fattr() Kamal Mostafa
2014-04-23 10:56 ` Luis Henriques
2014-04-23 16:35 ` Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 111/133] IB/mthca: Return an error on ib_copy_to_udata() failure Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 112/133] IB/ehca: Returns " Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 113/133] don't bother with {get,put}_write_access() on non-regular files Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 114/133] reiserfs: fix race in readdir Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 115/133] pid_namespace: pidns_get() should check task_active_pid_ns() != NULL Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 116/133] drm/vmwgfx: correct fb_fix_screeninfo.line_length Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 117/133] drm/radeon: call drm_edid_to_eld when we update the edid Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 118/133] sh: fix format string bug in stack tracer Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 119/133] ocfs2: dlm: fix lock migration crash Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 120/133] ocfs2: dlm: fix recovery hung Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 121/133] ocfs2: do not put bh when buffer_uptodate failed Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 122/133] Skip intel_crt_init for Dell XPS 8700 Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 123/133] iscsi-target: Fix ERL=2 ASYNC_EVENT connection pointer bug Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 124/133] mm: try_to_unmap_cluster() should lock_page() before mlocking Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 125/133] mm: hugetlb: fix softlockup when a large number of hugepages are freed Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 126/133] wait: fix reparent_leader() vs EXIT_DEAD->EXIT_ZOMBIE race Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 127/133] hung_task: check the value of "sysctl_hung_task_timeout_sec" Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 128/133] ALSA: ice1712: Fix boundary checks in PCM pointer ops Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 129/133] lib/percpu_counter.c: fix bad percpu counter state during suspend Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 130/133] b43: Fix machine check error due to improper access of B43_MMIO_PSM_PHY_HDR Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 131/133] x86-64, modify_ldt: Ban 16-bit segments on 64-bit kernels Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 132/133] target/tcm_fc: Fix use-after-free of ft_tpg Kamal Mostafa
2014-04-22 20:14 ` [PATCH 3.8 133/133] ib_srpt: Use correct ib_sg_dma primitives Kamal Mostafa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1398197671-12786-37-git-send-email-kamal@canonical.com \
--to=kamal@canonical.com \
--cc=kernel-team@lists.ubuntu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mpatocka@redhat.com \
--cc=stable@vger.kernel.org \
--cc=tomi.valkeinen@ti.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox