1. 13 4月, 2010 3 次提交
  2. 07 4月, 2010 1 次提交
  3. 30 3月, 2010 1 次提交
    • T
      include cleanup: Update gfp.h and slab.h includes to prepare for breaking... · 5a0e3ad6
      Tejun Heo 提交于
      include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
      
      percpu.h is included by sched.h and module.h and thus ends up being
      included when building most .c files.  percpu.h includes slab.h which
      in turn includes gfp.h making everything defined by the two files
      universally available and complicating inclusion dependencies.
      
      percpu.h -> slab.h dependency is about to be removed.  Prepare for
      this change by updating users of gfp and slab facilities include those
      headers directly instead of assuming availability.  As this conversion
      needs to touch large number of source files, the following script is
      used as the basis of conversion.
      
        http://userweb.kernel.org/~tj/misc/slabh-sweep.py
      
      The script does the followings.
      
      * Scan files for gfp and slab usages and update includes such that
        only the necessary includes are there.  ie. if only gfp is used,
        gfp.h, if slab is used, slab.h.
      
      * When the script inserts a new include, it looks at the include
        blocks and try to put the new include such that its order conforms
        to its surrounding.  It's put in the include block which contains
        core kernel includes, in the same order that the rest are ordered -
        alphabetical, Christmas tree, rev-Xmas-tree or at the end if there
        doesn't seem to be any matching order.
      
      * If the script can't find a place to put a new include (mostly
        because the file doesn't have fitting include block), it prints out
        an error message indicating which .h file needs to be added to the
        file.
      
      The conversion was done in the following steps.
      
      1. The initial automatic conversion of all .c files updated slightly
         over 4000 files, deleting around 700 includes and adding ~480 gfp.h
         and ~3000 slab.h inclusions.  The script emitted errors for ~400
         files.
      
      2. Each error was manually checked.  Some didn't need the inclusion,
         some needed manual addition while adding it to implementation .h or
         embedding .c file was more appropriate for others.  This step added
         inclusions to around 150 files.
      
      3. The script was run again and the output was compared to the edits
         from #2 to make sure no file was left behind.
      
      4. Several build tests were done and a couple of problems were fixed.
         e.g. lib/decompress_*.c used malloc/free() wrappers around slab
         APIs requiring slab.h to be added manually.
      
      5. The script was run on all .h files but without automatically
         editing them as sprinkling gfp.h and slab.h inclusions around .h
         files could easily lead to inclusion dependency hell.  Most gfp.h
         inclusion directives were ignored as stuff from gfp.h was usually
         wildly available and often used in preprocessor macros.  Each
         slab.h inclusion directive was examined and added manually as
         necessary.
      
      6. percpu.h was updated not to include slab.h.
      
      7. Build test were done on the following configurations and failures
         were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my
         distributed build env didn't work with gcov compiles) and a few
         more options had to be turned off depending on archs to make things
         build (like ipr on powerpc/64 which failed due to missing writeq).
      
         * x86 and x86_64 UP and SMP allmodconfig and a custom test config.
         * powerpc and powerpc64 SMP allmodconfig
         * sparc and sparc64 SMP allmodconfig
         * ia64 SMP allmodconfig
         * s390 SMP allmodconfig
         * alpha SMP allmodconfig
         * um on x86_64 SMP allmodconfig
      
      8. percpu.h modifications were reverted so that it could be applied as
         a separate patch and serve as bisection point.
      
      Given the fact that I had only a couple of failures from tests on step
      6, I'm fairly confident about the coverage of this conversion patch.
      If there is a breakage, it's likely to be something in one of the arch
      headers which should be easily discoverable easily on most builds of
      the specific arch.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Guess-its-ok-by: NChristoph Lameter <cl@linux-foundation.org>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Lee Schermerhorn <Lee.Schermerhorn@hp.com>
      5a0e3ad6
  4. 09 2月, 2010 1 次提交
  5. 25 6月, 2009 1 次提交
  6. 07 4月, 2009 1 次提交
  7. 18 3月, 2009 1 次提交
  8. 12 1月, 2009 1 次提交
  9. 27 11月, 2008 1 次提交
    • J
      ALSA: sound/pci/mixart/mixart.c: Add missing snd_card_free · 73f6a12e
      Julia Lawall 提交于
      The function snd_mixart_create creates a link between mgr and card that
      allows snd_mixart_free to free card as well.  But if snd_mixart_create
      fails, then the link has not been created and card has to be freed explicitly.
      
      The semantic match that finds the problem is as follows:
      (http://www.emn.fr/x-info/coccinelle/)
      
      // <smpl>
      @r exists@
      local idexpression x;
      statement S,S1;
      position p1,p2,p3;
      expression E,E1;
      type T,T1;
      expression *ptr != NULL;
      @@
      
      (
       if ((x@p1 = snd_card_new(...)) == NULL) S
      |
       x@p1 = snd_card_new(...);
      )
       ... when != snd_card_free(...,(T)x,...)
           when != if (...) { <+... snd_card_free(...,(T)x,...) ...+> }
           when != true x == NULL || ...
           when != x = E
           when != E = (T)x
           when any
      (
       if (x == NULL || ...) S1
      |
       if@p2 (...) {
        ... when != snd_card_free(...,(T1)x,...)
            when != if (...) { <+... snd_card_free(...,(T1)x,...) ...+> }
            when != x = E1
            when != E1 = (T1)x
      (
        return \(0\|<+...x...+>\|ptr\);
      |
        return@p3 ...;
      )
      }
      )
      
      @ script:python @
      p1 << r.p1;
      p3 << r.p3;
      @@
      
      print "* file: %s snd_card_new: %s return: %s" % (p1[0].file,p1[0].line,p3[0].line)
      
      // </smpl>
      Signed-off-by: NJulia Lawall <julia@diku.dk>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      73f6a12e
  10. 21 10月, 2008 1 次提交
  11. 13 8月, 2008 1 次提交
  12. 01 2月, 2008 1 次提交
    • T
      [ALSA] Remove sound/driver.h · 9004acc7
      Takashi Iwai 提交于
      This header file exists only for some hacks to adapt alsa-driver
      tree.  It's useless for building in the kernel.  Let's move a few
      lines in it to sound/core.h and remove it.
      With this patch, sound/driver.h isn't removed but has just a single
      compile warning to include it.  This should be really killed in
      future.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      Signed-off-by: NJaroslav Kysela <perex@perex.cz>
      9004acc7
  13. 16 10月, 2007 2 次提交
  14. 09 5月, 2007 1 次提交
  15. 20 12月, 2006 1 次提交
  16. 23 9月, 2006 1 次提交
  17. 13 7月, 2006 1 次提交
  18. 03 7月, 2006 1 次提交
  19. 23 6月, 2006 1 次提交
  20. 28 4月, 2006 2 次提交
  21. 29 3月, 2006 1 次提交
  22. 22 3月, 2006 2 次提交
  23. 03 1月, 2006 1 次提交
  24. 11 11月, 2005 1 次提交
  25. 04 11月, 2005 1 次提交
  26. 12 9月, 2005 2 次提交
    • C
      [ALSA] set owner field in struct pci_driver · 3bcd4649
      Clemens Ladisch 提交于
      AD1889 driver,ALS4000 driver,ATIIXP driver,ATIIXP-modem driver
      AZT3328 driver,BT87x driver,CMIPCI driver,CS4281 driver
      ENS1370/1+ driver,ES1938 driver,ES1968 driver,FM801 driver
      Intel8x0 driver,Intel8x0-modem driver,Maestro3 driver,RME32 driver
      RME96 driver,SonicVibes driver,VIA82xx driver,VIA82xx-modem driver
      ALI5451 driver,au88x0 driver,CS46xx driver,EMU10K1/EMU10K2 driver
      HDA Intel driver,ICE1712 driver,ICE1724 driver,KORG1212 driver
      MIXART driver,NM256 driver,RME HDSP driver,RME9652 driver
      Trident driver,Digigram VX222 driver,YMFPCI driver
      Set the module owner field in each driver's struct pci_driver to get
      the driver symlink in the sysfs device directory.
      Signed-off-by: NClemens Ladisch <clemens@ladisch.de>
      3bcd4649
    • T
      [ALSA] Replace with kzalloc() - pci stuff · e560d8d8
      Takashi Iwai 提交于
      AD1889 driver,ATIIXP driver,ATIIXP-modem driver,AZT3328 driver
      BT87x driver,CMIPCI driver,CS4281 driver,ENS1370/1+ driver
      ES1938 driver,ES1968 driver,FM801 driver,Intel8x0 driver
      Intel8x0-modem driver,Maestro3 driver,SonicVibes driver,VIA82xx driver
      VIA82xx-modem driver,AC97 Codec,AK4531 codec,au88x0 driver
      CA0106 driver,CS46xx driver,EMU10K1/EMU10K2 driver,HDA Codec driver
      HDA generic driver,HDA Intel driver,ICE1712 driver,ICE1724 driver
      KORG1212 driver,MIXART driver,NM256 driver,Trident driver,YMFPCI driver
      Replace kcalloc(1,..) with kzalloc().
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      e560d8d8
  27. 28 7月, 2005 1 次提交
    • N
      [ALSA] sound/pci: fix-up sleeping paths · ef21ca24
      Nishanth Aravamudan 提交于
      ENS1370/1+ driver,ES1968 driver,Intel8x0 driver,VIA82xx driver
      VIA82xx-modem driver,AC97 Codec,ALI5451 driver,CS46xx driver
      MIXART driver,RME HDSP driver,Trident driver,YMFPCI driver
      Description: Fix-up sleeping in sound/pci. These changes fall under the
      following two categories:
      
              1) Replace schedule_timeout() with msleep() to guarantee the
              task delays as expected. This also involved replacing/removing
              custom sleep functions.
              2) Do not assume jiffies will only increment by one if you
              request a 1 jiffy sleep, i.e. use time_after/time_before in
              while loops.
      Signed-off-by: NNishanth Aravamudan <nacc@us.ibm.com>
      Signed-off-by: NJaroslav Kysela <perex@suse.cz>
      ef21ca24
  28. 29 5月, 2005 1 次提交
    • T
      [ALSA] Replace pci_module_init() with pci_register_driver() · 01d25d46
      Takashi Iwai 提交于
      Documentation,ALS4000 driver,ATIIXP driver,ATIIXP-modem driver
      AZT3328 driver,BT87x driver,CMIPCI driver,CS4281 driver
      ENS1370/1+ driver,ES1938 driver,ES1968 driver,FM801 driver
      Intel8x0 driver,Intel8x0-modem driver,Maestro3 driver,RME32 driver
      RME96 driver,SonicVibes driver,VIA82xx driver,VIA82xx-modem driver
      ALI5451 driver,au88x0 driver,CA0106 driver,CS46xx driver
      EMU10K1/EMU10K2 driver,HDA Intel driver,ICE1712 driver,ICE1724 driver
      KORG1212 driver,MIXART driver,NM256 driver,RME HDSP driver
      RME9652 driver,Trident driver,Digigram VX222 driver,YMFPCI driver
      Replace the obsolete pci_module_init() with pci_register_driver().
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      01d25d46
  29. 17 4月, 2005 1 次提交
    • L
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds 提交于
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      
      Let it rip!
      1da177e4