Loading Documentation/filesystems/Locking +4 −11 Original line number Original line Diff line number Diff line Loading @@ -144,8 +144,8 @@ prototypes: void (*kill_sb) (struct super_block *); void (*kill_sb) (struct super_block *); locking rules: locking rules: may block BKL may block BKL get_sb yes yes get_sb yes no kill_sb yes yes kill_sb yes no ->get_sb() returns error or 0 with locked superblock attached to the vfsmount ->get_sb() returns error or 0 with locked superblock attached to the vfsmount (exclusive on ->s_umount). (exclusive on ->s_umount). Loading Loading @@ -409,12 +409,12 @@ ioctl: yes (see below) unlocked_ioctl: no (see below) unlocked_ioctl: no (see below) compat_ioctl: no compat_ioctl: no mmap: no mmap: no open: maybe (see below) open: no flush: no flush: no release: no release: no fsync: no (see below) fsync: no (see below) aio_fsync: no aio_fsync: no fasync: yes (see below) fasync: no lock: yes lock: yes readv: no readv: no writev: no writev: no Loading @@ -431,13 +431,6 @@ For many filesystems, it is probably safe to acquire the inode semaphore. Note some filesystems (i.e. remote ones) provide no semaphore. Note some filesystems (i.e. remote ones) provide no protection for i_size so you will need to use the BKL. protection for i_size so you will need to use the BKL. ->open() locking is in-transit: big lock partially moved into the methods. The only exception is ->open() in the instances of file_operations that never end up in ->i_fop/->proc_fops, i.e. ones that belong to character devices (chrdev_open() takes lock before replacing ->f_op and calling the secondary method. As soon as we fix the handling of module reference counters all instances of ->open() will be called without the BKL. Note: ext2_release() was *the* source of contention on fs-intensive Note: ext2_release() was *the* source of contention on fs-intensive loads and dropping BKL on ->release() helps to get rid of that (we still loads and dropping BKL on ->release() helps to get rid of that (we still grab BKL for cases when we close a file that had been opened r/w, but that grab BKL for cases when we close a file that had been opened r/w, but that Loading Documentation/laptops/thinkpad-acpi.txt +3 −8 Original line number Original line Diff line number Diff line Loading @@ -44,7 +44,7 @@ detailed description): - LCD brightness control - LCD brightness control - Volume control - Volume control - Fan control and monitoring: fan speed, fan enable/disable - Fan control and monitoring: fan speed, fan enable/disable - Experimental: WAN enable and disable - WAN enable and disable A compatibility table by model and feature is maintained on the web A compatibility table by model and feature is maintained on the web site, http://ibm-acpi.sf.net/. I appreciate any success or failure site, http://ibm-acpi.sf.net/. I appreciate any success or failure Loading Loading @@ -1375,18 +1375,13 @@ with EINVAL, try to set pwm1_enable to 1 and pwm1 to at least 128 (255 would be the safest choice, though). would be the safest choice, though). EXPERIMENTAL: WAN WAN ----------------- --- procfs: /proc/acpi/ibm/wan procfs: /proc/acpi/ibm/wan sysfs device attribute: wwan_enable (deprecated) sysfs device attribute: wwan_enable (deprecated) sysfs rfkill class: switch "tpacpi_wwan_sw" sysfs rfkill class: switch "tpacpi_wwan_sw" This feature is marked EXPERIMENTAL because the implementation directly accesses hardware registers and may not work as expected. USE WITH CAUTION! To use this feature, you need to supply the experimental=1 parameter when loading the module. This feature shows the presence and current state of a W-WAN (Sierra This feature shows the presence and current state of a W-WAN (Sierra Wireless EV-DO) device. Wireless EV-DO) device. Loading Documentation/video4linux/CARDLIST.au0828 +1 −0 Original line number Original line Diff line number Diff line Loading @@ -3,3 +3,4 @@ 2 -> Hauppauge HVR850 (au0828) [2040:7240] 2 -> Hauppauge HVR850 (au0828) [2040:7240] 3 -> DViCO FusionHDTV USB (au0828) [0fe9:d620] 3 -> DViCO FusionHDTV USB (au0828) [0fe9:d620] 4 -> Hauppauge HVR950Q rev xxF8 (au0828) [2040:7201,2040:7211,2040:7281] 4 -> Hauppauge HVR950Q rev xxF8 (au0828) [2040:7201,2040:7211,2040:7281] 5 -> Hauppauge Woodbury (au0828) [2040:8200] Documentation/video4linux/gspca.txt +16 −13 Original line number Original line Diff line number Diff line Loading @@ -88,8 +88,8 @@ zc3xx 0471:0325 Philips SPC 200 NC zc3xx 0471:0326 Philips SPC 300 NC zc3xx 0471:0326 Philips SPC 300 NC sonixj 0471:0327 Philips SPC 600 NC sonixj 0471:0327 Philips SPC 600 NC sonixj 0471:0328 Philips SPC 700 NC sonixj 0471:0328 Philips SPC 700 NC zc3xx 0471:032d Philips spc210nc zc3xx 0471:032d Philips SPC 210 NC zc3xx 0471:032e Philips spc315nc zc3xx 0471:032e Philips SPC 315 NC sonixj 0471:0330 Philips SPC 710 NC sonixj 0471:0330 Philips SPC 710 NC spca501 0497:c001 Smile International spca501 0497:c001 Smile International sunplus 04a5:3003 Benq DC 1300 sunplus 04a5:3003 Benq DC 1300 Loading Loading @@ -175,19 +175,21 @@ sunplus 08ca:2060 Aiptek PocketDV5300 tv8532 0923:010f ICM532 cams tv8532 0923:010f ICM532 cams mars 093a:050f Mars-Semi Pc-Camera mars 093a:050f Mars-Semi Pc-Camera pac207 093a:2460 PAC207 Qtec Webcam 100 pac207 093a:2460 PAC207 Qtec Webcam 100 pac207 093a:2463 Philips spc200nc pac207 pac207 093a:2463 Philips SPC 220 NC pac207 093a:2464 Labtec Webcam 1200 pac207 093a:2464 Labtec Webcam 1200 pac207 093a:2468 PAC207 pac207 093a:2468 PAC207 pac207 093a:2470 Genius GF112 pac207 093a:2470 Genius GF112 pac207 093a:2471 PAC207 Genius VideoCam ge111 pac207 093a:2471 Genius VideoCam ge111 pac207 093a:2472 PAC207 Genius VideoCam ge110 pac207 093a:2472 Genius VideoCam ge110 pac7311 093a:2600 PAC7311 Typhoon pac7311 093a:2600 PAC7311 Typhoon pac7311 093a:2601 PAC7311 Phillips SPC610NC pac7311 093a:2601 Philips SPC 610 NC pac7311 093a:2603 PAC7312 pac7311 093a:2603 PAC7312 pac7311 093a:2608 PAC7311 Trust WB-3300p pac7311 093a:2608 Trust WB-3300p pac7311 093a:260e PAC7311 Gigaware VGA PC Camera, Trust WB-3350p, SIGMA cam 2350 pac7311 093a:260e Gigaware VGA PC Camera, Trust WB-3350p, SIGMA cam 2350 pac7311 093a:260f PAC7311 SnakeCam pac7311 093a:260f SnakeCam pac7311 093a:2621 PAC731x pac7311 093a:2621 PAC731x pac7311 093a:2624 PAC7302 pac7311 093a:2626 Labtec 2200 zc3xx 0ac8:0302 Z-star Vimicro zc0302 zc3xx 0ac8:0302 Z-star Vimicro zc0302 vc032x 0ac8:0321 Vimicro generic vc0321 vc032x 0ac8:0321 Vimicro generic vc0321 vc032x 0ac8:0323 Vimicro Vc0323 vc032x 0ac8:0323 Vimicro Vc0323 Loading Loading @@ -220,6 +222,7 @@ sonixj 0c45:60c0 Sangha Sn535 sonixj 0c45:60ec SN9C105+MO4000 sonixj 0c45:60ec SN9C105+MO4000 sonixj 0c45:60fb Surfer NoName sonixj 0c45:60fb Surfer NoName sonixj 0c45:60fc LG-LIC300 sonixj 0c45:60fc LG-LIC300 sonixj 0c45:6128 Microdia/Sonix SNP325 sonixj 0c45:612a Avant Camera sonixj 0c45:612a Avant Camera sonixj 0c45:612c Typhoon Rasy Cam 1.3MPix sonixj 0c45:612c Typhoon Rasy Cam 1.3MPix sonixj 0c45:6130 Sonix Pccam sonixj 0c45:6130 Sonix Pccam Loading @@ -234,7 +237,7 @@ zc3xx 10fd:0128 Typhoon Webshot II USB 300k 0x0128 spca561 10fd:7e50 FlyCam Usb 100 spca561 10fd:7e50 FlyCam Usb 100 zc3xx 10fd:8050 Typhoon Webshot II USB 300k zc3xx 10fd:8050 Typhoon Webshot II USB 300k spca501 1776:501c Arowana 300K CMOS Camera spca501 1776:501c Arowana 300K CMOS Camera t613 17a1:0128 T613/TAS5130A t613 17a1:0128 TASCORP JPEG Webcam, NGS Cyclops vc032x 17ef:4802 Lenovo Vc0323+MI1310_SOC vc032x 17ef:4802 Lenovo Vc0323+MI1310_SOC pac207 2001:f115 D-Link DSB-C120 pac207 2001:f115 D-Link DSB-C120 spca500 2899:012c Toptro Industrial spca500 2899:012c Toptro Industrial Loading MAINTAINERS +5 −4 Original line number Original line Diff line number Diff line Loading @@ -222,8 +222,7 @@ W: http://code.google.com/p/aceracpi S: Maintained S: Maintained ACPI ACPI P: Andi Kleen P: Len Brown M: ak@linux.intel.com M: lenb@kernel.org M: lenb@kernel.org L: linux-acpi@vger.kernel.org L: linux-acpi@vger.kernel.org W: http://www.lesswatts.org/projects/acpi/ W: http://www.lesswatts.org/projects/acpi/ Loading Loading @@ -751,11 +750,13 @@ P: Ville Syrjala M: syrjala@sci.fi M: syrjala@sci.fi S: Maintained S: Maintained ATL1 ETHERNET DRIVER ATLX ETHERNET DRIVERS P: Jay Cliburn P: Jay Cliburn M: jcliburn@gmail.com M: jcliburn@gmail.com P: Chris Snook P: Chris Snook M: csnook@redhat.com M: csnook@redhat.com P: Jie Yang M: jie.yang@atheros.com L: atl1-devel@lists.sourceforge.net L: atl1-devel@lists.sourceforge.net W: http://sourceforge.net/projects/atl1 W: http://sourceforge.net/projects/atl1 W: http://atl1.sourceforge.net W: http://atl1.sourceforge.net Loading Loading @@ -1594,7 +1595,7 @@ S: Supported EMBEDDED LINUX EMBEDDED LINUX P: Paul Gortmaker P: Paul Gortmaker M: paul.gortmaker@windriver.com M: paul.gortmaker@windriver.com P David Woodhouse P: David Woodhouse M: dwmw2@infradead.org M: dwmw2@infradead.org L: linux-embedded@vger.kernel.org L: linux-embedded@vger.kernel.org S: Maintained S: Maintained Loading Loading
Documentation/filesystems/Locking +4 −11 Original line number Original line Diff line number Diff line Loading @@ -144,8 +144,8 @@ prototypes: void (*kill_sb) (struct super_block *); void (*kill_sb) (struct super_block *); locking rules: locking rules: may block BKL may block BKL get_sb yes yes get_sb yes no kill_sb yes yes kill_sb yes no ->get_sb() returns error or 0 with locked superblock attached to the vfsmount ->get_sb() returns error or 0 with locked superblock attached to the vfsmount (exclusive on ->s_umount). (exclusive on ->s_umount). Loading Loading @@ -409,12 +409,12 @@ ioctl: yes (see below) unlocked_ioctl: no (see below) unlocked_ioctl: no (see below) compat_ioctl: no compat_ioctl: no mmap: no mmap: no open: maybe (see below) open: no flush: no flush: no release: no release: no fsync: no (see below) fsync: no (see below) aio_fsync: no aio_fsync: no fasync: yes (see below) fasync: no lock: yes lock: yes readv: no readv: no writev: no writev: no Loading @@ -431,13 +431,6 @@ For many filesystems, it is probably safe to acquire the inode semaphore. Note some filesystems (i.e. remote ones) provide no semaphore. Note some filesystems (i.e. remote ones) provide no protection for i_size so you will need to use the BKL. protection for i_size so you will need to use the BKL. ->open() locking is in-transit: big lock partially moved into the methods. The only exception is ->open() in the instances of file_operations that never end up in ->i_fop/->proc_fops, i.e. ones that belong to character devices (chrdev_open() takes lock before replacing ->f_op and calling the secondary method. As soon as we fix the handling of module reference counters all instances of ->open() will be called without the BKL. Note: ext2_release() was *the* source of contention on fs-intensive Note: ext2_release() was *the* source of contention on fs-intensive loads and dropping BKL on ->release() helps to get rid of that (we still loads and dropping BKL on ->release() helps to get rid of that (we still grab BKL for cases when we close a file that had been opened r/w, but that grab BKL for cases when we close a file that had been opened r/w, but that Loading
Documentation/laptops/thinkpad-acpi.txt +3 −8 Original line number Original line Diff line number Diff line Loading @@ -44,7 +44,7 @@ detailed description): - LCD brightness control - LCD brightness control - Volume control - Volume control - Fan control and monitoring: fan speed, fan enable/disable - Fan control and monitoring: fan speed, fan enable/disable - Experimental: WAN enable and disable - WAN enable and disable A compatibility table by model and feature is maintained on the web A compatibility table by model and feature is maintained on the web site, http://ibm-acpi.sf.net/. I appreciate any success or failure site, http://ibm-acpi.sf.net/. I appreciate any success or failure Loading Loading @@ -1375,18 +1375,13 @@ with EINVAL, try to set pwm1_enable to 1 and pwm1 to at least 128 (255 would be the safest choice, though). would be the safest choice, though). EXPERIMENTAL: WAN WAN ----------------- --- procfs: /proc/acpi/ibm/wan procfs: /proc/acpi/ibm/wan sysfs device attribute: wwan_enable (deprecated) sysfs device attribute: wwan_enable (deprecated) sysfs rfkill class: switch "tpacpi_wwan_sw" sysfs rfkill class: switch "tpacpi_wwan_sw" This feature is marked EXPERIMENTAL because the implementation directly accesses hardware registers and may not work as expected. USE WITH CAUTION! To use this feature, you need to supply the experimental=1 parameter when loading the module. This feature shows the presence and current state of a W-WAN (Sierra This feature shows the presence and current state of a W-WAN (Sierra Wireless EV-DO) device. Wireless EV-DO) device. Loading
Documentation/video4linux/CARDLIST.au0828 +1 −0 Original line number Original line Diff line number Diff line Loading @@ -3,3 +3,4 @@ 2 -> Hauppauge HVR850 (au0828) [2040:7240] 2 -> Hauppauge HVR850 (au0828) [2040:7240] 3 -> DViCO FusionHDTV USB (au0828) [0fe9:d620] 3 -> DViCO FusionHDTV USB (au0828) [0fe9:d620] 4 -> Hauppauge HVR950Q rev xxF8 (au0828) [2040:7201,2040:7211,2040:7281] 4 -> Hauppauge HVR950Q rev xxF8 (au0828) [2040:7201,2040:7211,2040:7281] 5 -> Hauppauge Woodbury (au0828) [2040:8200]
Documentation/video4linux/gspca.txt +16 −13 Original line number Original line Diff line number Diff line Loading @@ -88,8 +88,8 @@ zc3xx 0471:0325 Philips SPC 200 NC zc3xx 0471:0326 Philips SPC 300 NC zc3xx 0471:0326 Philips SPC 300 NC sonixj 0471:0327 Philips SPC 600 NC sonixj 0471:0327 Philips SPC 600 NC sonixj 0471:0328 Philips SPC 700 NC sonixj 0471:0328 Philips SPC 700 NC zc3xx 0471:032d Philips spc210nc zc3xx 0471:032d Philips SPC 210 NC zc3xx 0471:032e Philips spc315nc zc3xx 0471:032e Philips SPC 315 NC sonixj 0471:0330 Philips SPC 710 NC sonixj 0471:0330 Philips SPC 710 NC spca501 0497:c001 Smile International spca501 0497:c001 Smile International sunplus 04a5:3003 Benq DC 1300 sunplus 04a5:3003 Benq DC 1300 Loading Loading @@ -175,19 +175,21 @@ sunplus 08ca:2060 Aiptek PocketDV5300 tv8532 0923:010f ICM532 cams tv8532 0923:010f ICM532 cams mars 093a:050f Mars-Semi Pc-Camera mars 093a:050f Mars-Semi Pc-Camera pac207 093a:2460 PAC207 Qtec Webcam 100 pac207 093a:2460 PAC207 Qtec Webcam 100 pac207 093a:2463 Philips spc200nc pac207 pac207 093a:2463 Philips SPC 220 NC pac207 093a:2464 Labtec Webcam 1200 pac207 093a:2464 Labtec Webcam 1200 pac207 093a:2468 PAC207 pac207 093a:2468 PAC207 pac207 093a:2470 Genius GF112 pac207 093a:2470 Genius GF112 pac207 093a:2471 PAC207 Genius VideoCam ge111 pac207 093a:2471 Genius VideoCam ge111 pac207 093a:2472 PAC207 Genius VideoCam ge110 pac207 093a:2472 Genius VideoCam ge110 pac7311 093a:2600 PAC7311 Typhoon pac7311 093a:2600 PAC7311 Typhoon pac7311 093a:2601 PAC7311 Phillips SPC610NC pac7311 093a:2601 Philips SPC 610 NC pac7311 093a:2603 PAC7312 pac7311 093a:2603 PAC7312 pac7311 093a:2608 PAC7311 Trust WB-3300p pac7311 093a:2608 Trust WB-3300p pac7311 093a:260e PAC7311 Gigaware VGA PC Camera, Trust WB-3350p, SIGMA cam 2350 pac7311 093a:260e Gigaware VGA PC Camera, Trust WB-3350p, SIGMA cam 2350 pac7311 093a:260f PAC7311 SnakeCam pac7311 093a:260f SnakeCam pac7311 093a:2621 PAC731x pac7311 093a:2621 PAC731x pac7311 093a:2624 PAC7302 pac7311 093a:2626 Labtec 2200 zc3xx 0ac8:0302 Z-star Vimicro zc0302 zc3xx 0ac8:0302 Z-star Vimicro zc0302 vc032x 0ac8:0321 Vimicro generic vc0321 vc032x 0ac8:0321 Vimicro generic vc0321 vc032x 0ac8:0323 Vimicro Vc0323 vc032x 0ac8:0323 Vimicro Vc0323 Loading Loading @@ -220,6 +222,7 @@ sonixj 0c45:60c0 Sangha Sn535 sonixj 0c45:60ec SN9C105+MO4000 sonixj 0c45:60ec SN9C105+MO4000 sonixj 0c45:60fb Surfer NoName sonixj 0c45:60fb Surfer NoName sonixj 0c45:60fc LG-LIC300 sonixj 0c45:60fc LG-LIC300 sonixj 0c45:6128 Microdia/Sonix SNP325 sonixj 0c45:612a Avant Camera sonixj 0c45:612a Avant Camera sonixj 0c45:612c Typhoon Rasy Cam 1.3MPix sonixj 0c45:612c Typhoon Rasy Cam 1.3MPix sonixj 0c45:6130 Sonix Pccam sonixj 0c45:6130 Sonix Pccam Loading @@ -234,7 +237,7 @@ zc3xx 10fd:0128 Typhoon Webshot II USB 300k 0x0128 spca561 10fd:7e50 FlyCam Usb 100 spca561 10fd:7e50 FlyCam Usb 100 zc3xx 10fd:8050 Typhoon Webshot II USB 300k zc3xx 10fd:8050 Typhoon Webshot II USB 300k spca501 1776:501c Arowana 300K CMOS Camera spca501 1776:501c Arowana 300K CMOS Camera t613 17a1:0128 T613/TAS5130A t613 17a1:0128 TASCORP JPEG Webcam, NGS Cyclops vc032x 17ef:4802 Lenovo Vc0323+MI1310_SOC vc032x 17ef:4802 Lenovo Vc0323+MI1310_SOC pac207 2001:f115 D-Link DSB-C120 pac207 2001:f115 D-Link DSB-C120 spca500 2899:012c Toptro Industrial spca500 2899:012c Toptro Industrial Loading
MAINTAINERS +5 −4 Original line number Original line Diff line number Diff line Loading @@ -222,8 +222,7 @@ W: http://code.google.com/p/aceracpi S: Maintained S: Maintained ACPI ACPI P: Andi Kleen P: Len Brown M: ak@linux.intel.com M: lenb@kernel.org M: lenb@kernel.org L: linux-acpi@vger.kernel.org L: linux-acpi@vger.kernel.org W: http://www.lesswatts.org/projects/acpi/ W: http://www.lesswatts.org/projects/acpi/ Loading Loading @@ -751,11 +750,13 @@ P: Ville Syrjala M: syrjala@sci.fi M: syrjala@sci.fi S: Maintained S: Maintained ATL1 ETHERNET DRIVER ATLX ETHERNET DRIVERS P: Jay Cliburn P: Jay Cliburn M: jcliburn@gmail.com M: jcliburn@gmail.com P: Chris Snook P: Chris Snook M: csnook@redhat.com M: csnook@redhat.com P: Jie Yang M: jie.yang@atheros.com L: atl1-devel@lists.sourceforge.net L: atl1-devel@lists.sourceforge.net W: http://sourceforge.net/projects/atl1 W: http://sourceforge.net/projects/atl1 W: http://atl1.sourceforge.net W: http://atl1.sourceforge.net Loading Loading @@ -1594,7 +1595,7 @@ S: Supported EMBEDDED LINUX EMBEDDED LINUX P: Paul Gortmaker P: Paul Gortmaker M: paul.gortmaker@windriver.com M: paul.gortmaker@windriver.com P David Woodhouse P: David Woodhouse M: dwmw2@infradead.org M: dwmw2@infradead.org L: linux-embedded@vger.kernel.org L: linux-embedded@vger.kernel.org S: Maintained S: Maintained Loading