1. 31 12月, 2006 2 次提交
  2. 21 12月, 2006 1 次提交
  3. 14 12月, 2006 8 次提交
    • R
      [PATCH] getting rid of all casts of k[cmz]alloc() calls · 5cbded58
      Robert P. J. Day 提交于
      Run this:
      
      	#!/bin/sh
      	for f in $(grep -Erl "\([^\)]*\) *k[cmz]alloc" *) ; do
      	  echo "De-casting $f..."
      	  perl -pi -e "s/ ?= ?\([^\)]*\) *(k[cmz]alloc) *\(/ = \1\(/" $f
      	done
      
      And then go through and reinstate those cases where code is casting pointers
      to non-pointers.
      
      And then drop a few hunks which conflicted with outstanding work.
      
      Cc: Russell King <rmk@arm.linux.org.uk>, Ian Molton <spyro@f2s.com>
      Cc: Mikael Starvik <starvik@axis.com>
      Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
      Cc: Roman Zippel <zippel@linux-m68k.org>
      Cc: Geert Uytterhoeven <geert@linux-m68k.org>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Kyle McMartin <kyle@mcmartin.ca>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Jeff Dike <jdike@addtoit.com>
      Cc: Greg KH <greg@kroah.com>
      Cc: Jens Axboe <jens.axboe@oracle.com>
      Cc: Paul Fulghum <paulkf@microgate.com>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Cc: Karsten Keil <kkeil@suse.de>
      Cc: Mauro Carvalho Chehab <mchehab@infradead.org>
      Cc: Jeff Garzik <jeff@garzik.org>
      Cc: James Bottomley <James.Bottomley@steeleye.com>
      Cc: Ian Kent <raven@themaw.net>
      Cc: Steven French <sfrench@us.ibm.com>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Cc: Neil Brown <neilb@cse.unsw.edu.au>
      Cc: Jaroslav Kysela <perex@suse.cz>
      Cc: Takashi Iwai <tiwai@suse.de>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      5cbded58
    • S
      [PATCH] HPT37x: read f_CNT saved by BIOS from port · f13c1526
      Sergei Shtylyov 提交于
      The undocumented register BIOS uses for saving f_CNT seems to only be
      mapped to I/O space while all the other HPT3xx regs are dual-mapped.  Looks
      like another HighPoint's dirty trick.  With this patch, the deadly kernel
      oops on the cards having the modern HighPoint BIOSes is now at last gone!
      Signed-off-by: NSergei Shtylyov <sshtylyov@ru.mvista.com>
      Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      f13c1526
    • S
      [PATCH] ide: HPT3xx: fix PCI clock detection · 26c068da
      Sergei Shtylyov 提交于
      Use the f_CNT value saved by the HighPoint BIOS if available as reading it
      directly would give us a wrong PCI frequency after DPLL has already been
      calibrated by BIOS.
      Signed-off-by: NSergei Shtylyov <sshtylyov@ru.mvista.com>
      Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      26c068da
    • S
      [PATCH] ide: fix the case of multiple HPT3xx chips present · 73d1dd93
      Sergei Shtylyov 提交于
      init_chipset_hpt366() modifies some fields of the ide_pci_device_t structure
      depending on the chip's revision, so pass it a copy of the structure to avoid
      issues when multiple different chips are present.
      Signed-off-by: NSergei Shtylyov <sshtylyov@ru.mvista.com>
      Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      73d1dd93
    • S
      [PATCH] ide: fix HPT3xx hotswap support · 33b18a60
      Sergei Shtylyov 提交于
      Fix the broken hotswap code: on HPT37x it caused RESET- to glitch when
      tristating the bus (the MISC control 3/6 and soft control 2 need to be written
      to in the certain order), and for HPT36x the obsolete HDIO_TRISTATE_HWIF
      ioctl() handler was called instead which treated the state argument wrong.
      Also, get rid of the soft control reg.  1 wtite to enable IDE interrupt --
      this is done in init_hpt37x() already...
      
      Have been tested on HPT370 and 371N.
      Signed-off-by: NSergei Shtylyov <sshtylyov@ru.mvista.com>
      Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      33b18a60
    • S
      [PATCH] ide: optimize HPT37x timing tables · 471a0bda
      Sergei Shtylyov 提交于
      Save some space on the timing tables by introducing the separate transfer mode
      table in which the mode lookup is done to get the index into the timing table
      itself.  Get rid of the rest of the obsolete/duplicate tables and use one set
      of tables for the whole HPT37x chip family like the HighPoint open-source
      drivers do.  Documnent the different timing register layout for the HPT36x
      chip family (this is my guesswork based on the timing values).
      
      Have been tested and works fine on HPT370/302/371N.
      Signed-off-by: NSergei Shtylyov <sshtylyov@ru.mvista.com>
      Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      471a0bda
    • S
      [PATCH] ide: fix HPT37x timing tables · 9448732f
      Sergei Shtylyov 提交于
      Fix/remove bad/unused timing tables: HPT370/A 66 MHz tables weren't really
      needed (the chips are not UltraATA/133 capable and shouldn't support 66 MHz
      PCI) and had many modes over- and underclocked, HPT372 33 MHz table was in
      fact for 66 MHz and 50 MHz table missed UltraDMA mode 6, HPT374 33 MHz table
      was really for 50 MHz...  (Actually, HPT370/A 33 MHz tables also have issues.
      e.g.  HPT370 has PIO modes 0/1 overlocked.)
      
      There's also no need in the separate HPT374 tables because HPT372 timings
      should be the same (and those tables has UltraDMA mode 6 which HPT374 supports
      depending on HPT374_ALLOW_ATA133_6 #define)...
      Signed-off-by: NSergei Shtylyov <sshtylyov@ru.mvista.com>
      Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      9448732f
    • S
      [PATCH] ide: HPT3xxN clocking fixes · 836c0063
      Sergei Shtylyov 提交于
      Fix serious problems with the HPT372N clock turnaround code:
      
      - the wrong ports were written to when called for the secondary channel;
      
      - it didn't serialize access to the channels;
      
      - turnaround shou;dn't be done on 66 MHz PCI;
      
      - caching the clock mode per-channel caused it to get out of sync with the
        actual register value.
      
      Additionally, avoid calibrating PLL twice (for each channel) as the second try
      results in a wrong PCI frequency and thus in the wrong timings.
      
      Make the driver deal with HPT302N and HPT371N correctly -- the clocking and
      (seemingly) a need for clock tunaround is the same as for HPT372N.  HPT371/N
      chips have only one, secondary channel, so avoid touching their "pure virtual"
      primary channel, and disable it if the BIOS haven't done this already.
      
      Also, while at it, disable UltraATA/133 for HPT372 by default -- 50 MHz DPLL
      clock don't allow for this speed anyway.  And remove the traces of the former
      bad patch that wasn't even applicable to this version of driver.
      
      Has been tested on HPT370/371N, unfortunately I don't have an instant access
      to the other chips...
      Signed-off-by: NSergei Shtylyov <sshtylyov@ru.mvista.com>
      Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      836c0063
  4. 13 12月, 2006 1 次提交
  5. 12 12月, 2006 1 次提交
    • B
      [PATCH] remove blk_queue_activity_fn · 2b02a179
      Boaz Harrosh 提交于
      While working on bidi support at struct request level
      I have found that blk_queue_activity_fn is actually never used.
      The only user is in ide-probe.c with this code:
      
      	/* enable led activity for disk drives only */
      	if (drive->media == ide_disk && hwif->led_act)
      		blk_queue_activity_fn(q, hwif->led_act, drive);
      
      And led_act is never initialized anywhere.
      (Looking back at older kernels it was used in the PPC arch, but was removed around 2.6.18)
      Unless it is all for future use off course.
      (this patch is against linux-2.6-block.git as off 2006/12/4)
      Signed-off-by: NBoaz Harrosh <bharrosh@panasas.com>
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      2b02a179
  6. 11 12月, 2006 3 次提交
  7. 09 12月, 2006 3 次提交
  8. 08 12月, 2006 3 次提交
    • O
      [PATCH] winbond IDE depends on IDEDMA · 9468f687
      Olaf Hering 提交于
      winbond ide depends on idedma.
      Move the option into the IDEDMA section.
      
        drivers/built-in.o: In function `.sl82c105_ide_dma_timeout':
        sl82c105.c:(.text+0x624d0): undefined reference to `.__ide_dma_timeout'
        drivers/built-in.o: In function `.sl82c105_ide_dma_off_quietly':
        sl82c105.c:(.text+0x6274c): undefined reference to `.__ide_dma_off_quietly'
        drivers/built-in.o: In function `.sl82c105_ide_dma_on':
        sl82c105.c:(.text+0x6284c): undefined reference to `.__ide_dma_on'
        drivers/built-in.o: In function `.sl82c105_check_drive':
        sl82c105.c:(.text+0x628ec): undefined reference to `.__ide_dma_bad_drive'
        sl82c105.c:(.text+0x62934): undefined reference to `.__ide_dma_good_drive'
        drivers/built-in.o: In function `.sl82c105_ide_dma_start':
        sl82c105.c:(.text+0x62c24): undefined reference to `.ide_dma_start'
        make[1]: *** [.tmp_vmlinux1] Error 1
      Signed-off-by: NOlaf Hering <olaf@aepfle.de>
      Acked-by: N"Bartlomiej Zolnierkiewicz" <bzolnier@gmail.com>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      9468f687
    • P
      [PATCH] lockdep: fix ide/proc interaction · 9a2239b1
      Peter Zijlstra 提交于
        rmmod/3080 [HC0[0]:SC0[0]:HE0:SE1] is trying to acquire:
         (proc_subdir_lock){--..}, at: [<c04a33b0>] remove_proc_entry+0x40/0x191
      
        and this task is already holding:
         (ide_lock){++..}, at: [<c05651a2>] ide_unregister_subdriver+0x39/0xc8
        which would create a new lock dependency:
         (ide_lock){++..} -> (proc_subdir_lock){--..}
      
        but this new dependency connects a hard-irq-safe lock:
         (ide_lock){++..}
        ... which became hard-irq-safe at:
          [<c043c458>] lock_acquire+0x4b/0x6b
          [<c06129d7>] _spin_lock_irqsave+0x22/0x32
          [<c0567870>] ide_intr+0x17/0x1a9
          [<c044eb31>] handle_IRQ_event+0x20/0x4d
          [<c044ebf2>] __do_IRQ+0x94/0xef
          [<c0406771>] do_IRQ+0x9e/0xbd
      
        to a hard-irq-unsafe lock:
         (proc_subdir_lock){--..}
        ... which became hard-irq-unsafe at:
        ...  [<c043c458>] lock_acquire+0x4b/0x6b
          [<c06126ab>] _spin_lock+0x19/0x28
          [<c04a32f2>] xlate_proc_name+0x1b/0x99
          [<c04a3547>] proc_create+0x46/0xdf
          [<c04a3642>] create_proc_entry+0x62/0xa5
          [<c07c1972>] proc_misc_init+0x1c/0x1d2
          [<c07c1844>] proc_root_init+0x4c/0xe9
          [<c07ad703>] start_kernel+0x294/0x3b3
      
      Move ide_remove_proc_entries() out from under ide_lock; there is nothing
      that indicates that this is needed.
      
      In specific, the call to ide_add_proc_entries() is unprotected, and there
      is nothing else in the file using the respective ->proc fields. Also the
      lock order around destroy_proc_ide_interface() suggests this.
      
      Alan sayeth:
      
        proc_ide_write_settings walks the setting list under ide_setting_sem, read
        ditto.  remove_proc_entry is doing proc side housekeeping.
      
        Looks fine to me, although that old code is such a mess anything could be
        going on.
      Signed-off-by: NPeter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      9a2239b1
    • A
      [PATCH] via82cxxx: handle error condition properly · 23a1b2a7
      Alan Cox 提交于
      Jeff noted that the via driver returned an error to an unsigned int in a
      a case where errors are not permitted. Move the check down earlier so we
      can handle it properly. Not as pretty but it works this way and avoids
      hacking up ugly stuff in the legacy ide core.
      Signed-off-by: NAlan Cox <alan@redhat.com>
      Cc: Jeff Garzik <jeff@garzik.org>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      23a1b2a7
  9. 05 12月, 2006 4 次提交
  10. 30 11月, 2006 1 次提交
  11. 26 11月, 2006 1 次提交
  12. 15 11月, 2006 1 次提交
  13. 14 11月, 2006 1 次提交
  14. 13 11月, 2006 1 次提交
  15. 04 11月, 2006 1 次提交
  16. 31 10月, 2006 1 次提交
  17. 29 10月, 2006 1 次提交
  18. 22 10月, 2006 1 次提交
  19. 17 10月, 2006 1 次提交
  20. 16 10月, 2006 1 次提交
  21. 12 10月, 2006 3 次提交