Jaya Kumar
f31ad92f34
fbdev: bugfix for multiprocess defio
...
This patch is a bugfix for how defio handles multiple processes manipulating
the same framebuffer.
Thanks to Bernard Blackham for identifying this bug.
It occurs when two applications mmap the same framebuffer and concurrently
write to the same page. Normally, this doesn't occur since only a single
process mmaps the framebuffer. The symptom of the bug is that the mapping
applications will hang. The cause is that defio incorrectly tries to add the
same page twice to the pagelist. The solution I have is to walk the pagelist
and check for a duplicate before adding. Since I needed to walk the pagelist,
I now also keep the pagelist in sorted order.
Signed-off-by: Jaya Kumar <[email protected] >
Cc: Bernard Blackham <[email protected] >
Cc: <[email protected] >
Signed-off-by: Andrew Morton <[email protected] >
Signed-off-by: Linus Torvalds <[email protected] >
2008-07-12 14:33:41 -07:00
..
aty
fbdev: fix integer as NULL pointer warning
2008-05-23 08:11:07 -07:00
backlight
backlight: Add OMAP1 PWL backlight driver
2008-02-07 09:31:52 +00:00
console
fbcon: fix wrong vmode bits copied on console switch
2008-06-06 11:29:11 -07:00
display
fbdev: fix race in device_create
2008-05-20 13:31:53 -07:00
geode
fix "lxfb: extend PLL table to support dotclocks below 25 MHz"
2008-05-14 19:11:13 -07:00
i810
i810fb: fix console switch regression
2008-03-19 18:53:36 -07:00
intelfb
fbdev: intelfb: add support for the Intel Integrated Graphics Controller 965G/965GM
2008-04-28 08:58:41 -07:00
kyro
logo
video/logo: add support for Blackfin/Linux logo for framebuffer console
2008-05-14 19:11:14 -07:00
matrox
fbdev: fix integer as NULL pointer warning
2008-05-23 08:11:07 -07:00
mbx
mbxfb: fix incorrect argument type
2008-03-10 18:01:20 -07:00
nvidia
video: replace remaining __FUNCTION__ occurrences
2008-04-28 08:58:42 -07:00
omap
drivers/video/: Spelling fixes
2008-02-03 17:31:49 +02:00
pnx4008
drivers/video/pnx4008: eliminate double free
2008-05-13 08:02:24 -07:00
riva
video: replace remaining __FUNCTION__ occurrences
2008-04-28 08:58:42 -07:00
savage
savagefb: speed up the I2C bus
2008-04-28 08:58:38 -07:00
sis
fbdev: fix integer as NULL pointer warning
2008-05-23 08:11:07 -07:00
vermilion
mm: remove nopage
2008-04-28 08:58:18 -07:00
68328fb.c
acornfb.c
acornfb.h
am200epd.c
fbdev: platforming metronomefb and am200epd
2008-04-28 08:58:41 -07:00
amba-clcd.c
amifb.c
m68k: Return -ENODEV if no device is found
2008-05-18 13:28:50 -07:00
arcfb.c
arkfb.c
fbdev: framebuffer_alloc() fixes
2008-04-28 08:58:38 -07:00
asiliantfb.c
atafb.c
fbdev: use DIV_ROUND_UP or roundup
2008-04-28 08:58:35 -07:00
atafb.h
atafb_iplan2p2.c
atafb_iplan2p4.c
atafb_iplan2p8.c
atafb_mfb.c
atafb_utils.h
atmel_lcdfb.c
atmel_lcdfb: fix pixclock divider calculation
2008-05-13 08:02:25 -07:00
au1100fb.c
au1100fb.h
au1200fb.c
au1200fb.h
bf54x-lq043fb.c
video: replace remaining __FUNCTION__ occurrences
2008-04-28 08:58:42 -07:00
bfin-t350mcqb-fb.c
blackfin video driver: fix bug when opening/reading/mmaping BF54x and BF52x framebuffer simultaneously
2008-03-28 14:45:22 -07:00
bt431.h
bt455.h
bw2.c
sparc video: remove open boot prom code
2008-05-08 21:37:30 -07:00
c2p.c
c2p.h
cfbcopyarea.c
fb: add support for foreign endianness
2008-04-28 08:58:35 -07:00
cfbfillrect.c
fb: add support for foreign endianness
2008-04-28 08:58:35 -07:00
cfbimgblt.c
video: replace remaining __FUNCTION__ occurrences
2008-04-28 08:58:42 -07:00
cg3.c
sparc video: remove open boot prom code
2008-05-08 21:37:30 -07:00
cg6.c
sparc video: remove open boot prom code
2008-05-08 21:37:30 -07:00
cg14.c
sparc video: remove open boot prom code
2008-05-08 21:37:30 -07:00
chipsfb.c
PM: Introduce PM_EVENT_HIBERNATE callback state
2008-02-23 10:40:04 -08:00
cirrusfb.c
drivers/video/cirrusfb: fix RAM address printk
2008-06-12 18:05:41 -07:00
clps711xfb.c
proc: remove proc_root from drivers
2008-04-29 08:06:18 -07:00
controlfb.c
controlfb.h
cyber2000fb.c
cyber2000fb.h
cyblafb.c
drivers/video/: Spelling fixes
2008-02-03 17:31:49 +02:00
dnfb.c
m68k: dnfb doesnt check for Apollo
2008-05-18 13:28:49 -07:00
edid.h
efifb.c
epson1355fb.c
fb_ddc.c
fb_defio.c
fbdev: bugfix for multiprocess defio
2008-07-12 14:33:41 -07:00
fb_draw.h
fb: add support for foreign endianness
2008-04-28 08:58:35 -07:00
fb_notify.c
fb_sys_fops.c
fbcmap.c
fbcvt.c
fbmem.c
fb: convert /proc/fb to seq_file interface
2008-04-28 08:58:41 -07:00
fbmon.c
fbmon: cleanup trailing whitespaces
2008-02-06 10:41:15 -08:00
fbsysfs.c
ffb.c
sparc video: remove open boot prom code
2008-05-08 21:37:30 -07:00
fm2fb.c
fsl-diu-fb.c
Fix broken fix for fsl-diu-db
2008-07-08 12:51:08 -07:00
fsl-diu-fb.h
fbdev: powerpc: driver for Freescale 8610 and 5121 DIU
2008-04-28 08:58:40 -07:00
g364fb.c
gbefb.c
gxt4500.c
fbdev: use DIV_ROUND_UP or roundup
2008-04-28 08:58:35 -07:00
hecubafb.c
fbdev: platforming hecubafb and n411
2008-04-28 08:58:41 -07:00
hgafb.c
hgafb: resource management fix
2008-06-12 18:05:40 -07:00
hitfb.c
fb: hitfb: Balance probe/remove section annotations.
2008-03-06 13:56:33 +09:00
hpfb.c
m68k: Return -ENODEV if no device is found
2008-05-18 13:28:50 -07:00
igafb.c
drivers/video: add missing pci_dev_get
2008-02-06 10:41:16 -08:00
imacfb.c
imsttfb.c
video: replace remaining __FUNCTION__ occurrences
2008-04-28 08:58:42 -07:00
imxfb.c
video: replace remaining __FUNCTION__ occurrences
2008-04-28 08:58:42 -07:00
imxfb.h
Kconfig
w100fb: do not depend on SHARPSL
2008-07-04 10:40:08 -07:00
leo.c
sparc: get leo framebuffer working
2008-06-10 14:13:09 -07:00
macfb.c
macmodes.c
macmodes.h
Makefile
fbdev: platforming metronomefb and am200epd
2008-04-28 08:58:41 -07:00
maxinefb.c
metronomefb.c
video: use get/put_unaligned_* helpers
2008-04-29 08:06:28 -07:00
modedb.c
fbdev: export symbol fb_mode_option
2008-06-06 11:29:12 -07:00
n411.c
fbdev: platforming hecubafb and n411
2008-04-28 08:58:41 -07:00
neofb.c
neofb: avoid overwriting fb_info fields
2008-02-06 10:41:16 -08:00
offb.c
powerpc: offb: add support for foreign endianness
2008-04-28 08:58:35 -07:00
output.c
p9100.c
sparc video: remove open boot prom code
2008-05-08 21:37:30 -07:00
platinumfb.c
platinumfb.h
pm2fb.c
video: replace remaining __FUNCTION__ occurrences
2008-04-28 08:58:42 -07:00
pm3fb.c
video: replace remaining __FUNCTION__ occurrences
2008-04-28 08:58:42 -07:00
pmag-aa-fb.c
fbcon: fix color generation for monochrome framebuffer
2008-02-06 10:41:18 -08:00
pmag-ba-fb.c
pmagb-b-fb.c
ps3fb.c
ps3fb: fix modedb typos
2008-02-06 10:41:17 -08:00
pvr2fb.c
fb: pvr2fb: Fix up remaining section mismatch.
2008-03-06 13:39:18 +09:00
pxafb.c
[ARM] 5117/1: pxafb: fix __devinit/exit annotations
2008-06-25 18:50:14 +01:00
pxafb.h
pxafb: preliminary smart panel interface support
2008-04-30 08:29:32 -07:00
q40fb.c
s1d13xxxfb.c
s3c2410fb.c
S3C2410: fix driver MODULE_ALIAS()
2008-05-24 09:56:13 -07:00
s3c2410fb.h
S3C2410: clean out changelog header and tidy
2008-05-24 09:56:13 -07:00
s3fb.c
fbdev: framebuffer_alloc() fixes
2008-04-28 08:58:38 -07:00
sa1100fb.c
sa1100fb.h
video: replace remaining __FUNCTION__ occurrences
2008-04-28 08:58:42 -07:00
sbuslib.c
sparc video: remove open boot prom code
2008-05-08 21:37:30 -07:00
sbuslib.h
sparc video: remove open boot prom code
2008-05-08 21:37:30 -07:00
sgivwfb.c
skeletonfb.c
sm501fb.c
SM501: reverse FPEN/VBIASEN flags behaviour
2008-05-24 09:56:12 -07:00
sstfb.c
video: replace remaining __FUNCTION__ occurrences
2008-04-28 08:58:42 -07:00
sticore.h
stifb.c
video: replace remaining __FUNCTION__ occurrences
2008-04-28 08:58:42 -07:00
sunxvr500.c
sparc video: remove open boot prom code
2008-05-08 21:37:30 -07:00
sunxvr2500.c
sparc video: remove open boot prom code
2008-05-08 21:37:30 -07:00
svgalib.c
syscopyarea.c
fb: add support for foreign endianness
2008-04-28 08:58:35 -07:00
sysfillrect.c
fb: add support for foreign endianness
2008-04-28 08:58:35 -07:00
sysimgblt.c
video: replace remaining __FUNCTION__ occurrences
2008-04-28 08:58:42 -07:00
tcx.c
sparc video: remove open boot prom code
2008-05-08 21:37:30 -07:00
tdfxfb.c
video: replace remaining __FUNCTION__ occurrences
2008-04-28 08:58:42 -07:00
tgafb.c
tridentfb.c
tridentfb: improve clock setting accuracy
2008-05-13 08:02:24 -07:00
uvesafb.c
drivers/video/uvesafb.c: fix error-path memory leak
2008-04-28 08:58:41 -07:00
valkyriefb.c
valkyriefb.h
vesafb.c
vfb.c
vga16fb.c
vgastate.c
vt8623fb.c
fbdev: framebuffer_alloc() fixes
2008-04-28 08:58:38 -07:00
w100fb.c
w100fb: add 80 MHz modeline
2008-07-04 10:40:08 -07:00
w100fb.h
xen-fbfront.c
xen pvfb: Para-virtual framebuffer, keyboard and pointer driver
2008-04-24 23:57:33 +02:00
xilinxfb.c
[POWERPC] Xilinx: Update compatible to use values generated by BSP generator.
2008-02-06 10:23:21 -07:00