safe/jmp/linux-2.6
16 years agogeneric: implement __fls on all 64-bit archs
Alexander van Heukelum [Sat, 15 Mar 2008 17:31:49 +0000 (18:31 +0100)]
generic: implement __fls on all 64-bit archs

Implement __fls on all 64-bit archs:

alpha has an implementation of fls64.
Added __fls(x) = fls64(x) - 1.

ia64 has fls, but not __fls.
Added __fls based on code of fls.

mips and powerpc have __ilog2, which is the same as __fls.
Added __fls = __ilog2.

parisc, s390, sh and sparc64:
Include generic __fls.

x86_64 already has __fls.

Signed-off-by: Alexander van Heukelum <heukelum@fastmail.fm>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agogeneric: introduce a generic __fls implementation
Alexander van Heukelum [Sat, 15 Mar 2008 17:30:57 +0000 (18:30 +0100)]
generic: introduce a generic __fls implementation

Add a generic __fls implementation in the same spirit as
the generic __ffs one. It finds the last (most significant)
set bit in the given long value.

Signed-off-by: Alexander van Heukelum <heukelum@fastmail.fm>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86: merge the simple bitops and move them to bitops.h
Alexander van Heukelum [Sat, 15 Mar 2008 12:04:42 +0000 (13:04 +0100)]
x86: merge the simple bitops and move them to bitops.h

Some of those can be written in such a way that the same
inline assembly can be used to generate both 32 bit and
64 bit code.

For ffs and fls, x86_64 unconditionally used the cmov
instruction and i386 unconditionally used a conditional
branch over a mov instruction. In the current patch I
chose to select the version based on the availability
of the cmov instruction instead. A small detail here is
that x86_64 did not previously set CONFIG_X86_CMOV=y.

Improved comments for ffs, ffz, fls and variations.

Signed-off-by: Alexander van Heukelum <heukelum@fastmail.fm>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86, generic: optimize find_next_(zero_)bit for small constant-size bitmaps
Alexander van Heukelum [Tue, 11 Mar 2008 15:17:19 +0000 (16:17 +0100)]
x86, generic: optimize find_next_(zero_)bit for small constant-size bitmaps

This moves an optimization for searching constant-sized small
bitmaps form x86_64-specific to generic code.

On an i386 defconfig (the x86#testing one), the size of vmlinux hardly
changes with this applied. I have observed only four places where this
optimization avoids a call into find_next_bit:

In the functions return_unused_surplus_pages, alloc_fresh_huge_page,
and adjust_pool_surplus, this patch avoids a call for a 1-bit bitmap.
In __next_cpu a call is avoided for a 32-bit bitmap. That's it.

On x86_64, 52 locations are optimized with a minimal increase in
code size:

Current #testing defconfig:
146 x bsf, 27 x find_next_*bit
   text    data     bss     dec     hex filename
   5392637  846592  724424 6963653  6a41c5 vmlinux

After removing the x86_64 specific optimization for find_next_*bit:
94 x bsf, 79 x find_next_*bit
   text    data     bss     dec     hex filename
   5392358  846592  724424 6963374  6a40ae vmlinux

After this patch (making the optimization generic):
146 x bsf, 27 x find_next_*bit
   text    data     bss     dec     hex filename
   5392396  846592  724424 6963412  6a40d4 vmlinux

[ tglx@linutronix.de: build fixes ]

Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86, uml: fix uml with generic find_next_bit for x86
Alexander van Heukelum [Thu, 13 Mar 2008 17:53:52 +0000 (18:53 +0100)]
x86, uml: fix uml with generic find_next_bit for x86

Update UML to use the generic bits too.

Signed-off-by: Alexander van Heukelum <heukelum@fastmail.fm>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86: change x86 to use generic find_next_bit
Alexander van Heukelum [Sun, 9 Mar 2008 20:01:04 +0000 (21:01 +0100)]
x86: change x86 to use generic find_next_bit

The versions with inline assembly are in fact slower on the machines I
tested them on (in userspace) (Athlon XP 2800+, p4-like Xeon 2.8GHz, AMD
Opteron 270). The i386-version needed a fix similar to 06024f21 to avoid
crashing the benchmark.

Benchmark using: gcc -fomit-frame-pointer -Os. For each bitmap size
1...512, for each possible bitmap with one bit set, for each possible
offset: find the position of the first bit starting at offset. If you
follow ;). Times include setup of the bitmap and checking of the
results.

Athlon Xeon Opteron 32/64bit
x86-specific: 0m3.692s 0m2.820s 0m3.196s / 0m2.480s
generic: 0m2.622s 0m1.662s 0m2.100s / 0m1.572s

If the bitmap size is not a multiple of BITS_PER_LONG, and no set
(cleared) bit is found, find_next_bit (find_next_zero_bit) returns a
value outside of the range [0, size]. The generic version always returns
exactly size. The generic version also uses unsigned long everywhere,
while the x86 versions use a mishmash of int, unsigned (int), long and
unsigned long.

Using the generic version does give a slightly bigger kernel, though.

defconfig:    text    data     bss     dec     hex filename
x86-specific: 4738555  481232  626688 5846475  5935cb vmlinux (32 bit)
generic: 4738621  481232  626688 5846541  59360d vmlinux (32 bit)
x86-specific: 5392395  846568  724424 6963387  6a40bb vmlinux (64 bit)
generic: 5392458  846568  724424 6963450  6a40fa vmlinux (64 bit)

Signed-off-by: Alexander van Heukelum <heukelum@fastmail.fm>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agouml: Kconfig cleanup
Ingo Molnar [Sat, 26 Apr 2008 17:10:17 +0000 (19:10 +0200)]
uml: Kconfig cleanup

pointed out by Linus: arch/um/Kconfig.x86_64 should
include arch/x86/Kconfig.cpu instead of defining those
symbols itself.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agouml: fix build error
Ingo Molnar [Sat, 26 Apr 2008 16:59:42 +0000 (18:59 +0200)]
uml: fix build error

fix:

 arch/um/os-Linux/helper.c: In function 'run_helper':
 arch/um/os-Linux/helper.c:73: error: 'PATH_MAX' undeclared (first use in this function)

Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux...
Linus Torvalds [Sat, 26 Apr 2008 16:50:58 +0000 (09:50 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/x86/linux-2.6-x86-fixes

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86-fixes:
  x86 PAT: decouple from nonpromisc devmem
  x86 PAT: tone down debugging messages

16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb
Linus Torvalds [Sat, 26 Apr 2008 16:49:51 +0000 (09:49 -0700)]
Merge git://git./linux/kernel/git/mchehab/v4l-dvb

* git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb:
  V4L/DVB (7751): ir-kbd-i2c: Save a temporary memory allocation in ir_probe
  V4L/DVB (7750): au0828/ cleanups and fixes
  V4L/DVB (7748): tuner-core: some adjustments at tuner logs, if debug enabled
  V4L/DVB (7746): pvrusb2: make signed one-bit bitfields unsigned
  V4L/DVB (7744): pvrusb2-dvb: add atsc/qam support for Hauppauge pvrusb2 model 751xx
  V4L/DVB (7742): cx88: Add support for the DViCO FusionHDTV_7_GOLD digital modes
  V4L/DVB (7741): s5h1411: Adding support for this ATSC/QAM demodulator
  V4L/DVB (7740): tuner-xc2028.c dubious !x & y
  V4L/DVB (7739): mt312.h: dubious one-bit signed bitfield
  V4L/DVB (7735): Fix compilation for au0828
  V4L/DVB (7734): em28xx: copy and paste error in em28xx_init_isoc
  V4L/DVB (7733): blackbird_find_mailbox negative return ignored in blackbird_initialize_codec()
  V4L/DVB (7732): vivi: fix a warning

16 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux...
Linus Torvalds [Sat, 26 Apr 2008 16:48:52 +0000 (09:48 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/x86/linux-2.6-x86-optimized-inlining

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86-optimized-inlining:
  generic: make optimized inlining arch-opt-in
  x86: add optimized inlining

16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6
Linus Torvalds [Sat, 26 Apr 2008 16:48:00 +0000 (09:48 -0700)]
Merge git://git./linux/kernel/git/bart/ide-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (61 commits)
  ide: sanitize handling of IDE_HFLAG_NO_SET_MODE host flag
  sis5513: fail early for unsupported chipsets
  it821x: fix kzalloc() failure handling
  qd65xx: use IDE_HFLAG_SINGLE host flag
  qd65xx: always use ->selectproc method
  ide-cd: put proc-related functions together under single ifdef
  ide-cd: Replace __FUNCTION__ with __func__
  IDE: Coding Style fixes to drivers/ide/ide-cd.c
  IDE: Coding Style fixes to drivers/ide/pci/cy82c693.c
  IDE: Coding Style fixes to drivers/ide/pci/it8213.c
  IDE: Coding Style fixes to drivers/ide/ide-floppy.c
  IDE: Coding Style fixes to drivers/ide/legacy/ali14xx.c
  IDE: Coding Style fixes to drivers/ide/legacy/hd.c
  IDE: Coding Style fixes to drivers/ide/pci/cmd640.c
  IDE: Coding Style fixes to drivers/ide/pci/opti621.c
  IDE: Coding Style fixes to drivers/ide/ide-pnp.c
  IDE: Coding Style fixes to drivers/ide/ide-proc.c
  IDE: Coding Style fixes to drivers/ide/legacy/ide-4drives.c
  IDE: Coding Style fixes to drivers/ide/legacy/umc8672.c
  IDE: Coding Style fixes to drivers/ide/pci/generic.c
  ...

16 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux...
Linus Torvalds [Sat, 26 Apr 2008 16:44:32 +0000 (09:44 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/x86/linux-2.6-x86-misc

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86-misc: (28 commits)
  x86: section mismatch fixes, #3
  x86: section mismatch fixes, #2
  x86: pgtable_32.h - prototype and section mismatch fixes
  x86: unlock_ExtINT_logic() - fix section mismatch warnings
  x86: uniq_ioapic_id - fix section mismatch warning
  x86: trampoline_32.S - switch to .cpuinit.data
  x86: use get_bios_ebda()
  x86: remove duplicate get_bios_ebda() from rio.h
  x86: get_bios_ebda() requires asm/io.h
  x86: use cpumask function for present, possible, and online cpus
  x86: cleanup div_sc() usage
  x86: cleanup clocksource_hz2mult usage
  x86: remove unnecessary memset and NULL check after alloc_bootmem()
  x86: use bitmap library for pin_programmed
  x86: use MP_intsrc_info()
  x86: use BUILD_BUG_ON() for the size of struct intel_mp_floating
  x86_64 ia32 ptrace: convert to compat_arch_ptrace
  x86_64 ia32 ptrace: use compat_ptrace_request for siginfo
  x86 signals: lift set_fs
  x86 signals: lift flags diddling code
  ...

16 years agox86 PAT: decouple from nonpromisc devmem
Ingo Molnar [Sat, 26 Apr 2008 08:26:52 +0000 (10:26 +0200)]
x86 PAT: decouple from nonpromisc devmem

Linus pointed it out that PAT should not depend on NONPROMISC_DEVMEM.

Also make PAT non-default.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoMerge branch 'agp-patches' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied...
Linus Torvalds [Sat, 26 Apr 2008 16:29:36 +0000 (09:29 -0700)]
Merge branch 'agp-patches' of git://git./linux/kernel/git/airlied/agp-2.6

* 'agp-patches' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/agp-2.6:
  agp: convert drivers/char/agp/frontend.c to use unlocked_ioctl
  agp: fix shadowed variable warning in amd-k7-agp.c

16 years agoMerge branch 'drm-patches' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied...
Linus Torvalds [Sat, 26 Apr 2008 16:26:39 +0000 (09:26 -0700)]
Merge branch 'drm-patches' of git://git./linux/kernel/git/airlied/drm-2.6

* 'drm-patches' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
  drm: _end is shadowing real _end, just rename it.
  drm/vbl rework: rework how the drm deals with vblank.
  drm: reorganise minor number handling using backported modesetting code.
  drm/i915: Handle tiled buffers in vblank tasklet
  drm/i965: On I965, use correct 3DSTATE_DRAWING_RECTANGLE command in vblank
  drm: Remove unneeded dma sync in ATI pcigart alloc
  drm: Fix mismerge of non-coherent DMA patch

16 years agoFix uninitialized 'copy' in unshare_files
Al Viro [Sat, 26 Apr 2008 04:25:00 +0000 (05:25 +0100)]
Fix uninitialized 'copy' in unshare_files

Arrgghhh...

Sorry about that, I'd been sure I'd folded that one, but it actually got
lost.  Please apply - that breaks execve().

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Tested-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agogeneric: make optimized inlining arch-opt-in
Ingo Molnar [Wed, 9 Apr 2008 09:03:37 +0000 (11:03 +0200)]
generic: make optimized inlining arch-opt-in

Stephen Rothwell reported that linux-next did not build on powerpc64.

make optimized inlining dependent on architecture opt-in.

Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86: add optimized inlining
Ingo Molnar [Mon, 3 Mar 2008 11:38:52 +0000 (12:38 +0100)]
x86: add optimized inlining

add CONFIG_OPTIMIZE_INLINING=y.

allow gcc to optimize the kernel image's size by uninlining
functions that have been marked 'inline'. Previously gcc was
forced by Linux to always-inline these functions via a gcc
attribute:

 #define inline inline __attribute__((always_inline))

Especially when the user has already selected
CONFIG_OPTIMIZE_FOR_SIZE=y this can make a huge difference in
kernel image size (using a standard Fedora .config):

   text    data     bss     dec           hex filename
   5613924  562708 3854336 10030968    990f78 vmlinux.before
   5486689  562708 3854336  9903733    971e75 vmlinux.after

that's a 2.3% text size reduction (!).

Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agoide: sanitize handling of IDE_HFLAG_NO_SET_MODE host flag
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:43 +0000 (17:36 +0200)]
ide: sanitize handling of IDE_HFLAG_NO_SET_MODE host flag

* Check for IDE_HFLAG_NO_SET_MODE host flag in ide_set_pio(),
  ide_set_[pio,dma]_mode(), ide_set_xfer_rate() and set_pio_mode().

* Remove no longer needed IDE_HFLAG_NO_SET_MODE host flag checking
  from ide_tune_dma().

* Remove superfluous ->set_pio_mode checking from do_special().

This is a part of preparations for adding 'struct ide_port_ops'.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agosis5513: fail early for unsupported chipsets
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:43 +0000 (17:36 +0200)]
sis5513: fail early for unsupported chipsets

* Factor out chipset family detection from init_chipset_sis5513()
  to sis_find_family().

* Use sis_find_family() in sis5513_init_one() to fail early if the
  chipset is unsupported.

* Keep a local copy sis5513_chipset in sis5513_init_one()
  and set .udma_mask according to chipset family.

* Remove no longer need ->ultra_mask setting from init_hwif_sis5513().

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoit821x: fix kzalloc() failure handling
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:42 +0000 (17:36 +0200)]
it821x: fix kzalloc() failure handling

Allocate 'struct it821x_dev' objects for both ports in it821x_init_one().

Fixes potential OOPS in it821x_quirkproc() (uses 'itdev' unconditionally)
and other problems ('itdev' is needed for correct operation of the driver).

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoqd65xx: use IDE_HFLAG_SINGLE host flag
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:42 +0000 (17:36 +0200)]
qd65xx: use IDE_HFLAG_SINGLE host flag

* Set IDE_HFLAG_SINGLE host flag in qd_probe() for QD6500 and QD6580
  with the second port disabled.

* Check for IDE_HFLAG_SINGLE in qd6580_port_init_devs() instead of
  using cached value of QD6580 Control register.

* Don't cache QD6580 Control register value in hwif->config_data
  (bits 8-15) and remove no longer needed QD_CONTROL() macro.

* Cache QD65xx base address in hwif->config_data (bits 8-15)
  instead of hwif->select_data.

* Set hwif->config_data in qd_probe() and remove qd_setup() helper.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoqd65xx: always use ->selectproc method
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:42 +0000 (17:36 +0200)]
qd65xx: always use ->selectproc method

qd_select() checks itself whether timings should be reprogrammed so
remove superfluous qd_timing_ok() and always use ->selectproc method
(rename qd_select() to qd65xx_select() while at it).

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide-cd: put proc-related functions together under single ifdef
Borislav Petkov [Sat, 26 Apr 2008 15:36:42 +0000 (17:36 +0200)]
ide-cd: put proc-related functions together under single ifdef

[bart: ported it over Paolo's patch]

Signed-off-by: Borislav Petkov <petkovbb@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide-cd: Replace __FUNCTION__ with __func__
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:42 +0000 (17:36 +0200)]
ide-cd: Replace __FUNCTION__ with __func__

[bart: md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/ide-cd.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:42 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/ide-cd.c

Before:
total: 43 errors, 66 warnings, 2183 lines checked

After:
total: 0 errors, 36 warnings, 2192 lines checked

I didn't (and I don't plan to) fix the warnings:
WARNING: line over 80 characters

[bart: minor fixes, md5sum checked (modulo s/"ignore = NULL;"/"ignore;"/ fix)]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/pci/cy82c693.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:42 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/pci/cy82c693.c

Before:
total: 34 errors, 14 warnings, 456 lines checked

After:
total: 0 errors, 8 warnings, 456 lines checked

[bart: md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/pci/it8213.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:41 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/pci/it8213.c

File is now error free, only a few
WARNING: line over 80 characters
are left.

Compile tested.

[bart: md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/ide-floppy.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:41 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/ide-floppy.c

File is now error free.
Compile tested.

[bart: minor fixes, md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/legacy/ali14xx.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:41 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/legacy/ali14xx.c

File is now error free, 2 warnings left.
Compile tested.

[bart: md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/legacy/hd.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:41 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/legacy/hd.c

Fix a lot of errors and warnings.
Compile tested.

[bart: some fixes, md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/pci/cmd640.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:41 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/pci/cmd640.c

Fix all the errors and a few warnings.
Compile tested.

[bart: some fixes, md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/pci/opti621.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:41 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/pci/opti621.c

Compile tested.

[bart: some fixes, md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/ide-pnp.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:40 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/ide-pnp.c

File is now error free.
Compile tested.

[bart: md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/ide-proc.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:40 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/ide-proc.c

Lot of errors and warnings removed.
Compile tested.

[bart: minor fixes, md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/legacy/ide-4drives.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:40 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/legacy/ide-4drives.c

File is now error and warning free.
Compile tested.

[bart: md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/legacy/umc8672.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:40 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/legacy/umc8672.c

File is now error free.
Compile tested.

[bart: minor fixes, md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/pci/generic.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:40 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/pci/generic.c

File is now error free.
Compile tested.

[bart: fix issues noticed by Adrian Bunk & Cyrill Gorcunov, md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/pci/jmicron.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:40 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/pci/jmicron.c

File is now error free.
Compile tested.

[bart: md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/pci/sis5513.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:39 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/pci/sis5513.c

About 300 errors and warnings fixed.
File is now error free.
Compile tested.

[bart: minor fixes, md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/pci/slc90e66.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:39 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/pci/slc90e66.c

File is now error free, only 1 warning left.
Compile tested.

[bart: md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/pci/tc86c001.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:39 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/pci/tc86c001.c

File is now error and warning free.
Compile tested.

[bart: md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoIDE: Coding Style fixes to drivers/ide/setup-pci.c
Paolo Ciarrocchi [Sat, 26 Apr 2008 15:36:39 +0000 (17:36 +0200)]
IDE: Coding Style fixes to drivers/ide/setup-pci.c

File is now error free.
Compile tested.

[bart: minor fixes, md5sum checked]

Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: remove hwif->straight8 flag
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:39 +0000 (17:36 +0200)]
ide: remove hwif->straight8 flag

All host drivers now either set hwif->mmio or reserve continuous
I/O resources so remove no longer needed hwif->straight8 flag
and never reached code for 'hwif->straight8 == 0' case.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: remove IDE_HFLAG_CY82C693 host flag
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:38 +0000 (17:36 +0200)]
ide: remove IDE_HFLAG_CY82C693 host flag

Sergei suggested that it shouldn't be necessary + it had no effect
anyway since ide_id_dma_bug() is called earlier in ide_tune_dma().

Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agofalconide: fix resources reservation (take 2)
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:38 +0000 (17:36 +0200)]
falconide: fix resources reservation (take 2)

* Tell IDE layer to not manage resources by setting
  hwif->mmio flag and request resources in falconide_init().

* Use request_mem_region() for resources reservation.

* Use driver name for resources reservation.

v2:
* Fix missing printk() parameter. (Noticed by Geert Uytterhoeven)

Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Michael Schmitz <schmitz@debian.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide-mpc8xx: fix resources reservation
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:38 +0000 (17:36 +0200)]
ide-mpc8xx: fix resources reservation

* Tell IDE layer to not manage resources by setting
  hwif->mmio flag and request resources in m8xx_ide_init_ports().

* Use request_mem_region() for resources reservation.

* Use driver name for resources reservation.

Cc: Vitaly Bordug <vitb@kernel.crashing.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide-mpc8xx: make m8xx_ide_init_ports() return an error value
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:38 +0000 (17:36 +0200)]
ide-mpc8xx: make m8xx_ide_init_ports() return an error value

* Make m8xx_ide_init_ports() return an error value.

* Update mpc8xx_ide_probe() to setup/probe only ports for which
  m8xx_ide_init_ports() succedded.

Cc: Vitaly Bordug <vitb@kernel.crashing.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agobast-ide: fix resources reservation
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:38 +0000 (17:36 +0200)]
bast-ide: fix resources reservation

* Tell IDE layer to not manage resources by setting
  hwif->mmio flag and request resources in bastide_init().

* Use request_mem_region() for resources reservation.

* Use driver name for resources reservation.

Cc: Ben Dooks <support@simtec.co.uk>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agodelkin_cb: fix resources handling
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:38 +0000 (17:36 +0200)]
delkin_cb: fix resources handling

Tell IDE layer to not manage resources by setting hwif->mmio flag.

Cc: Mark Lord <mlord@pobox.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide_platform: fix resources handling
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:37 +0000 (17:36 +0200)]
ide_platform: fix resources handling

Tell IDE layer to not manage resources by always setting hwif->mmio flag
(resources are handled by a platform device).

Cc: Anton Vorontsov <avorontsov@ru.mvista.com>
Cc: Vitaly Bordug <vitb@kernel.crashing.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoremove include/linux/hdsmart.h
Adrian Bunk [Sat, 26 Apr 2008 15:36:37 +0000 (17:36 +0200)]
remove include/linux/hdsmart.h

include/linux/hdsmart.h is not used by the kernel and should therefore
be removed.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Cc: "Robert P. J. Day" <rpjday@crashcourse.ca>,
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide-cd: remove the internal 64k buffer
Borislav Petkov [Sat, 26 Apr 2008 15:36:37 +0000 (17:36 +0200)]
ide-cd: remove the internal 64k buffer

This removes the internal ide-cd buffer and falls back to read-ahead block layer
capabilities. Thorough testing (cd burning, dvd read, raw read) gives with the
bufferless mode marginally better performance in addition to simplified code.

bufferless:

dd: reading `/dev/hdc': Input/output error
6238+0 records in
6238+0 records out
204406784 bytes (204 MB) copied, 259.891 s, 787 kB/s

real    4m21.598s
user    0m0.014s
sys     0m0.744s

with the old buffer (2.6.25-rc1):

dd: reading `/dev/hdc': Input/output error
6238+0 records in
6238+0 records out
204406784 bytes (204 MB) copied, 262.893 s, 778 kB/s

real    4m22.938s
user    0m0.009s
sys     0m0.771s

Signed-off-by: Borislav Petkov <petkovbb@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide-disk: fix issues found by checkpatch.pl
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:37 +0000 (17:36 +0200)]
ide-disk: fix issues found by checkpatch.pl

There are no changes to the resulting drivers/ide/ide-disk.o binary file
(md5sum-s after and before the patch match).

Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide-disk: add proc_idedisk_read_smart() helper
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:37 +0000 (17:36 +0200)]
ide-disk: add proc_idedisk_read_smart() helper

* Factor out common code from proc_idedisk_read_smart_{thresholds,values}()
  to proc_idedisk_read_smart() helper.

* Rename proc_idedisk_read_smart_thresholds() to proc_idedisk_read_st()
  and proc_idedisk_read_smart_values() to proc_idedisk_read_sv().

There should be no functional changes caused by this patch.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: unexport ide_hwifs[]
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:36 +0000 (17:36 +0200)]
ide: unexport ide_hwifs[]

All modular users have been fixed to not reference ide_hwifs[] directly.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide-generic: use ide_find_port() (take 3)
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:36 +0000 (17:36 +0200)]
ide-generic: use ide_find_port() (take 3)

There should be no functional changes caused by this patch.

v2:
* Fix comment (noticed by Sergei Shtylyov).

v3:
* Fix no initalization of idx in some case. (Johann Felix Soden)

Cc: Johann Felix Soden <johfel@users.sourceforge.net>
Cc: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>
Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: use ide_find_port() in legacy VLB host drivers (take 2)
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:36 +0000 (17:36 +0200)]
ide: use ide_find_port() in legacy VLB host drivers (take 2)

* Add IDE_HFLAG_QD_2ND_PORT host flag to indicate the need of skipping
  first ide_hwifs[] slot for the second port of QD65xx controller.

* Handle this new host flag in ide_find_port_slot().

* Convert legacy VLB host drivers to use ide_find_port().

While at it:

* Fix couple of printk()-s in qd65xx host driver to not use hwif->name.

v2:
* Fix qd65xx.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: merge ide_match_hwif() and ide_find_port()
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:36 +0000 (17:36 +0200)]
ide: merge ide_match_hwif() and ide_find_port()

* Change ide_match_hwif() argument from 'u8 bootable' to
  'struct ide_port_info *d'.

* Move ide_match_hwif() to ide-probe.c from setup-pci.c and rename
  it to ide_find_port_slot().  Update some comments while at it.

* ide_find_port() can be now just a wrapper for ide_find_port_slot().

There should be no functional changes caused by this patch.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: remove PIO "downgrade" quirk
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:36 +0000 (17:36 +0200)]
ide: remove PIO "downgrade" quirk

No need for it nowadays so remove quirk code from ide_get_best_pio_mode()
and IDE_HFLAG_PIO_DOWNGRADE host flag.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: use DIV_ROUND_UP
Julia Lawall [Sat, 26 Apr 2008 15:36:35 +0000 (17:36 +0200)]
ide: use DIV_ROUND_UP

The kernel.h macro DIV_ROUND_UP performs the computation (((n) + (d) - 1) /
(d)) but is perhaps more readable.

An extract of the semantic patch that makes this change is as follows:
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@haskernel@
@@

#include <linux/kernel.h>

@depends on haskernel@
expression n,d;
@@

(
- (n + d - 1) / d
+ DIV_ROUND_UP(n,d)
|
- (n + (d - 1)) / d
+ DIV_ROUND_UP(n,d)
)

@depends on haskernel@
expression n,d;
@@

- DIV_ROUND_UP((n),d)
+ DIV_ROUND_UP(n,d)

@depends on haskernel@
expression n,d;
@@

- DIV_ROUND_UP(n,(d))
+ DIV_ROUND_UP(n,d)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: IDE_HFLAG_BOOTABLE -> IDE_HFLAG_NON_BOOTABLE
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:35 +0000 (17:36 +0200)]
ide: IDE_HFLAG_BOOTABLE -> IDE_HFLAG_NON_BOOTABLE

"bootable" should be the default behavior so replace
IDE_HFLAG_BOOTABLE host flag with IDE_HFLAG_NON_BOOTABLE.

There should be no functional changes caused by this patch.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoqd65xx: return error value in qd_probe()
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:35 +0000 (17:36 +0200)]
qd65xx: return error value in qd_probe()

Return error value in qd_probe() and use it in qd65xx_init()
instead of checking ide_hwifs[].chipset.

Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoht6560b: use driver name for resource allocation
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:35 +0000 (17:36 +0200)]
ht6560b: use driver name for resource allocation

Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoumc8672: don't use ide_hwifs[] in umc_set_pio_mode()
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:34 +0000 (17:36 +0200)]
umc8672: don't use ide_hwifs[] in umc_set_pio_mode()

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoscc_pata: store 'hwif' pointer in struct scc_ports
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:34 +0000 (17:36 +0200)]
scc_pata: store 'hwif' pointer in struct scc_ports

Replace 'unsigned char hwif_id' by 'ide_hwif_t *hwif' in struct scc_ports.
This allows us to remove ide_hwifs[] usage from scc_remove().

There should be no functional changes caused by this patch.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agocmd640: use ide_find_port()
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:33 +0000 (17:36 +0200)]
cmd640: use ide_find_port()

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agocmd640: remove cmd_drives[]
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:33 +0000 (17:36 +0200)]
cmd640: remove cmd_drives[]

* Pass 'ide_drive_t *drive' to check_prefetch(), set_prefetch_mode(),
  program_drive_counts() and cmd640_set_mode().

* Remove no longer needed cmd_drives[].

* Inline setup_device_ptrs() helper in cmd640x_init().

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoau1xxx-ide: use ide_find_port()
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:33 +0000 (17:36 +0200)]
au1xxx-ide: use ide_find_port()

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoscc_pata: use ide_find_port()
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:33 +0000 (17:36 +0200)]
scc_pata: use ide_find_port()

There should be no functional changes caused by this patch.

Cc: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Cc: Akira Iguchi <akira2.iguchi@toshiba.co.jp>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agosgiioc4: use ide_find_port()
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:33 +0000 (17:36 +0200)]
sgiioc4: use ide_find_port()

There should be no functional changes caused by this patch.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide-pmac: use ide_find_port()
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:33 +0000 (17:36 +0200)]
ide-pmac: use ide_find_port()

Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide-pmac: dynamically allocate struct pmac_ide_hwif instances (take 2)
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:32 +0000 (17:36 +0200)]
ide-pmac: dynamically allocate struct pmac_ide_hwif instances (take 2)

* Dynamically allocate struct pmac_ide_hwif instances in pmac_ide_macio_attach()
  and pmac_ide_pci_attach(), then remove no longer needed pmac_ide[].

v2:
* Build fix from Kamalesh Babulal.

Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoswarm: use ide_find_port()
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:32 +0000 (17:36 +0200)]
swarm: use ide_find_port()

Cc: Maciej W. Rozycki <macro@linux-mips.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: cleanup ide_find_port()
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:32 +0000 (17:36 +0200)]
ide: cleanup ide_find_port()

Remove no longer needed matching against I/O base and 'base' argument.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: cleanup ide_match_hwif()
Bartlomiej Zolnierkiewicz [Sat, 26 Apr 2008 15:36:31 +0000 (17:36 +0200)]
ide: cleanup ide_match_hwif()

* Remove no longer needed matching against I/O base and 'io_base' argument.

* Move printk() to the caller and remove 'name' argument.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: make ide_pci_check_iomem() actually work
Sergei Shtylyov [Sat, 26 Apr 2008 15:36:31 +0000 (17:36 +0200)]
ide: make ide_pci_check_iomem() actually work

This function didn't actually check if a given BAR is in I/O space because of
using the bogus PCI_BASE_ADDRESS_IO_MASK (which equals ~3) to test the resource
flags instead of IORESOURCE_IO -- fix this, make ide_hwif_configure() check the
results failing if necessary, and move the printk() call to the failure path.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide/Kconfig: BLK_DEV_4DRIVES should be a tristate
Frederik Deweerdt [Sat, 26 Apr 2008 15:36:31 +0000 (17:36 +0200)]
ide/Kconfig: BLK_DEV_4DRIVES should be a tristate

The 4drives should be a tristate, the following breakage occurs otherwise:

ERROR: "probe_4drives" [drivers/ide/ide-core.ko] undefined!

The following (compile tested) patch fixes it for me.

Signed-off-by: Frederik Deweerdt <frederik.deweerdt@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agofix execve()
Al Viro [Sat, 26 Apr 2008 15:36:31 +0000 (17:36 +0200)]
fix execve()

Arrgghhh...

Sorry about that, I'd been sure I'd folded that one, but it actually got
lost.  Please apply - that unbreaks execve().

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agox86: section mismatch fixes, #3
Jacek Luczak [Fri, 11 Apr 2008 11:29:04 +0000 (13:29 +0200)]
x86: section mismatch fixes, #3

This patch fixes section mismatch warnings in unlock_ExtINT_logic().

WARNING: arch/x86/kernel/built-in.o(.text+0x14a92): Section mismatch in reference from the function unlock_ExtINT_logic()
to the function .init.text:find_isa_irq_pin()
The function unlock_ExtINT_logic() references
the function __init find_isa_irq_pin().
This is often because unlock_ExtINT_logic lacks a __init
annotation or the annotation of find_isa_irq_pin is wrong.

Signed-off-by: Jacek Luczak <luczak.jacek@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
16 years agox86: section mismatch fixes, #2
Jacek Luczak [Fri, 11 Apr 2008 11:28:49 +0000 (13:28 +0200)]
x86: section mismatch fixes, #2

This patch fixes section mismatch warnings in smpboot_setup_io_apic().

WARNING: arch/x86/kernel/built-in.o(.text+0x11781): Section mismatch in reference from the function smpboot_setup_io_apic()
to the function .init.text:setup_IO_APIC()
The function smpboot_setup_io_apic() references
the function __init setup_IO_APIC().
This is often because smpboot_setup_io_apic lacks a __init
annotation or the annotation of setup_IO_APIC is wrong.

Signed-off-by: Jacek Luczak <luczak.jacek@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
16 years agox86: pgtable_32.h - prototype and section mismatch fixes
Jacek Luczak [Sun, 13 Apr 2008 15:41:04 +0000 (17:41 +0200)]
x86: pgtable_32.h - prototype and section mismatch fixes

This patch adds extern to native_pagetable_setup_[start,done]() protypes and
fixes following section mismatch warning:

WARNING: arch/x86/mm/built-in.o(.text+0xf2): Section mismatch in reference from
the function paravirt_pagetable_setup_start()

paravirt_pagetable_setup_[start,done]() is used by __init pagetable_init().
Annotate both functions with __init.

Signed-off-by: Jacek Luczak <luczak.jacek@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
16 years agox86: unlock_ExtINT_logic() - fix section mismatch warnings
Jacek Luczak [Sat, 12 Apr 2008 15:41:12 +0000 (17:41 +0200)]
x86: unlock_ExtINT_logic() - fix section mismatch warnings

Fix following warning:
WARNING: arch/x86/kernel/built-in.o(.text+0x12cc9): Section mismatch in reference from the function unlock_ExtINT_logic()

unlock_ExtINT_logic() is only used by __init check_timer(). Annotate unlock_ExtINT_logic() witch __init.

Signed-off-by: Jacek Luczak <luczak.jacek@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
16 years agox86: uniq_ioapic_id - fix section mismatch warning
Jacek Luczak [Sat, 12 Apr 2008 15:39:57 +0000 (17:39 +0200)]
x86: uniq_ioapic_id - fix section mismatch warning

Fix folowing warning:
WARNING: arch/x86/kernel/built-in.o(.text+0x10799): Section mismatch in reference from the function uniq_ioapic_id()

uniq_ioapic_id() is only used by __init mp_register_ioapic(). Annotate uniq_ioapic_id() with __init.

Signed-off-by: Jacek Luczak <luczak.jacek@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
16 years agox86: trampoline_32.S - switch to .cpuinit.data
Jacek Luczak [Sat, 12 Apr 2008 15:38:52 +0000 (17:38 +0200)]
x86: trampoline_32.S - switch to .cpuinit.data

This patch fixes section mismatch warnings of __cpuinit
setup_trampoline() on 32-bit host.

Signed-off-by: Jacek Luczak <luczak.jacek@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
16 years agox86: use get_bios_ebda()
Akinobu Mita [Sat, 19 Apr 2008 14:55:20 +0000 (23:55 +0900)]
x86: use get_bios_ebda()

Use get_bios_ebda().

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86: remove duplicate get_bios_ebda() from rio.h
Akinobu Mita [Sat, 19 Apr 2008 14:55:19 +0000 (23:55 +0900)]
x86: remove duplicate get_bios_ebda() from rio.h

get_bios_ebda() exists in asm/rio.h and asm/bios_ebda.h.
This patch removes the one in asm/rio.h.

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86: get_bios_ebda() requires asm/io.h
Akinobu Mita [Sat, 19 Apr 2008 14:55:18 +0000 (23:55 +0900)]
x86: get_bios_ebda() requires asm/io.h

include <asm/io.h> for phys_to_virt()

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86: use cpumask function for present, possible, and online cpus
Akinobu Mita [Sat, 19 Apr 2008 14:55:17 +0000 (23:55 +0900)]
x86: use cpumask function for present, possible, and online cpus

cpu_online(), cpu_present(), for_each_possible_cpu(), num_possible_cpus()

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86: cleanup div_sc() usage
Akinobu Mita [Sat, 19 Apr 2008 14:55:16 +0000 (23:55 +0900)]
x86: cleanup div_sc() usage

Remove the magic number in the third argment of div_sc().

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86: cleanup clocksource_hz2mult usage
Akinobu Mita [Sat, 19 Apr 2008 14:55:15 +0000 (23:55 +0900)]
x86: cleanup clocksource_hz2mult usage

Remove the magic number in the second argument of clocksource_hz2mult()

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86: remove unnecessary memset and NULL check after alloc_bootmem()
Akinobu Mita [Sat, 19 Apr 2008 14:55:14 +0000 (23:55 +0900)]
x86: remove unnecessary memset and NULL check after alloc_bootmem()

memset and NULL check after alloc_bootmem() are unnecessary.
Because it returns zeroed memory and it never return NULL.

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86: use bitmap library for pin_programmed
Akinobu Mita [Sat, 19 Apr 2008 14:55:13 +0000 (23:55 +0900)]
x86: use bitmap library for pin_programmed

Use bitmap library for pin_programmed rather than reinvent
bitmaps.

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86: use MP_intsrc_info()
Akinobu Mita [Sat, 19 Apr 2008 14:55:12 +0000 (23:55 +0900)]
x86: use MP_intsrc_info()

Remove duplicate code by using MP_intsrc_info() in mpparse.c

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86: use BUILD_BUG_ON() for the size of struct intel_mp_floating
Akinobu Mita [Sat, 19 Apr 2008 14:55:11 +0000 (23:55 +0900)]
x86: use BUILD_BUG_ON() for the size of struct intel_mp_floating

Use BUILD_BUG_ON() instead of compile-time error technique with
extern non-exsistent function.

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86_64 ia32 ptrace: convert to compat_arch_ptrace
Roland McGrath [Tue, 22 Apr 2008 19:21:25 +0000 (12:21 -0700)]
x86_64 ia32 ptrace: convert to compat_arch_ptrace

Now that there are no more special cases in sys32_ptrace, we
can convert to using the generic compat_sys_ptrace entry point.
The sys32_ptrace function gets simpler and becomes compat_arch_ptrace.

Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86_64 ia32 ptrace: use compat_ptrace_request for siginfo
Roland McGrath [Tue, 22 Apr 2008 19:20:20 +0000 (12:20 -0700)]
x86_64 ia32 ptrace: use compat_ptrace_request for siginfo

This removes the special-case handling for PTRACE_GETSIGINFO
and PTRACE_SETSIGINFO from x86_64's sys32_ptrace.  The generic
compat_ptrace_request code handles these.

Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86 signals: lift set_fs
Roland McGrath [Sat, 19 Apr 2008 21:27:56 +0000 (14:27 -0700)]
x86 signals: lift set_fs

This lifts the set_fs(USER_DS) call for signal handler setup out of the
three places copying the same code into the one place that calls them
all.  There is no change in what it does.

Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86 signals: lift flags diddling code
Roland McGrath [Sat, 19 Apr 2008 21:26:54 +0000 (14:26 -0700)]
x86 signals: lift flags diddling code

This lifts the code diddling the TF and DF bits for signal handler setup
out of the several places copying the same code into the one place that
calls them all.  There is no change in what it does.

I also separated the recently-added DF bit clearing from the TF diddling.
The compiler turns them back into one instruction anyway.  The tossing
in of DF to the same line of code with no new comments was a bit more
arcane than seems wise.

Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>